diff options
-rw-r--r-- | 3.10.4/0000_README (renamed from 3.10.3/0000_README) | 2 | ||||
-rw-r--r-- | 3.10.4/4420_grsecurity-2.9.1-3.10.4-201307302312.patch (renamed from 3.10.3/4420_grsecurity-2.9.1-3.10.3-201307261236.patch) | 1784 | ||||
-rw-r--r-- | 3.10.4/4425_grsec_remove_EI_PAX.patch (renamed from 3.10.3/4425_grsec_remove_EI_PAX.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4427_force_XATTR_PAX_tmpfs.patch (renamed from 3.10.3/4427_force_XATTR_PAX_tmpfs.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4430_grsec-remove-localversion-grsec.patch (renamed from 3.10.3/4430_grsec-remove-localversion-grsec.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4435_grsec-mute-warnings.patch (renamed from 3.10.3/4435_grsec-mute-warnings.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4440_grsec-remove-protected-paths.patch (renamed from 3.10.3/4440_grsec-remove-protected-paths.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4450_grsec-kconfig-default-gids.patch (renamed from 3.10.3/4450_grsec-kconfig-default-gids.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4465_selinux-avc_audit-log-curr_ip.patch (renamed from 3.10.3/4465_selinux-avc_audit-log-curr_ip.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4470_disable-compat_vdso.patch (renamed from 3.10.3/4470_disable-compat_vdso.patch) | 0 | ||||
-rw-r--r-- | 3.10.4/4475_emutramp_default_on.patch (renamed from 3.10.3/4475_emutramp_default_on.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/0000_README (renamed from 3.2.48/0000_README) | 6 | ||||
-rw-r--r-- | 3.2.49/1021_linux-3.2.22.patch (renamed from 3.2.48/1021_linux-3.2.22.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1022_linux-3.2.23.patch (renamed from 3.2.48/1022_linux-3.2.23.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1023_linux-3.2.24.patch (renamed from 3.2.48/1023_linux-3.2.24.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1024_linux-3.2.25.patch (renamed from 3.2.48/1024_linux-3.2.25.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1025_linux-3.2.26.patch (renamed from 3.2.48/1025_linux-3.2.26.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1026_linux-3.2.27.patch (renamed from 3.2.48/1026_linux-3.2.27.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1027_linux-3.2.28.patch (renamed from 3.2.48/1027_linux-3.2.28.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1028_linux-3.2.29.patch (renamed from 3.2.48/1028_linux-3.2.29.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1029_linux-3.2.30.patch (renamed from 3.2.48/1029_linux-3.2.30.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1030_linux-3.2.31.patch (renamed from 3.2.48/1030_linux-3.2.31.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1031_linux-3.2.32.patch (renamed from 3.2.48/1031_linux-3.2.32.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1032_linux-3.2.33.patch (renamed from 3.2.48/1032_linux-3.2.33.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1033_linux-3.2.34.patch (renamed from 3.2.48/1033_linux-3.2.34.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1034_linux-3.2.35.patch (renamed from 3.2.48/1034_linux-3.2.35.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1035_linux-3.2.36.patch (renamed from 3.2.48/1035_linux-3.2.36.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1036_linux-3.2.37.patch (renamed from 3.2.48/1036_linux-3.2.37.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1037_linux-3.2.38.patch (renamed from 3.2.48/1037_linux-3.2.38.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1038_linux-3.2.39.patch (renamed from 3.2.48/1038_linux-3.2.39.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1039_linux-3.2.40.patch (renamed from 3.2.48/1039_linux-3.2.40.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1040_linux-3.2.41.patch (renamed from 3.2.48/1040_linux-3.2.41.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1041_linux-3.2.42.patch (renamed from 3.2.48/1041_linux-3.2.42.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1042_linux-3.2.43.patch (renamed from 3.2.48/1042_linux-3.2.43.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1043_linux-3.2.44.patch (renamed from 3.2.48/1043_linux-3.2.44.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1044_linux-3.2.45.patch (renamed from 3.2.48/1044_linux-3.2.45.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1045_linux-3.2.46.patch (renamed from 3.2.48/1045_linux-3.2.46.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1046_linux-3.2.47.patch (renamed from 3.2.48/1046_linux-3.2.47.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1047_linux-3.2.48.patch (renamed from 3.2.48/1047_linux-3.2.48.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/1048_linux-3.2.49.patch | 2970 | ||||
-rw-r--r-- | 3.2.49/4420_grsecurity-2.9.1-3.2.49-201307302311.patch (renamed from 3.2.48/4420_grsecurity-2.9.1-3.2.48-201307261327.patch) | 453 | ||||
-rw-r--r-- | 3.2.49/4425_grsec_remove_EI_PAX.patch (renamed from 3.2.48/4425_grsec_remove_EI_PAX.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4427_force_XATTR_PAX_tmpfs.patch (renamed from 3.2.48/4427_force_XATTR_PAX_tmpfs.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4430_grsec-remove-localversion-grsec.patch (renamed from 3.2.48/4430_grsec-remove-localversion-grsec.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4435_grsec-mute-warnings.patch (renamed from 3.2.48/4435_grsec-mute-warnings.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4440_grsec-remove-protected-paths.patch (renamed from 3.2.48/4440_grsec-remove-protected-paths.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4450_grsec-kconfig-default-gids.patch (renamed from 3.2.48/4450_grsec-kconfig-default-gids.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4465_selinux-avc_audit-log-curr_ip.patch (renamed from 3.2.48/4465_selinux-avc_audit-log-curr_ip.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4470_disable-compat_vdso.patch (renamed from 3.2.48/4470_disable-compat_vdso.patch) | 0 | ||||
-rw-r--r-- | 3.2.49/4475_emutramp_default_on.patch (renamed from 3.2.48/4475_emutramp_default_on.patch) | 0 |
50 files changed, 4398 insertions, 817 deletions
diff --git a/3.10.3/0000_README b/3.10.4/0000_README index a26d38c..830c760 100644 --- a/3.10.3/0000_README +++ b/3.10.4/0000_README @@ -2,7 +2,7 @@ README ----------------------------------------------------------------------------- Individual Patch Descriptions: ----------------------------------------------------------------------------- -Patch: 4420_grsecurity-2.9.1-3.10.3-201307261236.patch +Patch: 4420_grsecurity-2.9.1-3.10.4-201307302312.patch From: http://www.grsecurity.net Desc: hardened-sources base patch from upstream grsecurity diff --git a/3.10.3/4420_grsecurity-2.9.1-3.10.3-201307261236.patch b/3.10.4/4420_grsecurity-2.9.1-3.10.4-201307302312.patch index 194d82d..9a8b4ad 100644 --- a/3.10.3/4420_grsecurity-2.9.1-3.10.3-201307261236.patch +++ b/3.10.4/4420_grsecurity-2.9.1-3.10.4-201307302312.patch @@ -267,7 +267,7 @@ index 2fe6e76..df58221 100644 pcd. [PARIDE] diff --git a/Makefile b/Makefile -index b548552..6e18246 100644 +index b4df9b2..256e7cc 100644 --- a/Makefile +++ b/Makefile @@ -241,8 +241,9 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ @@ -2363,7 +2363,7 @@ index 60d3b73..e5a0f22 100644 EXPORT_SYMBOL(__get_user_1); EXPORT_SYMBOL(__get_user_2); diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S -index 582b405..50351b7 100644 +index 582b405..a78366b 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S @@ -47,6 +47,87 @@ @@ -2530,7 +2530,17 @@ index 582b405..50351b7 100644 add r2, r2, #2 @ r2 is PC + 2, make it PC + 4 str r2, [sp, #S_PC] @ it's a 2x16bit instr, update orr r0, r0, r5, lsl #16 -@@ -690,7 +793,7 @@ ENTRY(__switch_to) +@@ -481,7 +584,8 @@ ENDPROC(__und_usr) + */ + .pushsection .fixup, "ax" + .align 2 +-4: mov pc, r9 ++4: pax_close_userland ++ mov pc, r9 + .popsection + .pushsection __ex_table,"a" + .long 1b, 4b +@@ -690,7 +794,7 @@ ENTRY(__switch_to) THUMB( stmia ip!, {r4 - sl, fp} ) @ Store most regs on stack THUMB( str sp, [ip], #4 ) THUMB( str lr, [ip], #4 ) @@ -2539,7 +2549,7 @@ index 582b405..50351b7 100644 ldr r6, [r2, #TI_CPU_DOMAIN] #endif set_tls r3, r4, r5 -@@ -699,7 +802,7 @@ ENTRY(__switch_to) +@@ -699,7 +803,7 @@ ENTRY(__switch_to) ldr r8, =__stack_chk_guard ldr r7, [r7, #TSK_STACK_CANARY] #endif @@ -34898,7 +34908,7 @@ index b70709b..1d8d02a 100644 /* Run before NMI debug handler and KGDB */ diff --git a/drivers/edac/edac_mc_sysfs.c b/drivers/edac/edac_mc_sysfs.c -index 67610a6..30f8a11 100644 +index c4d700a..0b57abd 100644 --- a/drivers/edac/edac_mc_sysfs.c +++ b/drivers/edac/edac_mc_sysfs.c @@ -148,7 +148,7 @@ static const char * const edac_caps[] = { @@ -34910,7 +34920,7 @@ index 67610a6..30f8a11 100644 #define DEVICE_CHANNEL(_name, _mode, _show, _store, _var) \ struct dev_ch_attribute dev_attr_legacy_##_name = \ -@@ -1003,14 +1003,16 @@ int edac_create_sysfs_mci_device(struct mem_ctl_info *mci) +@@ -1005,14 +1005,16 @@ int edac_create_sysfs_mci_device(struct mem_ctl_info *mci) } if (mci->set_sdram_scrub_rate || mci->get_sdram_scrub_rate) { @@ -40190,7 +40200,7 @@ index 4c83003..2a2a5b9 100644 break; } diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c -index a0b4be5..d8cb082 100644 +index 6e43426..1bd8365 100644 --- a/drivers/net/ethernet/emulex/benet/be_main.c +++ b/drivers/net/ethernet/emulex/benet/be_main.c @@ -469,7 +469,7 @@ static void accumulate_16bit_val(u32 *acc, u16 val) @@ -40454,10 +40464,10 @@ index 6e91931..2b0ebe7 100644 }; diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c -index b6dd6a7..5c38a02 100644 +index 523d6b2..5e16aa1 100644 --- a/drivers/net/macvtap.c +++ b/drivers/net/macvtap.c -@@ -1094,7 +1094,7 @@ static int macvtap_device_event(struct notifier_block *unused, +@@ -1110,7 +1110,7 @@ static int macvtap_device_event(struct notifier_block *unused, return NOTIFY_DONE; } @@ -40527,10 +40537,10 @@ index b305105..8ead6df 100644 }; diff --git a/drivers/net/tun.c b/drivers/net/tun.c -index 9c61f87..213609e 100644 +index 2491eb2..694b2ec 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c -@@ -1852,7 +1852,7 @@ unlock: +@@ -1869,7 +1869,7 @@ unlock: } static long __tun_chr_ioctl(struct file *file, unsigned int cmd, @@ -40539,7 +40549,7 @@ index 9c61f87..213609e 100644 { struct tun_file *tfile = file->private_data; struct tun_struct *tun; -@@ -1864,6 +1864,9 @@ static long __tun_chr_ioctl(struct file *file, unsigned int cmd, +@@ -1881,6 +1881,9 @@ static long __tun_chr_ioctl(struct file *file, unsigned int cmd, int vnet_hdr_sz; int ret; @@ -44974,40 +44984,6 @@ index 6ef94bc..1b41265 100644 } /* -diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c -index f80d3dd..8ca5ac7 100644 ---- a/drivers/vhost/net.c -+++ b/drivers/vhost/net.c -@@ -150,6 +150,11 @@ static void vhost_net_ubuf_put_and_wait(struct vhost_net_ubuf_ref *ubufs) - { - kref_put(&ubufs->kref, vhost_net_zerocopy_done_signal); - wait_event(ubufs->wait, !atomic_read(&ubufs->kref.refcount)); -+} -+ -+static void vhost_net_ubuf_put_wait_and_free(struct vhost_net_ubuf_ref *ubufs) -+{ -+ vhost_net_ubuf_put_and_wait(ubufs); - kfree(ubufs); - } - -@@ -948,7 +953,7 @@ static long vhost_net_set_backend(struct vhost_net *n, unsigned index, int fd) - mutex_unlock(&vq->mutex); - - if (oldubufs) { -- vhost_net_ubuf_put_and_wait(oldubufs); -+ vhost_net_ubuf_put_wait_and_free(oldubufs); - mutex_lock(&vq->mutex); - vhost_zerocopy_signal_used(n, vq); - mutex_unlock(&vq->mutex); -@@ -966,7 +971,7 @@ err_used: - rcu_assign_pointer(vq->private_data, oldsock); - vhost_net_enable_vq(n, vq); - if (ubufs) -- vhost_net_ubuf_put_and_wait(ubufs); -+ vhost_net_ubuf_put_wait_and_free(ubufs); - err_ubufs: - fput(sock->file); - err_vq: diff --git a/drivers/vhost/vringh.c b/drivers/vhost/vringh.c index 5174eba..86e764a 100644 --- a/drivers/vhost/vringh.c @@ -49590,10 +49566,10 @@ index 94bbc04..6fe78a4 100644 bio_for_each_segment_all(bvec, bio, i) { char *addr = page_address(bvec->bv_page); diff --git a/fs/block_dev.c b/fs/block_dev.c -index 2091db8..81dafe9 100644 +index 85f5c85..d6f0b1a 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c -@@ -651,7 +651,7 @@ static bool bd_may_claim(struct block_device *bdev, struct block_device *whole, +@@ -658,7 +658,7 @@ static bool bd_may_claim(struct block_device *bdev, struct block_device *whole, else if (bdev->bd_contains == bdev) return true; /* is a whole device which isn't held */ @@ -53357,10 +53333,10 @@ index 1d55f94..088da65 100644 } diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c -index f3f783d..bf11a8e 100644 +index 5b12746..b481b03 100644 --- a/fs/fuse/dir.c +++ b/fs/fuse/dir.c -@@ -1415,7 +1415,7 @@ static char *read_link(struct dentry *dentry) +@@ -1437,7 +1437,7 @@ static char *read_link(struct dentry *dentry) return link; } @@ -58337,10 +58313,10 @@ index 0000000..c9c4ac3 +endmenu diff --git a/grsecurity/Makefile b/grsecurity/Makefile new file mode 100644 -index 0000000..1b9afa9 +index 0000000..36845aa --- /dev/null +++ b/grsecurity/Makefile -@@ -0,0 +1,38 @@ +@@ -0,0 +1,42 @@ +# grsecurity's ACL system was originally written in 2001 by Michael Dalton +# during 2001-2009 it has been completely redesigned by Brad Spengler +# into an RBAC system @@ -58358,6 +58334,10 @@ index 0000000..1b9afa9 +obj-$(CONFIG_GRKERNSEC) += grsec_init.o grsum.o gracl.o gracl_segv.o \ + gracl_cap.o gracl_alloc.o gracl_shm.o grsec_mem.o gracl_fs.o \ + gracl_learn.o grsec_log.o ++ifdef CONFIG_COMPAT ++obj-$(CONFIG_GRKERNSEC) += gracl_compat.o ++endif ++ +obj-$(CONFIG_GRKERNSEC_RESLOG) += gracl_res.o + +ifdef CONFIG_NET @@ -58381,10 +58361,10 @@ index 0000000..1b9afa9 +endif diff --git a/grsecurity/gracl.c b/grsecurity/gracl.c new file mode 100644 -index 0000000..0d5c602 +index 0000000..edeba3a --- /dev/null +++ b/grsecurity/gracl.c -@@ -0,0 +1,4073 @@ +@@ -0,0 +1,4176 @@ +#include <linux/kernel.h> +#include <linux/module.h> +#include <linux/sched.h> @@ -58487,6 +58467,47 @@ index 0000000..0d5c602 +extern void gr_remove_uid(uid_t uid); +extern int gr_find_uid(uid_t uid); + ++#ifdef CONFIG_COMPAT ++extern int copy_gr_arg_wrapper_compat(const char *buf, struct gr_arg_wrapper *uwrap); ++extern int copy_gr_arg_compat(const struct gr_arg __user *buf, struct gr_arg *arg); ++extern int copy_acl_object_label_compat(struct acl_object_label *obj, const struct acl_object_label *userp); ++extern int copy_acl_subject_label_compat(struct acl_subject_label *subj, const struct acl_subject_label *userp); ++extern int copy_acl_role_label_compat(struct acl_role_label *role, const struct acl_role_label *userp); ++extern int copy_role_allowed_ip_compat(struct role_allowed_ip *roleip, const struct role_allowed_ip *userp); ++extern int copy_role_transition_compat(struct role_transition *trans, const struct role_transition *userp); ++extern int copy_gr_hash_struct_compat(struct gr_hash_struct *hash, const struct gr_hash_struct *userp); ++extern int copy_pointer_from_array_compat(void *ptr, unsigned long idx, const void *userp); ++extern int copy_acl_ip_label_compat(struct acl_ip_label *ip, const struct acl_ip_label *userp); ++extern int copy_sprole_pw_compat(struct sprole_pw *pw, unsigned long idx, const struct sprole_pw *userp); ++extern size_t get_gr_arg_wrapper_size_compat(void); ++ ++int (* copy_gr_arg_wrapper)(const char *buf, struct gr_arg_wrapper *uwrap) __read_only; ++int (* copy_gr_arg)(const struct gr_arg *buf, struct gr_arg *arg) __read_only; ++int (* copy_acl_object_label)(struct acl_object_label *obj, const struct acl_object_label *userp) __read_only; ++int (* copy_acl_subject_label)(struct acl_subject_label *subj, const struct acl_subject_label *userp) __read_only; ++int (* copy_acl_role_label)(struct acl_role_label *role, const struct acl_role_label *userp) __read_only; ++int (* copy_acl_ip_label)(struct acl_ip_label *ip, const struct acl_ip_label *userp) __read_only; ++int (* copy_pointer_from_array)(void *ptr, unsigned long idx, const void *userp) __read_only; ++int (* copy_sprole_pw)(struct sprole_pw *pw, unsigned long idx, const struct sprole_pw *userp) __read_only; ++int (* copy_gr_hash_struct)(struct gr_hash_struct *hash, const struct gr_hash_struct *userp) __read_only; ++int (* copy_role_transition)(struct role_transition *trans, const struct role_transition *userp) __read_only; ++int (* copy_role_allowed_ip)(struct role_allowed_ip *roleip, const struct role_allowed_ip *userp) __read_only; ++size_t (* get_gr_arg_wrapper_size)(void) __read_only; ++ ++#else ++#define copy_gr_arg_wrapper copy_gr_arg_wrapper_normal ++#define copy_gr_arg copy_gr_arg_normal ++#define copy_acl_object_label copy_acl_object_label_normal ++#define copy_acl_subject_label copy_acl_subject_label_normal ++#define copy_acl_role_label copy_acl_role_label_normal ++#define copy_acl_ip_label copy_acl_ip_label_normal ++#define copy_pointer_from_array copy_pointer_from_array_normal ++#define copy_sprole_pw copy_sprole_pw_normal ++#define copy_role_transition copy_role_transition_normal ++#define copy_role_allowed_ip copy_role_allowed_ip_normal ++#define get_gr_arg_wrapper_size get_gr_arg_wrapper_size_normal ++#endif ++ +__inline__ int +gr_acl_is_enabled(void) +{ @@ -59430,33 +59451,34 @@ index 0000000..0d5c602 + return; +} + -+static __u32 -+count_user_objs(struct acl_object_label *userp) ++static struct acl_subject_label * ++do_copy_user_subj(struct acl_subject_label *userp, struct acl_role_label *role, int *already_copied); ++ ++static int alloc_and_copy_string(char **name, unsigned int maxlen) +{ -+ struct acl_object_label o_tmp; -+ __u32 num = 0; ++ unsigned int len = strnlen_user(*name, maxlen); ++ char *tmp; + -+ while (userp) { -+ if (copy_from_user(&o_tmp, userp, -+ sizeof (struct acl_object_label))) -+ break; ++ if (!len || len >= maxlen) ++ return -EINVAL; + -+ userp = o_tmp.prev; -+ num++; -+ } ++ if ((tmp = (char *) acl_alloc(len)) == NULL) ++ return -ENOMEM; + -+ return num; -+} ++ if (copy_from_user(tmp, *name, len)) ++ return -EFAULT; + -+static struct acl_subject_label * -+do_copy_user_subj(struct acl_subject_label *userp, struct acl_role_label *role, int *already_copied); ++ tmp[len-1] = '\0'; ++ *name = tmp; ++ ++ return 0; ++} + +static int +copy_user_glob(struct acl_object_label *obj) +{ + struct acl_object_label *g_tmp, **guser; -+ unsigned int len; -+ char *tmp; ++ int error; + + if (obj->globbed == NULL) + return 0; @@ -59468,22 +59490,12 @@ index 0000000..0d5c602 + if (g_tmp == NULL) + return -ENOMEM; + -+ if (copy_from_user(g_tmp, *guser, -+ sizeof (struct acl_object_label))) ++ if (copy_acl_object_label(g_tmp, *guser)) + return -EFAULT; + -+ len = strnlen_user(g_tmp->filename, PATH_MAX); -+ -+ if (!len || len >= PATH_MAX) -+ return -EINVAL; -+ -+ if ((tmp = (char *) acl_alloc(len)) == NULL) -+ return -ENOMEM; -+ -+ if (copy_from_user(tmp, g_tmp->filename, len)) -+ return -EFAULT; -+ tmp[len-1] = '\0'; -+ g_tmp->filename = tmp; ++ error = alloc_and_copy_string(&g_tmp->filename, PATH_MAX); ++ if (error) ++ return error; + + *guser = g_tmp; + guser = &(g_tmp->next); @@ -59497,33 +59509,21 @@ index 0000000..0d5c602 + struct acl_role_label *role) +{ + struct acl_object_label *o_tmp; -+ unsigned int len; + int ret; -+ char *tmp; + + while (userp) { + if ((o_tmp = (struct acl_object_label *) + acl_alloc(sizeof (struct acl_object_label))) == NULL) + return -ENOMEM; + -+ if (copy_from_user(o_tmp, userp, -+ sizeof (struct acl_object_label))) ++ if (copy_acl_object_label(o_tmp, userp)) + return -EFAULT; + + userp = o_tmp->prev; + -+ len = strnlen_user(o_tmp->filename, PATH_MAX); -+ -+ if (!len || len >= PATH_MAX) -+ return -EINVAL; -+ -+ if ((tmp = (char *) acl_alloc(len)) == NULL) -+ return -ENOMEM; -+ -+ if (copy_from_user(tmp, o_tmp->filename, len)) -+ return -EFAULT; -+ tmp[len-1] = '\0'; -+ o_tmp->filename = tmp; ++ ret = alloc_and_copy_string(&o_tmp->filename, PATH_MAX); ++ if (ret) ++ return ret; + + insert_acl_obj_label(o_tmp, subj); + if (!insert_name_entry(o_tmp->filename, o_tmp->inode, @@ -59560,8 +59560,7 @@ index 0000000..0d5c602 + __u32 num = 0; + + while (userp) { -+ if (copy_from_user(&s_tmp, userp, -+ sizeof (struct acl_subject_label))) ++ if (copy_acl_subject_label(&s_tmp, userp)) + break; + + userp = s_tmp.prev; @@ -59584,8 +59583,7 @@ index 0000000..0d5c602 + acl_alloc(sizeof (struct role_allowed_ip))) == NULL) + return -ENOMEM; + -+ if (copy_from_user(rtmp, ruserip, -+ sizeof (struct role_allowed_ip))) ++ if (copy_role_allowed_ip(rtmp, ruserip)) + return -EFAULT; + + ruserip = rtmp->prev; @@ -59609,9 +59607,7 @@ index 0000000..0d5c602 +copy_user_transitions(struct acl_role_label *rolep) +{ + struct role_transition *rusertp, *rtmp = NULL, *rlast; -+ -+ unsigned int len; -+ char *tmp; ++ int error; + + rusertp = rolep->transitions; + @@ -59622,24 +59618,14 @@ index 0000000..0d5c602 + acl_alloc(sizeof (struct role_transition))) == NULL) + return -ENOMEM; + -+ if (copy_from_user(rtmp, rusertp, -+ sizeof (struct role_transition))) ++ if (copy_role_transition(rtmp, rusertp)) + return -EFAULT; + + rusertp = rtmp->prev; + -+ len = strnlen_user(rtmp->rolename, GR_SPROLE_LEN); -+ -+ if (!len || len >= GR_SPROLE_LEN) -+ return -EINVAL; -+ -+ if ((tmp = (char *) acl_alloc(len)) == NULL) -+ return -ENOMEM; -+ -+ if (copy_from_user(tmp, rtmp->rolename, len)) -+ return -EFAULT; -+ tmp[len-1] = '\0'; -+ rtmp->rolename = tmp; ++ error = alloc_and_copy_string(&rtmp->rolename, GR_SPROLE_LEN); ++ if (error) ++ return error; + + if (!rlast) { + rtmp->prev = NULL; @@ -59656,12 +59642,26 @@ index 0000000..0d5c602 + return 0; +} + ++static __u32 count_user_objs(const struct acl_object_label __user *userp) ++{ ++ struct acl_object_label o_tmp; ++ __u32 num = 0; ++ ++ while (userp) { ++ if (copy_acl_object_label(&o_tmp, userp)) ++ break; ++ ++ userp = o_tmp.prev; ++ num++; ++ } ++ ++ return num; ++} ++ +static struct acl_subject_label * +do_copy_user_subj(struct acl_subject_label *userp, struct acl_role_label *role, int *already_copied) +{ + struct acl_subject_label *s_tmp = NULL, *s_tmp2; -+ unsigned int len; -+ char *tmp; + __u32 num_objs; + struct acl_ip_label **i_tmp, *i_utmp2; + struct gr_hash_struct ghash; @@ -59695,27 +59695,17 @@ index 0000000..0d5c602 + subjmap->kernel = s_tmp; + insert_subj_map_entry(subjmap); + -+ if (copy_from_user(s_tmp, userp, -+ sizeof (struct acl_subject_label))) ++ if (copy_acl_subject_label(s_tmp, userp)) + return ERR_PTR(-EFAULT); + -+ len = strnlen_user(s_tmp->filename, PATH_MAX); -+ -+ if (!len || len >= PATH_MAX) -+ return ERR_PTR(-EINVAL); -+ -+ if ((tmp = (char *) acl_alloc(len)) == NULL) -+ return ERR_PTR(-ENOMEM); -+ -+ if (copy_from_user(tmp, s_tmp->filename, len)) -+ return ERR_PTR(-EFAULT); -+ tmp[len-1] = '\0'; -+ s_tmp->filename = tmp; ++ err = alloc_and_copy_string(&s_tmp->filename, PATH_MAX); ++ if (err) ++ return ERR_PTR(err); + + if (!strcmp(s_tmp->filename, "/")) + role->root_label = s_tmp; + -+ if (copy_from_user(&ghash, s_tmp->hash, sizeof(struct gr_hash_struct))) ++ if (copy_gr_hash_struct(&ghash, s_tmp->hash)) + return ERR_PTR(-EFAULT); + + /* copy user and group transition tables */ @@ -59796,28 +59786,18 @@ index 0000000..0d5c602 + if (!*(i_tmp + i_num)) + return ERR_PTR(-ENOMEM); + -+ if (copy_from_user -+ (&i_utmp2, s_tmp->ips + i_num, -+ sizeof (struct acl_ip_label *))) ++ if (copy_pointer_from_array(&i_utmp2, i_num, s_tmp->ips)) + return ERR_PTR(-EFAULT); + -+ if (copy_from_user -+ (*(i_tmp + i_num), i_utmp2, -+ sizeof (struct acl_ip_label))) ++ if (copy_acl_ip_label(*(i_tmp + i_num), i_utmp2)) + return ERR_PTR(-EFAULT); + + if ((*(i_tmp + i_num))->iface == NULL) + continue; + -+ len = strnlen_user((*(i_tmp + i_num))->iface, IFNAMSIZ); -+ if (!len || len >= IFNAMSIZ) -+ return ERR_PTR(-EINVAL); -+ tmp = acl_alloc(len); -+ if (tmp == NULL) -+ return ERR_PTR(-ENOMEM); -+ if (copy_from_user(tmp, (*(i_tmp + i_num))->iface, len)) -+ return ERR_PTR(-EFAULT); -+ (*(i_tmp + i_num))->iface = tmp; ++ err = alloc_and_copy_string(&(*(i_tmp + i_num))->iface, IFNAMSIZ); ++ if (err) ++ return ERR_PTR(err); + } + + s_tmp->ips = i_tmp; @@ -59838,8 +59818,7 @@ index 0000000..0d5c602 + int err; + + while (userp) { -+ if (copy_from_user(&s_pre, userp, -+ sizeof (struct acl_subject_label))) ++ if (copy_acl_subject_label(&s_pre, userp)) + return -EFAULT; + + ret = do_copy_user_subj(userp, role, NULL); @@ -59865,8 +59844,6 @@ index 0000000..0d5c602 + struct gr_hash_struct *ghash; + uid_t *domainlist; + unsigned int r_num; -+ unsigned int len; -+ char *tmp; + int err = 0; + __u16 i; + __u32 num_subjs; @@ -59887,26 +59864,17 @@ index 0000000..0d5c602 + sptmp = (struct sprole_pw *) acl_alloc(sizeof(struct sprole_pw)); + if (!sptmp) + return -ENOMEM; -+ if (copy_from_user(sptmp, arg->sprole_pws + i, -+ sizeof (struct sprole_pw))) ++ if (copy_sprole_pw(sptmp, i, arg->sprole_pws)) + return -EFAULT; + -+ len = strnlen_user(sptmp->rolename, GR_SPROLE_LEN); -+ -+ if (!len || len >= GR_SPROLE_LEN) -+ return -EINVAL; -+ -+ if ((tmp = (char *) acl_alloc(len)) == NULL) -+ return -ENOMEM; -+ -+ if (copy_from_user(tmp, sptmp->rolename, len)) -+ return -EFAULT; ++ err = alloc_and_copy_string((char **)&sptmp->rolename, GR_SPROLE_LEN); ++ if (err) ++ return err; + -+ tmp[len-1] = '\0'; +#ifdef CONFIG_GRKERNSEC_RBAC_DEBUG -+ printk(KERN_ALERT "Copying special role %s\n", tmp); ++ printk(KERN_ALERT "Copying special role %s\n", sptmp->rolename); +#endif -+ sptmp->rolename = tmp; ++ + acl_special_roles[i] = sptmp; + } + @@ -59918,27 +59886,15 @@ index 0000000..0d5c602 + if (!r_tmp) + return -ENOMEM; + -+ if (copy_from_user(&r_utmp2, r_utmp + r_num, -+ sizeof (struct acl_role_label *))) -+ return -EFAULT; -+ -+ if (copy_from_user(r_tmp, r_utmp2, -+ sizeof (struct acl_role_label))) ++ if (copy_pointer_from_array(&r_utmp2, r_num, r_utmp)) + return -EFAULT; + -+ len = strnlen_user(r_tmp->rolename, GR_SPROLE_LEN); -+ -+ if (!len || len >= PATH_MAX) -+ return -EINVAL; -+ -+ if ((tmp = (char *) acl_alloc(len)) == NULL) -+ return -ENOMEM; -+ -+ if (copy_from_user(tmp, r_tmp->rolename, len)) ++ if (copy_acl_role_label(r_tmp, r_utmp2)) + return -EFAULT; + -+ tmp[len-1] = '\0'; -+ r_tmp->rolename = tmp; ++ err = alloc_and_copy_string(&r_tmp->rolename, GR_SPROLE_LEN); ++ if (err) ++ return err; + + if (!strcmp(r_tmp->rolename, "default") + && (r_tmp->roletype & GR_ROLE_DEFAULT)) { @@ -59950,7 +59906,7 @@ index 0000000..0d5c602 + if ((ghash = (struct gr_hash_struct *) acl_alloc(sizeof(struct gr_hash_struct))) == NULL) + return -ENOMEM; + -+ if (copy_from_user(ghash, r_tmp->hash, sizeof(struct gr_hash_struct))) ++ if (copy_gr_hash_struct(ghash, r_tmp->hash)) + return -EFAULT; + + r_tmp->hash = ghash; @@ -61558,14 +61514,112 @@ index 0000000..0d5c602 + return 0; +} + ++static int copy_acl_object_label_normal(struct acl_object_label *obj, const struct acl_object_label *userp) ++{ ++ if (copy_from_user(obj, userp, sizeof(struct acl_object_label))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_acl_ip_label_normal(struct acl_ip_label *ip, const struct acl_ip_label *userp) ++{ ++ if (copy_from_user(ip, userp, sizeof(struct acl_ip_label))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_acl_subject_label_normal(struct acl_subject_label *subj, const struct acl_subject_label *userp) ++{ ++ if (copy_from_user(subj, userp, sizeof(struct acl_subject_label))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_acl_role_label_normal(struct acl_role_label *role, const struct acl_role_label *userp) ++{ ++ if (copy_from_user(role, userp, sizeof(struct acl_role_label))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_role_allowed_ip_normal(struct role_allowed_ip *roleip, const struct role_allowed_ip *userp) ++{ ++ if (copy_from_user(roleip, userp, sizeof(struct role_allowed_ip))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_sprole_pw_normal(struct sprole_pw *pw, unsigned long idx, const struct sprole_pw *userp) ++{ ++ if (copy_from_user(pw, userp + idx, sizeof(struct sprole_pw))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_gr_hash_struct_normal(struct gr_hash_struct *hash, const struct gr_hash_struct *userp) ++{ ++ if (copy_from_user(hash, userp, sizeof(struct gr_hash_struct))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_role_transition_normal(struct role_transition *trans, const struct role_transition *userp) ++{ ++ if (copy_from_user(trans, userp, sizeof(struct role_transition))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++int copy_pointer_from_array_normal(void *ptr, unsigned long idx, const void *userp) ++{ ++ if (copy_from_user(ptr, userp + (idx * sizeof(void *)), sizeof(void *))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int copy_gr_arg_wrapper_normal(const char __user *buf, struct gr_arg_wrapper *uwrap) ++{ ++ if (copy_from_user(uwrap, buf, sizeof (struct gr_arg_wrapper))) ++ return -EFAULT; ++ ++ if ((uwrap->version != GRSECURITY_VERSION) || (uwrap->size != sizeof(struct gr_arg))) ++ return -EINVAL; ++ ++ return 0; ++} ++ ++static int copy_gr_arg_normal(const struct gr_arg __user *buf, struct gr_arg *arg) ++{ ++ if (copy_from_user(arg, buf, sizeof (struct gr_arg))) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static size_t get_gr_arg_wrapper_size_normal(void) ++{ ++ return sizeof(struct gr_arg_wrapper); ++} ++ +ssize_t -+write_grsec_handler(struct file *file, const char * buf, size_t count, loff_t *ppos) ++write_grsec_handler(struct file *file, const char __user * buf, size_t count, loff_t *ppos) +{ + struct gr_arg_wrapper uwrap; + unsigned char *sprole_salt = NULL; + unsigned char *sprole_sum = NULL; -+ int error = sizeof (struct gr_arg_wrapper); ++ int error = 0; + int error2 = 0; ++ int compat = is_compat_task(); ++ size_t req_count; + + mutex_lock(&gr_dev_mutex); + @@ -61574,8 +61628,40 @@ index 0000000..0d5c602 + goto out; + } + -+ if (count != sizeof (struct gr_arg_wrapper)) { -+ gr_log_int_int(GR_DONT_AUDIT_GOOD, GR_DEV_ACL_MSG, (int)count, (int)sizeof(struct gr_arg_wrapper)); ++ pax_open_kernel(); ++ if (compat) { ++ copy_gr_arg_wrapper = ©_gr_arg_wrapper_compat; ++ copy_gr_arg = ©_gr_arg_compat; ++ copy_acl_object_label = ©_acl_object_label_compat; ++ copy_acl_subject_label = ©_acl_subject_label_compat; ++ copy_acl_role_label = ©_acl_role_label_compat; ++ copy_acl_ip_label = ©_acl_ip_label_compat; ++ copy_role_allowed_ip = ©_role_allowed_ip_compat; ++ copy_role_transition = ©_role_transition_compat; ++ copy_sprole_pw = ©_sprole_pw_compat; ++ copy_gr_hash_struct = ©_gr_hash_struct_compat; ++ copy_pointer_from_array = ©_pointer_from_array_compat; ++ get_gr_arg_wrapper_size = &get_gr_arg_wrapper_size_compat; ++ } else { ++ copy_gr_arg_wrapper = ©_gr_arg_wrapper_normal; ++ copy_gr_arg = ©_gr_arg_normal; ++ copy_acl_object_label = ©_acl_object_label_normal; ++ copy_acl_subject_label = ©_acl_subject_label_normal; ++ copy_acl_role_label = ©_acl_role_label_normal; ++ copy_acl_ip_label = ©_acl_ip_label_normal; ++ copy_role_allowed_ip = ©_role_allowed_ip_normal; ++ copy_role_transition = ©_role_transition_normal; ++ copy_sprole_pw = ©_sprole_pw_normal; ++ copy_gr_hash_struct = ©_gr_hash_struct_normal; ++ copy_pointer_from_array = ©_pointer_from_array_normal; ++ get_gr_arg_wrapper_size = &get_gr_arg_wrapper_size_normal; ++ } ++ pax_close_kernel(); ++ ++ req_count = get_gr_arg_wrapper_size(); ++ ++ if (count != req_count) { ++ gr_log_int_int(GR_DONT_AUDIT_GOOD, GR_DEV_ACL_MSG, (int)count, (int)req_count); + error = -EINVAL; + goto out; + } @@ -61586,20 +61672,13 @@ index 0000000..0d5c602 + gr_auth_attempts = 0; + } + -+ if (copy_from_user(&uwrap, buf, sizeof (struct gr_arg_wrapper))) { -+ error = -EFAULT; -+ goto out; -+ } -+ -+ if ((uwrap.version != GRSECURITY_VERSION) || (uwrap.size != sizeof(struct gr_arg))) { -+ error = -EINVAL; ++ error = copy_gr_arg_wrapper(buf, &uwrap); ++ if (error) + goto out; -+ } + -+ if (copy_from_user(gr_usermode, uwrap.arg, sizeof (struct gr_arg))) { -+ error = -EFAULT; ++ error = copy_gr_arg(uwrap.arg, gr_usermode); ++ if (error) + goto out; -+ } + + if (gr_usermode->mode != GR_SPROLE && gr_usermode->mode != GR_SPROLEPAM && + gr_auth_attempts >= CONFIG_GRKERNSEC_ACL_MAXTRIES && @@ -61792,6 +61871,10 @@ index 0000000..0d5c602 + + out: + mutex_unlock(&gr_dev_mutex); ++ ++ if (!error) ++ error = req_count; ++ + return error; +} + @@ -62685,6 +62768,281 @@ index 0000000..bdd51ea + return gr_task_acl_is_capable_nolog(current, cap); +} + +diff --git a/grsecurity/gracl_compat.c b/grsecurity/gracl_compat.c +new file mode 100644 +index 0000000..a43dd06 +--- /dev/null ++++ b/grsecurity/gracl_compat.c +@@ -0,0 +1,269 @@ ++#include <linux/kernel.h> ++#include <linux/gracl.h> ++#include <linux/compat.h> ++#include <linux/gracl_compat.h> ++ ++#include <asm/uaccess.h> ++ ++int copy_gr_arg_wrapper_compat(const char *buf, struct gr_arg_wrapper *uwrap) ++{ ++ struct gr_arg_wrapper_compat uwrapcompat; ++ ++ if (copy_from_user(&uwrapcompat, buf, sizeof(uwrapcompat))) ++ return -EFAULT; ++ ++ if ((uwrapcompat.version != GRSECURITY_VERSION) || ++ (uwrapcompat.size != sizeof(struct gr_arg_compat))) ++ return -EINVAL; ++ ++ uwrap->arg = compat_ptr(uwrapcompat.arg); ++ uwrap->version = uwrapcompat.version; ++ uwrap->size = sizeof(struct gr_arg); ++ ++ return 0; ++} ++ ++int copy_gr_arg_compat(const struct gr_arg __user *buf, struct gr_arg *arg) ++{ ++ struct gr_arg_compat argcompat; ++ ++ if (copy_from_user(&argcompat, buf, sizeof(argcompat))) ++ return -EFAULT; ++ ++ arg->role_db.r_table = compat_ptr(argcompat.role_db.r_table); ++ arg->role_db.num_pointers = argcompat.role_db.num_pointers; ++ arg->role_db.num_roles = argcompat.role_db.num_roles; ++ arg->role_db.num_domain_children = argcompat.role_db.num_domain_children; ++ arg->role_db.num_subjects = argcompat.role_db.num_subjects; ++ arg->role_db.num_objects = argcompat.role_db.num_objects; ++ ++ memcpy(&arg->pw, &argcompat.pw, sizeof(arg->pw)); ++ memcpy(&arg->salt, &argcompat.salt, sizeof(arg->salt)); ++ memcpy(&arg->sum, &argcompat.sum, sizeof(arg->sum)); ++ memcpy(&arg->sp_role, &argcompat.sp_role, sizeof(arg->sp_role)); ++ arg->sprole_pws = compat_ptr(argcompat.sprole_pws); ++ arg->segv_device = argcompat.segv_device; ++ arg->segv_inode = argcompat.segv_inode; ++ arg->segv_uid = argcompat.segv_uid; ++ arg->num_sprole_pws = argcompat.num_sprole_pws; ++ arg->mode = argcompat.mode; ++ ++ return 0; ++} ++ ++int copy_acl_object_label_compat(struct acl_object_label *obj, const struct acl_object_label *userp) ++{ ++ struct acl_object_label_compat objcompat; ++ ++ if (copy_from_user(&objcompat, userp, sizeof(objcompat))) ++ return -EFAULT; ++ ++ obj->filename = compat_ptr(objcompat.filename); ++ obj->inode = objcompat.inode; ++ obj->device = objcompat.device; ++ obj->mode = objcompat.mode; ++ ++ obj->nested = compat_ptr(objcompat.nested); ++ obj->globbed = compat_ptr(objcompat.globbed); ++ ++ obj->prev = compat_ptr(objcompat.prev); ++ obj->next = compat_ptr(objcompat.next); ++ ++ return 0; ++} ++ ++int copy_acl_subject_label_compat(struct acl_subject_label *subj, const struct acl_subject_label *userp) ++{ ++ unsigned int i; ++ struct acl_subject_label_compat subjcompat; ++ ++ if (copy_from_user(&subjcompat, userp, sizeof(subjcompat))) ++ return -EFAULT; ++ ++ subj->filename = compat_ptr(subjcompat.filename); ++ subj->inode = subjcompat.inode; ++ subj->device = subjcompat.device; ++ subj->mode = subjcompat.mode; ++ subj->cap_mask = subjcompat.cap_mask; ++ subj->cap_lower = subjcompat.cap_lower; ++ subj->cap_invert_audit = subjcompat.cap_invert_audit; ++ ++ for (i = 0; i < GR_NLIMITS; i++) { ++ if (subjcompat.res[i].rlim_cur == COMPAT_RLIM_INFINITY) ++ subj->res[i].rlim_cur = RLIM_INFINITY; ++ else ++ subj->res[i].rlim_cur = subjcompat.res[i].rlim_cur; ++ if (subjcompat.res[i].rlim_max == COMPAT_RLIM_INFINITY) ++ subj->res[i].rlim_max = RLIM_INFINITY; ++ else ++ subj->res[i].rlim_max = subjcompat.res[i].rlim_max; ++ } ++ subj->resmask = subjcompat.resmask; ++ ++ subj->user_trans_type = subjcompat.user_trans_type; ++ subj->group_trans_type = subjcompat.group_trans_type; ++ subj->user_transitions = compat_ptr(subjcompat.user_transitions); ++ subj->group_transitions = compat_ptr(subjcompat.group_transitions); ++ subj->user_trans_num = subjcompat.user_trans_num; ++ subj->group_trans_num = subjcompat.group_trans_num; ++ ++ memcpy(&subj->sock_families, &subjcompat.sock_families, sizeof(subj->sock_families)); ++ memcpy(&subj->ip_proto, &subjcompat.ip_proto, sizeof(subj->ip_proto)); ++ subj->ip_type = subjcompat.ip_type; ++ subj->ips = compat_ptr(subjcompat.ips); ++ subj->ip_num = subjcompat.ip_num; ++ subj->inaddr_any_override = subjcompat.inaddr_any_override; ++ ++ subj->crashes = subjcompat.crashes; ++ subj->expires = subjcompat.expires; ++ ++ subj->parent_subject = compat_ptr(subjcompat.parent_subject); ++ subj->hash = compat_ptr(subjcompat.hash); ++ subj->prev = compat_ptr(subjcompat.prev); ++ subj->next = compat_ptr(subjcompat.next); ++ ++ subj->obj_hash = compat_ptr(subjcompat.obj_hash); ++ subj->obj_hash_size = subjcompat.obj_hash_size; ++ subj->pax_flags = subjcompat.pax_flags; ++ ++ return 0; ++} ++ ++int copy_acl_role_label_compat(struct acl_role_label *role, const struct acl_role_label *userp) ++{ ++ struct acl_role_label_compat rolecompat; ++ ++ if (copy_from_user(&rolecompat, userp, sizeof(rolecompat))) ++ return -EFAULT; ++ ++ role->rolename = compat_ptr(rolecompat.rolename); ++ role->uidgid = rolecompat.uidgid; ++ role->roletype = rolecompat.roletype; ++ ++ role->auth_attempts = rolecompat.auth_attempts; ++ role->expires = rolecompat.expires; ++ ++ role->root_label = compat_ptr(rolecompat.root_label); ++ role->hash = compat_ptr(rolecompat.hash); ++ ++ role->prev = compat_ptr(rolecompat.prev); ++ role->next = compat_ptr(rolecompat.next); ++ ++ role->transitions = compat_ptr(rolecompat.transitions); ++ role->allowed_ips = compat_ptr(rolecompat.allowed_ips); ++ role->domain_children = compat_ptr(rolecompat.domain_children); ++ role->domain_child_num = rolecompat.domain_child_num; ++ ++ role->umask = rolecompat.umask; ++ ++ role->subj_hash = compat_ptr(rolecompat.subj_hash); ++ role->subj_hash_size = rolecompat.subj_hash_size; ++ ++ return 0; ++} ++ ++int copy_role_allowed_ip_compat(struct role_allowed_ip *roleip, const struct role_allowed_ip *userp) ++{ ++ struct role_allowed_ip_compat roleip_compat; ++ ++ if (copy_from_user(&roleip_compat, userp, sizeof(roleip_compat))) ++ return -EFAULT; ++ ++ roleip->addr = roleip_compat.addr; ++ roleip->netmask = roleip_compat.netmask; ++ ++ roleip->prev = compat_ptr(roleip_compat.prev); ++ roleip->next = compat_ptr(roleip_compat.next); ++ ++ return 0; ++} ++ ++int copy_role_transition_compat(struct role_transition *trans, const struct role_transition *userp) ++{ ++ struct role_transition_compat trans_compat; ++ ++ if (copy_from_user(&trans_compat, userp, sizeof(trans_compat))) ++ return -EFAULT; ++ ++ trans->rolename = compat_ptr(trans_compat.rolename); ++ ++ trans->prev = compat_ptr(trans_compat.prev); ++ trans->next = compat_ptr(trans_compat.next); ++ ++ return 0; ++ ++} ++ ++int copy_gr_hash_struct_compat(struct gr_hash_struct *hash, const struct gr_hash_struct *userp) ++{ ++ struct gr_hash_struct_compat hash_compat; ++ ++ if (copy_from_user(&hash_compat, userp, sizeof(hash_compat))) ++ return -EFAULT; ++ ++ hash->table = compat_ptr(hash_compat.table); ++ hash->nametable = compat_ptr(hash_compat.nametable); ++ hash->first = compat_ptr(hash_compat.first); ++ ++ hash->table_size = hash_compat.table_size; ++ hash->used_size = hash_compat.used_size; ++ ++ hash->type = hash_compat.type; ++ ++ return 0; ++} ++ ++int copy_pointer_from_array_compat(void *ptr, unsigned long idx, const void *userp) ++{ ++ compat_uptr_t ptrcompat; ++ ++ if (copy_from_user(&ptrcompat, userp + (idx * sizeof(ptrcompat)), sizeof(ptrcompat))) ++ return -EFAULT; ++ ++ *(void **)ptr = compat_ptr(ptrcompat); ++ ++ return 0; ++} ++ ++int copy_acl_ip_label_compat(struct acl_ip_label *ip, const struct acl_ip_label *userp) ++{ ++ struct acl_ip_label_compat ip_compat; ++ ++ if (copy_from_user(&ip_compat, userp, sizeof(ip_compat))) ++ return -EFAULT; ++ ++ ip->iface = compat_ptr(ip_compat.iface); ++ ip->addr = ip_compat.addr; ++ ip->netmask = ip_compat.netmask; ++ ip->low = ip_compat.low; ++ ip->high = ip_compat.high; ++ ip->mode = ip_compat.mode; ++ ip->type = ip_compat.type; ++ ++ memcpy(&ip->proto, &ip_compat.proto, sizeof(ip->proto)); ++ ++ ip->prev = compat_ptr(ip_compat.prev); ++ ip->next = compat_ptr(ip_compat.next); ++ ++ return 0; ++} ++ ++int copy_sprole_pw_compat(struct sprole_pw *pw, unsigned long idx, const struct sprole_pw *userp) ++{ ++ struct sprole_pw_compat pw_compat; ++ ++ if (copy_from_user(&pw_compat, (const void *)userp + (sizeof(pw_compat) * idx), sizeof(pw_compat))) ++ return -EFAULT; ++ ++ pw->rolename = compat_ptr(pw_compat.rolename); ++ memcpy(&pw->salt, pw_compat.salt, sizeof(pw->salt)); ++ memcpy(&pw->sum, pw_compat.sum, sizeof(pw->sum)); ++ ++ return 0; ++} ++ ++size_t get_gr_arg_wrapper_size_compat(void) ++{ ++ return sizeof(struct gr_arg_wrapper_compat); ++} ++ diff --git a/grsecurity/gracl_fs.c b/grsecurity/gracl_fs.c new file mode 100644 index 0000000..a340c17 @@ -69242,6 +69600,168 @@ index 0000000..ebe6d72 + +#endif + +diff --git a/include/linux/gracl_compat.h b/include/linux/gracl_compat.h +new file mode 100644 +index 0000000..33ebd1f +--- /dev/null ++++ b/include/linux/gracl_compat.h +@@ -0,0 +1,156 @@ ++#ifndef GR_ACL_COMPAT_H ++#define GR_ACL_COMPAT_H ++ ++#include <linux/resource.h> ++#include <asm/resource.h> ++ ++struct sprole_pw_compat { ++ compat_uptr_t rolename; ++ unsigned char salt[GR_SALT_LEN]; ++ unsigned char sum[GR_SHA_LEN]; ++}; ++ ++struct gr_hash_struct_compat { ++ compat_uptr_t table; ++ compat_uptr_t nametable; ++ compat_uptr_t first; ++ __u32 table_size; ++ __u32 used_size; ++ int type; ++}; ++ ++struct acl_subject_label_compat { ++ compat_uptr_t filename; ++ compat_ino_t inode; ++ __u32 device; ++ __u32 mode; ++ kernel_cap_t cap_mask; ++ kernel_cap_t cap_lower; ++ kernel_cap_t cap_invert_audit; ++ ++ struct compat_rlimit res[GR_NLIMITS]; ++ __u32 resmask; ++ ++ __u8 user_trans_type; ++ __u8 group_trans_type; ++ compat_uptr_t user_transitions; ++ compat_uptr_t group_transitions; ++ __u16 user_trans_num; ++ __u16 group_trans_num; ++ ++ __u32 sock_families[2]; ++ __u32 ip_proto[8]; ++ __u32 ip_type; ++ compat_uptr_t ips; ++ __u32 ip_num; ++ __u32 inaddr_any_override; ++ ++ __u32 crashes; ++ compat_ulong_t expires; ++ ++ compat_uptr_t parent_subject; ++ compat_uptr_t hash; ++ compat_uptr_t prev; ++ compat_uptr_t next; ++ ++ compat_uptr_t obj_hash; ++ __u32 obj_hash_size; ++ __u16 pax_flags; ++}; ++ ++struct role_allowed_ip_compat { ++ __u32 addr; ++ __u32 netmask; ++ ++ compat_uptr_t prev; ++ compat_uptr_t next; ++}; ++ ++struct role_transition_compat { ++ compat_uptr_t rolename; ++ ++ compat_uptr_t prev; ++ compat_uptr_t next; ++}; ++ ++struct acl_role_label_compat { ++ compat_uptr_t rolename; ++ uid_t uidgid; ++ __u16 roletype; ++ ++ __u16 auth_attempts; ++ compat_ulong_t expires; ++ ++ compat_uptr_t root_label; ++ compat_uptr_t hash; ++ ++ compat_uptr_t prev; ++ compat_uptr_t next; ++ ++ compat_uptr_t transitions; ++ compat_uptr_t allowed_ips; ++ compat_uptr_t domain_children; ++ __u16 domain_child_num; ++ ++ umode_t umask; ++ ++ compat_uptr_t subj_hash; ++ __u32 subj_hash_size; ++}; ++ ++struct user_acl_role_db_compat { ++ compat_uptr_t r_table; ++ __u32 num_pointers; ++ __u32 num_roles; ++ __u32 num_domain_children; ++ __u32 num_subjects; ++ __u32 num_objects; ++}; ++ ++struct acl_object_label_compat { ++ compat_uptr_t filename; ++ compat_ino_t inode; ++ __u32 device; ++ __u32 mode; ++ ++ compat_uptr_t nested; ++ compat_uptr_t globbed; ++ ++ compat_uptr_t prev; ++ compat_uptr_t next; ++}; ++ ++struct acl_ip_label_compat { ++ compat_uptr_t iface; ++ __u32 addr; ++ __u32 netmask; ++ __u16 low, high; ++ __u8 mode; ++ __u32 type; ++ __u32 proto[8]; ++ ++ compat_uptr_t prev; ++ compat_uptr_t next; ++}; ++ ++struct gr_arg_compat { ++ struct user_acl_role_db_compat role_db; ++ unsigned char pw[GR_PW_LEN]; ++ unsigned char salt[GR_SALT_LEN]; ++ unsigned char sum[GR_SHA_LEN]; ++ unsigned char sp_role[GR_SPROLE_LEN]; ++ compat_uptr_t sprole_pws; ++ __u32 segv_device; ++ compat_ino_t segv_inode; ++ uid_t segv_uid; ++ __u16 num_sprole_pws; ++ __u16 mode; ++}; ++ ++struct gr_arg_wrapper_compat { ++ compat_uptr_t arg; ++ __u32 version; ++ __u32 size; ++}; ++ ++#endif diff --git a/include/linux/gralloc.h b/include/linux/gralloc.h new file mode 100644 index 0000000..323ecf2 @@ -72447,10 +72967,25 @@ index a5ffd32..0935dea 100644 extern dma_addr_t swiotlb_map_page(struct device *dev, struct page *page, unsigned long offset, size_t size, diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h -index 4147d70..31a1791 100644 +index 4147d70..d356a10 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h -@@ -362,11 +362,11 @@ asmlinkage long sys_sync(void); +@@ -97,8 +97,12 @@ struct sigaltstack; + #define __MAP(n,...) __MAP##n(__VA_ARGS__) + + #define __SC_DECL(t, a) t a +-#define __TYPE_IS_LL(t) (__same_type((t)0, 0LL) || __same_type((t)0, 0ULL)) +-#define __SC_LONG(t, a) __typeof(__builtin_choose_expr(__TYPE_IS_LL(t), 0LL, 0L)) a ++#define __TYPE_IS_SL(t) (__same_type((t)0, 0L)) ++#define __TYPE_IS_UL(t) (__same_type((t)0, 0UL)) ++#define __TYPE_IS_SLL(t) (__same_type((t)0, 0LL)) ++#define __TYPE_IS_ULL(t) (__same_type((t)0, 0ULL)) ++#define __TYPE_IS_LL(t) (__TYPE_IS_SLL(t) || __TYPE_IS_ULL(t)) ++#define __SC_LONG(t, a) __typeof(__builtin_choose_expr(__TYPE_IS_LL(t), __builtin_choose_expr(__TYPE_IS_ULL(t), 0ULL, 0LL), __builtin_choose_expr(__TYPE_IS_UL(t), 0UL, 0L))) a + #define __SC_CAST(t, a) (t) a + #define __SC_ARGS(t, a) a + #define __SC_TEST(t, a) (void)BUILD_BUG_ON_ZERO(!__TYPE_IS_LL(t) && sizeof(t) > sizeof(long)) +@@ -362,11 +366,11 @@ asmlinkage long sys_sync(void); asmlinkage long sys_fsync(unsigned int fd); asmlinkage long sys_fdatasync(unsigned int fd); asmlinkage long sys_bdflush(int func, long data); @@ -72466,7 +73001,7 @@ index 4147d70..31a1791 100644 asmlinkage long sys_truncate(const char __user *path, long length); asmlinkage long sys_ftruncate(unsigned int fd, unsigned long length); asmlinkage long sys_stat(const char __user *filename, -@@ -578,7 +578,7 @@ asmlinkage long sys_getsockname(int, struct sockaddr __user *, int __user *); +@@ -578,7 +582,7 @@ asmlinkage long sys_getsockname(int, struct sockaddr __user *, int __user *); asmlinkage long sys_getpeername(int, struct sockaddr __user *, int __user *); asmlinkage long sys_send(int, void __user *, size_t, unsigned); asmlinkage long sys_sendto(int, void __user *, size_t, unsigned, @@ -73582,18 +74117,6 @@ index 5bba80f..8520a82 100644 }; #define TCP_SKB_CB(__skb) ((struct tcp_skb_cb *)&((__skb)->cb[0])) -diff --git a/include/net/udp.h b/include/net/udp.h -index 065f379..ad99eed 100644 ---- a/include/net/udp.h -+++ b/include/net/udp.h -@@ -181,6 +181,7 @@ extern int udp_get_port(struct sock *sk, unsigned short snum, - extern void udp_err(struct sk_buff *, u32); - extern int udp_sendmsg(struct kiocb *iocb, struct sock *sk, - struct msghdr *msg, size_t len); -+extern int udp_push_pending_frames(struct sock *sk); - extern void udp_flush_pending_frames(struct sock *sk); - extern int udp_rcv(struct sk_buff *skb); - extern int udp_ioctl(struct sock *sk, int cmd, unsigned long arg); diff --git a/include/net/xfrm.h b/include/net/xfrm.h index 94ce082..62b278d 100644 --- a/include/net/xfrm.h @@ -76148,19 +76671,19 @@ index 9b22d03..6295b62 100644 prev->next = info->next; else diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c -index fd4b13b..09a5ccb 100644 +index 2288fbd..0f3941f 100644 --- a/kernel/hrtimer.c +++ b/kernel/hrtimer.c -@@ -1430,7 +1430,7 @@ void hrtimer_peek_ahead_timers(void) +@@ -1435,7 +1435,7 @@ void hrtimer_peek_ahead_timers(void) local_irq_restore(flags); } -static void run_hrtimer_softirq(struct softirq_action *h) +static void run_hrtimer_softirq(void) { - struct hrtimer_cpu_base *cpu_base = &__get_cpu_var(hrtimer_bases); - -@@ -1772,7 +1772,7 @@ static int __cpuinit hrtimer_cpu_notify(struct notifier_block *self, + hrtimer_peek_ahead_timers(); + } +@@ -1770,7 +1770,7 @@ static int __cpuinit hrtimer_cpu_notify(struct notifier_block *self, return NOTIFY_OK; } @@ -80586,7 +81109,7 @@ index ee8e29a..410568e 100644 spin_unlock_irq(&pool->lock); diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug -index 566cf2b..fdaa52c 100644 +index 74fdc5c..3310593 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -549,7 +549,7 @@ config DEBUG_MUTEXES @@ -86781,7 +87304,7 @@ index b71423d..0360434 100644 return err; diff --git a/net/core/dev.c b/net/core/dev.c -index faebb39..a38fb42 100644 +index 7ddbb31..3902452 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -1649,7 +1649,7 @@ int dev_forward_skb(struct net_device *dev, struct sk_buff *skb) @@ -86829,7 +87352,7 @@ index faebb39..a38fb42 100644 { struct softnet_data *sd = &__get_cpu_var(softnet_data); -@@ -3538,7 +3538,7 @@ ncls: +@@ -3545,7 +3545,7 @@ ncls: ret = pt_prev->func(skb, skb->dev, pt_prev, orig_dev); } else { drop: @@ -86838,7 +87361,7 @@ index faebb39..a38fb42 100644 kfree_skb(skb); /* Jamal, now you will not able to escape explaining * me how you were going to use this. :-) -@@ -4146,7 +4146,7 @@ void netif_napi_del(struct napi_struct *napi) +@@ -4153,7 +4153,7 @@ void netif_napi_del(struct napi_struct *napi) } EXPORT_SYMBOL(netif_napi_del); @@ -86847,7 +87370,7 @@ index faebb39..a38fb42 100644 { struct softnet_data *sd = &__get_cpu_var(softnet_data); unsigned long time_limit = jiffies + 2; -@@ -5583,7 +5583,7 @@ struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev, +@@ -5590,7 +5590,7 @@ struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev, } else { netdev_stats_to_stats64(storage, &dev->stats); } @@ -86979,10 +87502,10 @@ index de178e4..1dabd8b 100644 m->msg_iov = iov; diff --git a/net/core/neighbour.c b/net/core/neighbour.c -index 5c56b21..8766fbf 100644 +index ce90b02..8752627 100644 --- a/net/core/neighbour.c +++ b/net/core/neighbour.c -@@ -2769,7 +2769,7 @@ static int proc_unres_qlen(ctl_table *ctl, int write, void __user *buffer, +@@ -2771,7 +2771,7 @@ static int proc_unres_qlen(ctl_table *ctl, int write, void __user *buffer, size_t *lenp, loff_t *ppos) { int size, ret; @@ -87691,7 +88214,7 @@ index b66910a..cfe416e 100644 return -ENOMEM; } diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c -index 2a83591..68e7458 100644 +index 855004f..68e7458 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c @@ -115,7 +115,7 @@ static bool log_ecn_error = true; @@ -87703,23 +88226,7 @@ index 2a83591..68e7458 100644 static int ipgre_tunnel_init(struct net_device *dev); static int ipgre_net_id __read_mostly; -@@ -503,10 +503,11 @@ static int ipgre_tunnel_ioctl(struct net_device *dev, - - if (copy_from_user(&p, ifr->ifr_ifru.ifru_data, sizeof(p))) - return -EFAULT; -- if (p.iph.version != 4 || p.iph.protocol != IPPROTO_GRE || -- p.iph.ihl != 5 || (p.iph.frag_off&htons(~IP_DF)) || -- ((p.i_flags|p.o_flags)&(GRE_VERSION|GRE_ROUTING))) { -- return -EINVAL; -+ if (cmd == SIOCADDTUNNEL || cmd == SIOCCHGTUNNEL) { -+ if (p.iph.version != 4 || p.iph.protocol != IPPROTO_GRE || -+ p.iph.ihl != 5 || (p.iph.frag_off&htons(~IP_DF)) || -+ ((p.i_flags|p.o_flags)&(GRE_VERSION|GRE_ROUTING))) -+ return -EINVAL; - } - p.i_flags = gre_flags_to_tnl_flags(p.i_flags); - p.o_flags = gre_flags_to_tnl_flags(p.o_flags); -@@ -918,7 +919,7 @@ static const struct nla_policy ipgre_policy[IFLA_GRE_MAX + 1] = { +@@ -919,7 +919,7 @@ static const struct nla_policy ipgre_policy[IFLA_GRE_MAX + 1] = { [IFLA_GRE_PMTUDISC] = { .type = NLA_U8 }, }; @@ -87728,7 +88235,7 @@ index 2a83591..68e7458 100644 .kind = "gre", .maxtype = IFLA_GRE_MAX, .policy = ipgre_policy, -@@ -932,7 +933,7 @@ static struct rtnl_link_ops ipgre_link_ops __read_mostly = { +@@ -933,7 +933,7 @@ static struct rtnl_link_ops ipgre_link_ops __read_mostly = { .fill_info = ipgre_fill_info, }; @@ -87761,7 +88268,7 @@ index d9c4f11..02b82dbc 100644 msg.msg_flags = flags; diff --git a/net/ipv4/ip_vti.c b/net/ipv4/ip_vti.c -index c118f6b..63856c4 100644 +index 17cc0ff..63856c4 100644 --- a/net/ipv4/ip_vti.c +++ b/net/ipv4/ip_vti.c @@ -47,7 +47,7 @@ @@ -87773,25 +88280,7 @@ index c118f6b..63856c4 100644 static int vti_net_id __read_mostly; struct vti_net { -@@ -606,17 +606,10 @@ static int __net_init vti_fb_tunnel_init(struct net_device *dev) - struct iphdr *iph = &tunnel->parms.iph; - struct vti_net *ipn = net_generic(dev_net(dev), vti_net_id); - -- tunnel->dev = dev; -- strcpy(tunnel->parms.name, dev->name); -- - iph->version = 4; - iph->protocol = IPPROTO_IPIP; - iph->ihl = 5; - -- dev->tstats = alloc_percpu(struct pcpu_tstats); -- if (!dev->tstats) -- return -ENOMEM; -- - dev_hold(dev); - rcu_assign_pointer(ipn->tunnels_wc[0], tunnel); - return 0; -@@ -847,7 +840,7 @@ static const struct nla_policy vti_policy[IFLA_VTI_MAX + 1] = { +@@ -840,7 +840,7 @@ static const struct nla_policy vti_policy[IFLA_VTI_MAX + 1] = { [IFLA_VTI_REMOTE] = { .len = FIELD_SIZEOF(struct iphdr, daddr) }, }; @@ -87845,7 +88334,7 @@ index efa1138..20dbba0 100644 return res; } diff --git a/net/ipv4/ipip.c b/net/ipv4/ipip.c -index 77bfcce..64a55d4 100644 +index 7cfc456..e726868 100644 --- a/net/ipv4/ipip.c +++ b/net/ipv4/ipip.c @@ -124,7 +124,7 @@ MODULE_PARM_DESC(log_ecn_error, "Log packets received with corrupted ECN"); @@ -87857,7 +88346,7 @@ index 77bfcce..64a55d4 100644 static int ipip_err(struct sk_buff *skb, u32 info) { -@@ -404,7 +404,7 @@ static const struct nla_policy ipip_policy[IFLA_IPTUN_MAX + 1] = { +@@ -406,7 +406,7 @@ static const struct nla_policy ipip_policy[IFLA_IPTUN_MAX + 1] = { [IFLA_IPTUN_PMTUDISC] = { .type = NLA_U8 }, }; @@ -88395,7 +88884,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 0bf5d399..5a2dd92 100644 +index 93b731d..5a2dd92 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -87,6 +87,7 @@ @@ -88427,24 +88916,7 @@ index 0bf5d399..5a2dd92 100644 /* * This routine is called by the ICMP module when it gets some * sort of error condition. If err < 0 then the socket should -@@ -799,7 +807,7 @@ send: - /* - * Push out all pending data as one UDP datagram. Socket is locked. - */ --static int udp_push_pending_frames(struct sock *sk) -+int udp_push_pending_frames(struct sock *sk) - { - struct udp_sock *up = udp_sk(sk); - struct inet_sock *inet = inet_sk(sk); -@@ -818,6 +826,7 @@ out: - up->pending = 0; - return err; - } -+EXPORT_SYMBOL(udp_push_pending_frames); - - int udp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, - size_t len) -@@ -889,9 +898,18 @@ int udp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, +@@ -890,9 +898,18 @@ int udp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, dport = usin->sin_port; if (dport == 0) return -EINVAL; @@ -88463,7 +88935,7 @@ index 0bf5d399..5a2dd92 100644 daddr = inet->inet_daddr; dport = inet->inet_dport; /* Open fast path for connected socket. -@@ -1135,7 +1153,7 @@ static unsigned int first_packet_length(struct sock *sk) +@@ -1136,7 +1153,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)); @@ -88472,7 +88944,7 @@ index 0bf5d399..5a2dd92 100644 __skb_unlink(skb, rcvq); __skb_queue_tail(&list_kill, skb); } -@@ -1221,6 +1239,10 @@ try_again: +@@ -1222,6 +1239,10 @@ try_again: if (!skb) goto out; @@ -88483,7 +88955,7 @@ index 0bf5d399..5a2dd92 100644 ulen = skb->len - sizeof(struct udphdr); copied = len; if (copied > ulen) -@@ -1254,7 +1276,7 @@ try_again: +@@ -1255,7 +1276,7 @@ try_again: if (unlikely(err)) { trace_kfree_skb(skb, udp_recvmsg); if (!peeked) { @@ -88492,7 +88964,7 @@ index 0bf5d399..5a2dd92 100644 UDP_INC_STATS_USER(sock_net(sk), UDP_MIB_INERRORS, is_udplite); } -@@ -1541,7 +1563,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); @@ -88501,7 +88973,7 @@ index 0bf5d399..5a2dd92 100644 kfree_skb(skb); return -1; } -@@ -1560,7 +1582,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) { @@ -88510,7 +88982,7 @@ index 0bf5d399..5a2dd92 100644 UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_RCVBUFERRORS, IS_UDPLITE(sk)); UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_INERRORS, -@@ -1729,6 +1751,9 @@ int __udp4_lib_rcv(struct sk_buff *skb, struct udp_table *udptable, +@@ -1730,6 +1751,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); @@ -88520,7 +88992,7 @@ index 0bf5d399..5a2dd92 100644 icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0); /* -@@ -2159,7 +2184,7 @@ static void udp4_format_sock(struct sock *sp, struct seq_file *f, +@@ -2160,7 +2184,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, @@ -88569,7 +89041,7 @@ index 9a459be..086b866 100644 return -ENOMEM; } diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c -index 4ab4c38..1533b2d 100644 +index fb8c94c..fb18024 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -621,7 +621,7 @@ static int inet6_netconf_dump_devconf(struct sk_buff *skb, @@ -88581,7 +89053,7 @@ index 4ab4c38..1533b2d 100644 net->dev_base_seq; hlist_for_each_entry_rcu(dev, head, index_hlist) { if (idx < s_idx) -@@ -2372,7 +2372,7 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg) +@@ -2380,7 +2380,7 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg) p.iph.ihl = 5; p.iph.protocol = IPPROTO_IPV6; p.iph.ttl = 64; @@ -88590,7 +89062,7 @@ index 4ab4c38..1533b2d 100644 if (ops->ndo_do_ioctl) { mm_segment_t oldfs = get_fs(); -@@ -3994,7 +3994,7 @@ static int inet6_dump_addr(struct sk_buff *skb, struct netlink_callback *cb, +@@ -4002,7 +4002,7 @@ static int inet6_dump_addr(struct sk_buff *skb, struct netlink_callback *cb, s_ip_idx = ip_idx = cb->args[2]; rcu_read_lock(); @@ -88599,7 +89071,7 @@ index 4ab4c38..1533b2d 100644 for (h = s_h; h < NETDEV_HASHENTRIES; h++, s_idx = 0) { idx = 0; head = &net->dev_index_head[h]; -@@ -4579,7 +4579,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp) +@@ -4587,7 +4587,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp) dst_free(&ifp->rt->dst); break; } @@ -88608,7 +89080,7 @@ index 4ab4c38..1533b2d 100644 } static void ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp) -@@ -4599,7 +4599,7 @@ int addrconf_sysctl_forward(ctl_table *ctl, int write, +@@ -4607,7 +4607,7 @@ int addrconf_sysctl_forward(ctl_table *ctl, int write, int *valp = ctl->data; int val = *valp; loff_t pos = *ppos; @@ -88617,7 +89089,7 @@ index 4ab4c38..1533b2d 100644 int ret; /* -@@ -4681,7 +4681,7 @@ int addrconf_sysctl_disable(ctl_table *ctl, int write, +@@ -4689,7 +4689,7 @@ int addrconf_sysctl_disable(ctl_table *ctl, int write, int *valp = ctl->data; int val = *valp; loff_t pos = *ppos; @@ -88639,53 +89111,6 @@ index b4ff0a4..db9b764 100644 table = kmemdup(ipv6_icmp_table_template, sizeof(ipv6_icmp_table_template), -diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c -index 192dd1a..5fc9c7a 100644 ---- a/net/ipv6/ip6_fib.c -+++ b/net/ipv6/ip6_fib.c -@@ -632,6 +632,12 @@ insert_above: - return ln; - } - -+static inline bool rt6_qualify_for_ecmp(struct rt6_info *rt) -+{ -+ return (rt->rt6i_flags & (RTF_GATEWAY|RTF_ADDRCONF|RTF_DYNAMIC)) == -+ RTF_GATEWAY; -+} -+ - /* - * Insert routing information in a node. - */ -@@ -646,6 +652,7 @@ static int fib6_add_rt2node(struct fib6_node *fn, struct rt6_info *rt, - int add = (!info->nlh || - (info->nlh->nlmsg_flags & NLM_F_CREATE)); - int found = 0; -+ bool rt_can_ecmp = rt6_qualify_for_ecmp(rt); - - ins = &fn->leaf; - -@@ -691,9 +698,8 @@ static int fib6_add_rt2node(struct fib6_node *fn, struct rt6_info *rt, - * To avoid long list, we only had siblings if the - * route have a gateway. - */ -- if (rt->rt6i_flags & RTF_GATEWAY && -- !(rt->rt6i_flags & RTF_EXPIRES) && -- !(iter->rt6i_flags & RTF_EXPIRES)) -+ if (rt_can_ecmp && -+ rt6_qualify_for_ecmp(iter)) - rt->rt6i_nsiblings++; - } - -@@ -715,7 +721,8 @@ static int fib6_add_rt2node(struct fib6_node *fn, struct rt6_info *rt, - /* Find the first route that have the same metric */ - sibling = fn->leaf; - while (sibling) { -- if (sibling->rt6i_metric == rt->rt6i_metric) { -+ if (sibling->rt6i_metric == rt->rt6i_metric && -+ rt6_qualify_for_ecmp(sibling)) { - list_add_tail(&rt->rt6i_siblings, - &sibling->rt6i_siblings); - break; diff --git a/net/ipv6/ip6_gre.c b/net/ipv6/ip6_gre.c index ecd6073..58162ae 100644 --- a/net/ipv6/ip6_gre.c @@ -88726,60 +89151,6 @@ index ecd6073..58162ae 100644 .kind = "ip6gretap", .maxtype = IFLA_GRE_MAX, .policy = ip6gre_policy, -diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c -index d5d20cd..6e3ddf8 100644 ---- a/net/ipv6/ip6_output.c -+++ b/net/ipv6/ip6_output.c -@@ -1098,11 +1098,12 @@ static inline struct ipv6_rt_hdr *ip6_rthdr_dup(struct ipv6_rt_hdr *src, - return src ? kmemdup(src, (src->hdrlen + 1) * 8, gfp) : NULL; - } - --static void ip6_append_data_mtu(int *mtu, -+static void ip6_append_data_mtu(unsigned int *mtu, - int *maxfraglen, - unsigned int fragheaderlen, - struct sk_buff *skb, -- struct rt6_info *rt) -+ struct rt6_info *rt, -+ bool pmtuprobe) - { - if (!(rt->dst.flags & DST_XFRM_TUNNEL)) { - if (skb == NULL) { -@@ -1114,7 +1115,9 @@ static void ip6_append_data_mtu(int *mtu, - * this fragment is not first, the headers - * space is regarded as data space. - */ -- *mtu = dst_mtu(rt->dst.path); -+ *mtu = min(*mtu, pmtuprobe ? -+ rt->dst.dev->mtu : -+ dst_mtu(rt->dst.path)); - } - *maxfraglen = ((*mtu - fragheaderlen) & ~7) - + fragheaderlen - sizeof(struct frag_hdr); -@@ -1131,11 +1134,10 @@ int ip6_append_data(struct sock *sk, int getfrag(void *from, char *to, - struct ipv6_pinfo *np = inet6_sk(sk); - struct inet_cork *cork; - struct sk_buff *skb, *skb_prev = NULL; -- unsigned int maxfraglen, fragheaderlen; -+ unsigned int maxfraglen, fragheaderlen, mtu; - int exthdrlen; - int dst_exthdrlen; - int hh_len; -- int mtu; - int copy; - int err; - int offset = 0; -@@ -1292,7 +1294,9 @@ alloc_new_skb: - /* update mtu and maxfraglen if necessary */ - if (skb == NULL || skb_prev == NULL) - ip6_append_data_mtu(&mtu, &maxfraglen, -- fragheaderlen, skb, rt); -+ fragheaderlen, skb, rt, -+ np->pmtudisc == -+ IPV6_PMTUDISC_PROBE); - - skb_prev = skb; - diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c index 1e55866..b398dab 100644 --- a/net/ipv6/ip6_tunnel.c @@ -89033,10 +89404,10 @@ index 790d9f4..68ae078 100644 return -ENOMEM; } diff --git a/net/ipv6/route.c b/net/ipv6/route.c -index ad0aa6b..beaef03 100644 +index bacce6c..9d1741a 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c -@@ -2881,7 +2881,7 @@ ctl_table ipv6_route_table_template[] = { +@@ -2903,7 +2903,7 @@ ctl_table ipv6_route_table_template[] = { struct ctl_table * __net_init ipv6_route_sysctl_init(struct net *net) { @@ -89046,7 +89417,7 @@ index ad0aa6b..beaef03 100644 table = kmemdup(ipv6_route_table_template, sizeof(ipv6_route_table_template), diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c -index 3353634..3d5084a 100644 +index 60df36d..f3ab7c8 100644 --- a/net/ipv6/sit.c +++ b/net/ipv6/sit.c @@ -74,7 +74,7 @@ static void ipip6_tunnel_setup(struct net_device *dev); @@ -89140,7 +89511,7 @@ index 0a17ed9..2526cc3 100644 } diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c -index 42923b1..d09c290 100644 +index e7b28f9..d09c290 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -52,6 +52,10 @@ @@ -89191,25 +89562,7 @@ index 42923b1..d09c290 100644 icmpv6_send(skb, ICMPV6_DEST_UNREACH, ICMPV6_PORT_UNREACH, 0); kfree_skb(skb); -@@ -955,11 +962,16 @@ static int udp_v6_push_pending_frames(struct sock *sk) - struct udphdr *uh; - struct udp_sock *up = udp_sk(sk); - struct inet_sock *inet = inet_sk(sk); -- struct flowi6 *fl6 = &inet->cork.fl.u.ip6; -+ struct flowi6 *fl6; - int err = 0; - int is_udplite = IS_UDPLITE(sk); - __wsum csum = 0; - -+ if (up->pending == AF_INET) -+ return udp_push_pending_frames(sk); -+ -+ fl6 = &inet->cork.fl.u.ip6; -+ - /* Grab the skbuff where UDP header space exists. */ - if ((skb = skb_peek(&sk->sk_write_queue)) == NULL) - goto out; -@@ -1387,7 +1399,7 @@ static void udp6_sock_seq_show(struct seq_file *seq, struct sock *sp, int bucket +@@ -1392,7 +1399,7 @@ static void udp6_sock_seq_show(struct seq_file *seq, struct sock *sp, int bucket 0, sock_i_ino(sp), atomic_read(&sp->sk_refcnt), sp, @@ -89379,20 +89732,6 @@ index 9da8620..97070ad 100644 } while (!res); return res; } -diff --git a/net/l2tp/l2tp_ppp.c b/net/l2tp/l2tp_ppp.c -index 8dec687..5ebee2d 100644 ---- a/net/l2tp/l2tp_ppp.c -+++ b/net/l2tp/l2tp_ppp.c -@@ -1793,7 +1793,8 @@ static const struct proto_ops pppol2tp_ops = { - - static const struct pppox_proto pppol2tp_proto = { - .create = pppol2tp_create, -- .ioctl = pppol2tp_ioctl -+ .ioctl = pppol2tp_ioctl, -+ .owner = THIS_MODULE, - }; - - #ifdef CONFIG_L2TP_V3 diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c index 4fdb306e..920086a 100644 --- a/net/mac80211/cfg.c @@ -96668,10 +97007,10 @@ index 0000000..b5395ba +} diff --git a/tools/gcc/size_overflow_hash.data b/tools/gcc/size_overflow_hash.data new file mode 100644 -index 0000000..7982a0c +index 0000000..b04803b --- /dev/null +++ b/tools/gcc/size_overflow_hash.data -@@ -0,0 +1,5893 @@ +@@ -0,0 +1,6350 @@ +intel_fake_agp_alloc_by_type_1 intel_fake_agp_alloc_by_type 1 1 NULL +batadv_orig_node_del_if_4 batadv_orig_node_del_if 2 4 NULL +storvsc_connect_to_vsp_22 storvsc_connect_to_vsp 2 22 NULL @@ -96697,6 +97036,7 @@ index 0000000..7982a0c +br_port_info_size_268 br_port_info_size 0 268 NULL +generic_file_direct_write_291 generic_file_direct_write 0 291 NULL +read_file_war_stats_292 read_file_war_stats 3 292 NULL ++SYSC_connect_304 SYSC_connect 3 304 NULL +syslog_print_307 syslog_print 2 307 NULL +platform_device_add_data_310 platform_device_add_data 3 310 NULL +dn_setsockopt_314 dn_setsockopt 5 314 NULL @@ -96707,6 +97047,7 @@ index 0000000..7982a0c +snd_ca0106_ptr_read_467 snd_ca0106_ptr_read 0 467 NULL +_alloc_get_attr_desc_470 _alloc_get_attr_desc 2 470 NULL +dccp_manip_pkt_476 dccp_manip_pkt 4 476 NULL ++nvme_trans_modesel_data_488 nvme_trans_modesel_data 4 488 NULL +pidlist_resize_496 pidlist_resize 2 496 NULL +read_vbt_r0_503 read_vbt_r0 1 503 NULL +rx_rx_defrag_end_read_505 rx_rx_defrag_end_read 3 505 NULL @@ -96725,6 +97066,7 @@ index 0000000..7982a0c +compat_sys_shmat_620 compat_sys_shmat 3 620 NULL +isp1760_register_628 isp1760_register 1-2 628 NULL +clone_split_bio_633 clone_split_bio 6 633 NULL ++ceph_osdc_new_request_635 ceph_osdc_new_request 6 635 NULL +remap_to_cache_640 remap_to_cache 3 640 NULL +drbd_bm_find_next_643 drbd_bm_find_next 2 643 NULL +unlink_queued_645 unlink_queued 3-4 645 NULL @@ -96752,6 +97094,7 @@ index 0000000..7982a0c +pte_prefetch_gfn_to_pfn_997 pte_prefetch_gfn_to_pfn 2 997 NULL nohasharray +hdlcdev_rx_997 hdlcdev_rx 3 997 &pte_prefetch_gfn_to_pfn_997 +dm_cache_set_dirty_1016 dm_cache_set_dirty 2 1016 NULL ++_do_truncate_1019 _do_truncate 2 1019 NULL +smk_write_cipso2_1021 smk_write_cipso2 3 1021 NULL +gigaset_initdriver_1060 gigaset_initdriver 2 1060 NULL +Read_hfc16_1070 Read_hfc16 0 1070 NULL @@ -96764,6 +97107,7 @@ index 0000000..7982a0c +sys_mremap_1107 sys_mremap 5-1-2 1107 NULL +cfg80211_report_obss_beacon_1133 cfg80211_report_obss_beacon 3 1133 NULL +vmalloc_32_1135 vmalloc_32 1 1135 NULL ++dec_zcache_eph_zpages_1138 dec_zcache_eph_zpages 1 1138 NULL +i2400m_rx_ctl_1157 i2400m_rx_ctl 4 1157 NULL +ipc_alloc_1192 ipc_alloc 1 1192 NULL +ib_create_send_mad_1196 ib_create_send_mad 5 1196 NULL @@ -96781,6 +97125,7 @@ index 0000000..7982a0c +wm_adsp_buf_alloc_1317 wm_adsp_buf_alloc 2 1317 NULL +compat_put_u64_1319 compat_put_u64 1 1319 NULL +ffs_1322 ffs 0 1322 NULL ++qlcnic_pci_sriov_configure_1327 qlcnic_pci_sriov_configure 2 1327 NULL +carl9170_rx_stream_1334 carl9170_rx_stream 3 1334 NULL +btrfs_submit_compressed_write_1347 btrfs_submit_compressed_write 5 1347 NULL +gen_pool_best_fit_1348 gen_pool_best_fit 2-3-4 1348 NULL @@ -96798,11 +97143,13 @@ index 0000000..7982a0c +stack_max_size_read_1445 stack_max_size_read 3 1445 NULL +tx_queue_len_read_1463 tx_queue_len_read 3 1463 NULL +xprt_alloc_1475 xprt_alloc 2 1475 NULL ++SYSC_syslog_1477 SYSC_syslog 3 1477 NULL +sta_num_ps_buf_frames_read_1488 sta_num_ps_buf_frames_read 3 1488 NULL +posix_acl_permission_1495 posix_acl_permission 0 1495 NULL +tomoyo_round2_1518 tomoyo_round2 0 1518 NULL +__vfio_dma_map_1523 __vfio_dma_map 3 1523 NULL +alloc_perm_bits_1532 alloc_perm_bits 2 1532 NULL ++ath6kl_init_get_fwcaps_1557 ath6kl_init_get_fwcaps 3 1557 NULL +ieee80211_if_read_dot11MeshHWMPnetDiameterTraversalTime_1589 ieee80211_if_read_dot11MeshHWMPnetDiameterTraversalTime 3 1589 NULL +fc_frame_alloc_1596 fc_frame_alloc 2 1596 NULL +packet_buffer_init_1607 packet_buffer_init 2 1607 NULL @@ -96810,6 +97157,7 @@ index 0000000..7982a0c +v9fs_fid_xattr_get_1618 v9fs_fid_xattr_get 0 1618 NULL +btmrvl_hsmode_read_1647 btmrvl_hsmode_read 3 1647 NULL +ikconfig_read_current_1658 ikconfig_read_current 3 1658 NULL ++mei_cl_recv_1665 mei_cl_recv 3 1665 NULL +netdev_feature_string_1667 netdev_feature_string 0 1667 NULL +compat_x25_ioctl_1674 compat_x25_ioctl 3 1674 NULL +rmap_add_1677 rmap_add 3 1677 NULL @@ -96823,11 +97171,14 @@ index 0000000..7982a0c +ebt_size_mwt_1768 ebt_size_mwt 0 1768 NULL +cosa_write_1774 cosa_write 3 1774 NULL +update_macheader_1775 update_macheader 7 1775 NULL ++dec_zcache_pers_zbytes_1779 dec_zcache_pers_zbytes 1 1779 NULL +fcoe_ctlr_device_add_1793 fcoe_ctlr_device_add 3 1793 NULL +__nodelist_scnprintf_1815 __nodelist_scnprintf 0-2-4 1815 NULL +alloc_pages_exact_1892 alloc_pages_exact 1 1892 NULL +rx_defrag_called_read_1897 rx_defrag_called_read 3 1897 NULL +nfs_parse_server_name_1899 nfs_parse_server_name 2 1899 NULL ++SyS_add_key_1900 SyS_add_key 4 1900 NULL ++isku_sysfs_write_keys_media_1910 isku_sysfs_write_keys_media 6 1910 NULL +tx_tx_retry_data_read_1926 tx_tx_retry_data_read 3 1926 NULL +memblock_alloc_base_1938 memblock_alloc_base 1-2 1938 NULL +cyttsp_probe_1940 cyttsp_probe 4 1940 NULL @@ -96861,8 +97212,10 @@ index 0000000..7982a0c +mlx4_init_icm_table_2151 mlx4_init_icm_table 5-4 2151 NULL +iov_iter_count_2152 iov_iter_count 0 2152 NULL +_ore_get_io_state_2166 _ore_get_io_state 3-4-5 2166 NULL ++bio_integrity_alloc_2194 bio_integrity_alloc 3 2194 NULL +ssb_bus_ssbbus_register_2217 ssb_bus_ssbbus_register 2 2217 NULL -+u32_array_read_2219 u32_array_read 3 2219 NULL ++mei_dbgfs_read_meclients_2219 mei_dbgfs_read_meclients 3 2219 NULL nohasharray ++u32_array_read_2219 u32_array_read 3 2219 &mei_dbgfs_read_meclients_2219 +vhci_write_2224 vhci_write 3 2224 NULL +efx_tsoh_page_count_2225 efx_tsoh_page_count 0 2225 NULL +lowpan_get_mac_header_length_2231 lowpan_get_mac_header_length 0 2231 NULL @@ -96879,10 +97232,12 @@ index 0000000..7982a0c +__erst_read_to_erange_2341 __erst_read_to_erange 0 2341 NULL +zr364xx_read_2354 zr364xx_read 3 2354 NULL +viafb_iga2_odev_proc_write_2363 viafb_iga2_odev_proc_write 3 2363 NULL ++SyS_mremap_2367 SyS_mremap 1-2-5 2367 NULL +xfs_buf_map_from_irec_2368 xfs_buf_map_from_irec 5 2368 NULL +il_dbgfs_sensitivity_read_2370 il_dbgfs_sensitivity_read 3 2370 NULL +rtl_port_map_2385 rtl_port_map 1-2 2385 NULL +rxpipe_rx_prep_beacon_drop_read_2403 rxpipe_rx_prep_beacon_drop_read 3 2403 NULL ++SYSC_mlock_2415 SYSC_mlock 1 2415 NULL +isdn_v110_open_2418 isdn_v110_open 3 2418 NULL +raid1_size_2419 raid1_size 0-2 2419 NULL +roccat_common2_send_2422 roccat_common2_send 4 2422 NULL @@ -96902,6 +97257,7 @@ index 0000000..7982a0c +gspca_dev_probe_2570 gspca_dev_probe 4 2570 NULL +i915_next_seqno_write_2572 i915_next_seqno_write 3 2572 NULL +pcm_sanity_check_2574 pcm_sanity_check 0 2574 NULL ++slot_bytes_2609 slot_bytes 0 2609 NULL +smk_write_logging_2618 smk_write_logging 3 2618 NULL +kvm_gfn_to_hva_cache_init_2636 kvm_gfn_to_hva_cache_init 3 2636 NULL +lro_gen_skb_2644 lro_gen_skb 6 2644 NULL @@ -96909,7 +97265,8 @@ index 0000000..7982a0c +memcpy_fromiovecend_2707 memcpy_fromiovecend 3-4 2707 NULL +__xip_file_write_2733 __xip_file_write 4-3 2733 NULL +hid_report_raw_event_2762 hid_report_raw_event 4 2762 NULL -+mon_bin_ioctl_2771 mon_bin_ioctl 3 2771 NULL ++mon_bin_ioctl_2771 mon_bin_ioctl 3 2771 NULL nohasharray ++bictcp_update_2771 bictcp_update 2 2771 &mon_bin_ioctl_2771 +__next_cpu_2782 __next_cpu 1 2782 NULL +set_msr_hyperv_pw_2785 set_msr_hyperv_pw 3 2785 NULL +sel_read_enforce_2828 sel_read_enforce 3 2828 NULL @@ -96925,6 +97282,7 @@ index 0000000..7982a0c +xfs_trans_get_buf_map_2927 xfs_trans_get_buf_map 4 2927 NULL +nes_read_indexed_2946 nes_read_indexed 0 2946 NULL +tm6000_i2c_recv_regs16_2949 tm6000_i2c_recv_regs16 5 2949 NULL ++set_fast_connectable_2952 set_fast_connectable 4 2952 NULL +ppp_cp_event_2965 ppp_cp_event 6 2965 NULL +do_strnlen_user_2976 do_strnlen_user 0-2 2976 NULL +p9_nr_pages_2992 p9_nr_pages 0-2 2992 NULL @@ -96953,6 +97311,7 @@ index 0000000..7982a0c +mempool_create_node_3191 mempool_create_node 1 3191 NULL +alloc_context_3194 alloc_context 1 3194 NULL +shmem_pread_slow_3198 shmem_pread_slow 3 3198 NULL ++SyS_sendto_3219 SyS_sendto 6 3219 NULL +kimage_crash_alloc_3233 kimage_crash_alloc 3 3233 NULL +do_read_log_to_user_3236 do_read_log_to_user 4 3236 NULL +ext3_xattr_find_entry_3237 ext3_xattr_find_entry 0 3237 NULL @@ -96977,6 +97336,7 @@ index 0000000..7982a0c +mei_io_cb_alloc_resp_buf_3414 mei_io_cb_alloc_resp_buf 2 3414 NULL +pci_add_cap_save_buffer_3426 pci_add_cap_save_buffer 3 3426 NULL +crystalhd_create_dio_pool_3427 crystalhd_create_dio_pool 2 3427 NULL ++SyS_msgsnd_3436 SyS_msgsnd 3 3436 NULL +pipe_iov_copy_to_user_3447 pipe_iov_copy_to_user 3 3447 NULL +percpu_modalloc_3448 percpu_modalloc 2-3 3448 NULL +map_single_3449 map_single 0-2 3449 NULL @@ -96988,6 +97348,7 @@ index 0000000..7982a0c +kvm_handle_bad_page_3503 kvm_handle_bad_page 2 3503 NULL +mem_tx_free_mem_blks_read_3521 mem_tx_free_mem_blks_read 3 3521 NULL nohasharray +ieee80211_wx_set_gen_ie_rsl_3521 ieee80211_wx_set_gen_ie_rsl 3 3521 &mem_tx_free_mem_blks_read_3521 ++SyS_readv_3539 SyS_readv 3 3539 NULL +btrfs_dir_name_len_3549 btrfs_dir_name_len 0 3549 NULL +b43legacy_read16_3561 b43legacy_read16 0 3561 NULL +alloc_smp_resp_3566 alloc_smp_resp 1 3566 NULL @@ -96998,12 +97359,13 @@ index 0000000..7982a0c +edac_mc_alloc_3611 edac_mc_alloc 4 3611 NULL +tx_tx_starts_read_3617 tx_tx_starts_read 3 3617 NULL +aligned_kmalloc_3628 aligned_kmalloc 1 3628 NULL -+cm_copy_private_data_3649 cm_copy_private_data 2 3649 NULL ++x86_swiotlb_alloc_coherent_3649 x86_swiotlb_alloc_coherent 2 3649 NULL nohasharray ++cm_copy_private_data_3649 cm_copy_private_data 2 3649 &x86_swiotlb_alloc_coherent_3649 +ath6kl_disconnect_timeout_read_3650 ath6kl_disconnect_timeout_read 3 3650 NULL +i915_compat_ioctl_3656 i915_compat_ioctl 2 3656 NULL -+create_irq_3703 create_irq 0 3703 NULL nohasharray -+btmrvl_psmode_write_3703 btmrvl_psmode_write 3 3703 &create_irq_3703 nohasharray -+snd_m3_assp_read_3703 snd_m3_assp_read 0 3703 &btmrvl_psmode_write_3703 ++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 nohasharray ++btmrvl_psmode_write_3703 btmrvl_psmode_write 3 3703 &create_irq_3703 +videobuf_pages_to_sg_3708 videobuf_pages_to_sg 2 3708 NULL +ci_ll_write_3740 ci_ll_write 4 3740 NULL nohasharray +ath6kl_mgmt_tx_3740 ath6kl_mgmt_tx 7 3740 &ci_ll_write_3740 @@ -97022,6 +97384,7 @@ index 0000000..7982a0c +pipeline_pre_proc_swi_read_3898 pipeline_pre_proc_swi_read 3 3898 NULL +comedi_buf_read_n_available_3899 comedi_buf_read_n_available 0 3899 NULL +vcs_write_3910 vcs_write 3 3910 NULL ++brcmf_debugfs_fws_stats_read_3947 brcmf_debugfs_fws_stats_read 3 3947 NULL +atalk_compat_ioctl_3991 atalk_compat_ioctl 3 3991 NULL +do_add_counters_3992 do_add_counters 3 3992 NULL +userspace_status_4004 userspace_status 4 4004 NULL @@ -97035,6 +97398,7 @@ index 0000000..7982a0c +read_file_queues_4078 read_file_queues 3 4078 NULL +fbcon_do_set_font_4079 fbcon_do_set_font 2-3 4079 NULL +da9052_free_irq_4090 da9052_free_irq 2 4090 NULL ++C_SYSC_rt_sigpending_4114 C_SYSC_rt_sigpending 2 4114 NULL +ntb_netdev_change_mtu_4147 ntb_netdev_change_mtu 2 4147 NULL +tm6000_read_4151 tm6000_read 3 4151 NULL +mpt_raid_phys_disk_get_num_paths_4155 mpt_raid_phys_disk_get_num_paths 0 4155 NULL @@ -97082,6 +97446,7 @@ index 0000000..7982a0c +kone_receive_4690 kone_receive 4 4690 NULL +round_pipe_size_4701 round_pipe_size 0 4701 NULL +cxgbi_alloc_big_mem_4707 cxgbi_alloc_big_mem 1 4707 NULL ++konepure_sysfs_read_4709 konepure_sysfs_read 6 4709 NULL +btmrvl_gpiogap_read_4718 btmrvl_gpiogap_read 3 4718 NULL +ati_create_gatt_pages_4722 ati_create_gatt_pages 1 4722 NULL nohasharray +show_header_4722 show_header 3 4722 &ati_create_gatt_pages_4722 @@ -97105,6 +97470,7 @@ index 0000000..7982a0c +skb_network_header_len_4971 skb_network_header_len 0 4971 NULL +ieee80211_if_fmt_dot11MeshHWMPconfirmationInterval_4976 ieee80211_if_fmt_dot11MeshHWMPconfirmationInterval 3 4976 NULL +vmw_surface_define_size_4993 vmw_surface_define_size 0 4993 NULL ++compat_SyS_ipc_5000 compat_SyS_ipc 3-4-5-6 5000 NULL +qla82xx_pci_mem_write_direct_5008 qla82xx_pci_mem_write_direct 2 5008 NULL +do_mincore_5018 do_mincore 0-1 5018 NULL +mtd_device_parse_register_5024 mtd_device_parse_register 5 5024 NULL @@ -97126,8 +97492,10 @@ index 0000000..7982a0c +skb_network_header_5203 skb_network_header 0 5203 NULL +pipe_set_size_5204 pipe_set_size 2 5204 NULL +ppp_cp_parse_cr_5214 ppp_cp_parse_cr 4 5214 NULL ++dwc2_hcd_urb_alloc_5217 dwc2_hcd_urb_alloc 2 5217 NULL +ath6kl_debug_roam_tbl_event_5224 ath6kl_debug_roam_tbl_event 3 5224 NULL -+ssb_ioremap_5228 ssb_ioremap 2 5228 NULL ++ssb_ioremap_5228 ssb_ioremap 2 5228 NULL nohasharray ++konepure_sysfs_write_5228 konepure_sysfs_write 6 5228 &ssb_ioremap_5228 +isdn_ppp_skb_push_5236 isdn_ppp_skb_push 2 5236 NULL +do_atmif_sioc_5247 do_atmif_sioc 3 5247 NULL +gfn_to_hva_memslot_5265 gfn_to_hva_memslot 2 5265 NULL @@ -97152,6 +97520,7 @@ index 0000000..7982a0c +__max_nr_grant_frames_5505 __max_nr_grant_frames 0 5505 NULL +spidev_message_5518 spidev_message 3 5518 NULL +ieee80211_if_fmt_auto_open_plinks_5534 ieee80211_if_fmt_auto_open_plinks 3 5534 NULL ++get_entry_msg_len_5552 get_entry_msg_len 0 5552 NULL +brcmu_pkt_buf_get_skb_5556 brcmu_pkt_buf_get_skb 1 5556 NULL +le_readq_5557 le_readq 0 5557 NULL +inw_5558 inw 0 5558 NULL @@ -97161,17 +97530,20 @@ index 0000000..7982a0c +usb_dump_device_descriptor_5599 usb_dump_device_descriptor 0 5599 NULL +ldm_frag_add_5611 ldm_frag_add 2 5611 NULL +compat_copy_entries_5617 compat_copy_entries 0 5617 NULL ++SYSC_fsetxattr_5639 SYSC_fsetxattr 4 5639 NULL +ext4_xattr_get_5661 ext4_xattr_get 0 5661 NULL +posix_clock_register_5662 posix_clock_register 2 5662 NULL +mthca_map_reg_5664 mthca_map_reg 2-3 5664 NULL +__videobuf_alloc_vb_5665 __videobuf_alloc_vb 1 5665 NULL +wb_clear_dirty_5684 wb_clear_dirty 2 5684 NULL +get_arg_5694 get_arg 3 5694 NULL ++subbuf_read_actor_5708 subbuf_read_actor 3 5708 NULL +vmw_kms_readback_5727 vmw_kms_readback 6 5727 NULL +reexecute_instruction_5733 reexecute_instruction 2 5733 NULL +rts51x_transfer_data_partial_5735 rts51x_transfer_data_partial 6 5735 NULL +ubi_cdev_compat_ioctl_5746 ubi_cdev_compat_ioctl 3 5746 NULL -+sctp_setsockopt_autoclose_5775 sctp_setsockopt_autoclose 3 5775 NULL ++sctp_setsockopt_autoclose_5775 sctp_setsockopt_autoclose 3 5775 NULL nohasharray ++qlcnic_83xx_sysfs_flash_read_handler_5775 qlcnic_83xx_sysfs_flash_read_handler 6 5775 &sctp_setsockopt_autoclose_5775 +compat_sys_writev_5784 compat_sys_writev 3 5784 NULL +__vxge_hw_blockpool_malloc_5786 __vxge_hw_blockpool_malloc 2 5786 NULL +skb_copy_datagram_iovec_5806 skb_copy_datagram_iovec 2-4 5806 NULL @@ -97186,6 +97558,7 @@ index 0000000..7982a0c +uinput_compat_ioctl_5861 uinput_compat_ioctl 3 5861 &compat_sys_move_pages_5861 +paging64_walk_addr_5887 paging64_walk_addr 3 5887 NULL +port_show_regs_5904 port_show_regs 3 5904 NULL ++rbd_segment_length_5907 rbd_segment_length 0-3-2 5907 NULL +uhci_debug_read_5911 uhci_debug_read 3 5911 NULL +qla82xx_pci_mem_read_2M_5912 qla82xx_pci_mem_read_2M 2 5912 NULL +ttm_bo_kmap_ttm_5922 ttm_bo_kmap_ttm 3 5922 NULL @@ -97196,14 +97569,17 @@ index 0000000..7982a0c +__apu_get_register_5967 __apu_get_register 0 5967 NULL +ieee80211_if_fmt_rc_rateidx_mask_5ghz_5971 ieee80211_if_fmt_rc_rateidx_mask_5ghz 3 5971 NULL +native_pte_val_5978 native_pte_val 0 5978 NULL ++SyS_semop_5980 SyS_semop 3 5980 NULL +ntfs_rl_append_6037 ntfs_rl_append 2-4 6037 NULL +da9052_request_irq_6058 da9052_request_irq 2 6058 NULL +sctp_setsockopt_connectx_6073 sctp_setsockopt_connectx 3 6073 NULL +rts51x_ms_rw_multi_sector_6076 rts51x_ms_rw_multi_sector 3-4 6076 NULL ++md_trim_bio_6078 md_trim_bio 2 6078 NULL +ipmi_addr_length_6110 ipmi_addr_length 0 6110 NULL +dfs_global_file_write_6112 dfs_global_file_write 3 6112 NULL +matrix_keypad_build_keymap_6129 matrix_keypad_build_keymap 3 6129 NULL +nouveau_parent_create__6131 nouveau_parent_create_ 7 6131 NULL ++ieee80211_if_fmt_beacon_timeout_6153 ieee80211_if_fmt_beacon_timeout 3 6153 NULL +ivtv_copy_buf_to_user_6159 ivtv_copy_buf_to_user 4 6159 NULL +vdma_mem_alloc_6171 vdma_mem_alloc 1 6171 NULL +wl1251_cmd_template_set_6172 wl1251_cmd_template_set 4 6172 NULL @@ -97223,9 +97599,14 @@ index 0000000..7982a0c +nf_nat_ipv6_manip_pkt_6289 nf_nat_ipv6_manip_pkt 2 6289 NULL +nf_nat_sack_adjust_6297 nf_nat_sack_adjust 2 6297 NULL +mid_get_vbt_data_r10_6308 mid_get_vbt_data_r10 2 6308 NULL ++qlcnic_sriov_alloc_bc_msg_6309 qlcnic_sriov_alloc_bc_msg 2 6309 NULL ++SyS_mincore_6329 SyS_mincore 1 6329 NULL ++fuse_get_req_for_background_6337 fuse_get_req_for_background 2 6337 NULL +ucs2_strnlen_6342 ucs2_strnlen 0 6342 NULL ++mei_dbgfs_read_devstate_6352 mei_dbgfs_read_devstate 3 6352 NULL +_proc_do_string_6376 _proc_do_string 2 6376 NULL +osd_req_read_sg_kern_6378 osd_req_read_sg_kern 5 6378 NULL ++isku_sysfs_write_light_6406 isku_sysfs_write_light 6 6406 NULL +posix_acl_fix_xattr_userns_6420 posix_acl_fix_xattr_userns 4 6420 NULL +ipr_change_queue_depth_6431 ipr_change_queue_depth 2 6431 NULL +__alloc_bootmem_node_nopanic_6432 __alloc_bootmem_node_nopanic 2-3 6432 NULL @@ -97240,9 +97621,13 @@ index 0000000..7982a0c +read_file_disable_ani_6536 read_file_disable_ani 3 6536 NULL +rndis_set_oid_6547 rndis_set_oid 4 6547 NULL +wdm_read_6549 wdm_read 3 6549 NULL ++isku_sysfs_write_keys_easyzone_6553 isku_sysfs_write_keys_easyzone 6 6553 NULL +fb_alloc_cmap_6554 fb_alloc_cmap 2 6554 NULL ++SyS_semtimedop_6563 SyS_semtimedop 3 6563 NULL ++SyS_fcntl64_6582 SyS_fcntl64 3 6582 NULL +snmp_mib_init_6604 snmp_mib_init 2-3 6604 NULL +ecryptfs_filldir_6622 ecryptfs_filldir 3 6622 NULL ++compat_SyS_shmat_6642 compat_SyS_shmat 2 6642 NULL +virtscsi_alloc_tgt_6643 virtscsi_alloc_tgt 2 6643 NULL +aac_srcv_ioremap_6659 aac_srcv_ioremap 2 6659 NULL +process_rcvd_data_6679 process_rcvd_data 3 6679 NULL @@ -97279,6 +97664,7 @@ index 0000000..7982a0c +rsa_extract_mpi_6973 rsa_extract_mpi 5 6973 NULL +crypto_authenc_esn_setkey_6985 crypto_authenc_esn_setkey 3 6985 NULL +request_key_async_6990 request_key_async 4 6990 NULL ++tpl_write_6998 tpl_write 3 6998 NULL +r871x_set_wpa_ie_7000 r871x_set_wpa_ie 3 7000 NULL +cipso_v4_gentag_enum_7006 cipso_v4_gentag_enum 0 7006 NULL +tracing_cpumask_read_7010 tracing_cpumask_read 3 7010 NULL @@ -97292,12 +97678,14 @@ index 0000000..7982a0c +check_header_7108 check_header 0 7108 NULL +qlcnic_enable_msix_7144 qlcnic_enable_msix 2 7144 NULL +__alloc_objio_seg_7203 __alloc_objio_seg 1 7203 NULL ++batadv_check_unicast_ttvn_7206 batadv_check_unicast_ttvn 3 7206 NULL +sys32_ipc_7238 sys32_ipc 3-5-6 7238 NULL +get_param_h_7247 get_param_h 0 7247 NULL +af_alg_make_sg_7254 af_alg_make_sg 3 7254 NULL +vm_mmap_pgoff_7259 vm_mmap_pgoff 0 7259 NULL +dma_ops_alloc_addresses_7272 dma_ops_alloc_addresses 3-4-5 7272 NULL +rx_rate_rx_frames_per_rates_read_7282 rx_rate_rx_frames_per_rates_read 3 7282 NULL ++isku_sysfs_write_macro_7293 isku_sysfs_write_macro 6 7293 NULL +wb_remove_mapping_7307 wb_remove_mapping 2 7307 NULL +mgmt_control_7349 mgmt_control 3 7349 NULL +ext3_free_blocks_7362 ext3_free_blocks 3-4 7362 NULL @@ -97308,6 +97696,7 @@ index 0000000..7982a0c +readb_7401 readb 0 7401 NULL +drm_property_create_blob_7414 drm_property_create_blob 2 7414 NULL +ip_options_get_alloc_7448 ip_options_get_alloc 1 7448 NULL ++SYSC_setgroups_7454 SYSC_setgroups 1 7454 NULL +numa_emulation_7466 numa_emulation 2 7466 NULL +__mutex_lock_common_7469 __mutex_lock_common 0 7469 NULL +garp_request_join_7471 garp_request_join 4 7471 NULL @@ -97318,6 +97707,7 @@ index 0000000..7982a0c +array_zalloc_7519 array_zalloc 1-2 7519 NULL +goal_in_my_reservation_7553 goal_in_my_reservation 3 7553 NULL +smk_read_mapped_7562 smk_read_mapped 3 7562 NULL ++btrfs_block_rsv_add_7579 btrfs_block_rsv_add 3 7579 NULL +ext3_try_to_allocate_7590 ext3_try_to_allocate 5-3 7590 NULL +groups_alloc_7614 groups_alloc 1 7614 NULL +sg_virt_7616 sg_virt 0 7616 NULL @@ -97325,6 +97715,7 @@ index 0000000..7982a0c +acpi_ex_allocate_name_string_7685 acpi_ex_allocate_name_string 2-1 7685 &skb_copy_expand_7685 +acpi_ns_get_pathname_length_7699 acpi_ns_get_pathname_length 0 7699 NULL +dev_write_7708 dev_write 3 7708 NULL ++unmap_region_7709 unmap_region 1 7709 NULL +brcmf_sdcard_send_buf_7713 brcmf_sdcard_send_buf 6 7713 NULL +set_bypass_pwup_pfs_7742 set_bypass_pwup_pfs 3 7742 NULL +vxge_device_register_7752 vxge_device_register 4 7752 NULL @@ -97343,6 +97734,7 @@ index 0000000..7982a0c +libfc_host_alloc_7917 libfc_host_alloc 2 7917 NULL +f_hidg_write_7932 f_hidg_write 3 7932 NULL +io_apic_setup_irq_pin_once_7934 io_apic_setup_irq_pin_once 1 7934 NULL ++hash_netiface6_expire_7944 hash_netiface6_expire 3 7944 NULL +integrity_digsig_verify_7956 integrity_digsig_verify 3 7956 NULL +smk_write_load_self_7958 smk_write_load_self 3 7958 NULL +sys_mbind_7990 sys_mbind 5 7990 NULL @@ -97358,6 +97750,7 @@ index 0000000..7982a0c +venus_lookup_8121 venus_lookup 4 8121 NULL +ieee80211_if_fmt_num_buffered_multicast_8127 ieee80211_if_fmt_num_buffered_multicast 3 8127 NULL +dma_map_area_8178 dma_map_area 5-2-3 8178 NULL ++ore_truncate_8181 ore_truncate 3 8181 NULL +__sk_mem_schedule_8185 __sk_mem_schedule 2 8185 NULL +ieee80211_if_fmt_dot11MeshHoldingTimeout_8187 ieee80211_if_fmt_dot11MeshHoldingTimeout 3 8187 NULL +recent_mt_proc_write_8206 recent_mt_proc_write 3 8206 NULL @@ -97367,6 +97760,7 @@ index 0000000..7982a0c +create_log_8225 create_log 2 8225 NULL nohasharray +kvm_mmu_page_set_gfn_8225 kvm_mmu_page_set_gfn 2 8225 &create_log_8225 +sctp_ssnmap_size_8228 sctp_ssnmap_size 0-1-2 8228 NULL ++ceph_sync_write_8233 ceph_sync_write 4 8233 NULL +bnx2x_iov_get_max_queue_count_8235 bnx2x_iov_get_max_queue_count 0 8235 NULL +check_xattr_ref_inode_8244 check_xattr_ref_inode 0 8244 NULL +add_rx_skb_8257 add_rx_skb 3 8257 NULL @@ -97378,11 +97772,13 @@ index 0000000..7982a0c +ipwireless_send_packet_8328 ipwireless_send_packet 4 8328 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 -+ping_getfrag_8360 ping_getfrag 4-3 8360 NULL ++isku_sysfs_write_talk_8360 isku_sysfs_write_talk 6 8360 NULL nohasharray ++ping_getfrag_8360 ping_getfrag 4-3 8360 &isku_sysfs_write_talk_8360 +uvc_v4l2_compat_ioctl32_8375 uvc_v4l2_compat_ioctl32 3 8375 NULL +xdi_copy_from_user_8395 xdi_copy_from_user 4 8395 NULL +zd_rf_scnprint_id_8406 zd_rf_scnprint_id 0-3 8406 NULL -+uvc_v4l2_ioctl_8411 uvc_v4l2_ioctl 2 8411 NULL ++smk_write_change_rule_8411 smk_write_change_rule 3 8411 NULL nohasharray ++uvc_v4l2_ioctl_8411 uvc_v4l2_ioctl 2 8411 &smk_write_change_rule_8411 +pca953x_gpio_to_irq_8424 pca953x_gpio_to_irq 2 8424 NULL +snd_usb_ctl_msg_8436 snd_usb_ctl_msg 8 8436 NULL +irq_create_mapping_8437 irq_create_mapping 2 8437 NULL @@ -97394,6 +97790,7 @@ index 0000000..7982a0c +pnp_resource_len_8532 pnp_resource_len 0 8532 NULL +alloc_pg_vec_8533 alloc_pg_vec 2 8533 NULL +ocfs2_read_virt_blocks_8538 ocfs2_read_virt_blocks 2-3 8538 NULL ++user_on_off_8552 user_on_off 2 8552 NULL +profile_remove_8556 profile_remove 3 8556 NULL +cache_slow_downcall_8570 cache_slow_downcall 2 8570 NULL +mga_ioremap_8571 mga_ioremap 1-2 8571 NULL @@ -97403,7 +97800,7 @@ index 0000000..7982a0c +shash_setkey_unaligned_8620 shash_setkey_unaligned 3 8620 NULL +it821x_firmware_command_8628 it821x_firmware_command 3 8628 NULL +scsi_dma_map_8632 scsi_dma_map 0 8632 NULL -+fuse_send_write_pages_8636 fuse_send_write_pages 0 8636 NULL ++fuse_send_write_pages_8636 fuse_send_write_pages 0-5 8636 NULL +generic_acl_set_8658 generic_acl_set 4 8658 NULL +dio_bio_alloc_8677 dio_bio_alloc 5 8677 NULL +lbs_bcnmiss_read_8678 lbs_bcnmiss_read 3 8678 NULL @@ -97448,6 +97845,7 @@ index 0000000..7982a0c +vol_cdev_read_8968 vol_cdev_read 3 8968 NULL nohasharray +seq_open_net_8968 seq_open_net 4 8968 &vol_cdev_read_8968 +bio_integrity_get_tag_8974 bio_integrity_get_tag 3 8974 NULL ++btrfs_alloc_free_block_8986 btrfs_alloc_free_block 3 8986 NULL +snd_emu10k1_ptr_read_9026 snd_emu10k1_ptr_read 0-2 9026 NULL +__pskb_copy_9038 __pskb_copy 2 9038 NULL +nla_put_9042 nla_put 3 9042 NULL @@ -97460,6 +97858,7 @@ index 0000000..7982a0c +caif_stream_sendmsg_9110 caif_stream_sendmsg 4 9110 NULL nohasharray +gfn_to_rmap_9110 gfn_to_rmap 2-3 9110 &caif_stream_sendmsg_9110 +pmcraid_change_queue_depth_9116 pmcraid_change_queue_depth 2 9116 NULL ++isku_sysfs_write_keys_macro_9120 isku_sysfs_write_keys_macro 6 9120 NULL +mq_remove_mapping_9124 mq_remove_mapping 2 9124 NULL +mlx4_alloc_resize_umem_9132 mlx4_alloc_resize_umem 3 9132 NULL +ext4_list_backups_9138 ext4_list_backups 0 9138 NULL @@ -97471,6 +97870,7 @@ index 0000000..7982a0c +gx1_gx_base_9198 gx1_gx_base 0 9198 NULL +snd_m3_get_pointer_9206 snd_m3_get_pointer 0 9206 NULL +get_pfn_9207 get_pfn 1 9207 NULL ++virtqueue_add_9217 virtqueue_add 5-4 9217 NULL +tx_tx_prepared_descs_read_9221 tx_tx_prepared_descs_read 3 9221 NULL +sctp_getsockopt_delayed_ack_9232 sctp_getsockopt_delayed_ack 2 9232 NULL +ocfs2_clear_ext_refcount_9256 ocfs2_clear_ext_refcount 4 9256 NULL @@ -97483,7 +97883,10 @@ index 0000000..7982a0c +ceph_sync_setxattr_9310 ceph_sync_setxattr 4 9310 NULL +memblock_find_in_range_node_9328 memblock_find_in_range_node 0-3-4 9328 NULL +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 ++sta_beacon_loss_count_read_9370 sta_beacon_loss_count_read 3 9370 NULL ++virtqueue_add_outbuf_9395 virtqueue_add_outbuf 3 9395 NULL +read_9397 read 3 9397 NULL +nf_nat_sip_expect_9418 nf_nat_sip_expect 8 9418 NULL +bm_realloc_pages_9431 bm_realloc_pages 2 9431 NULL @@ -97507,6 +97910,7 @@ index 0000000..7982a0c +f2fs_read_data_pages_9574 f2fs_read_data_pages 4 9574 NULL +biovec_create_pools_9575 biovec_create_pools 2 9575 NULL +ieee80211_tdls_mgmt_9581 ieee80211_tdls_mgmt 8 9581 NULL ++use_block_rsv_9597 use_block_rsv 3 9597 NULL +do_sync_9604 do_sync 1 9604 NULL +snd_emu10k1_fx8010_read_9605 snd_emu10k1_fx8010_read 5-6 9605 NULL +saa7164_buffer_alloc_user_9627 saa7164_buffer_alloc_user 2 9627 NULL @@ -97525,6 +97929,7 @@ index 0000000..7982a0c +fnb_9703 fnb 2-3 9703 NULL +fuse_iter_npages_9705 fuse_iter_npages 0 9705 NULL nohasharray +ieee80211_if_read_aid_9705 ieee80211_if_read_aid 3 9705 &fuse_iter_npages_9705 ++nla_get_u8_9736 nla_get_u8 0 9736 NULL +ieee80211_if_fmt_num_mcast_sta_9738 ieee80211_if_fmt_num_mcast_sta 3 9738 NULL +ddb_input_read_9743 ddb_input_read 3 9743 NULL +sta_last_ack_signal_read_9751 sta_last_ack_signal_read 3 9751 NULL @@ -97556,11 +97961,13 @@ index 0000000..7982a0c +get_free_serial_index_9969 get_free_serial_index 0 9969 NULL +btrfs_add_link_9973 btrfs_add_link 5 9973 NULL +ath6kl_usb_submit_ctrl_out_9978 ath6kl_usb_submit_ctrl_out 6 9978 NULL ++SYSC_move_pages_9986 SYSC_move_pages 2 9986 NULL +aat2870_dump_reg_10019 aat2870_dump_reg 0 10019 NULL +handle_request_10024 handle_request 9 10024 NULL +batadv_orig_hash_add_if_10033 batadv_orig_hash_add_if 2 10033 NULL +ieee80211_probereq_get_10040 ieee80211_probereq_get 4-5 10040 NULL +xen_destroy_contiguous_region_10054 xen_destroy_contiguous_region 1 10054 NULL ++vfio_pci_write_10063 vfio_pci_write 3 10063 NULL +ieee80211_set_probe_resp_10077 ieee80211_set_probe_resp 3 10077 NULL +ufs_bitmap_search_10105 ufs_bitmap_search 0-3 10105 NULL +get_elem_size_10110 get_elem_size 0-2 10110 NULL nohasharray @@ -97578,6 +97985,7 @@ index 0000000..7982a0c +jffs2_user_setxattr_10182 jffs2_user_setxattr 4 10182 NULL +do_ioctl_trans_10194 do_ioctl_trans 3 10194 NULL +cciss_proc_write_10259 cciss_proc_write 3 10259 NULL ++__qlcnic_pci_sriov_enable_10281 __qlcnic_pci_sriov_enable 2 10281 NULL +snd_rme9652_capture_copy_10287 snd_rme9652_capture_copy 5 10287 NULL +ubi_leb_change_10289 ubi_leb_change 4 10289 NULL +read_emulate_10310 read_emulate 2-4 10310 NULL @@ -97600,6 +98008,8 @@ index 0000000..7982a0c +sel_write_disable_10511 sel_write_disable 3 10511 NULL +osd_req_write_sg_kern_10514 osd_req_write_sg_kern 5 10514 NULL +rds_message_alloc_10517 rds_message_alloc 1 10517 NULL ++qlcnic_pci_sriov_enable_10519 qlcnic_pci_sriov_enable 2 10519 NULL nohasharray ++hash_netiface4_expire_10519 hash_netiface4_expire 3 10519 &qlcnic_pci_sriov_enable_10519 +ocfs2_add_refcounted_extent_10526 ocfs2_add_refcounted_extent 6 10526 NULL +get_vm_area_caller_10527 get_vm_area_caller 1 10527 NULL +snd_pcm_lib_read_10536 snd_pcm_lib_read 0-3 10536 NULL @@ -97611,6 +98021,7 @@ index 0000000..7982a0c +ima_show_htable_violations_10619 ima_show_htable_violations 3 10619 NULL +alloc_coherent_10632 alloc_coherent 2 10632 NULL +nfs_idmap_lookup_id_10660 nfs_idmap_lookup_id 2 10660 NULL ++dtf_read_device_10663 dtf_read_device 3 10663 NULL +parport_write_10669 parport_write 0 10669 NULL +inl_10708 inl 0 10708 NULL nohasharray +selinux_inode_setxattr_10708 selinux_inode_setxattr 4 10708 &inl_10708 @@ -97640,6 +98051,7 @@ index 0000000..7982a0c +tifm_alloc_adapter_10903 tifm_alloc_adapter 1 10903 NULL +__copy_from_user_10918 __copy_from_user 3 10918 NULL +da9052_map_irq_10952 da9052_map_irq 2 10952 NULL ++ci_port_test_write_10962 ci_port_test_write 3 10962 NULL +bm_entry_read_10976 bm_entry_read 3 10976 NULL +i915_min_freq_write_10981 i915_min_freq_write 3 10981 NULL +sched_autogroup_write_10984 sched_autogroup_write 3 10984 NULL @@ -97655,7 +98067,9 @@ index 0000000..7982a0c +stmpe_gpio_to_irq_11110 stmpe_gpio_to_irq 2 11110 NULL +tw_change_queue_depth_11116 tw_change_queue_depth 2 11116 NULL +page_offset_11120 page_offset 0 11120 NULL -+tracing_buffers_read_11124 tracing_buffers_read 3 11124 NULL ++tracing_buffers_read_11124 tracing_buffers_read 3 11124 NULL nohasharray ++cea_db_payload_len_11124 cea_db_payload_len 0 11124 &tracing_buffers_read_11124 ++alloc_alien_cache_11127 alloc_alien_cache 2 11127 NULL +acpi_os_map_memory_11161 acpi_os_map_memory 1-2 11161 NULL +ioat2_alloc_ring_11172 ioat2_alloc_ring 2 11172 NULL nohasharray +snd_gf1_pcm_playback_silence_11172 snd_gf1_pcm_playback_silence 3-4 11172 &ioat2_alloc_ring_11172 @@ -97679,6 +98093,7 @@ index 0000000..7982a0c +batadv_skb_head_push_11360 batadv_skb_head_push 2 11360 NULL +drm_vblank_init_11362 drm_vblank_init 2 11362 NULL +qib_get_base_info_11369 qib_get_base_info 3 11369 NULL ++isku_sysfs_read_keys_capslock_11392 isku_sysfs_read_keys_capslock 6 11392 NULL +dev_irnet_write_11398 dev_irnet_write 3 11398 NULL +___alloc_bootmem_11410 ___alloc_bootmem 1-2 11410 NULL +str_to_user_11411 str_to_user 2 11411 NULL @@ -97703,9 +98118,12 @@ index 0000000..7982a0c +oprofilefs_ulong_to_user_11582 oprofilefs_ulong_to_user 3 11582 NULL +snd_pcm_action_11589 snd_pcm_action 0 11589 NULL +fw_device_op_ioctl_11595 fw_device_op_ioctl 2 11595 NULL ++SYSC_mq_timedsend_11607 SYSC_mq_timedsend 3 11607 NULL ++add_new_bitmap_11644 add_new_bitmap 3 11644 NULL +sisusb_send_bridge_packet_11649 sisusb_send_bridge_packet 2 11649 NULL +nla_total_size_11658 nla_total_size 0-1 11658 NULL +ide_queue_pc_tail_11673 ide_queue_pc_tail 5 11673 NULL ++compat_SyS_msgsnd_11675 compat_SyS_msgsnd 2-3 11675 NULL +btrfs_alloc_delayed_item_11678 btrfs_alloc_delayed_item 1 11678 NULL +dsp_buffer_alloc_11684 dsp_buffer_alloc 2 11684 NULL +sctp_setsockopt_hmac_ident_11687 sctp_setsockopt_hmac_ident 3 11687 NULL @@ -97758,6 +98176,7 @@ index 0000000..7982a0c +compat_do_arpt_set_ctl_12184 compat_do_arpt_set_ctl 4 12184 NULL +ip_generic_getfrag_12187 ip_generic_getfrag 3-4 12187 NULL +bl_is_sector_init_12199 bl_is_sector_init 2 12199 NULL ++scaled_div_12201 scaled_div 1-2 12201 NULL +free_initrd_mem_12203 free_initrd_mem 1 12203 NULL +receive_copy_12216 receive_copy 3 12216 NULL +snd_pcm_kernel_ioctl_12219 snd_pcm_kernel_ioctl 0 12219 NULL @@ -97772,6 +98191,7 @@ index 0000000..7982a0c +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 +vxge_get_num_vfs_12302 vxge_get_num_vfs 0 12302 NULL ++wrap_min_12303 wrap_min 0-1-2 12303 NULL +tipc_msg_build_12326 tipc_msg_build 4 12326 NULL +pcbit_writecmd_12332 pcbit_writecmd 2 12332 NULL +mptctl_ioctl_12355 mptctl_ioctl 2 12355 NULL @@ -97779,6 +98199,7 @@ index 0000000..7982a0c +__nf_ct_ext_add_length_12364 __nf_ct_ext_add_length 3 12364 NULL +xfs_iext_inline_to_direct_12384 xfs_iext_inline_to_direct 2 12384 NULL +btrfs_file_extent_ram_bytes_12391 btrfs_file_extent_ram_bytes 0 12391 NULL ++hbucket_elem_add_12416 hbucket_elem_add 3 12416 NULL +ieee80211_if_read_num_mcast_sta_12419 ieee80211_if_read_num_mcast_sta 3 12419 NULL +skb_do_copy_data_nocache_12465 skb_do_copy_data_nocache 5 12465 NULL +qla4_82xx_pci_mem_write_direct_12479 qla4_82xx_pci_mem_write_direct 2 12479 NULL @@ -97799,6 +98220,7 @@ index 0000000..7982a0c +pwr_rcvd_awake_bcns_cnt_read_12632 pwr_rcvd_awake_bcns_cnt_read 3 12632 NULL +ctrl_cdev_compat_ioctl_12634 ctrl_cdev_compat_ioctl 3 12634 NULL +pn_sendmsg_12640 pn_sendmsg 4 12640 NULL ++dwc3_link_state_write_12641 dwc3_link_state_write 3 12641 NULL +wb_create_12651 wb_create 1 12651 NULL +ocfs2_read_block_12659 ocfs2_read_block 0 12659 NULL +sel_read_class_12669 sel_read_class 3 12669 NULL nohasharray @@ -97806,12 +98228,14 @@ index 0000000..7982a0c +ieee80211_if_read_num_buffered_multicast_12716 ieee80211_if_read_num_buffered_multicast 3 12716 NULL +ivtv_write_12721 ivtv_write 3 12721 NULL +key_rx_spec_read_12736 key_rx_spec_read 3 12736 NULL ++__mei_cl_async_send_12737 __mei_cl_async_send 3 12737 NULL +__videobuf_alloc_cached_12740 __videobuf_alloc_cached 1 12740 NULL +ieee80211_if_read_dot11MeshMaxRetries_12756 ieee80211_if_read_dot11MeshMaxRetries 3 12756 NULL +listxattr_12769 listxattr 3 12769 NULL +sctp_ssnmap_init_12772 sctp_ssnmap_init 2-3 12772 NULL +ieee80211_rx_mgmt_beacon_12780 ieee80211_rx_mgmt_beacon 3 12780 NULL +platform_create_bundle_12785 platform_create_bundle 4-6 12785 NULL ++btrfs_remove_free_space_12793 btrfs_remove_free_space 2 12793 NULL +scsi_adjust_queue_depth_12802 scsi_adjust_queue_depth 3 12802 NULL +xfs_inumbers_fmt_12817 xfs_inumbers_fmt 3 12817 NULL +readq_12825 readq 0 12825 NULL @@ -97835,6 +98259,7 @@ index 0000000..7982a0c +generic_segment_checks_13041 generic_segment_checks 0 13041 NULL +ocfs2_write_begin_13045 ocfs2_write_begin 3-4 13045 NULL +__dn_setsockopt_13060 __dn_setsockopt 5 13060 NULL ++biovec_create_pool_13079 biovec_create_pool 2 13079 NULL +irq_set_chip_and_handler_13088 irq_set_chip_and_handler 1 13088 NULL +xattr_getsecurity_13090 xattr_getsecurity 0 13090 NULL +blk_rq_map_sg_13092 blk_rq_map_sg 0 13092 NULL @@ -97869,6 +98294,7 @@ index 0000000..7982a0c +lpfc_idiag_mbxacc_get_setup_13282 lpfc_idiag_mbxacc_get_setup 0 13282 NULL +platform_device_add_resources_13289 platform_device_add_resources 3 13289 NULL +i915_drop_caches_write_13308 i915_drop_caches_write 3 13308 NULL ++reexecute_instruction_13321 reexecute_instruction 2 13321 NULL +us122l_ctl_msg_13330 us122l_ctl_msg 8 13330 NULL +__clone_and_map_data_bio_13334 __clone_and_map_data_bio 4-8 13334 NULL +kvm_read_nested_guest_page_13337 kvm_read_nested_guest_page 5-2 13337 NULL @@ -97876,6 +98302,7 @@ index 0000000..7982a0c +mthca_alloc_mtt_range_13371 mthca_alloc_mtt_range 2 13371 NULL +iso_sched_alloc_13377 iso_sched_alloc 1 13377 NULL nohasharray +wep_key_not_found_read_13377 wep_key_not_found_read 3 13377 &iso_sched_alloc_13377 ++dis_bypass_write_13388 dis_bypass_write 3 13388 NULL +carl9170_rx_untie_data_13405 carl9170_rx_untie_data 3 13405 NULL +sky2_receive_13407 sky2_receive 2 13407 NULL +netxen_alloc_sds_rings_13417 netxen_alloc_sds_rings 2 13417 NULL @@ -97888,7 +98315,8 @@ index 0000000..7982a0c +core_status_13515 core_status 4 13515 NULL +smk_write_mapped_13519 smk_write_mapped 3 13519 NULL +bm_init_13529 bm_init 2 13529 NULL -+non_atomic_pte_lookup_13540 non_atomic_pte_lookup 2 13540 NULL ++non_atomic_pte_lookup_13540 non_atomic_pte_lookup 2 13540 NULL nohasharray ++SYSC_remap_file_pages_13540 SYSC_remap_file_pages 1 13540 &non_atomic_pte_lookup_13540 +ieee80211_if_read_ap_power_level_13558 ieee80211_if_read_ap_power_level 3 13558 NULL +ubifs_get_idx_gc_leb_13566 ubifs_get_idx_gc_leb 0 13566 NULL +sys_madvise_13569 sys_madvise 1 13569 NULL @@ -97913,6 +98341,7 @@ index 0000000..7982a0c +ath6kl_mgmt_powersave_ap_13791 ath6kl_mgmt_powersave_ap 6 13791 NULL +random_read_13815 random_read 3 13815 NULL +hsi_register_board_info_13820 hsi_register_board_info 2 13820 NULL ++___mei_cl_send_13821 ___mei_cl_send 3 13821 NULL +evdev_ioctl_compat_13851 evdev_ioctl_compat 2-3 13851 NULL +compat_ip_setsockopt_13870 compat_ip_setsockopt 5 13870 NULL nohasharray +alloc_trace_uprobe_13870 alloc_trace_uprobe 3 13870 &compat_ip_setsockopt_13870 @@ -97932,7 +98361,9 @@ index 0000000..7982a0c +bm_block_bits_13981 bm_block_bits 0 13981 NULL nohasharray +dvb_demux_read_13981 dvb_demux_read 3 13981 &bm_block_bits_13981 +btrfs_get_blocks_direct_14016 btrfs_get_blocks_direct 2 14016 NULL ++dmi_format_ids_14018 dmi_format_ids 2 14018 NULL +_rtl92s_firmware_downloadcode_14021 _rtl92s_firmware_downloadcode 3 14021 NULL ++iscsi_create_flashnode_conn_14022 iscsi_create_flashnode_conn 4 14022 NULL +dvb_usercopy_14036 dvb_usercopy 2 14036 NULL +read_def_modal_eeprom_14041 read_def_modal_eeprom 3 14041 NULL +ieee80211_if_fmt_aid_14055 ieee80211_if_fmt_aid 3 14055 NULL @@ -97943,6 +98374,7 @@ index 0000000..7982a0c +nlmsg_len_14115 nlmsg_len 0 14115 NULL +vfio_fops_compat_ioctl_14130 vfio_fops_compat_ioctl 3 14130 NULL +ntfs_rl_replace_14136 ntfs_rl_replace 2-4 14136 NULL ++isku_sysfs_read_light_14140 isku_sysfs_read_light 6 14140 NULL +em_canid_change_14150 em_canid_change 3 14150 NULL +gsm_dlci_data_14155 gsm_dlci_data 3 14155 NULL +print_input_mask_14168 print_input_mask 3-0 14168 NULL @@ -97981,6 +98413,7 @@ index 0000000..7982a0c +drm_vmalloc_dma_14550 drm_vmalloc_dma 1 14550 NULL +usb_dump_desc_14553 usb_dump_desc 0 14553 NULL +qp_host_alloc_queue_14566 qp_host_alloc_queue 1 14566 NULL ++SyS_setdomainname_14569 SyS_setdomainname 2 14569 NULL +remap_to_origin_then_cache_14583 remap_to_origin_then_cache 3 14583 NULL +idmap_pipe_downcall_14591 idmap_pipe_downcall 3 14591 NULL +ceph_osdc_alloc_request_14597 ceph_osdc_alloc_request 3 14597 NULL @@ -97990,6 +98423,8 @@ index 0000000..7982a0c +pipeline_enc_tx_stat_fifo_int_read_14680 pipeline_enc_tx_stat_fifo_int_read 3 14680 NULL +ieee80211_if_fmt_rc_rateidx_mask_2ghz_14683 ieee80211_if_fmt_rc_rateidx_mask_2ghz 3 14683 NULL +tsi148_master_set_14685 tsi148_master_set 4 14685 NULL ++SyS_fsetxattr_14702 SyS_fsetxattr 4 14702 NULL ++persistent_ram_ecc_string_14704 persistent_ram_ecc_string 0 14704 NULL +u_audio_playback_14709 u_audio_playback 3 14709 NULL +get_bio_block_14714 get_bio_block 0 14714 NULL +vfd_write_14717 vfd_write 3 14717 NULL @@ -98004,6 +98439,7 @@ index 0000000..7982a0c +hpet_readl_14801 hpet_readl 0 14801 NULL nohasharray +snd_als300_gcr_read_14801 snd_als300_gcr_read 0 14801 &hpet_readl_14801 +bcma_scan_read32_14802 bcma_scan_read32 0 14802 NULL ++do_tune_cpucache_14828 do_tune_cpucache 2 14828 NULL +__mutex_fastpath_lock_retval_14844 __mutex_fastpath_lock_retval 0 14844 NULL +mrp_attr_create_14853 mrp_attr_create 3 14853 NULL +lcd_write_14857 lcd_write 3 14857 NULL nohasharray @@ -98012,6 +98448,7 @@ index 0000000..7982a0c +sriov_enable_migration_14889 sriov_enable_migration 2 14889 NULL +acpi_os_allocate_14892 acpi_os_allocate 1 14892 NULL +unifi_read_14899 unifi_read 3 14899 NULL ++SYSC_readv_14901 SYSC_readv 3 14901 NULL +krealloc_14908 krealloc 2 14908 NULL +regmap_irq_get_virq_14910 regmap_irq_get_virq 2 14910 NULL +__arch_hweight64_14923 __arch_hweight64 0 14923 NULL nohasharray @@ -98022,6 +98459,7 @@ index 0000000..7982a0c +mce_flush_rx_buffer_14976 mce_flush_rx_buffer 2 14976 NULL +setkey_14987 setkey 3 14987 NULL nohasharray +gpio_twl4030_write_14987 gpio_twl4030_write 1 14987 &setkey_14987 ++xfs_dinode_size_14996 xfs_dinode_size 0 14996 NULL +vmap_15025 vmap 2 15025 NULL +blk_integrity_tuple_size_15027 blk_integrity_tuple_size 0 15027 NULL +irq_get_next_irq_15053 irq_get_next_irq 1 15053 NULL @@ -98029,15 +98467,18 @@ index 0000000..7982a0c +ieee80211_if_read_uapsd_max_sp_len_15067 ieee80211_if_read_uapsd_max_sp_len 3 15067 NULL +nfs4_write_cached_acl_15070 nfs4_write_cached_acl 4 15070 NULL +ntfs_copy_from_user_15072 ntfs_copy_from_user 3-5 15072 NULL ++compat_SyS_preadv_15105 compat_SyS_preadv 3 15105 NULL +hex_dump_to_buffer_15121 hex_dump_to_buffer 6 15121 NULL +start_port_15124 start_port 0 15124 NULL +memchr_15126 memchr 0 15126 NULL +ipwireless_ppp_mru_15153 ipwireless_ppp_mru 0 15153 NULL +self_check_not_bad_15175 self_check_not_bad 0 15175 NULL ++SYSC_setdomainname_15180 SYSC_setdomainname 2 15180 NULL +iscsi_create_endpoint_15193 iscsi_create_endpoint 1 15193 NULL +reserve_resources_15194 reserve_resources 3 15194 NULL +bfad_debugfs_write_regrd_15218 bfad_debugfs_write_regrd 3 15218 NULL +il_dbgfs_rx_stats_read_15243 il_dbgfs_rx_stats_read 3 15243 NULL ++div64_u64_15263 div64_u64 0-1-2 15263 NULL +compat_raw_ioctl_15290 compat_raw_ioctl 3 15290 NULL +sys_connect_15291 sys_connect 3 15291 NULL nohasharray +xlate_dev_mem_ptr_15291 xlate_dev_mem_ptr 1 15291 &sys_connect_15291 @@ -98098,7 +98539,8 @@ index 0000000..7982a0c +gx1_read_conf_reg_15817 gx1_read_conf_reg 0 15817 NULL nohasharray +nameseq_list_15817 nameseq_list 3 15817 &gx1_read_conf_reg_15817 nohasharray +gnttab_expand_15817 gnttab_expand 1 15817 &nameseq_list_15817 -+afs_proc_rootcell_write_15822 afs_proc_rootcell_write 3 15822 NULL ++afs_proc_rootcell_write_15822 afs_proc_rootcell_write 3 15822 NULL nohasharray ++firmware_upload_15822 firmware_upload 3 15822 &afs_proc_rootcell_write_15822 +brcmf_sdbrcm_died_dump_15841 brcmf_sdbrcm_died_dump 3 15841 NULL +table_size_15851 table_size 0-1-2 15851 NULL +ubi_io_write_15870 ubi_io_write 5-4 15870 NULL nohasharray @@ -98111,6 +98553,7 @@ index 0000000..7982a0c +lpfc_idiag_drbacc_read_15948 lpfc_idiag_drbacc_read 3 15948 NULL +snd_pcm_lib_read_transfer_15952 snd_pcm_lib_read_transfer 4-2-5 15952 NULL +remap_pci_mem_15966 remap_pci_mem 1-2 15966 NULL ++tfrc_calc_x_15975 tfrc_calc_x 1-2 15975 NULL +frame_alloc_15981 frame_alloc 4 15981 NULL +alloc_vm_area_15989 alloc_vm_area 1 15989 NULL +hdpvr_register_videodev_16010 hdpvr_register_videodev 3 16010 NULL @@ -98129,6 +98572,7 @@ index 0000000..7982a0c +bnx2i_get_cid_num_16166 bnx2i_get_cid_num 0 16166 NULL +mapping_level_16188 mapping_level 2 16188 NULL +cipso_v4_map_cat_rng_hton_16203 cipso_v4_map_cat_rng_hton 0 16203 NULL ++SyS_pselect6_16210 SyS_pselect6 1 16210 NULL +create_table_16213 create_table 2 16213 NULL +atomic_read_file_16227 atomic_read_file 3 16227 NULL +BcmGetSectionValStartOffset_16235 BcmGetSectionValStartOffset 0 16235 NULL @@ -98145,8 +98589,11 @@ index 0000000..7982a0c +mirror_status_16283 mirror_status 5 16283 &account_16283 +retry_instruction_16285 retry_instruction 2 16285 NULL +stk_allocate_buffers_16291 stk_allocate_buffers 2 16291 NULL ++rbd_segment_offset_16293 rbd_segment_offset 0-2 16293 NULL ++tfrc_invert_loss_event_rate_16295 tfrc_invert_loss_event_rate 1 16295 NULL +rsc_mgr_init_16299 rsc_mgr_init 3 16299 NULL +wb_map_16301 wb_map 2 16301 NULL ++ext4_blocks_count_16320 ext4_blocks_count 0 16320 NULL +vmw_cursor_update_image_16332 vmw_cursor_update_image 3-4 16332 NULL +total_ps_buffered_read_16365 total_ps_buffered_read 3 16365 NULL +iscsi_tcp_conn_setup_16376 iscsi_tcp_conn_setup 2 16376 NULL @@ -98176,6 +98623,7 @@ index 0000000..7982a0c +drm_malloc_ab_16831 drm_malloc_ab 1-2 16831 NULL +scsi_mode_sense_16835 scsi_mode_sense 5 16835 NULL +hfsplus_min_io_size_16859 hfsplus_min_io_size 0 16859 NULL ++vfio_pci_rw_16861 vfio_pci_rw 3 16861 NULL +alloc_idx_lebs_16872 alloc_idx_lebs 2 16872 NULL +carl9170_debugfs_ampdu_state_read_16873 carl9170_debugfs_ampdu_state_read 3 16873 NULL +st_write_16874 st_write 3 16874 NULL @@ -98230,6 +98678,7 @@ index 0000000..7982a0c +_fd_dma_mem_free_17406 _fd_dma_mem_free 1 17406 NULL +lpfc_debugfs_dif_err_write_17424 lpfc_debugfs_dif_err_write 3 17424 NULL +sta_connected_time_read_17435 sta_connected_time_read 3 17435 NULL ++SYSC_fcntl_17441 SYSC_fcntl 3 17441 NULL +nla_get_u32_17455 nla_get_u32 0 17455 NULL +__ref_totlen_17461 __ref_totlen 0 17461 NULL +compat_cmd_17465 compat_cmd 2 17465 NULL @@ -98249,16 +98698,22 @@ index 0000000..7982a0c +ocfs2_mark_extent_written_17615 ocfs2_mark_extent_written 6 17615 NULL +ieee80211_if_read_dot11MeshHWMPactivePathToRootTimeout_17618 ieee80211_if_read_dot11MeshHWMPactivePathToRootTimeout 3 17618 NULL +twl4030_set_gpio_direction_17645 twl4030_set_gpio_direction 1 17645 NULL ++SYSC_migrate_pages_17657 SYSC_migrate_pages 2 17657 NULL +packet_setsockopt_17662 packet_setsockopt 5 17662 NULL nohasharray +ubi_io_read_data_17662 ubi_io_read_data 0 17662 &packet_setsockopt_17662 +pwr_enable_ps_read_17686 pwr_enable_ps_read 3 17686 NULL +gfn_to_pfn_memslot_17693 gfn_to_pfn_memslot 2 17693 NULL +__einj_error_trigger_17707 __einj_error_trigger 1 17707 NULL nohasharray +venus_rename_17707 venus_rename 5-4 17707 &__einj_error_trigger_17707 ++isku_sysfs_write_keys_function_17726 isku_sysfs_write_keys_function 6 17726 NULL +exofs_read_lookup_dev_table_17733 exofs_read_lookup_dev_table 3 17733 NULL +sctpprobe_read_17741 sctpprobe_read 3 17741 NULL +mark_unsafe_pages_17759 mark_unsafe_pages 0 17759 NULL +brcmf_usb_attach_17766 brcmf_usb_attach 2-3 17766 NULL ++dtf_read_run_17768 dtf_read_run 3 17768 NULL ++brcmf_sdio_chip_verifynvram_17776 brcmf_sdio_chip_verifynvram 4 17776 NULL ++hash_ipport6_expire_17784 hash_ipport6_expire 3 17784 NULL ++perf_clock_17787 perf_clock 0 17787 NULL +ubifs_leb_change_17789 ubifs_leb_change 4 17789 NULL +_snd_pcm_lib_alloc_vmalloc_buffer_17820 _snd_pcm_lib_alloc_vmalloc_buffer 2 17820 NULL +gnet_stats_copy_app_17821 gnet_stats_copy_app 3 17821 NULL @@ -98294,7 +98749,9 @@ index 0000000..7982a0c +hex_byte_pack_18064 hex_byte_pack 0 18064 NULL +packet_came_18072 packet_came 3 18072 NULL +kvm_read_guest_page_18074 kvm_read_guest_page 5-2 18074 NULL ++SYSC_pselect6_18076 SYSC_pselect6 1 18076 NULL +get_vm_area_18080 get_vm_area 1 18080 NULL ++SYSC_semtimedop_18091 SYSC_semtimedop 3 18091 NULL +mpi_alloc_18094 mpi_alloc 1 18094 NULL +dfs_file_read_18116 dfs_file_read 3 18116 NULL +svc_getnl_18120 svc_getnl 0 18120 NULL @@ -98307,6 +98764,7 @@ index 0000000..7982a0c +gsm_control_message_18209 gsm_control_message 4 18209 NULL +do_ipv6_setsockopt_18215 do_ipv6_setsockopt 5 18215 NULL +gnttab_alloc_grant_references_18240 gnttab_alloc_grant_references 1 18240 NULL ++alloc_trace_uprobe_18247 alloc_trace_uprobe 3 18247 NULL +snd_ctl_ioctl_compat_18250 snd_ctl_ioctl_compat 3 18250 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 @@ -98324,13 +98782,17 @@ index 0000000..7982a0c +bio_integrity_advance_18324 bio_integrity_advance 2 18324 NULL +pwr_power_save_off_read_18355 pwr_power_save_off_read 3 18355 NULL +xlbd_reserve_minors_18365 xlbd_reserve_minors 1-2 18365 NULL ++SyS_process_vm_readv_18366 SyS_process_vm_readv 3-5 18366 NULL +ep_io_18367 ep_io 0 18367 NULL +qib_user_sdma_num_pages_18371 qib_user_sdma_num_pages 0 18371 NULL ++ci_role_write_18388 ci_role_write 3 18388 NULL +__video_register_device_18399 __video_register_device 3 18399 NULL -+adis16136_show_serial_18402 adis16136_show_serial 3 18402 NULL ++hash_ip4_expire_18402 hash_ip4_expire 3 18402 NULL nohasharray ++adis16136_show_serial_18402 adis16136_show_serial 3 18402 &hash_ip4_expire_18402 +crystalhd_user_data_18407 crystalhd_user_data 3 18407 NULL +usbnet_write_cmd_nopm_18426 usbnet_write_cmd_nopm 7 18426 NULL -+batadv_orig_node_add_if_18433 batadv_orig_node_add_if 2 18433 NULL ++batadv_orig_node_add_if_18433 batadv_orig_node_add_if 2 18433 NULL nohasharray ++iscsi_create_flashnode_sess_18433 iscsi_create_flashnode_sess 4 18433 &batadv_orig_node_add_if_18433 +snd_hda_get_connections_18437 snd_hda_get_connections 0 18437 NULL +fuse_perform_write_18457 fuse_perform_write 4 18457 NULL +regset_tls_set_18459 regset_tls_set 4 18459 NULL @@ -98346,7 +98808,8 @@ index 0000000..7982a0c +debug_output_18575 debug_output 3 18575 NULL +check_lpt_type_18577 check_lpt_type 0 18577 NULL +__netdev_alloc_skb_18595 __netdev_alloc_skb 2 18595 NULL -+filemap_fdatawait_range_18600 filemap_fdatawait_range 0 18600 NULL ++filemap_fdatawait_range_18600 filemap_fdatawait_range 0 18600 NULL nohasharray ++slabinfo_write_18600 slabinfo_write 3 18600 &filemap_fdatawait_range_18600 +iowarrior_write_18604 iowarrior_write 3 18604 NULL +batadv_arp_get_type_18609 batadv_arp_get_type 3 18609 NULL +from_buffer_18625 from_buffer 3 18625 NULL @@ -98355,9 +98818,11 @@ index 0000000..7982a0c +unmap_page_18665 unmap_page 2-3 18665 NULL +xfs_iext_insert_18667 xfs_iext_insert 3 18667 NULL +replay_log_leb_18704 replay_log_leb 3 18704 NULL -+iwl_dbgfs_rx_handlers_read_18708 iwl_dbgfs_rx_handlers_read 3 18708 NULL ++unlocked_compat_ipmi_ioctl_18708 unlocked_compat_ipmi_ioctl 3 18708 NULL nohasharray ++iwl_dbgfs_rx_handlers_read_18708 iwl_dbgfs_rx_handlers_read 3 18708 &unlocked_compat_ipmi_ioctl_18708 +ceph_alloc_page_vector_18710 ceph_alloc_page_vector 1 18710 NULL +ocfs2_trim_extent_18711 ocfs2_trim_extent 4-3 18711 NULL ++compat_SyS_writev_18712 compat_SyS_writev 3 18712 NULL +blk_rq_bytes_18715 blk_rq_bytes 0 18715 NULL +snd_als4k_gcr_read_addr_18741 snd_als4k_gcr_read_addr 0 18741 NULL +o2hb_debug_create_18744 o2hb_debug_create 4 18744 NULL @@ -98366,6 +98831,7 @@ index 0000000..7982a0c +md_compat_ioctl_18764 md_compat_ioctl 4 18764 NULL +read_file_dump_nfcal_18766 read_file_dump_nfcal 3 18766 NULL +ffs_epfile_read_18775 ffs_epfile_read 3 18775 NULL ++SyS_lsetxattr_18776 SyS_lsetxattr 4 18776 NULL +alloc_fcdev_18780 alloc_fcdev 1 18780 NULL +fat_compat_dir_ioctl_18800 fat_compat_dir_ioctl 3 18800 NULL +ieee80211_auth_challenge_18810 ieee80211_auth_challenge 3 18810 NULL @@ -98382,6 +98848,7 @@ index 0000000..7982a0c +ceph_setxattr_18913 ceph_setxattr 4 18913 NULL +mangle_packet_18920 mangle_packet 7-9 18920 NULL +snapshot_write_next_18937 snapshot_write_next 0 18937 NULL ++regcache_sync_block_18963 regcache_sync_block 3-4 18963 NULL +__nla_reserve_18974 __nla_reserve 3 18974 NULL +gfn_to_pfn_atomic_18981 gfn_to_pfn_atomic 2 18981 NULL +find_dirtiest_idx_leb_19001 find_dirtiest_idx_leb 0 19001 NULL @@ -98393,6 +98860,8 @@ index 0000000..7982a0c +drm_fb_helper_init_19044 drm_fb_helper_init 3-4 19044 NULL +create_gpadl_header_19064 create_gpadl_header 2 19064 NULL +ieee80211_key_alloc_19065 ieee80211_key_alloc 3 19065 NULL ++msix_map_region_19072 msix_map_region 2 19072 NULL ++ceph_create_snap_context_19082 ceph_create_snap_context 1 19082 NULL +sys_process_vm_readv_19090 sys_process_vm_readv 3-5 19090 NULL nohasharray +brcmf_usbdev_qinit_19090 brcmf_usbdev_qinit 2 19090 &sys_process_vm_readv_19090 +sta_last_seq_ctrl_read_19106 sta_last_seq_ctrl_read 3 19106 NULL @@ -98420,11 +98889,14 @@ index 0000000..7982a0c +gfn_to_gpa_19320 gfn_to_gpa 0-1 19320 NULL +debug_read_19322 debug_read 3 19322 NULL +cfg80211_inform_bss_19332 cfg80211_inform_bss 8 19332 NULL ++closure_sub_19359 closure_sub 2 19359 NULL +read_zero_19366 read_zero 3 19366 NULL +interpret_user_input_19393 interpret_user_input 2 19393 NULL ++sync_fill_pt_info_19397 sync_fill_pt_info 0 19397 NULL +get_n_events_by_type_19401 get_n_events_by_type 0 19401 NULL +dvbdmx_write_19423 dvbdmx_write 3 19423 NULL +__phys_addr_19434 __phys_addr 0 19434 NULL ++SyS_sched_getaffinity_19444 SyS_sched_getaffinity 2 19444 NULL +xfrm_alg_auth_len_19454 xfrm_alg_auth_len 0 19454 NULL +hpet_compat_ioctl_19455 hpet_compat_ioctl 3 19455 NULL +gnet_stats_copy_19458 gnet_stats_copy 4 19458 NULL @@ -98443,10 +98915,12 @@ index 0000000..7982a0c +bm_status_read_19583 bm_status_read 3 19583 NULL +batadv_tt_update_orig_19586 batadv_tt_update_orig 4 19586 NULL +load_xattr_datum_19594 load_xattr_datum 0 19594 NULL ++__mei_cl_recv_19636 __mei_cl_recv 3 19636 NULL +usbvision_rvmalloc_19655 usbvision_rvmalloc 1 19655 NULL +LoadBitmap_19658 LoadBitmap 2 19658 NULL +usbnet_write_cmd_19679 usbnet_write_cmd 7 19679 NULL +bio_detain_19690 bio_detain 2 19690 NULL ++mem_cgroup_swappiness_19718 mem_cgroup_swappiness 0 19718 NULL +read_reg_19723 read_reg 0 19723 NULL +wm8350_block_write_19727 wm8350_block_write 3-2 19727 NULL +memcpy_toiovecend_19736 memcpy_toiovecend 4-3 19736 NULL @@ -98472,8 +98946,10 @@ index 0000000..7982a0c +iwl_dbgfs_rx_queue_read_19943 iwl_dbgfs_rx_queue_read 3 19943 NULL +attach_hdlc_protocol_19986 attach_hdlc_protocol 3 19986 NULL +diva_um_idi_read_20003 diva_um_idi_read 0 20003 NULL ++SYSC_fgetxattr_20027 SYSC_fgetxattr 4 20027 NULL +split_scan_timeout_read_20029 split_scan_timeout_read 3 20029 NULL +alloc_ieee80211_20063 alloc_ieee80211 1 20063 NULL ++btrfs_pin_extent_for_log_replay_20069 btrfs_pin_extent_for_log_replay 2 20069 NULL +rawv6_sendmsg_20080 rawv6_sendmsg 4 20080 NULL +fuse_conn_limit_read_20084 fuse_conn_limit_read 3 20084 NULL +team_options_register_20091 team_options_register 3 20091 NULL @@ -98501,6 +98977,7 @@ index 0000000..7982a0c +__kfifo_from_user_20399 __kfifo_from_user 3 20399 NULL +xen_create_contiguous_region_20457 xen_create_contiguous_region 1 20457 NULL +nfs3_setxattr_20458 nfs3_setxattr 4 20458 NULL ++dec_zcache_pers_zpages_20465 dec_zcache_pers_zpages 1 20465 NULL +compat_ipv6_setsockopt_20468 compat_ipv6_setsockopt 5 20468 NULL +read_buf_20469 read_buf 2 20469 NULL +btrfs_get_32_20476 btrfs_get_32 0 20476 NULL @@ -98518,6 +98995,7 @@ index 0000000..7982a0c +crypto_ahash_reqsize_20569 crypto_ahash_reqsize 0 20569 NULL +i915_max_freq_read_20581 i915_max_freq_read 3 20581 NULL +batadv_tt_append_diff_20588 batadv_tt_append_diff 4 20588 NULL ++sync_timeline_create_20601 sync_timeline_create 2 20601 NULL +lirc_write_20604 lirc_write 3 20604 NULL +qib_qsfp_write_20614 qib_qsfp_write 0-4-2 20614 NULL +snd_pcm_oss_prepare_20641 snd_pcm_oss_prepare 0 20641 NULL @@ -98543,12 +99021,15 @@ index 0000000..7982a0c +ocfs2_align_bytes_to_clusters_20754 ocfs2_align_bytes_to_clusters 2 20754 NULL +brcmf_p2p_escan_20763 brcmf_p2p_escan 2 20763 NULL +ubi_io_read_20767 ubi_io_read 0 20767 NULL ++ext4_r_blocks_count_20768 ext4_r_blocks_count 0 20768 NULL +fb_alloc_cmap_gfp_20792 fb_alloc_cmap_gfp 2 20792 NULL +iommu_range_alloc_20794 iommu_range_alloc 3 20794 NULL +iwl_dbgfs_rxon_flags_read_20795 iwl_dbgfs_rxon_flags_read 3 20795 NULL +sys_sendto_20809 sys_sendto 6 20809 NULL ++cfv_alloc_and_copy_skb_20812 cfv_alloc_and_copy_skb 4 20812 NULL +strndup_user_20819 strndup_user 2 20819 NULL +calc_layout_20829 calc_layout 3 20829 NULL ++dtf_read_channel_20831 dtf_read_channel 3 20831 NULL +wl1271_format_buffer_20834 wl1271_format_buffer 2 20834 NULL +uvc_alloc_entity_20836 uvc_alloc_entity 3-4 20836 NULL +snd_pcm_capture_avail_20867 snd_pcm_capture_avail 0 20867 NULL @@ -98581,10 +99062,13 @@ index 0000000..7982a0c +i2400m_rx_trace_21127 i2400m_rx_trace 3 21127 NULL +tps6586x_irq_init_21144 tps6586x_irq_init 3 21144 NULL +ocfs2_block_check_validate_21149 ocfs2_block_check_validate 2 21149 NULL ++alloc_pg_vec_21159 alloc_pg_vec 3 21159 NULL +cx18_v4l2_read_21196 cx18_v4l2_read 3 21196 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 21220 NULL +get_numpages_21227 get_numpages 0-1-2 21227 NULL ++SyS_mlock_21238 SyS_mlock 1 21238 NULL +input_ff_create_21240 input_ff_create 2 21240 NULL +cfg80211_notify_new_peer_candidate_21242 cfg80211_notify_new_peer_candidate 4 21242 NULL +ocfs2_blocks_for_bytes_21268 ocfs2_blocks_for_bytes 0-2 21268 NULL @@ -98598,6 +99082,7 @@ index 0000000..7982a0c +gfs2_ea_get_copy_21353 gfs2_ea_get_copy 0 21353 NULL +max77693_irq_domain_map_21357 max77693_irq_domain_map 2 21357 NULL +alloc_orinocodev_21371 alloc_orinocodev 1 21371 NULL ++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 +snd_m3_inw_21406 snd_m3_inw 0 21406 NULL @@ -98607,6 +99092,7 @@ index 0000000..7982a0c +aggr_size_tx_agg_vs_rate_read_21438 aggr_size_tx_agg_vs_rate_read 3 21438 NULL +__ertm_hdr_size_21450 __ertm_hdr_size 0 21450 NULL +concat_writev_21451 concat_writev 3 21451 NULL ++mei_nfc_send_21477 mei_nfc_send 3 21477 NULL +read_file_xmit_21487 read_file_xmit 3 21487 NULL +mmc_alloc_sg_21504 mmc_alloc_sg 1 21504 NULL +btrfs_file_aio_write_21520 btrfs_file_aio_write 4 21520 NULL @@ -98616,6 +99102,7 @@ index 0000000..7982a0c +rx_rx_beacon_early_term_read_21559 rx_rx_beacon_early_term_read 3 21559 NULL +xfs_buf_read_uncached_21585 xfs_buf_read_uncached 3 21585 NULL +ocfs2_acl_from_xattr_21604 ocfs2_acl_from_xattr 2 21604 NULL ++compat_SyS_pwritev64_21606 compat_SyS_pwritev64 3 21606 NULL +__jfs_getxattr_21631 __jfs_getxattr 0 21631 NULL +validate_nnode_21638 validate_nnode 0 21638 NULL +__irq_alloc_descs_21639 __irq_alloc_descs 2-1-3 21639 NULL @@ -98648,9 +99135,12 @@ index 0000000..7982a0c +qsfp_1_read_21915 qsfp_1_read 3 21915 NULL +security_mmap_addr_21970 security_mmap_addr 0 21970 NULL +alloc_ldt_21972 alloc_ldt 2 21972 NULL ++SYSC_prctl_21980 SYSC_prctl 4 21980 NULL +rxpipe_descr_host_int_trig_rx_data_read_22001 rxpipe_descr_host_int_trig_rx_data_read 3 22001 NULL nohasharray +compat_rw_copy_check_uvector_22001 compat_rw_copy_check_uvector 0-3 22001 &rxpipe_descr_host_int_trig_rx_data_read_22001 ++regcache_sync_block_raw_flush_22021 regcache_sync_block_raw_flush 3-4 22021 NULL +btrfs_get_16_22023 btrfs_get_16 0 22023 NULL ++_sp2d_min_pg_22032 _sp2d_min_pg 0 22032 NULL +zd_usb_read_fw_22049 zd_usb_read_fw 4 22049 NULL +ieee80211_if_fmt_dropped_frames_ttl_22054 ieee80211_if_fmt_dropped_frames_ttl 3 22054 NULL +btrfs_reloc_clone_csums_22077 btrfs_reloc_clone_csums 2 22077 NULL @@ -98658,6 +99148,8 @@ index 0000000..7982a0c +mem_rw_22085 mem_rw 3 22085 NULL +is_swbp_at_addr_22089 is_swbp_at_addr 2 22089 NULL +lowpan_fragment_xmit_22095 lowpan_fragment_xmit 3-4 22095 NULL ++sched_clock_cpu_22098 sched_clock_cpu 0 22098 NULL ++qlcnic_sriov_pf_enable_22103 qlcnic_sriov_pf_enable 2 22103 NULL +sys_remap_file_pages_22124 sys_remap_file_pages 1 22124 NULL +__bitmap_size_22138 __bitmap_size 0 22138 NULL +compat_insn_22142 compat_insn 2 22142 NULL @@ -98674,6 +99166,7 @@ index 0000000..7982a0c +__tun_chr_ioctl_22300 __tun_chr_ioctl 4 22300 &pci_vpd_srdt_size_22300 +extend_brk_22301 extend_brk 0 22301 NULL +mesh_table_alloc_22305 mesh_table_alloc 1 22305 NULL ++C_SYSC_msgrcv_22320 C_SYSC_msgrcv 2-3 22320 NULL +get_segment_base_22324 get_segment_base 0 22324 NULL +radix_tree_find_next_bit_22334 radix_tree_find_next_bit 2-3 22334 NULL +atomic_read_22342 atomic_read 0 22342 NULL @@ -98693,6 +99186,7 @@ index 0000000..7982a0c +handle_received_packet_22457 handle_received_packet 3 22457 NULL +mem_cgroup_read_22461 mem_cgroup_read 5 22461 NULL +batadv_check_unicast_packet_22468 batadv_check_unicast_packet 3 22468 NULL ++dtf_write_device_22471 dtf_write_device 3 22471 NULL +cache_write_procfs_22491 cache_write_procfs 3 22491 NULL +mp_find_ioapic_pin_22499 mp_find_ioapic_pin 0-2 22499 NULL +mutex_lock_interruptible_22505 mutex_lock_interruptible 0 22505 NULL @@ -98711,15 +99205,19 @@ index 0000000..7982a0c +wl1271_rx_filter_get_fields_size_22638 wl1271_rx_filter_get_fields_size 0 22638 NULL +pwr_wake_on_timer_exp_read_22640 pwr_wake_on_timer_exp_read 3 22640 NULL +iwl_dbgfs_calib_disabled_read_22649 iwl_dbgfs_calib_disabled_read 3 22649 NULL ++compat_SyS_msgrcv_22661 compat_SyS_msgrcv 2-3 22661 NULL +ubifs_leb_write_22679 ubifs_leb_write 4-5 22679 NULL ++qlcnic_83xx_sysfs_flash_write_handler_22680 qlcnic_83xx_sysfs_flash_write_handler 6 22680 NULL +ocfs2_get_block_22687 ocfs2_get_block 2 22687 NULL +compat_fd_ioctl_22694 compat_fd_ioctl 4 22694 NULL +map_22700 map 2 22700 NULL +alloc_libipw_22708 alloc_libipw 1 22708 NULL +brcmf_sdbrcm_read_control_22721 brcmf_sdbrcm_read_control 3 22721 NULL +cx18_copy_buf_to_user_22735 cx18_copy_buf_to_user 4 22735 NULL -+ceph_decode_32_22738 ceph_decode_32 0 22738 NULL ++ceph_decode_32_22738 ceph_decode_32 0 22738 NULL nohasharray ++__mei_cl_send_22738 __mei_cl_send 3 22738 &ceph_decode_32_22738 +iio_debugfs_write_reg_22742 iio_debugfs_write_reg 3 22742 NULL ++qlcnic_sriov_init_22762 qlcnic_sriov_init 2 22762 NULL +print_frame_22769 print_frame 0 22769 NULL +ftrace_arch_read_dyn_info_22773 ftrace_arch_read_dyn_info 0 22773 NULL +compat_blkdev_ioctl_22841 compat_blkdev_ioctl 3 22841 NULL @@ -98740,14 +99238,17 @@ index 0000000..7982a0c +usb_get_langid_22983 usb_get_langid 0 22983 NULL +set_msr_hyperv_22985 set_msr_hyperv 3 22985 NULL +remote_settings_file_write_22987 remote_settings_file_write 3 22987 NULL ++brcmf_sdio_chip_exit_download_23001 brcmf_sdio_chip_exit_download 4 23001 NULL +viafb_dvp0_proc_write_23023 viafb_dvp0_proc_write 3 23023 NULL +cifs_local_to_utf16_bytes_23025 cifs_local_to_utf16_bytes 0 23025 NULL +st_status_23032 st_status 5 23032 NULL +nv50_disp_chan_create__23056 nv50_disp_chan_create_ 5 23056 NULL +reiserfs_add_entry_23062 reiserfs_add_entry 4 23062 NULL ++mei_cl_send_23068 mei_cl_send 3 23068 NULL +kvm_mmu_gva_to_gpa_write_23075 kvm_mmu_gva_to_gpa_write 0 23075 NULL +vm_map_ram_23078 vm_map_ram 2 23078 NULL nohasharray +raw_sendmsg_23078 raw_sendmsg 4 23078 &vm_map_ram_23078 ++get_user_hdr_len_23079 get_user_hdr_len 0 23079 NULL +qla4_82xx_pci_mem_read_2M_23081 qla4_82xx_pci_mem_read_2M 2 23081 NULL +isr_tx_procs_read_23084 isr_tx_procs_read 3 23084 NULL +lnw_gpio_irq_map_23087 lnw_gpio_irq_map 2 23087 NULL @@ -98763,6 +99264,7 @@ index 0000000..7982a0c +ca91cx42_master_set_23146 ca91cx42_master_set 4 23146 NULL +read_file_ani_23161 read_file_ani 3 23161 NULL +ioremap_23172 ioremap 1-2 23172 NULL ++tg_get_cfs_quota_23176 tg_get_cfs_quota 0 23176 NULL +usblp_write_23178 usblp_write 3 23178 NULL +msnd_fifo_alloc_23179 msnd_fifo_alloc 2 23179 NULL +gss_pipe_downcall_23182 gss_pipe_downcall 3 23182 NULL @@ -98808,18 +99310,22 @@ index 0000000..7982a0c +__i2400mu_send_barker_23652 __i2400mu_send_barker 3 23652 NULL +ext3_compat_ioctl_23659 ext3_compat_ioctl 3 23659 NULL +sInW_23663 sInW 0 23663 NULL ++SyS_connect_23669 SyS_connect 3 23669 NULL +proc_ioctl_compat_23682 proc_ioctl_compat 2 23682 NULL +nftl_partscan_23688 nftl_partscan 0 23688 NULL +cx18_read_23699 cx18_read 3 23699 NULL ++isku_sysfs_write_control_23718 isku_sysfs_write_control 6 23718 NULL +mp_config_acpi_gsi_23728 mp_config_acpi_gsi 2 23728 NULL +pack_sg_list_p_23739 pack_sg_list_p 0-2 23739 NULL +rx_rx_dropped_frame_read_23748 rx_rx_dropped_frame_read 3 23748 NULL +__kfifo_max_r_23768 __kfifo_max_r 0-2-1 23768 NULL ++__build_packet_message_23778 __build_packet_message 10-4 23778 NULL +security_inode_getxattr_23781 security_inode_getxattr 0 23781 NULL +diva_alloc_dma_map_23798 diva_alloc_dma_map 2 23798 NULL +rx_path_reset_read_23801 rx_path_reset_read 3 23801 NULL +__earlyonly_bootmem_alloc_23824 __earlyonly_bootmem_alloc 2-3 23824 NULL +ceph_copy_page_vector_to_user_23829 ceph_copy_page_vector_to_user 3-4 23829 NULL ++tfrc_binsearch_23833 tfrc_binsearch 0 23833 NULL +xfs_dir2_leaf_getdents_23841 xfs_dir2_leaf_getdents 3 23841 NULL +pgdat_end_pfn_23842 pgdat_end_pfn 0 23842 NULL +iwl_dbgfs_nvm_read_23845 iwl_dbgfs_nvm_read 3 23845 NULL @@ -98845,6 +99351,7 @@ index 0000000..7982a0c +ocfs2_mark_extent_refcounted_24035 ocfs2_mark_extent_refcounted 6 24035 NULL +adis16400_show_serial_number_24037 adis16400_show_serial_number 3 24037 NULL +afs_cell_alloc_24052 afs_cell_alloc 2 24052 NULL ++brcmf_sdio_ramrw_24074 brcmf_sdio_ramrw 5 24074 NULL +blkcipher_copy_iv_24075 blkcipher_copy_iv 3 24075 NULL +vb2_fop_read_24080 vb2_fop_read 3 24080 NULL +pipeline_post_proc_swi_read_24108 pipeline_post_proc_swi_read 3 24108 NULL @@ -98870,8 +99377,11 @@ index 0000000..7982a0c +ext2_free_blocks_24292 ext2_free_blocks 2-3 24292 NULL +map_page_24298 map_page 3-4 24298 NULL +btmrvl_pscmd_read_24308 btmrvl_pscmd_read 3 24308 NULL ++reserve_metadata_bytes_24313 reserve_metadata_bytes 3 24313 NULL +ath6kl_add_bss_if_needed_24317 ath6kl_add_bss_if_needed 6 24317 NULL +ocfs2_direct_IO_get_blocks_24333 ocfs2_direct_IO_get_blocks 2 24333 NULL ++si476x_radio_read_acf_blob_24336 si476x_radio_read_acf_blob 3 24336 NULL ++C_SYSC_pwritev_24345 C_SYSC_pwritev 3 24345 NULL +kzalloc_node_24352 kzalloc_node 1 24352 NULL +qla2x00_handle_queue_full_24365 qla2x00_handle_queue_full 2 24365 NULL +cfi_read_pri_24366 cfi_read_pri 3 24366 NULL @@ -98923,7 +99433,8 @@ index 0000000..7982a0c +l2cap_create_basic_pdu_24869 l2cap_create_basic_pdu 3 24869 &pnp_alloc_24869 +setup_buffering_24872 setup_buffering 3 24872 NULL +bnx2fc_cmd_mgr_alloc_24873 bnx2fc_cmd_mgr_alloc 3-2 24873 NULL -+queues_read_24877 queues_read 3 24877 NULL ++queues_read_24877 queues_read 3 24877 NULL nohasharray ++symbol_string_24877 symbol_string 0 24877 &queues_read_24877 +codec_list_read_file_24910 codec_list_read_file 3 24910 NULL +v4l2_ctrl_new_24927 v4l2_ctrl_new 7 24927 NULL +next_token_24929 next_token 0 24929 NULL @@ -98940,6 +99451,7 @@ index 0000000..7982a0c +ni_660x_num_counters_25031 ni_660x_num_counters 0 25031 NULL +nfs_dns_resolve_name_25036 nfs_dns_resolve_name 3 25036 NULL +gs_buf_alloc_25067 gs_buf_alloc 2 25067 NULL ++SYSC_listxattr_25072 SYSC_listxattr 3 25072 NULL +ceph_osdc_writepages_25085 ceph_osdc_writepages 5 25085 NULL +snd_rawmidi_kernel_write_25106 snd_rawmidi_kernel_write 3 25106 NULL +sys_fgetxattr_25166 sys_fgetxattr 4 25166 NULL @@ -98948,6 +99460,7 @@ index 0000000..7982a0c +ks8851_rdreg32_25187 ks8851_rdreg32 0 25187 NULL +ocfs2_block_check_compute_25223 ocfs2_block_check_compute 2 25223 NULL +free_memcg_kmem_pages_25228 free_memcg_kmem_pages 1 25228 NULL ++dtf_write_string_25232 dtf_write_string 5 25232 NULL +mon_stat_read_25238 mon_stat_read 3 25238 NULL +tcf_csum_ipv6_udp_25241 tcf_csum_ipv6_udp 4 25241 NULL +nilfs_palloc_find_available_slot_25245 nilfs_palloc_find_available_slot 3-5 25245 NULL @@ -98960,6 +99473,7 @@ index 0000000..7982a0c +help_25316 help 5 25316 NULL nohasharray +ath9k_debugfs_read_buf_25316 ath9k_debugfs_read_buf 3 25316 &help_25316 +rng_buffer_size_25348 rng_buffer_size 0 25348 NULL ++SYSC_kexec_load_25361 SYSC_kexec_load 2 25361 NULL +rio_destid_next_25368 rio_destid_next 2 25368 NULL nohasharray +unix_mkname_25368 unix_mkname 0-2 25368 &rio_destid_next_25368 +sel_read_mls_25369 sel_read_mls 3 25369 NULL @@ -98997,6 +99511,7 @@ index 0000000..7982a0c +ext2_find_near_25734 ext2_find_near 0 25734 NULL +__set_clear_dirty_25744 __set_clear_dirty 2 25744 NULL +cxgbi_device_portmap_create_25747 cxgbi_device_portmap_create 3 25747 NULL ++dtf_write_channel_25748 dtf_write_channel 3 25748 NULL +event_rx_pool_read_25792 event_rx_pool_read 3 25792 NULL +sg_read_25799 sg_read 3 25799 NULL +system_enable_read_25815 system_enable_read 3 25815 NULL @@ -99006,10 +99521,12 @@ index 0000000..7982a0c +parport_read_25855 parport_read 0 25855 NULL +xfs_dir2_sf_hdr_size_25858 xfs_dir2_sf_hdr_size 0 25858 NULL +uf_ap_process_data_pdu_25860 uf_ap_process_data_pdu 7 25860 NULL ++key_attr_size_25865 key_attr_size 0 25865 NULL +ath6kl_regread_read_25884 ath6kl_regread_read 3 25884 NULL +run_delalloc_nocow_25896 run_delalloc_nocow 3 25896 NULL +sisusbcon_scroll_area_25899 sisusbcon_scroll_area 4-3 25899 NULL +lpfc_change_queue_depth_25905 lpfc_change_queue_depth 2 25905 NULL ++nvme_trans_mode_page_create_25908 nvme_trans_mode_page_create 7 25908 NULL +do_jffs2_setxattr_25910 do_jffs2_setxattr 5 25910 NULL +rcname_read_25919 rcname_read 3 25919 NULL +snd_es1938_capture_copy_25930 snd_es1938_capture_copy 5 25930 NULL @@ -99034,6 +99551,7 @@ index 0000000..7982a0c +copy_oldmem_page_26164 copy_oldmem_page 3-1 26164 NULL +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 ++perf_adjust_period_26168 perf_adjust_period 2-3 26168 NULL +mid_get_vbt_data_r1_26170 mid_get_vbt_data_r1 2 26170 NULL +disk_devt_26180 disk_devt 0 26180 NULL +get_registers_26187 get_registers 3 26187 NULL @@ -99049,6 +99567,7 @@ index 0000000..7982a0c +snd_pcm_plug_client_channels_buf_26309 snd_pcm_plug_client_channels_buf 0-3 26309 NULL nohasharray +pax_get_random_long_26309 pax_get_random_long 0 26309 &snd_pcm_plug_client_channels_buf_26309 +pwr_wake_on_host_read_26321 pwr_wake_on_host_read 3 26321 NULL ++efx_rx_mk_skb_26342 efx_rx_mk_skb 5 26342 NULL +ocfs2_duplicate_clusters_by_page_26357 ocfs2_duplicate_clusters_by_page 5 26357 NULL +cifs_readdata_alloc_26360 cifs_readdata_alloc 1 26360 NULL +dup_to_netobj_26363 dup_to_netobj 3 26363 NULL @@ -99066,6 +99585,7 @@ index 0000000..7982a0c +rts51x_read_mem_26577 rts51x_read_mem 4 26577 NULL nohasharray +batadv_receive_server_sync_packet_26577 batadv_receive_server_sync_packet 3 26577 &rts51x_read_mem_26577 +cirrusfb_get_memsize_26597 cirrusfb_get_memsize 0 26597 NULL ++regcache_set_reg_present_26598 regcache_set_reg_present 2 26598 NULL +__unmap_single_26604 __unmap_single 2-3 26604 NULL +iommu_alloc_26621 iommu_alloc 4 26621 NULL +pack_value_26625 pack_value 1 26625 NULL @@ -99077,6 +99597,7 @@ index 0000000..7982a0c +rtllib_authentication_req_26713 rtllib_authentication_req 3 26713 NULL +aty_ld_le32_26720 aty_ld_le32 0 26720 NULL +nouveau_namedb_create__26732 nouveau_namedb_create_ 7 26732 NULL ++SyS_fcntl_26737 SyS_fcntl 3 26737 NULL +pipeline_tcp_rx_stat_fifo_int_read_26745 pipeline_tcp_rx_stat_fifo_int_read 3 26745 NULL +srp_ring_alloc_26760 srp_ring_alloc 2 26760 NULL +snd_hda_get_raw_connections_26762 snd_hda_get_raw_connections 0 26762 NULL @@ -99110,10 +99631,12 @@ index 0000000..7982a0c +snd_pcm_lib_period_bytes_27071 snd_pcm_lib_period_bytes 0 27071 NULL +paravirt_read_msr_27077 paravirt_read_msr 0 27077 NULL +alloc_fdmem_27083 alloc_fdmem 1 27083 NULL ++compat_SyS_rt_sigpending_27084 compat_SyS_rt_sigpending 2 27084 NULL +find_first_bit_27088 find_first_bit 0-2 27088 NULL +btmrvl_hscmd_write_27089 btmrvl_hscmd_write 3 27089 NULL +nes_reg_user_mr_27106 nes_reg_user_mr 2-3 27106 NULL +__devcgroup_inode_permission_27108 __devcgroup_inode_permission 0 27108 NULL ++SYSC_ipc_27123 SYSC_ipc 3 27123 NULL +get_kernel_page_27133 get_kernel_page 0 27133 NULL +drbd_get_capacity_27141 drbd_get_capacity 0 27141 NULL +pms_capture_27142 pms_capture 4 27142 NULL @@ -99128,10 +99651,12 @@ index 0000000..7982a0c +__dma_map_cont_27289 __dma_map_cont 5 27289 NULL +hpi_read_reg_27302 hpi_read_reg 0 27302 NULL +copy_from_buf_27308 copy_from_buf 4-2 27308 NULL -+ath6kl_wmi_test_cmd_27312 ath6kl_wmi_test_cmd 3 27312 NULL ++virtqueue_add_inbuf_27312 virtqueue_add_inbuf 3 27312 NULL nohasharray ++ath6kl_wmi_test_cmd_27312 ath6kl_wmi_test_cmd 3 27312 &virtqueue_add_inbuf_27312 +ocfs2_blocks_to_clusters_27327 ocfs2_blocks_to_clusters 0-2 27327 NULL +snd_pcm_oss_write2_27332 snd_pcm_oss_write2 3-0 27332 NULL +afs_cell_create_27346 afs_cell_create 2 27346 NULL ++compat_SyS_semctl_27349 compat_SyS_semctl 4 27349 NULL +pcbit_stat_27364 pcbit_stat 2 27364 NULL +init_memory_mapping_27395 init_memory_mapping 0 27395 NULL +phys_pte_init_27411 phys_pte_init 0-3-2 27411 NULL @@ -99139,6 +99664,7 @@ index 0000000..7982a0c +acpi_os_get_root_pointer_27416 acpi_os_get_root_pointer 0 27416 NULL nohasharray +ieee80211_if_read_smps_27416 ieee80211_if_read_smps 3 27416 &acpi_os_get_root_pointer_27416 +pack_sg_list_27425 pack_sg_list 0-2 27425 NULL ++ktime_to_us_27455 ktime_to_us 0 27455 NULL +v4l2_ctrl_new_std_menu_items_27487 v4l2_ctrl_new_std_menu_items 4 27487 NULL +set_tpl_pfs_27490 set_tpl_pfs 3 27490 NULL +hcd_buffer_alloc_27495 hcd_buffer_alloc 2 27495 NULL @@ -99149,6 +99675,7 @@ index 0000000..7982a0c +garmin_read_process_27509 garmin_read_process 3 27509 NULL +ib_copy_to_udata_27525 ib_copy_to_udata 3 27525 NULL +snd_sonicvibes_getdmaa_27552 snd_sonicvibes_getdmaa 0 27552 NULL ++SyS_fgetxattr_27571 SyS_fgetxattr 4 27571 NULL +libipw_alloc_txb_27579 libipw_alloc_txb 1-2-3 27579 NULL +read_flush_procfs_27642 read_flush_procfs 3 27642 NULL nohasharray +nl80211_send_connect_result_27642 nl80211_send_connect_result 5-7 27642 &read_flush_procfs_27642 nohasharray @@ -99160,11 +99687,13 @@ index 0000000..7982a0c +qword_get_27670 qword_get 0 27670 NULL +ocfs2_extend_dir_27695 ocfs2_extend_dir 4 27695 NULL +fs_path_add_from_extent_buffer_27702 fs_path_add_from_extent_buffer 4 27702 NULL ++inc_zcache_eph_zbytes_27704 inc_zcache_eph_zbytes 1 27704 NULL +evm_write_key_27715 evm_write_key 3 27715 NULL +ieee80211_if_fmt_dot11MeshGateAnnouncementProtocol_27722 ieee80211_if_fmt_dot11MeshGateAnnouncementProtocol 3 27722 NULL +reg_w_buf_27724 reg_w_buf 3 27724 NULL +xfs_dir2_block_sfsize_27727 xfs_dir2_block_sfsize 0 27727 NULL +a4t_cs_init_27734 a4t_cs_init 3 27734 NULL ++SyS_setsockopt_27759 SyS_setsockopt 5 27759 NULL +kcalloc_27770 kcalloc 1-2 27770 NULL +twl4030_set_gpio_dataout_27792 twl4030_set_gpio_dataout 1 27792 NULL +DivaSTraceGetMemotyRequirement_27797 DivaSTraceGetMemotyRequirement 0-1 27797 NULL @@ -99178,6 +99707,7 @@ index 0000000..7982a0c +ieee80211_if_read_dot11MeshHWMProotInterval_27873 ieee80211_if_read_dot11MeshHWMProotInterval 3 27873 NULL +unix_seqpacket_sendmsg_27893 unix_seqpacket_sendmsg 4 27893 NULL +gluebi_write_27905 gluebi_write 3 27905 NULL ++SyS_ptrace_27924 SyS_ptrace 3-4 27924 NULL +bm_find_next_27929 bm_find_next 2 27929 NULL +tracing_clock_write_27961 tracing_clock_write 3 27961 NULL +tipc_media_addr_printf_27971 tipc_media_addr_printf 2 27971 NULL @@ -99186,6 +99716,7 @@ index 0000000..7982a0c +edt_ft5x06_debugfs_raw_data_read_28002 edt_ft5x06_debugfs_raw_data_read 3 28002 NULL +snd_rawmidi_write_28008 snd_rawmidi_write 3 28008 NULL +serial8250_port_size_28019 serial8250_port_size 0 28019 NULL ++alloc_one_pg_vec_page_28031 alloc_one_pg_vec_page 1 28031 NULL +sctp_setsockopt_maxburst_28041 sctp_setsockopt_maxburst 3 28041 NULL +rts51x_xd_rw_28046 rts51x_xd_rw 3-4 28046 NULL +cx231xx_init_vbi_isoc_28053 cx231xx_init_vbi_isoc 3-2 28053 NULL @@ -99223,6 +99754,7 @@ index 0000000..7982a0c +dlmfs_file_read_28385 dlmfs_file_read 3 28385 NULL +tx_frag_cache_miss_read_28394 tx_frag_cache_miss_read 3 28394 NULL +set_bypass_pfs_28395 set_bypass_pfs 3 28395 NULL ++bypass_pwup_write_28416 bypass_pwup_write 3 28416 NULL +subdev_ioctl_28417 subdev_ioctl 2 28417 NULL +__split_large_page_28429 __split_large_page 2 28429 NULL +mpage_readpages_28436 mpage_readpages 3 28436 NULL @@ -99262,13 +99794,16 @@ index 0000000..7982a0c +snd_pcm_aio_write_28738 snd_pcm_aio_write 3 28738 NULL nohasharray +phantom_compat_ioctl_28738 phantom_compat_ioctl 3 28738 &snd_pcm_aio_write_28738 +read_file_btcoex_28743 read_file_btcoex 3 28743 NULL ++max_hw_blocks_28748 max_hw_blocks 0 28748 NULL +ath6kl_get_num_reg_28780 ath6kl_get_num_reg 0 28780 NULL +dvb_net_sec_callback_28786 dvb_net_sec_callback 2 28786 NULL -+sel_write_member_28800 sel_write_member 3 28800 NULL ++btrfs_block_rsv_refill_28800 btrfs_block_rsv_refill 3 28800 NULL nohasharray ++sel_write_member_28800 sel_write_member 3 28800 &btrfs_block_rsv_refill_28800 +cgroup_file_read_28804 cgroup_file_read 3 28804 NULL +btrfs_ref_to_path_28809 btrfs_ref_to_path 0 28809 NULL +memory_bm_create_28814 memory_bm_create 0 28814 NULL +iwl_dbgfs_rxon_filter_flags_read_28832 iwl_dbgfs_rxon_filter_flags_read 3 28832 NULL ++C_SYSC_shmat_28843 C_SYSC_shmat 2 28843 NULL +vp_request_msix_vectors_28849 vp_request_msix_vectors 2 28849 NULL +ipv6_renew_options_28867 ipv6_renew_options 5 28867 NULL +packet_sendmsg_spkt_28885 packet_sendmsg_spkt 4 28885 NULL @@ -99281,6 +99816,7 @@ index 0000000..7982a0c +alloc_sched_domains_28972 alloc_sched_domains 1 28972 NULL +ext4_mb_add_groupinfo_28988 ext4_mb_add_groupinfo 2 28988 NULL +bin_uuid_28999 bin_uuid 3 28999 NULL ++offset_to_bitmap_29004 offset_to_bitmap 2 29004 NULL +xz_dec_init_29029 xz_dec_init 2 29029 NULL +sys_fcntl64_29031 sys_fcntl64 3 29031 NULL +ieee80211_if_read_ht_opmode_29044 ieee80211_if_read_ht_opmode 3 29044 NULL @@ -99290,6 +99826,7 @@ index 0000000..7982a0c +memblock_alloc_base_nid_29072 memblock_alloc_base_nid 1-2 29072 NULL +sctp_getsockopt_assoc_stats_29074 sctp_getsockopt_assoc_stats 2 29074 NULL +mark_extents_written_29082 mark_extents_written 2 29082 NULL ++i915_error_object_create_sized_29091 i915_error_object_create_sized 3 29091 NULL +isdn_ppp_write_29109 isdn_ppp_write 4 29109 NULL +snprintf_29125 snprintf 0 29125 NULL +iov_shorten_29130 iov_shorten 0 29130 NULL @@ -99303,6 +99840,7 @@ index 0000000..7982a0c +comedi_alloc_subdevices_29207 comedi_alloc_subdevices 2 29207 NULL +do_shrinker_shrink_29208 do_shrinker_shrink 0 29208 NULL +iwl_dbgfs_temperature_read_29224 iwl_dbgfs_temperature_read 3 29224 NULL ++nvme_trans_copy_from_user_29227 nvme_trans_copy_from_user 3 29227 NULL +devm_ioremap_29235 devm_ioremap 2-3 29235 NULL +irq_domain_add_linear_29236 irq_domain_add_linear 2 29236 NULL +recover_peb_29238 recover_peb 6-7 29238 NULL @@ -99311,18 +99849,22 @@ index 0000000..7982a0c +prism2_set_genericelement_29277 prism2_set_genericelement 3 29277 NULL +bitmap_ord_to_pos_29279 bitmap_ord_to_pos 3 29279 NULL +sn9c102_read_29305 sn9c102_read 3 29305 NULL ++__fuse_get_req_29315 __fuse_get_req 2 29315 NULL +lo_compat_ioctl_29336 lo_compat_ioctl 4 29336 NULL +tun_put_user_29337 tun_put_user 5 29337 NULL +__alloc_ei_netdev_29338 __alloc_ei_netdev 1 29338 NULL +alloc_and_copy_ftrace_hash_29368 alloc_and_copy_ftrace_hash 1 29368 NULL ++ktime_us_delta_29375 ktime_us_delta 0 29375 NULL +mwifiex_cfg80211_mgmt_tx_29387 mwifiex_cfg80211_mgmt_tx 7 29387 NULL +pca953x_irq_setup_29407 pca953x_irq_setup 3 29407 NULL +mempool_create_29437 mempool_create 1 29437 NULL +crypto_ahash_alignmask_29445 crypto_ahash_alignmask 0 29445 NULL +apei_exec_ctx_get_output_29457 apei_exec_ctx_get_output 0 29457 NULL +validate_scan_freqs_29462 validate_scan_freqs 0 29462 NULL ++SyS_flistxattr_29474 SyS_flistxattr 3 29474 NULL +do_register_entry_29478 do_register_entry 4 29478 NULL +simple_strtoul_29480 simple_strtoul 0 29480 NULL ++sched_clock_local_29498 sched_clock_local 0 29498 NULL +btmrvl_pscmd_write_29504 btmrvl_pscmd_write 3 29504 NULL +btrfs_file_extent_disk_bytenr_29505 btrfs_file_extent_disk_bytenr 0 29505 NULL +atk_debugfs_ggrp_read_29522 atk_debugfs_ggrp_read 3 29522 NULL @@ -99348,13 +99890,16 @@ index 0000000..7982a0c +probes_write_29711 probes_write 3 29711 NULL +emi62_writememory_29731 emi62_writememory 4 29731 NULL +read_cis_cache_29735 read_cis_cache 4 29735 NULL ++std_nic_write_29752 std_nic_write 3 29752 NULL +ip_vs_conn_fill_param_sync_29771 ip_vs_conn_fill_param_sync 6 29771 NULL ++tcf_csum_ipv6_icmp_29777 tcf_csum_ipv6_icmp 3 29777 NULL +dbAlloc_29794 dbAlloc 0 29794 NULL +ext4_trim_all_free_29806 ext4_trim_all_free 4-3-2 29806 NULL +tcp_sendpage_29829 tcp_sendpage 4 29829 NULL +scan_bitmap_block_29840 scan_bitmap_block 4 29840 NULL +__probe_kernel_write_29842 __probe_kernel_write 3 29842 NULL +kvm_read_hva_atomic_29848 kvm_read_hva_atomic 3 29848 NULL ++solo_enc_alloc_29860 solo_enc_alloc 3 29860 NULL +ipv6_setsockopt_29871 ipv6_setsockopt 5 29871 NULL +scsi_end_request_29876 scsi_end_request 3 29876 NULL +crypto_aead_alignmask_29885 crypto_aead_alignmask 0 29885 NULL @@ -99379,6 +99924,7 @@ index 0000000..7982a0c +calgary_unmap_page_30130 calgary_unmap_page 2-3 30130 NULL +_osd_req_sizeof_alist_header_30134 _osd_req_sizeof_alist_header 0 30134 NULL +u_memcpya_30139 u_memcpya 2-3 30139 NULL ++btrfs_start_transaction_lflush_30178 btrfs_start_transaction_lflush 2 30178 NULL +cx25821_video_ioctl_30188 cx25821_video_ioctl 2 30188 NULL +mempool_create_page_pool_30189 mempool_create_page_pool 1 30189 NULL +drm_property_create_bitmask_30195 drm_property_create_bitmask 5 30195 NULL @@ -99397,6 +99943,7 @@ index 0000000..7982a0c +generic_ptrace_pokedata_30338 generic_ptrace_pokedata 2 30338 NULL +resource_from_user_30341 resource_from_user 3 30341 NULL +__vmalloc_node_flags_30352 __vmalloc_node_flags 1 30352 NULL ++C_SYSC_readv_30369 C_SYSC_readv 3 30369 NULL +sys_get_mempolicy_30379 sys_get_mempolicy 3-4 30379 NULL +mangle_sdp_packet_30381 mangle_sdp_packet 10 30381 NULL +c4iw_init_resource_30393 c4iw_init_resource 2-3 30393 NULL @@ -99412,6 +99959,7 @@ index 0000000..7982a0c +ocrdma_reg_user_mr_30474 ocrdma_reg_user_mr 2-3 30474 NULL +write_head_30481 write_head 4 30481 NULL +adu_write_30487 adu_write 3 30487 NULL ++dwc3_testmode_write_30516 dwc3_testmode_write 3 30516 NULL +debug_debug2_read_30526 debug_debug2_read 3 30526 NULL +batadv_dat_snoop_incoming_arp_request_30548 batadv_dat_snoop_incoming_arp_request 3 30548 NULL +disk_expand_part_tbl_30561 disk_expand_part_tbl 2 30561 NULL @@ -99420,6 +99968,7 @@ index 0000000..7982a0c +blk_init_tags_30592 blk_init_tags 1 30592 NULL +i2c_hid_get_report_length_30598 i2c_hid_get_report_length 0 30598 NULL +sgl_map_user_pages_30610 sgl_map_user_pages 2-3-4 30610 NULL ++SyS_msgrcv_30611 SyS_msgrcv 3 30611 NULL +macvtap_sendmsg_30629 macvtap_sendmsg 4 30629 NULL +ieee80211_if_read_dot11MeshAwakeWindowDuration_30631 ieee80211_if_read_dot11MeshAwakeWindowDuration 3 30631 NULL +compat_raw_setsockopt_30634 compat_raw_setsockopt 5 30634 NULL @@ -99436,6 +99985,7 @@ index 0000000..7982a0c +sctp_setsockopt_auth_chunk_30843 sctp_setsockopt_auth_chunk 3 30843 NULL +cfg80211_rx_mgmt_30844 cfg80211_rx_mgmt 5 30844 NULL +hda_hwdep_ioctl_compat_30847 hda_hwdep_ioctl_compat 4 30847 NULL ++trace_probe_nr_files_30882 trace_probe_nr_files 0 30882 NULL +ieee80211_if_fmt_dropped_frames_no_route_30884 ieee80211_if_fmt_dropped_frames_no_route 3 30884 NULL +iommu_map_mmio_space_30919 iommu_map_mmio_space 1 30919 NULL +sctp_setsockopt_rtoinfo_30941 sctp_setsockopt_rtoinfo 3 30941 NULL @@ -99473,6 +100023,7 @@ index 0000000..7982a0c +sisusbcon_scroll_31315 sisusbcon_scroll 5-2-3 31315 NULL +command_file_write_31318 command_file_write 3 31318 NULL +em28xx_init_usb_xfer_31337 em28xx_init_usb_xfer 4-6 31337 NULL ++__cpu_to_node_31345 __cpu_to_node 0 31345 NULL +xprt_rdma_allocate_31372 xprt_rdma_allocate 2 31372 NULL +vb2_vmalloc_get_userptr_31374 vb2_vmalloc_get_userptr 3-2 31374 NULL +trace_parser_get_init_31379 trace_parser_get_init 2 31379 NULL @@ -99518,6 +100069,7 @@ index 0000000..7982a0c +shmem_pwrite_slow_31741 shmem_pwrite_slow 3 31741 NULL +NCR_700_change_queue_depth_31742 NCR_700_change_queue_depth 2 31742 NULL nohasharray +input_abs_get_max_31742 input_abs_get_max 0 31742 &NCR_700_change_queue_depth_31742 ++muldiv64_31743 muldiv64 2-3 31743 NULL +bcm_char_read_31750 bcm_char_read 3 31750 NULL +snd_seq_device_new_31753 snd_seq_device_new 4 31753 NULL +set_memory_wb_31761 set_memory_wb 1 31761 NULL @@ -99533,9 +100085,11 @@ index 0000000..7982a0c +new_dir_31919 new_dir 3 31919 NULL +kmem_alloc_31920 kmem_alloc 1 31920 NULL +guestwidth_to_adjustwidth_31937 guestwidth_to_adjustwidth 0-1 31937 NULL ++SYSC_sethostname_31940 SYSC_sethostname 2 31940 NULL +iov_iter_copy_from_user_31942 iov_iter_copy_from_user 4 31942 NULL +vb2_write_31948 vb2_write 3 31948 NULL +pvr2_ctrl_get_valname_31951 pvr2_ctrl_get_valname 4 31951 NULL ++regcache_rbtree_sync_31964 regcache_rbtree_sync 2 31964 NULL +copy_from_user_toio_31966 copy_from_user_toio 3 31966 NULL +mtd_add_partition_31971 mtd_add_partition 3 31971 NULL +find_next_zero_bit_31990 find_next_zero_bit 0-2-3 31990 NULL @@ -99546,8 +100100,10 @@ index 0000000..7982a0c +aead_len_32021 aead_len 0 32021 NULL +ocfs2_remove_extent_32032 ocfs2_remove_extent 4-3 32032 NULL +posix_acl_set_32037 posix_acl_set 4 32037 NULL ++stk_read_32038 stk_read 3 32038 NULL +vmw_cursor_update_dmabuf_32045 vmw_cursor_update_dmabuf 3-4 32045 NULL +sys_sched_setaffinity_32046 sys_sched_setaffinity 2 32046 NULL ++SYSC_llistxattr_32061 SYSC_llistxattr 3 32061 NULL +proc_scsi_devinfo_write_32064 proc_scsi_devinfo_write 3 32064 NULL +cfg80211_send_unprot_deauth_32080 cfg80211_send_unprot_deauth 3 32080 NULL +bio_alloc_32095 bio_alloc 2 32095 NULL @@ -99566,6 +100122,7 @@ index 0000000..7982a0c +fb_compat_ioctl_32265 fb_compat_ioctl 3 32265 NULL +vmalloc_user_32308 vmalloc_user 1 32308 NULL +hex_string_32310 hex_string 0 32310 NULL ++SyS_select_32319 SyS_select 1 32319 NULL +nouveau_bar_create__32332 nouveau_bar_create_ 4 32332 NULL +nl80211_send_mlme_event_32337 nl80211_send_mlme_event 4 32337 NULL +t4_alloc_mem_32342 t4_alloc_mem 1 32342 NULL @@ -99573,6 +100130,7 @@ index 0000000..7982a0c +sel_read_initcon_32362 sel_read_initcon 3 32362 NULL +_drbd_bm_find_next_32372 _drbd_bm_find_next 2 32372 NULL +usbtmc_read_32377 usbtmc_read 3 32377 NULL ++local_clock_32385 local_clock 0 32385 NULL +qla4_82xx_pci_mem_write_2M_32398 qla4_82xx_pci_mem_write_2M 2 32398 NULL +xfs_iext_add_indirect_multi_32400 xfs_iext_add_indirect_multi 3 32400 NULL +vmci_qp_alloc_32405 vmci_qp_alloc 3-5 32405 NULL @@ -99582,6 +100140,7 @@ index 0000000..7982a0c +cache_status_32462 cache_status 5 32462 NULL +ieee80211_fill_mesh_addresses_32465 ieee80211_fill_mesh_addresses 0 32465 NULL +ide_driver_proc_write_32493 ide_driver_proc_write 3 32493 NULL ++bypass_pwoff_write_32499 bypass_pwoff_write 3 32499 NULL +ctrl_std_val_to_sym_32516 ctrl_std_val_to_sym 5 32516 NULL +disconnect_32521 disconnect 4 32521 NULL +qsfp_read_32522 qsfp_read 0-4-2 32522 NULL @@ -99605,6 +100164,7 @@ index 0000000..7982a0c +ib_sg_dma_len_32649 ib_sg_dma_len 0 32649 NULL +generic_readlink_32654 generic_readlink 3 32654 NULL +move_addr_to_kernel_32673 move_addr_to_kernel 2 32673 NULL ++compat_SyS_pwritev_32680 compat_SyS_pwritev 3 32680 NULL +jfs_readpages_32702 jfs_readpages 4 32702 NULL +snd_hwdep_ioctl_compat_32736 snd_hwdep_ioctl_compat 3 32736 NULL +get_arg_page_32746 get_arg_page 2 32746 NULL @@ -99620,14 +100180,17 @@ index 0000000..7982a0c +ath6kl_usb_submit_ctrl_in_32880 ath6kl_usb_submit_ctrl_in 6 32880 NULL nohasharray +cifs_writedata_alloc_32880 cifs_writedata_alloc 1 32880 &ath6kl_usb_submit_ctrl_in_32880 +ath6kl_usb_post_recv_transfers_32892 ath6kl_usb_post_recv_transfers 2 32892 NULL ++ext4_get_group_number_32899 ext4_get_group_number 0 32899 NULL +il_dbgfs_tx_stats_read_32913 il_dbgfs_tx_stats_read 3 32913 NULL +zlib_inflate_workspacesize_32927 zlib_inflate_workspacesize 0 32927 NULL +rmap_recycle_32938 rmap_recycle 3 32938 NULL +irq_reserve_irqs_32946 irq_reserve_irqs 1-2 32946 NULL +ext4_valid_block_bitmap_32958 ext4_valid_block_bitmap 3 32958 NULL -+arch_ptrace_32981 arch_ptrace 3 32981 NULL ++arch_ptrace_32981 arch_ptrace 3-4 32981 NULL +compat_filldir_32999 compat_filldir 3 32999 NULL -+ext3_alloc_blocks_33007 ext3_alloc_blocks 3 33007 NULL ++ext3_alloc_blocks_33007 ext3_alloc_blocks 3 33007 NULL nohasharray ++SyS_syslog_33007 SyS_syslog 3 33007 &ext3_alloc_blocks_33007 ++SYSC_lgetxattr_33049 SYSC_lgetxattr 4 33049 NULL +pipeline_dec_packet_in_fifo_full_read_33052 pipeline_dec_packet_in_fifo_full_read 3 33052 NULL +ebt_compat_match_offset_33053 ebt_compat_match_offset 0-2 33053 NULL +bitmap_resize_33054 bitmap_resize 2 33054 NULL @@ -99649,7 +100212,9 @@ index 0000000..7982a0c +sched_find_first_bit_33270 sched_find_first_bit 0 33270 NULL +cachefiles_cook_key_33274 cachefiles_cook_key 2 33274 NULL +mei_compat_ioctl_33275 mei_compat_ioctl 3 33275 NULL ++sync_pt_create_33282 sync_pt_create 2 33282 NULL +mcs7830_get_reg_33308 mcs7830_get_reg 3 33308 NULL ++isku_sysfs_read_keys_easyzone_33318 isku_sysfs_read_keys_easyzone 6 33318 NULL +ath6kl_usb_ctrl_msg_exchange_33327 ath6kl_usb_ctrl_msg_exchange 4 33327 NULL +gsm_mux_rx_netchar_33336 gsm_mux_rx_netchar 3 33336 NULL +joydev_ioctl_33343 joydev_ioctl 2 33343 NULL @@ -99659,10 +100224,12 @@ index 0000000..7982a0c +ocfs2_quota_read_33382 ocfs2_quota_read 5 33382 NULL +ieee80211_if_read_dropped_frames_no_route_33383 ieee80211_if_read_dropped_frames_no_route 3 33383 NULL +scsi_varlen_cdb_length_33385 scsi_varlen_cdb_length 0 33385 NULL ++tg_get_cfs_period_33390 tg_get_cfs_period 0 33390 NULL +ocfs2_allocate_unwritten_extents_33394 ocfs2_allocate_unwritten_extents 2-3 33394 NULL +ext4_meta_bg_first_block_no_33408 ext4_meta_bg_first_block_no 2 33408 NULL nohasharray +snd_pcm_capture_ioctl1_33408 snd_pcm_capture_ioctl1 0 33408 &ext4_meta_bg_first_block_no_33408 +ufs_getfrag_block_33409 ufs_getfrag_block 2 33409 NULL ++dis_tap_write_33426 dis_tap_write 3 33426 NULL +ubh_scanc_33436 ubh_scanc 0-4-3 33436 NULL +ovs_vport_alloc_33475 ovs_vport_alloc 1 33475 NULL +create_entry_33479 create_entry 2 33479 NULL @@ -99724,11 +100291,13 @@ index 0000000..7982a0c +ppp_write_34034 ppp_write 3 34034 NULL +tty_insert_flip_string_34042 tty_insert_flip_string 3 34042 NULL +__domain_flush_pages_34045 __domain_flush_pages 2-3 34045 NULL ++is_trap_at_addr_34047 is_trap_at_addr 2 34047 NULL +acpi_dev_get_irqresource_34064 acpi_dev_get_irqresource 2 34064 NULL +memcg_update_all_caches_34068 memcg_update_all_caches 1 34068 NULL +read_file_ant_diversity_34071 read_file_ant_diversity 3 34071 NULL +compat_hdio_ioctl_34088 compat_hdio_ioctl 4 34088 NULL +pipeline_pipeline_fifo_full_read_34095 pipeline_pipeline_fifo_full_read 3 34095 NULL ++proc_scsi_host_write_34107 proc_scsi_host_write 3 34107 NULL +is_discarded_oblock_34120 is_discarded_oblock 2 34120 NULL +islpci_mgt_transmit_34133 islpci_mgt_transmit 5 34133 NULL +ttm_dma_page_pool_free_34135 ttm_dma_page_pool_free 2 34135 NULL @@ -99746,13 +100315,16 @@ index 0000000..7982a0c +crypto_ablkcipher_ivsize_34363 crypto_ablkcipher_ivsize 0 34363 NULL +rngapi_reset_34366 rngapi_reset 3 34366 NULL nohasharray +p54_alloc_skb_34366 p54_alloc_skb 3 34366 &rngapi_reset_34366 ++i2c_hid_get_raw_report_34376 i2c_hid_get_raw_report 0 34376 NULL +reiserfs_resize_34377 reiserfs_resize 2 34377 NULL +ea_read_34378 ea_read 0 34378 NULL ++fuse_send_read_34379 fuse_send_read 4 34379 NULL +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 +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 +usbtest_alloc_urb_34446 usbtest_alloc_urb 3-5 34446 NULL +mwifiex_regrdwr_read_34472 mwifiex_regrdwr_read 3 34472 NULL @@ -99781,6 +100353,7 @@ index 0000000..7982a0c +reg_w_ixbuf_34736 reg_w_ixbuf 4 34736 NULL +qib_cdev_init_34778 qib_cdev_init 1 34778 NULL +__copy_in_user_34790 __copy_in_user 3 34790 NULL ++SYSC_keyctl_34800 SYSC_keyctl 4 34800 NULL +drbd_get_max_capacity_34804 drbd_get_max_capacity 0 34804 NULL +b43_debugfs_write_34838 b43_debugfs_write 3 34838 NULL +nl_portid_hash_zalloc_34843 nl_portid_hash_zalloc 1 34843 NULL @@ -99790,9 +100363,12 @@ index 0000000..7982a0c +msg_print_text_34889 msg_print_text 0 34889 NULL +ieee80211_if_write_34894 ieee80211_if_write 3 34894 NULL +compat_put_uint_34905 compat_put_uint 1 34905 NULL ++si476x_radio_read_rsq_primary_blob_34916 si476x_radio_read_rsq_primary_blob 3 34916 NULL +__inode_permission_34925 __inode_permission 0 34925 NULL nohasharray +btrfs_super_chunk_root_34925 btrfs_super_chunk_root 0 34925 &__inode_permission_34925 -+skb_gro_header_slow_34958 skb_gro_header_slow 2 34958 NULL ++ceph_aio_write_34930 ceph_aio_write 4 34930 NULL ++skb_gro_header_slow_34958 skb_gro_header_slow 2 34958 NULL nohasharray ++i2c_transfer_34958 i2c_transfer 0 34958 &skb_gro_header_slow_34958 +Realloc_34961 Realloc 2 34961 NULL +mq_lookup_34990 mq_lookup 2 34990 NULL +rx_rx_hdr_overflow_read_35002 rx_rx_hdr_overflow_read 3 35002 NULL @@ -99801,6 +100377,7 @@ index 0000000..7982a0c +sisusb_copy_memory_35016 sisusb_copy_memory 4 35016 NULL +alloc_p2m_page_35025 alloc_p2m_page 0 35025 NULL +coda_psdev_read_35029 coda_psdev_read 3 35029 NULL ++brcmf_sdio_chip_writenvram_35042 brcmf_sdio_chip_writenvram 4 35042 NULL +btmrvl_gpiogap_write_35053 btmrvl_gpiogap_write 3 35053 NULL +pwr_connection_out_of_sync_read_35061 pwr_connection_out_of_sync_read 3 35061 NULL +store_ifalias_35088 store_ifalias 4 35088 NULL @@ -99812,6 +100389,7 @@ index 0000000..7982a0c +gntdev_alloc_map_35145 gntdev_alloc_map 2 35145 NULL +iscsi_conn_setup_35159 iscsi_conn_setup 2 35159 NULL +ieee80211_if_read_bssid_35161 ieee80211_if_read_bssid 3 35161 NULL ++solo_v4l2_init_35179 solo_v4l2_init 2 35179 NULL +mlx4_ib_get_cq_umem_35184 mlx4_ib_get_cq_umem 5-6 35184 NULL +iwl_nvm_read_chunk_35198 iwl_nvm_read_chunk 0 35198 NULL +uprobe_get_swbp_addr_35201 uprobe_get_swbp_addr 0 35201 NULL @@ -99822,8 +100400,10 @@ index 0000000..7982a0c +rx_rx_cmplt_task_read_35226 rx_rx_cmplt_task_read 3 35226 NULL nohasharray +video_register_device_no_warn_35226 video_register_device_no_warn 3 35226 &rx_rx_cmplt_task_read_35226 +gfn_to_page_many_atomic_35234 gfn_to_page_many_atomic 2 35234 NULL ++SYSC_madvise_35241 SYSC_madvise 1 35241 NULL +set_fd_set_35249 set_fd_set 1 35249 NULL +ioapic_setup_resources_35255 ioapic_setup_resources 1 35255 NULL ++dis_disc_write_35265 dis_disc_write 3 35265 NULL +dma_show_regs_35266 dma_show_regs 3 35266 NULL +irda_recvmsg_stream_35280 irda_recvmsg_stream 4 35280 NULL +i2o_block_end_request_35282 i2o_block_end_request 3 35282 NULL @@ -99839,6 +100419,7 @@ index 0000000..7982a0c +nouveau_devinit_create__35348 nouveau_devinit_create_ 4 35348 NULL +hpi_alloc_control_cache_35351 hpi_alloc_control_cache 1 35351 NULL +compat_filldir64_35354 compat_filldir64 3 35354 NULL ++SyS_getxattr_35408 SyS_getxattr 4 35408 NULL +rawv6_send_hdrinc_35425 rawv6_send_hdrinc 3 35425 NULL +__set_test_and_free_35436 __set_test_and_free 2 35436 NULL +buffer_to_user_35439 buffer_to_user 3 35439 NULL @@ -99862,6 +100443,7 @@ index 0000000..7982a0c +rdmaltWithLock_35669 rdmaltWithLock 0 35669 NULL +compat_sys_kexec_load_35674 compat_sys_kexec_load 2 35674 NULL +dm_table_create_35687 dm_table_create 3 35687 NULL ++SYSC_pwritev_35690 SYSC_pwritev 3 35690 NULL +rds_page_copy_user_35691 rds_page_copy_user 4 35691 NULL +pci_enable_sriov_35745 pci_enable_sriov 2 35745 NULL +iwl_dbgfs_disable_ht40_read_35761 iwl_dbgfs_disable_ht40_read 3 35761 NULL @@ -99873,6 +100455,7 @@ index 0000000..7982a0c +kvm_dirty_bitmap_bytes_35886 kvm_dirty_bitmap_bytes 0 35886 NULL +ieee80211_if_fmt_dot11MeshRetryTimeout_35890 ieee80211_if_fmt_dot11MeshRetryTimeout 3 35890 NULL +uwb_rc_cmd_done_35892 uwb_rc_cmd_done 4 35892 NULL ++SyS_set_mempolicy_35909 SyS_set_mempolicy 3 35909 NULL +kernel_setsockopt_35913 kernel_setsockopt 5 35913 NULL +rbio_nr_pages_35916 rbio_nr_pages 0-1-2 35916 NULL +vol_cdev_compat_ioctl_35923 vol_cdev_compat_ioctl 3 35923 NULL @@ -99886,6 +100469,7 @@ index 0000000..7982a0c +koneplus_sysfs_write_35993 koneplus_sysfs_write 6 35993 NULL +il3945_ucode_tx_stats_read_36016 il3945_ucode_tx_stats_read 3 36016 NULL +ubi_eba_write_leb_36029 ubi_eba_write_leb 5-6 36029 NULL ++__videobuf_alloc_36031 __videobuf_alloc 1 36031 NULL +account_shadowed_36048 account_shadowed 2 36048 NULL +gpio_power_read_36059 gpio_power_read 3 36059 NULL +write_emulate_36065 write_emulate 2-4 36065 NULL @@ -99905,12 +100489,16 @@ index 0000000..7982a0c +b1_alloc_card_36155 b1_alloc_card 1 36155 NULL +btrfs_file_extent_inline_len_36158 btrfs_file_extent_inline_len 0 36158 NULL +snd_korg1212_copy_from_36169 snd_korg1212_copy_from 6 36169 NULL ++SyS_kexec_load_36176 SyS_kexec_load 2 36176 NULL ++SYSC_sched_getaffinity_36208 SYSC_sched_getaffinity 2 36208 NULL ++SYSC_process_vm_readv_36216 SYSC_process_vm_readv 3-5 36216 NULL +ubifs_read_nnode_36221 ubifs_read_nnode 0 36221 NULL +is_dirty_36223 is_dirty 2 36223 NULL +dma_alloc_attrs_36225 dma_alloc_attrs 0 36225 NULL +nfqnl_mangle_36226 nfqnl_mangle 4-2 36226 NULL +atomic_stats_read_36228 atomic_stats_read 3 36228 NULL +viafb_iga1_odev_proc_write_36241 viafb_iga1_odev_proc_write 3 36241 NULL ++SYSC_getxattr_36242 SYSC_getxattr 4 36242 NULL +rproc_recovery_read_36245 rproc_recovery_read 3 36245 NULL +scrub_stripe_36248 scrub_stripe 5-4 36248 NULL +compat_sys_mbind_36256 compat_sys_mbind 5 36256 NULL @@ -99924,13 +100512,17 @@ index 0000000..7982a0c +fat_compat_ioctl_filldir_36328 fat_compat_ioctl_filldir 3 36328 NULL +lc_create_36332 lc_create 4 36332 NULL +jbd2_journal_init_revoke_table_36336 jbd2_journal_init_revoke_table 1 36336 NULL ++isku_sysfs_read_key_mask_36343 isku_sysfs_read_key_mask 6 36343 NULL +v9fs_file_readn_36353 v9fs_file_readn 4 36353 NULL nohasharray +xz_dec_lzma2_create_36353 xz_dec_lzma2_create 2 36353 &v9fs_file_readn_36353 +to_sector_36361 to_sector 0-1 36361 NULL +tunables_read_36385 tunables_read 3 36385 NULL +afs_alloc_flat_call_36399 afs_alloc_flat_call 2-3 36399 NULL ++SyS_sethostname_36417 SyS_sethostname 2 36417 NULL +sctp_tsnmap_init_36446 sctp_tsnmap_init 2 36446 NULL +alloc_etherdev_mqs_36450 alloc_etherdev_mqs 1 36450 NULL ++tcf_csum_ipv6_udp_36457 tcf_csum_ipv6_udp 3 36457 NULL ++SyS_process_vm_writev_36476 SyS_process_vm_writev 3-5 36476 NULL +b43_nphy_load_samples_36481 b43_nphy_load_samples 3 36481 NULL +tx_tx_checksum_result_read_36490 tx_tx_checksum_result_read 3 36490 NULL +__hwahc_op_set_ptk_36510 __hwahc_op_set_ptk 5 36510 NULL @@ -99953,10 +100545,12 @@ index 0000000..7982a0c +format_decode_36638 format_decode 0 36638 NULL +ced_ioctl_36647 ced_ioctl 2 36647 NULL +lpfc_idiag_extacc_alloc_get_36648 lpfc_idiag_extacc_alloc_get 0-3 36648 NULL ++perf_calculate_period_36662 perf_calculate_period 3-2 36662 NULL +osd_req_list_collection_objects_36664 osd_req_list_collection_objects 5 36664 NULL +iscsi_host_alloc_36671 iscsi_host_alloc 2 36671 NULL +ptr_to_compat_36680 ptr_to_compat 0 36680 NULL +ext4_mb_discard_group_preallocations_36685 ext4_mb_discard_group_preallocations 2 36685 NULL ++sched_clock_36717 sched_clock 0 36717 NULL +extract_icmp6_fields_36732 extract_icmp6_fields 2 36732 NULL +snd_rawmidi_kernel_read1_36740 snd_rawmidi_kernel_read1 4 36740 NULL +cxgbi_device_register_36746 cxgbi_device_register 1-2 36746 NULL @@ -99965,6 +100559,7 @@ index 0000000..7982a0c +ptp_filter_init_36780 ptp_filter_init 2 36780 NULL +proc_fault_inject_read_36802 proc_fault_inject_read 3 36802 NULL +hiddev_ioctl_36816 hiddev_ioctl 2 36816 NULL ++tcf_csum_ipv6_tcp_36822 tcf_csum_ipv6_tcp 3 36822 NULL +int_hardware_entry_36833 int_hardware_entry 3 36833 NULL +fc_change_queue_depth_36841 fc_change_queue_depth 2 36841 NULL +keyctl_describe_key_36853 keyctl_describe_key 3 36853 NULL @@ -99986,6 +100581,7 @@ index 0000000..7982a0c +setxattr_37006 setxattr 4 37006 NULL +qp_broker_create_37053 qp_broker_create 6-5 37053 NULL nohasharray +ieee80211_if_read_drop_unencrypted_37053 ieee80211_if_read_drop_unencrypted 3 37053 &qp_broker_create_37053 ++SYSC_setxattr_37078 SYSC_setxattr 4 37078 NULL +parse_command_37079 parse_command 2 37079 NULL +pipeline_cs_rx_packet_in_read_37089 pipeline_cs_rx_packet_in_read 3 37089 NULL +tun_get_user_37094 tun_get_user 5 37094 NULL @@ -100003,6 +100599,7 @@ index 0000000..7982a0c +nested_svm_map_37268 nested_svm_map 2 37268 NULL +c101_run_37279 c101_run 2 37279 NULL +srp_target_alloc_37288 srp_target_alloc 3 37288 NULL ++isku_sysfs_write_talkfx_37298 isku_sysfs_write_talkfx 6 37298 NULL +ieee80211_if_read_power_mode_37305 ieee80211_if_read_power_mode 3 37305 NULL +jffs2_write_dirent_37311 jffs2_write_dirent 5 37311 NULL +send_msg_37323 send_msg 4 37323 NULL @@ -100018,6 +100615,7 @@ index 0000000..7982a0c +find_next_bit_37422 find_next_bit 0-2-3 37422 &acpi_os_allocate_zeroed_37422 +tty_insert_flip_string_fixed_flag_37428 tty_insert_flip_string_fixed_flag 4 37428 NULL +iwl_print_last_event_logs_37433 iwl_print_last_event_logs 0-7-9 37433 NULL ++tty_audit_log_37440 tty_audit_log 5 37440 NULL +tcp_established_options_37450 tcp_established_options 0 37450 NULL +brcmf_sdio_dump_console_37455 brcmf_sdio_dump_console 4 37455 NULL +__remove_37457 __remove 2 37457 NULL @@ -100034,12 +100632,15 @@ index 0000000..7982a0c +xhci_alloc_streams_37586 xhci_alloc_streams 5 37586 NULL +mlx4_get_mgm_entry_size_37607 mlx4_get_mgm_entry_size 0 37607 NULL +kvm_read_guest_page_mmu_37611 kvm_read_guest_page_mmu 6-3 37611 NULL -+policy_residency_37629 policy_residency 0 37629 NULL ++SYSC_mbind_37622 SYSC_mbind 5 37622 NULL ++btrfs_calc_trans_metadata_size_37629 btrfs_calc_trans_metadata_size 0-2 37629 NULL nohasharray ++policy_residency_37629 policy_residency 0 37629 &btrfs_calc_trans_metadata_size_37629 +check_pt_base_37635 check_pt_base 3 37635 NULL +alloc_fd_37637 alloc_fd 1 37637 NULL +bio_copy_user_iov_37660 bio_copy_user_iov 4 37660 NULL +rfcomm_sock_sendmsg_37661 rfcomm_sock_sendmsg 4 37661 NULL nohasharray +vmw_framebuffer_dmabuf_dirty_37661 vmw_framebuffer_dmabuf_dirty 6 37661 &rfcomm_sock_sendmsg_37661 ++SYSC_get_mempolicy_37664 SYSC_get_mempolicy 4-3 37664 NULL +lnw_gpio_to_irq_37665 lnw_gpio_to_irq 2 37665 NULL +ieee80211_if_read_rc_rateidx_mcs_mask_2ghz_37675 ieee80211_if_read_rc_rateidx_mcs_mask_2ghz 3 37675 NULL +regmap_map_read_file_37685 regmap_map_read_file 3 37685 NULL @@ -100059,7 +100660,8 @@ index 0000000..7982a0c +rx_decrypt_key_not_found_read_37820 rx_decrypt_key_not_found_read 3 37820 NULL +bitmap_find_next_zero_area_37827 bitmap_find_next_zero_area 2-3-5-4 37827 NULL +o2hb_debug_read_37851 o2hb_debug_read 3 37851 NULL -+xfs_dir2_block_to_sf_37868 xfs_dir2_block_to_sf 3 37868 NULL ++isku_sysfs_write_last_set_37868 isku_sysfs_write_last_set 6 37868 NULL nohasharray ++xfs_dir2_block_to_sf_37868 xfs_dir2_block_to_sf 3 37868 &isku_sysfs_write_last_set_37868 +sys_setxattr_37880 sys_setxattr 4 37880 NULL +dvb_net_sec_37884 dvb_net_sec 3 37884 NULL +max77686_irq_domain_map_37897 max77686_irq_domain_map 2 37897 NULL @@ -100075,12 +100677,14 @@ index 0000000..7982a0c +aggr_recv_addba_req_evt_38037 aggr_recv_addba_req_evt 4 38037 NULL +klsi_105_prepare_write_buffer_38044 klsi_105_prepare_write_buffer 3 38044 NULL nohasharray +il_dbgfs_chain_noise_read_38044 il_dbgfs_chain_noise_read 3 38044 &klsi_105_prepare_write_buffer_38044 ++SyS_llistxattr_38048 SyS_llistxattr 3 38048 NULL +_xfs_buf_alloc_38058 _xfs_buf_alloc 3 38058 NULL nohasharray +is_discarded_38058 is_discarded 2 38058 &_xfs_buf_alloc_38058 +nsm_create_handle_38060 nsm_create_handle 4 38060 NULL +alloc_ltalkdev_38071 alloc_ltalkdev 1 38071 NULL +xfs_buf_readahead_map_38081 xfs_buf_readahead_map 3 38081 NULL +uwb_mac_addr_print_38085 uwb_mac_addr_print 2 38085 NULL ++tcf_csum_ipv4_udp_38089 tcf_csum_ipv4_udp 3 38089 NULL +request_key_auth_new_38092 request_key_auth_new 3 38092 NULL +proc_self_readlink_38094 proc_self_readlink 3 38094 NULL +ep0_read_38095 ep0_read 3 38095 NULL @@ -100103,7 +100707,8 @@ index 0000000..7982a0c +from_dblock_38256 from_dblock 0-1 38256 NULL +vmci_qp_broker_set_page_store_38260 vmci_qp_broker_set_page_store 2-3 38260 NULL +ieee80211_if_read_auto_open_plinks_38268 ieee80211_if_read_auto_open_plinks 3 38268 NULL nohasharray -+mthca_alloc_icm_table_38268 mthca_alloc_icm_table 4-3 38268 &ieee80211_if_read_auto_open_plinks_38268 ++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 +ftdi_process_packet_38281 ftdi_process_packet 4 38281 NULL nohasharray @@ -100126,6 +100731,7 @@ index 0000000..7982a0c +i915_min_freq_read_38470 i915_min_freq_read 3 38470 NULL +kvm_arch_setup_async_pf_38481 kvm_arch_setup_async_pf 3 38481 NULL +blk_end_bidi_request_38482 blk_end_bidi_request 3-4 38482 NULL ++cpu_to_mem_38501 cpu_to_mem 0 38501 NULL +dev_names_read_38509 dev_names_read 3 38509 NULL +iscsi_create_iface_38510 iscsi_create_iface 5 38510 NULL +event_rx_mismatch_read_38518 event_rx_mismatch_read 3 38518 NULL @@ -100133,6 +100739,7 @@ index 0000000..7982a0c +mlx4_ib_db_map_user_38529 mlx4_ib_db_map_user 2 38529 NULL +ubifs_idx_node_sz_38546 ubifs_idx_node_sz 0-2 38546 NULL +btrfs_discard_extent_38547 btrfs_discard_extent 2 38547 NULL ++cpu_to_node_38561 cpu_to_node 0 38561 NULL +irda_sendmsg_dgram_38563 irda_sendmsg_dgram 4 38563 NULL +il4965_rs_sta_dbgfs_scale_table_read_38564 il4965_rs_sta_dbgfs_scale_table_read 3 38564 NULL +_ipw_read32_38565 _ipw_read32 0 38565 NULL @@ -100147,6 +100754,7 @@ index 0000000..7982a0c +qp_broker_alloc_38646 qp_broker_alloc 5-6 38646 NULL +mmc_send_cxd_data_38655 mmc_send_cxd_data 5 38655 NULL +nouveau_instmem_create__38664 nouveau_instmem_create_ 4 38664 NULL ++skb_tnl_header_len_38669 skb_tnl_header_len 0 38669 NULL +cfg80211_send_disassoc_38678 cfg80211_send_disassoc 3 38678 NULL +iscsit_dump_data_payload_38683 iscsit_dump_data_payload 2 38683 NULL +ext4_wait_block_bitmap_38695 ext4_wait_block_bitmap 2 38695 NULL @@ -100172,7 +100780,8 @@ index 0000000..7982a0c +ext3_trim_all_free_38929 ext3_trim_all_free 3-4-2 38929 NULL +sbp_count_se_tpg_luns_38943 sbp_count_se_tpg_luns 0 38943 NULL +__ath6kl_wmi_send_mgmt_cmd_38971 __ath6kl_wmi_send_mgmt_cmd 7 38971 NULL -+usb_maxpacket_38977 usb_maxpacket 0 38977 NULL ++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 4-2 38986 NULL +udf_new_block_38999 udf_new_block 4 38999 NULL +get_nodes_39012 get_nodes 3 39012 NULL @@ -100218,6 +100827,7 @@ index 0000000..7982a0c +user_power_read_39414 user_power_read 3 39414 NULL +alloc_agpphysmem_i8xx_39427 alloc_agpphysmem_i8xx 1 39427 NULL +sys_semop_39457 sys_semop 3 39457 NULL ++ptrace_peek_siginfo_39458 ptrace_peek_siginfo 3 39458 NULL +setkey_unaligned_39474 setkey_unaligned 3 39474 NULL +do_get_mempolicy_39485 do_get_mempolicy 3 39485 NULL +ieee80211_if_fmt_dot11MeshHWMPmaxPREQretries_39499 ieee80211_if_fmt_dot11MeshHWMPmaxPREQretries 3 39499 NULL @@ -100264,11 +100874,13 @@ index 0000000..7982a0c +fwnet_pd_new_39947 fwnet_pd_new 4 39947 &error_error_frame_read_39947 +tty_prepare_flip_string_39955 tty_prepare_flip_string 3 39955 NULL +dma_push_rx_39973 dma_push_rx 2 39973 NULL ++vfio_pci_read_39975 vfio_pci_read 3 39975 NULL +broadsheetfb_write_39976 broadsheetfb_write 3 39976 NULL +mthca_array_init_39987 mthca_array_init 2 39987 NULL +xen_hvm_config_40018 xen_hvm_config 2 40018 NULL +nf_nat_icmpv6_reply_translation_40023 nf_nat_icmpv6_reply_translation 5 40023 NULL nohasharray +ivtvfb_write_40023 ivtvfb_write 3 40023 &nf_nat_icmpv6_reply_translation_40023 ++disc_pwup_write_40027 disc_pwup_write 3 40027 NULL +ea_foreach_i_40028 ea_foreach_i 0 40028 NULL +datablob_hmac_append_40038 datablob_hmac_append 3 40038 NULL +regmap_add_irq_chip_40042 regmap_add_irq_chip 4 40042 NULL @@ -100277,6 +100889,7 @@ index 0000000..7982a0c +atomic_xchg_40070 atomic_xchg 0 40070 NULL +gen_pool_first_fit_40110 gen_pool_first_fit 2-3-4 40110 NULL +sctp_setsockopt_delayed_ack_40129 sctp_setsockopt_delayed_ack 3 40129 NULL ++dwc2_max_desc_num_40132 dwc2_max_desc_num 0 40132 NULL +rx_rx_frame_checksum_read_40140 rx_rx_frame_checksum_read 3 40140 NULL +iwch_alloc_fastreg_pbl_40153 iwch_alloc_fastreg_pbl 2 40153 NULL +pt_write_40159 pt_write 3 40159 NULL @@ -100293,6 +100906,7 @@ index 0000000..7982a0c +rs_sta_dbgfs_scale_table_read_40262 rs_sta_dbgfs_scale_table_read 3 40262 NULL +usbnet_read_cmd_40275 usbnet_read_cmd 7 40275 NULL +rx_xfr_hint_trig_read_40283 rx_xfr_hint_trig_read 3 40283 NULL ++_calc_trunk_info_40291 _calc_trunk_info 2 40291 NULL +crash_free_reserved_phys_range_40292 crash_free_reserved_phys_range 1 40292 NULL +ubi_io_write_data_40305 ubi_io_write_data 4-5 40305 NULL +batadv_tt_changes_fill_buff_40323 batadv_tt_changes_fill_buff 4 40323 NULL @@ -100317,6 +100931,8 @@ index 0000000..7982a0c +ima_write_policy_40548 ima_write_policy 3 40548 NULL +esp_alloc_tmp_40558 esp_alloc_tmp 3-2 40558 NULL +ufs_inode_getfrag_40560 ufs_inode_getfrag 2-4 40560 NULL ++bdev_sectors_40564 bdev_sectors 0 40564 NULL ++lba_to_map_index_40580 lba_to_map_index 0-1 40580 NULL +skge_rx_get_40598 skge_rx_get 3 40598 NULL +get_priv_descr_and_size_40612 get_priv_descr_and_size 0 40612 NULL +bl_mark_sectors_init_40613 bl_mark_sectors_init 2-3 40613 NULL @@ -100328,6 +100944,7 @@ index 0000000..7982a0c +alloc_rbio_40676 alloc_rbio 4 40676 NULL +videobuf_dma_init_user_locked_40678 videobuf_dma_init_user_locked 3 40678 NULL +nfc_hci_set_param_40697 nfc_hci_set_param 5 40697 NULL ++vfio_pci_config_rw_40698 vfio_pci_config_rw 3 40698 NULL +__seq_open_private_40715 __seq_open_private 3 40715 NULL +fuse_readpages_40737 fuse_readpages 4 40737 NULL +xfs_iext_remove_direct_40744 xfs_iext_remove_direct 3 40744 NULL nohasharray @@ -100338,12 +100955,15 @@ index 0000000..7982a0c +ad1889_readl_40765 ad1889_readl 0 40765 NULL +pg_write_40766 pg_write 3 40766 NULL +show_list_40775 show_list 3 40775 NULL ++calcu_metadata_size_40782 calcu_metadata_size 0 40782 NULL +kfifo_out_copy_r_40784 kfifo_out_copy_r 0-3 40784 NULL +bitmap_weight_40791 bitmap_weight 0-2 40791 NULL +pyra_sysfs_read_40795 pyra_sysfs_read 6 40795 NULL +netdev_alloc_skb_ip_align_40811 netdev_alloc_skb_ip_align 2 40811 NULL +nl80211_send_roamed_40825 nl80211_send_roamed 5-7 40825 NULL ++SyS_mbind_40828 SyS_mbind 5 40828 NULL +__mlx4_qp_reserve_range_40847 __mlx4_qp_reserve_range 2-3 40847 NULL ++isku_sysfs_write_keys_thumbster_40851 isku_sysfs_write_keys_thumbster 6 40851 NULL +ocfs2_zero_partial_clusters_40856 ocfs2_zero_partial_clusters 2-3 40856 NULL +v9fs_file_read_40858 v9fs_file_read 3 40858 NULL +read_file_queue_40895 read_file_queue 3 40895 NULL @@ -100381,8 +101001,10 @@ index 0000000..7982a0c +hiddev_compat_ioctl_41255 hiddev_compat_ioctl 2-3 41255 NULL +erst_read_41260 erst_read 0 41260 NULL +__fprog_create_41263 __fprog_create 2 41263 NULL ++setup_cluster_bitmap_41270 setup_cluster_bitmap 4 41270 NULL +alloc_context_41283 alloc_context 1 41283 NULL +arch_gnttab_map_shared_41306 arch_gnttab_map_shared 3 41306 NULL ++objio_alloc_io_state_41316 objio_alloc_io_state 6 41316 NULL +twl_change_queue_depth_41342 twl_change_queue_depth 2 41342 NULL +cnic_init_id_tbl_41354 cnic_init_id_tbl 2 41354 NULL +jbd2_alloc_41359 jbd2_alloc 1 41359 NULL @@ -100401,6 +101023,7 @@ index 0000000..7982a0c +layout_leb_in_gaps_41470 layout_leb_in_gaps 0 41470 NULL +rt2x00debug_write_rfcsr_41473 rt2x00debug_write_rfcsr 3 41473 NULL +wep_interrupt_read_41492 wep_interrupt_read 3 41492 NULL ++SyS_get_mempolicy_41495 SyS_get_mempolicy 3-4 41495 NULL +hpfs_translate_name_41497 hpfs_translate_name 3 41497 NULL +xfrm_hash_new_size_41505 xfrm_hash_new_size 0-1 41505 NULL +ldisc_receive_41516 ldisc_receive 4 41516 NULL @@ -100414,6 +101037,7 @@ index 0000000..7982a0c +tcp_hdrlen_41610 tcp_hdrlen 0 41610 NULL +usb_endpoint_maxp_41613 usb_endpoint_maxp 0 41613 NULL +a2mp_send_41615 a2mp_send 4 41615 NULL ++btrfs_calc_trunc_metadata_size_41626 btrfs_calc_trunc_metadata_size 0-2 41626 NULL +mempool_create_kmalloc_pool_41650 mempool_create_kmalloc_pool 1 41650 NULL +rx_rx_pre_complt_read_41653 rx_rx_pre_complt_read 3 41653 NULL +get_std_timing_41654 get_std_timing 0 41654 NULL @@ -100426,7 +101050,9 @@ index 0000000..7982a0c +get_bios_ebda_41730 get_bios_ebda 0 41730 NULL +fillonedir_41746 fillonedir 3 41746 NULL +ocfs2_dx_dir_rebalance_41793 ocfs2_dx_dir_rebalance 7 41793 NULL ++iwl_dbgfs_bt_notif_read_41794 iwl_dbgfs_bt_notif_read 3 41794 NULL +hsi_alloc_controller_41802 hsi_alloc_controller 1 41802 NULL ++regcache_sync_block_raw_41803 regcache_sync_block_raw 3-4 41803 NULL +da9052_enable_irq_41814 da9052_enable_irq 2 41814 NULL +sco_send_frame_41815 sco_send_frame 3 41815 NULL +lp_gpio_to_irq_41822 lp_gpio_to_irq 2 41822 NULL @@ -100434,11 +101060,13 @@ index 0000000..7982a0c +do_ip_setsockopt_41852 do_ip_setsockopt 5 41852 NULL +keyctl_instantiate_key_41855 keyctl_instantiate_key 3 41855 NULL +ieee80211_rx_radiotap_space_41870 ieee80211_rx_radiotap_space 0 41870 NULL ++get_packet_41914 get_packet 3 41914 NULL +get_fdb_entries_41916 get_fdb_entries 3 41916 NULL +find_ge_pid_41918 find_ge_pid 1 41918 NULL +build_inv_iotlb_pages_41922 build_inv_iotlb_pages 4-5 41922 NULL +nfsd_getxattr_41934 nfsd_getxattr 0 41934 NULL +ext4_da_write_inline_data_begin_41935 ext4_da_write_inline_data_begin 3-4 41935 NULL ++read_gssp_41947 read_gssp 3 41947 NULL +ocfs2_xattr_bucket_get_name_value_41949 ocfs2_xattr_bucket_get_name_value 0 41949 NULL +portnames_read_41958 portnames_read 3 41958 NULL +ubi_self_check_all_ff_41959 ubi_self_check_all_ff 4 41959 NULL @@ -100483,6 +101111,7 @@ index 0000000..7982a0c +snd_pcm_plug_alloc_42339 snd_pcm_plug_alloc 2 42339 NULL +ide_raw_taskfile_42355 ide_raw_taskfile 4 42355 NULL +il_dbgfs_disable_ht40_read_42386 il_dbgfs_disable_ht40_read 3 42386 NULL ++hash_ipportnet4_expire_42391 hash_ipportnet4_expire 3 42391 NULL +msnd_fifo_read_42406 msnd_fifo_read 0-3 42406 NULL +krng_get_random_42420 krng_get_random 3 42420 NULL +gsm_data_alloc_42437 gsm_data_alloc 3 42437 NULL @@ -100495,6 +101124,7 @@ index 0000000..7982a0c +follow_hugetlb_page_42486 follow_hugetlb_page 0-7 42486 NULL +omfs_readpages_42490 omfs_readpages 4 42490 NULL +brcmf_sdbrcm_bus_txctl_42492 brcmf_sdbrcm_bus_txctl 3 42492 NULL ++bypass_write_42498 bypass_write 3 42498 NULL +kvm_write_wall_clock_42520 kvm_write_wall_clock 2 42520 NULL +smk_write_netlbladdr_42525 smk_write_netlbladdr 3 42525 NULL +snd_emux_create_port_42533 snd_emux_create_port 3 42533 NULL @@ -100508,11 +101138,13 @@ index 0000000..7982a0c +__pskb_pull_42602 __pskb_pull 2 42602 &map_state_42602 +nd_get_link_42603 nd_get_link 0 42603 NULL +sys_move_pages_42626 sys_move_pages 2 42626 NULL ++resp_write_42628 resp_write 2 42628 NULL +ieee80211_if_fmt_dot11MeshHWMPactivePathTimeout_42635 ieee80211_if_fmt_dot11MeshHWMPactivePathTimeout 3 42635 NULL +scsi_activate_tcq_42640 scsi_activate_tcq 2 42640 NULL +br_mdb_rehash_42643 br_mdb_rehash 2 42643 NULL +l2tp_xmit_skb_42672 l2tp_xmit_skb 3 42672 NULL +request_key_and_link_42693 request_key_and_link 4 42693 NULL ++acpi_dev_get_irqresource_42694 acpi_dev_get_irqresource 2 42694 NULL +vb2_read_42703 vb2_read 3 42703 NULL +sierra_net_send_cmd_42708 sierra_net_send_cmd 3 42708 NULL +__ocfs2_decrease_refcount_42717 __ocfs2_decrease_refcount 4 42717 NULL @@ -100521,13 +101153,15 @@ index 0000000..7982a0c +ax25_setsockopt_42740 ax25_setsockopt 5 42740 NULL +xen_bind_pirq_gsi_to_irq_42750 xen_bind_pirq_gsi_to_irq 1 42750 NULL +snd_midi_event_decode_42780 snd_midi_event_decode 0 42780 NULL -+cryptd_hash_setkey_42781 cryptd_hash_setkey 3 42781 NULL ++cryptd_hash_setkey_42781 cryptd_hash_setkey 3 42781 NULL nohasharray ++isku_sysfs_read_info_42781 isku_sysfs_read_info 6 42781 &cryptd_hash_setkey_42781 +koneplus_sysfs_read_42792 koneplus_sysfs_read 6 42792 NULL +ntfs_attr_extend_allocation_42796 ntfs_attr_extend_allocation 0-2 42796 NULL +fw_device_op_compat_ioctl_42804 fw_device_op_compat_ioctl 2-3 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 +set_arg_42824 set_arg 3 42824 NULL ++si476x_radio_read_rsq_blob_42827 si476x_radio_read_rsq_blob 3 42827 NULL +ocfs2_desc_bitmap_to_cluster_off_42831 ocfs2_desc_bitmap_to_cluster_off 2 42831 NULL +prandom_u32_42853 prandom_u32 0 42853 NULL +of_property_count_strings_42863 of_property_count_strings 0 42863 NULL @@ -100548,12 +101182,14 @@ index 0000000..7982a0c +nfs_idmap_get_desc_42990 nfs_idmap_get_desc 4-2 42990 NULL +mlx4_qp_reserve_range_43000 mlx4_qp_reserve_range 2-3 43000 NULL +isr_rx_mem_overflow_read_43025 isr_rx_mem_overflow_read 3 43025 NULL ++add_bytes_to_bitmap_43026 add_bytes_to_bitmap 0 43026 NULL +wep_default_key_count_read_43035 wep_default_key_count_read 3 43035 NULL +nouveau_gpuobj_create__43072 nouveau_gpuobj_create_ 9 43072 NULL +nfs_map_group_to_gid_43082 nfs_map_group_to_gid 3 43082 NULL +cpuset_sprintf_memlist_43088 cpuset_sprintf_memlist 0 43088 NULL +ieee80211_if_fmt_drop_unencrypted_43107 ieee80211_if_fmt_drop_unencrypted 3 43107 NULL -+read_file_dfs_43145 read_file_dfs 3 43145 NULL ++read_file_dfs_43145 read_file_dfs 3 43145 NULL nohasharray ++i2c_hid_get_report_43145 i2c_hid_get_report 0 43145 &read_file_dfs_43145 +uuid_string_43154 uuid_string 0 43154 NULL +usb_string_sub_43164 usb_string_sub 0 43164 NULL +il_dbgfs_power_save_status_read_43165 il_dbgfs_power_save_status_read 3 43165 NULL @@ -100576,8 +101212,10 @@ index 0000000..7982a0c +__ext4_get_inode_loc_43332 __ext4_get_inode_loc 0 43332 NULL +kvm_host_page_size_43348 kvm_host_page_size 2 43348 NULL +gart_free_coherent_43362 gart_free_coherent 4-2 43362 NULL ++hash_net4_expire_43378 hash_net4_expire 3 43378 NULL +__alloc_bootmem_low_43423 __alloc_bootmem_low 1-2 43423 NULL nohasharray +gdm_wimax_netif_rx_43423 gdm_wimax_netif_rx 3 43423 &__alloc_bootmem_low_43423 ++isku_sysfs_write_keys_capslock_43432 isku_sysfs_write_keys_capslock 6 43432 NULL +usb_alloc_urb_43436 usb_alloc_urb 1 43436 NULL +ucs2_strsize_43438 ucs2_strsize 0 43438 NULL +ath6kl_wmi_roam_tbl_event_rx_43440 ath6kl_wmi_roam_tbl_event_rx 3 43440 NULL @@ -100601,6 +101239,7 @@ index 0000000..7982a0c +dmam_declare_coherent_memory_43679 dmam_declare_coherent_memory 4-2 43679 NULL +calgary_map_page_43686 calgary_map_page 3-4 43686 NULL +max77693_bulk_write_43698 max77693_bulk_write 2-3 43698 NULL ++drbd_md_first_sector_43729 drbd_md_first_sector 0 43729 NULL +snd_rme32_playback_copy_43732 snd_rme32_playback_copy 5 43732 NULL +ocfs2_replace_clusters_43733 ocfs2_replace_clusters 5 43733 NULL +osdv1_attr_list_elem_size_43747 osdv1_attr_list_elem_size 0-1 43747 NULL @@ -100611,6 +101250,7 @@ index 0000000..7982a0c +byte_pos_43787 byte_pos 0-2 43787 &ocfs2_xattr_get_value_outside_43787 +btrfs_copy_from_user_43806 btrfs_copy_from_user 3-1 43806 NULL +ext4_read_block_bitmap_43814 ext4_read_block_bitmap 2 43814 NULL ++div64_u64_safe_43815 div64_u64_safe 1-2 43815 NULL +ieee80211_if_fmt_element_ttl_43825 ieee80211_if_fmt_element_ttl 3 43825 NULL +ieee80211_alloc_hw_43829 ieee80211_alloc_hw 1 43829 NULL +p54_download_eeprom_43842 p54_download_eeprom 4 43842 NULL @@ -100629,6 +101269,7 @@ index 0000000..7982a0c +emit_flags_44006 emit_flags 4-3 44006 NULL +write_flush_procfs_44011 write_flush_procfs 3 44011 NULL +swiotlb_unmap_page_44063 swiotlb_unmap_page 2 44063 NULL ++SYSC_add_key_44079 SYSC_add_key 4 44079 NULL +load_discard_44083 load_discard 3 44083 NULL +xlog_recover_add_to_cont_trans_44102 xlog_recover_add_to_cont_trans 4 44102 NULL +tracing_set_trace_read_44122 tracing_set_trace_read 3 44122 NULL @@ -100636,6 +101277,7 @@ index 0000000..7982a0c +scsi_get_resid_44147 scsi_get_resid 0 44147 NULL +ubifs_find_dirty_idx_leb_44169 ubifs_find_dirty_idx_leb 0 44169 NULL +ocfs2_xattr_bucket_find_44174 ocfs2_xattr_bucket_find 0 44174 NULL ++SYSC_set_mempolicy_44176 SYSC_set_mempolicy 3 44176 NULL +handle_eviocgbit_44193 handle_eviocgbit 3 44193 NULL +IO_APIC_get_PCI_irq_vector_44198 IO_APIC_get_PCI_irq_vector 0 44198 NULL +__set_free_44211 __set_free 2 44211 NULL @@ -100664,12 +101306,14 @@ index 0000000..7982a0c +___alloc_bootmem_node_nopanic_44461 ___alloc_bootmem_node_nopanic 2-3 44461 NULL +btrfs_chunk_item_size_44478 btrfs_chunk_item_size 0-1 44478 NULL +sdio_align_size_44489 sdio_align_size 0-2 44489 NULL ++bio_advance_44496 bio_advance 2 44496 NULL +ieee80211_if_read_dropped_frames_ttl_44500 ieee80211_if_read_dropped_frames_ttl 3 44500 NULL +security_getprocattr_44505 security_getprocattr 0 44505 NULL nohasharray +iwl_dbgfs_sram_read_44505 iwl_dbgfs_sram_read 3 44505 &security_getprocattr_44505 +spidev_write_44510 spidev_write 3 44510 NULL +sys_msgsnd_44537 sys_msgsnd 3 44537 NULL nohasharray +comm_write_44537 comm_write 3 44537 &sys_msgsnd_44537 ++hash_ipport4_expire_44564 hash_ipport4_expire 3 44564 NULL +dgrp_config_proc_write_44571 dgrp_config_proc_write 3 44571 NULL +snd_pcm_alloc_vmalloc_buffer_44595 snd_pcm_alloc_vmalloc_buffer 2 44595 NULL +slip_compat_ioctl_44599 slip_compat_ioctl 4 44599 NULL @@ -100680,6 +101324,7 @@ index 0000000..7982a0c +mpi_resize_44674 mpi_resize 2 44674 NULL +ts_read_44687 ts_read 3 44687 NULL +qib_get_user_pages_44689 qib_get_user_pages 1-2 44689 NULL ++xfer_to_user_44713 xfer_to_user 3 44713 NULL +_zd_iowrite32v_locked_44725 _zd_iowrite32v_locked 3 44725 NULL +clusterip_proc_write_44729 clusterip_proc_write 3 44729 NULL +fib_count_nexthops_44730 fib_count_nexthops 0 44730 NULL @@ -100693,25 +101338,31 @@ index 0000000..7982a0c +sctp_setsockopt_44788 sctp_setsockopt 5 44788 NULL +rx_dropped_read_44799 rx_dropped_read 3 44799 NULL +qla4xxx_alloc_work_44813 qla4xxx_alloc_work 2 44813 NULL ++mei_cl_read_start_44824 mei_cl_read_start 2 44824 NULL +rmap_write_protect_44833 rmap_write_protect 2 44833 NULL +sisusb_write_44834 sisusb_write 3 44834 NULL +nl80211_send_unprot_disassoc_44846 nl80211_send_unprot_disassoc 4 44846 NULL +kvm_read_hva_44847 kvm_read_hva 3 44847 NULL ++cubic_root_44848 cubic_root 1 44848 NULL ++copydesc_user_44855 copydesc_user 3 44855 NULL +skb_availroom_44883 skb_availroom 0 44883 NULL +nf_bridge_encap_header_len_44890 nf_bridge_encap_header_len 0 44890 NULL +do_tty_write_44896 do_tty_write 5 44896 NULL +tx_queue_status_read_44978 tx_queue_status_read 3 44978 NULL +nf_nat_seq_adjust_44989 nf_nat_seq_adjust 4 44989 NULL ++map_index_to_lba_44993 map_index_to_lba 0-1 44993 NULL +bytepos_delta_45017 bytepos_delta 0 45017 NULL +read_block_bitmap_45021 read_block_bitmap 2 45021 NULL nohasharray +ptrace_writedata_45021 ptrace_writedata 4-3 45021 &read_block_bitmap_45021 +vhci_get_user_45039 vhci_get_user 3 45039 NULL +sel_write_user_45060 sel_write_user 3 45060 NULL ++vmscan_swappiness_45062 vmscan_swappiness 0 45062 NULL +snd_mixart_BA0_read_45069 snd_mixart_BA0_read 5 45069 NULL nohasharray +do_video_ioctl_45069 do_video_ioctl 3 45069 &snd_mixart_BA0_read_45069 +kvm_mmu_page_get_gfn_45110 kvm_mmu_page_get_gfn 0-2 45110 NULL +pwr_missing_bcns_cnt_read_45113 pwr_missing_bcns_cnt_read 3 45113 NULL +usbdev_read_45114 usbdev_read 3 45114 NULL ++isku_sysfs_write_reset_45133 isku_sysfs_write_reset 6 45133 NULL +send_to_tty_45141 send_to_tty 3 45141 NULL +stmpe_irq_map_45146 stmpe_irq_map 2 45146 NULL +crypto_aead_blocksize_45148 crypto_aead_blocksize 0 45148 NULL @@ -100728,17 +101379,20 @@ index 0000000..7982a0c +spi_alloc_master_45223 spi_alloc_master 2 45223 NULL +__dirty_45228 __dirty 2 45228 NULL +ieee80211_if_read_peer_45233 ieee80211_if_read_peer 3 45233 NULL ++prism2_pda_proc_read_45246 prism2_pda_proc_read 3 45246 NULL +input_mt_init_slots_45279 input_mt_init_slots 2 45279 NULL +vcc_compat_ioctl_45291 vcc_compat_ioctl 3 45291 NULL +snd_pcm_oss_sync1_45298 snd_pcm_oss_sync1 2 45298 NULL +pte_val_45313 pte_val 0 45313 NULL ++__i2c_hid_command_45321 __i2c_hid_command 0 45321 NULL +copy_vm86_regs_from_user_45340 copy_vm86_regs_from_user 3 45340 NULL +lane2_associate_req_45398 lane2_associate_req 4 45398 NULL +keymap_store_45406 keymap_store 4 45406 NULL +paging64_gva_to_gpa_45421 paging64_gva_to_gpa 2 45421 NULL nohasharray +ieee80211_if_fmt_dot11MeshHWMProotInterval_45421 ieee80211_if_fmt_dot11MeshHWMProotInterval 3 45421 &paging64_gva_to_gpa_45421 +tty_buffer_alloc_45437 tty_buffer_alloc 2 45437 NULL -+intel_render_ring_init_dri_45446 intel_render_ring_init_dri 2-3 45446 NULL ++intel_render_ring_init_dri_45446 intel_render_ring_init_dri 2-3 45446 NULL nohasharray ++SYSC_mremap_45446 SYSC_mremap 5-1-2 45446 &intel_render_ring_init_dri_45446 +__node_remap_45458 __node_remap 4 45458 NULL +rds_ib_set_wr_signal_state_45463 rds_ib_set_wr_signal_state 0 45463 NULL +udp_manip_pkt_45467 udp_manip_pkt 4 45467 NULL @@ -100795,6 +101449,7 @@ index 0000000..7982a0c +rb_simple_read_45972 rb_simple_read 3 45972 NULL +ezusb_writememory_45976 ezusb_writememory 4 45976 NULL +ioat2_dca_count_dca_slots_45984 ioat2_dca_count_dca_slots 0 45984 NULL ++ore_calc_stripe_info_46023 ore_calc_stripe_info 2 46023 NULL +sierra_setup_urb_46029 sierra_setup_urb 5 46029 NULL +get_free_entries_46030 get_free_entries 1 46030 NULL +__access_remote_vm_46031 __access_remote_vm 0-5-3 46031 NULL @@ -100811,8 +101466,10 @@ index 0000000..7982a0c +pkt_ctl_compat_ioctl_46110 pkt_ctl_compat_ioctl 3 46110 NULL +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 ++vb2_dma_sg_get_userptr_46146 vb2_dma_sg_get_userptr 2 46146 NULL +__netlink_change_ngroups_46156 __netlink_change_ngroups 2 46156 NULL +twl_direction_out_46182 twl_direction_out 2 46182 NULL +vxge_os_dma_malloc_46184 vxge_os_dma_malloc 2 46184 NULL @@ -100824,6 +101481,7 @@ index 0000000..7982a0c +nf_nat_ftp_46265 nf_nat_ftp 6 46265 NULL +ReadReg_46277 ReadReg 0 46277 NULL +batadv_iv_ogm_queue_add_46319 batadv_iv_ogm_queue_add 3 46319 NULL ++qlcnic_83xx_sysfs_flash_bulk_write_46320 qlcnic_83xx_sysfs_flash_bulk_write 4 46320 NULL +__hwahc_dev_set_key_46328 __hwahc_dev_set_key 5 46328 NULL +iwl_dbgfs_chain_noise_read_46355 iwl_dbgfs_chain_noise_read 3 46355 NULL +smk_write_direct_46363 smk_write_direct 3 46363 NULL @@ -100831,6 +101489,7 @@ index 0000000..7982a0c +ubi_dump_flash_46381 ubi_dump_flash 4 46381 NULL +fuse_file_aio_write_46399 fuse_file_aio_write 4 46399 NULL +crypto_ablkcipher_reqsize_46411 crypto_ablkcipher_reqsize 0 46411 NULL ++hash_ipportip6_expire_46443 hash_ipportip6_expire 3 46443 NULL +cp210x_set_config_46447 cp210x_set_config 4 46447 NULL +filldir64_46469 filldir64 3 46469 NULL +fill_in_write_vector_46498 fill_in_write_vector 0 46498 NULL @@ -100869,7 +101528,8 @@ index 0000000..7982a0c +xfs_iroot_realloc_46826 xfs_iroot_realloc 2 46826 NULL +shmem_pwrite_fast_46842 shmem_pwrite_fast 3 46842 NULL +spi_async_46857 spi_async 0 46857 NULL -+vsnprintf_46863 vsnprintf 0 46863 NULL ++vsnprintf_46863 vsnprintf 0 46863 NULL nohasharray ++SyS_move_pages_46863 SyS_move_pages 2 46863 &vsnprintf_46863 +nvme_alloc_queue_46865 nvme_alloc_queue 3 46865 NULL +sip_sprintf_addr_46872 sip_sprintf_addr 0 46872 NULL +rvmalloc_46873 rvmalloc 1 46873 NULL @@ -100892,6 +101552,7 @@ index 0000000..7982a0c +sel_write_bool_46996 sel_write_bool 3 46996 &gfs2_xattr_system_set_46996 +ttm_bo_io_47000 ttm_bo_io 5 47000 NULL +blk_rq_map_kern_47004 blk_rq_map_kern 4 47004 NULL ++add_free_space_entry_47005 add_free_space_entry 2 47005 NULL +__map_single_47020 __map_single 3-4-7 47020 NULL +cx231xx_init_bulk_47024 cx231xx_init_bulk 3-2 47024 NULL +swiotlb_sync_single_47031 swiotlb_sync_single 2 47031 NULL @@ -100900,6 +101561,7 @@ index 0000000..7982a0c +ufs_new_fragments_47070 ufs_new_fragments 3-5-4 47070 NULL +pipeline_dec_packet_in_read_47076 pipeline_dec_packet_in_read 3 47076 NULL +scsi_deactivate_tcq_47086 scsi_deactivate_tcq 2 47086 NULL ++iwl_dump_nic_event_log_47089 iwl_dump_nic_event_log 0 47089 NULL +mousedev_read_47123 mousedev_read 3 47123 NULL +ses_recv_diag_47143 ses_recv_diag 4 47143 NULL nohasharray +acpi_ut_initialize_buffer_47143 acpi_ut_initialize_buffer 2 47143 &ses_recv_diag_47143 @@ -100919,7 +101581,9 @@ index 0000000..7982a0c +tty_audit_log_47280 tty_audit_log 8 47280 NULL +gfs2_readpages_47285 gfs2_readpages 4 47285 NULL +vsnprintf_47291 vsnprintf 0 47291 NULL ++SYSC_semop_47292 SYSC_semop 3 47292 NULL +tx_internal_desc_overflow_read_47300 tx_internal_desc_overflow_read 3 47300 NULL ++SyS_madvise_47354 SyS_madvise 1 47354 NULL +ieee80211_if_read_dot11MeshHoldingTimeout_47356 ieee80211_if_read_dot11MeshHoldingTimeout 3 47356 NULL +avc_get_hash_stats_47359 avc_get_hash_stats 0 47359 NULL +find_first_zero_bit_le_47369 find_first_zero_bit_le 2 47369 NULL @@ -100931,13 +101595,17 @@ index 0000000..7982a0c +pfkey_sendmsg_47394 pfkey_sendmsg 4 47394 NULL +gfn_to_pfn_prot_47398 gfn_to_pfn_prot 2 47398 NULL +ocfs2_resv_end_47408 ocfs2_resv_end 0 47408 NULL ++sta_vht_capa_read_47409 sta_vht_capa_read 3 47409 NULL +crypto_ablkcipher_alignmask_47410 crypto_ablkcipher_alignmask 0 47410 NULL +vzalloc_47421 vzalloc 1 47421 NULL ++hash_ipportip4_expire_47426 hash_ipportip4_expire 3 47426 NULL +posix_acl_from_disk_47445 posix_acl_from_disk 2 47445 NULL +__load_mapping_47460 __load_mapping 2 47460 NULL ++nvme_trans_send_fw_cmd_47479 nvme_trans_send_fw_cmd 4 47479 NULL +wb_force_mapping_47485 wb_force_mapping 2 47485 NULL nohasharray +newpart_47485 newpart 6 47485 &wb_force_mapping_47485 +core_sys_select_47494 core_sys_select 1 47494 NULL ++alloc_arraycache_47505 alloc_arraycache 2 47505 NULL +unlink_simple_47506 unlink_simple 3 47506 NULL +ufs_inode_getblock_47512 ufs_inode_getblock 4 47512 NULL +vscnprintf_47533 vscnprintf 0-2 47533 NULL nohasharray @@ -100945,8 +101613,11 @@ index 0000000..7982a0c +oz_events_read_47535 oz_events_read 3 47535 NULL +ieee80211_if_fmt_min_discovery_timeout_47539 ieee80211_if_fmt_min_discovery_timeout 3 47539 NULL +read_ldt_47570 read_ldt 2 47570 NULL ++_rtl_rx_get_padding_47572 _rtl_rx_get_padding 0 47572 NULL nohasharray ++isku_sysfs_read_last_set_47572 isku_sysfs_read_last_set 6 47572 &_rtl_rx_get_padding_47572 +pci_iomap_47575 pci_iomap 3 47575 NULL +rpipe_get_idx_47579 rpipe_get_idx 2 47579 NULL ++SYSC_fcntl64_47581 SYSC_fcntl64 3 47581 NULL +ext4_kvzalloc_47605 ext4_kvzalloc 1 47605 NULL +sctp_ssnmap_new_47608 sctp_ssnmap_new 1-2 47608 NULL +uea_request_47613 uea_request 4 47613 NULL @@ -100954,6 +101625,7 @@ index 0000000..7982a0c +twl4030_clear_set_47624 twl4030_clear_set 4 47624 NULL +irq_set_chip_47638 irq_set_chip 1 47638 NULL +__build_packet_message_47643 __build_packet_message 3-9 47643 NULL ++global_rt_runtime_47712 global_rt_runtime 0 47712 NULL +save_microcode_47717 save_microcode 3 47717 NULL +bits_to_user_47733 bits_to_user 2-3 47733 NULL +carl9170_debugfs_read_47738 carl9170_debugfs_read 3 47738 NULL @@ -100963,15 +101635,18 @@ index 0000000..7982a0c +alloc_sched_domains_47756 alloc_sched_domains 1 47756 NULL +i915_wedged_write_47771 i915_wedged_write 3 47771 NULL +uwb_ie_dump_hex_47774 uwb_ie_dump_hex 4 47774 NULL ++SyS_setgroups16_47780 SyS_setgroups16 1 47780 NULL +error_error_numll_frame_cts_start_read_47781 error_error_numll_frame_cts_start_read 3 47781 NULL +posix_acl_fix_xattr_from_user_47793 posix_acl_fix_xattr_from_user 2 47793 NULL +stmmac_set_bfsize_47834 stmmac_set_bfsize 0 47834 NULL ++KEY_SIZE_47855 KEY_SIZE 0 47855 NULL +ubifs_unpack_nnode_47866 ubifs_unpack_nnode 0 47866 NULL +vhci_read_47878 vhci_read 3 47878 NULL +keyctl_instantiate_key_common_47889 keyctl_instantiate_key_common 4 47889 NULL +load_mapping_47904 load_mapping 3 47904 NULL +osd_req_read_sg_47905 osd_req_read_sg 5 47905 NULL +comedi_write_47926 comedi_write 3 47926 NULL ++nvme_trans_get_blk_desc_len_47946 nvme_trans_get_blk_desc_len 0-2 47946 NULL +lp8788_irq_map_47964 lp8788_irq_map 2 47964 NULL +iwl_dbgfs_ucode_tracing_read_47983 iwl_dbgfs_ucode_tracing_read 3 47983 NULL nohasharray +mempool_resize_47983 mempool_resize 2 47983 &iwl_dbgfs_ucode_tracing_read_47983 @@ -100980,9 +101655,11 @@ index 0000000..7982a0c +ffs_epfile_write_48014 ffs_epfile_write 3 48014 NULL +bio_integrity_set_tag_48035 bio_integrity_set_tag 3 48035 NULL +pppoe_sendmsg_48039 pppoe_sendmsg 4 48039 NULL ++SYSC_writev_48040 SYSC_writev 3 48040 NULL +wpan_phy_alloc_48056 wpan_phy_alloc 1 48056 NULL +posix_acl_alloc_48063 posix_acl_alloc 1 48063 NULL +palmas_bulk_write_48068 palmas_bulk_write 2-3-5 48068 NULL ++disc_write_48070 disc_write 3 48070 NULL +mmc_alloc_host_48097 mmc_alloc_host 1 48097 NULL +skb_copy_datagram_const_iovec_48102 skb_copy_datagram_const_iovec 4-2-5 48102 NULL +radio_isa_common_probe_48107 radio_isa_common_probe 3 48107 NULL @@ -100992,9 +101669,11 @@ index 0000000..7982a0c +bitmap_onto_48152 bitmap_onto 4 48152 NULL +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 ++ocfs2_find_next_zero_bit_unaligned_48170 ocfs2_find_next_zero_bit_unaligned 2-3 48170 NULL nohasharray ++rbd_obj_method_sync_48170 rbd_obj_method_sync 8 48170 &ocfs2_find_next_zero_bit_unaligned_48170 +alloc_cc770dev_48186 alloc_cc770dev 1 48186 NULL +init_ipath_48187 init_ipath 1 48187 NULL ++brcmf_sdio_chip_cm3_exitdl_48192 brcmf_sdio_chip_cm3_exitdl 4 48192 NULL +snd_seq_dump_var_event_48209 snd_seq_dump_var_event 0 48209 NULL +is_block_in_journal_48223 is_block_in_journal 3 48223 NULL +uv_blade_nr_possible_cpus_48226 uv_blade_nr_possible_cpus 0 48226 NULL @@ -101015,6 +101694,7 @@ index 0000000..7982a0c +lbs_debugfs_write_48413 lbs_debugfs_write 3 48413 NULL +pwr_tx_without_ps_read_48423 pwr_tx_without_ps_read 3 48423 NULL +nfs4_alloc_pages_48426 nfs4_alloc_pages 1 48426 NULL ++print_filtered_48442 print_filtered 2-0 48442 NULL +tun_recvmsg_48463 tun_recvmsg 4 48463 NULL +r8712_usbctrl_vendorreq_48489 r8712_usbctrl_vendorreq 6 48489 NULL +send_control_msg_48498 send_control_msg 6 48498 NULL @@ -101031,6 +101711,7 @@ index 0000000..7982a0c +do_ip_vs_set_ctl_48641 do_ip_vs_set_ctl 4 48641 NULL +mtd_read_48655 mtd_read 0 48655 NULL +aes_encrypt_packets_read_48666 aes_encrypt_packets_read 3 48666 NULL ++ore_get_rw_state_48667 ore_get_rw_state 4 48667 NULL +sm501_create_subdev_48668 sm501_create_subdev 3-4 48668 NULL nohasharray +sys_setgroups_48668 sys_setgroups 1 48668 &sm501_create_subdev_48668 +altera_drscan_48698 altera_drscan 2 48698 NULL @@ -101045,7 +101726,8 @@ index 0000000..7982a0c +efi_memory_uc_48828 efi_memory_uc 1 48828 NULL +azx_get_position_48841 azx_get_position 0 48841 NULL +vc_do_resize_48842 vc_do_resize 3-4 48842 NULL -+viafb_dvp1_proc_write_48864 viafb_dvp1_proc_write 3 48864 NULL ++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 +__ffs_ep0_read_events_48868 __ffs_ep0_read_events 3 48868 NULL +sys_setgroups16_48882 sys_setgroups16 1 48882 NULL +ext2_alloc_branch_48889 ext2_alloc_branch 4 48889 NULL @@ -101061,6 +101743,7 @@ index 0000000..7982a0c +_alloc_set_attr_list_48991 _alloc_set_attr_list 4 48991 NULL +rds_rm_size_48996 rds_rm_size 0-2 48996 NULL +sel_write_enforce_48998 sel_write_enforce 3 48998 NULL ++filemap_check_errors_49022 filemap_check_errors 0 49022 NULL +transient_status_49027 transient_status 4 49027 NULL +ipath_reg_user_mr_49038 ipath_reg_user_mr 2-3 49038 NULL +setup_msi_irq_49052 setup_msi_irq 3-4 49052 NULL @@ -101068,7 +101751,8 @@ index 0000000..7982a0c +scsi_register_49094 scsi_register 2 49094 NULL +paging64_walk_addr_nested_49100 paging64_walk_addr_nested 3 49100 NULL +compat_do_readv_writev_49102 compat_do_readv_writev 4 49102 NULL -+xfrm_replay_state_esn_len_49119 xfrm_replay_state_esn_len 0 49119 NULL ++check_exists_49119 check_exists 2 49119 NULL nohasharray ++xfrm_replay_state_esn_len_49119 xfrm_replay_state_esn_len 0 49119 &check_exists_49119 +pt_read_49136 pt_read 3 49136 NULL +tipc_multicast_49144 tipc_multicast 5 49144 NULL +atyfb_setup_generic_49151 atyfb_setup_generic 3 49151 NULL @@ -101080,14 +101764,18 @@ index 0000000..7982a0c +iwl_dbgfs_ucode_general_stats_read_49199 iwl_dbgfs_ucode_general_stats_read 3 49199 NULL +il4965_rs_sta_dbgfs_stats_table_read_49206 il4965_rs_sta_dbgfs_stats_table_read 3 49206 NULL +do_jffs2_getxattr_49210 do_jffs2_getxattr 0 49210 NULL ++resp_write_same_49217 resp_write_same 2 49217 NULL +nouveau_therm_create__49228 nouveau_therm_create_ 4 49228 NULL +nouveau_i2c_port_create__49237 nouveau_i2c_port_create_ 6 49237 NULL +hugetlb_cgroup_read_49259 hugetlb_cgroup_read 5 49259 NULL +ieee80211_if_read_rssi_threshold_49260 ieee80211_if_read_rssi_threshold 3 49260 NULL ++isku_sysfs_read_keys_media_49268 isku_sysfs_read_keys_media 6 49268 NULL +osd_req_add_get_attr_list_49278 osd_req_add_get_attr_list 3 49278 NULL +rx_filter_beacon_filter_read_49279 rx_filter_beacon_filter_read 3 49279 NULL +uio_read_49300 uio_read 3 49300 NULL +ocfs2_resmap_find_free_bits_49301 ocfs2_resmap_find_free_bits 3 49301 NULL ++isku_sysfs_read_keys_macro_49312 isku_sysfs_read_keys_macro 6 49312 NULL ++SYSC_mincore_49319 SYSC_mincore 1 49319 NULL +fwtty_port_handler_49327 fwtty_port_handler 9 49327 NULL +srpt_alloc_ioctx_ring_49330 srpt_alloc_ioctx_ring 2-3-4 49330 NULL +cfpkt_setlen_49343 cfpkt_setlen 2 49343 NULL @@ -101101,22 +101789,26 @@ index 0000000..7982a0c +samples_to_bytes_49426 samples_to_bytes 0-2 49426 NULL +md_domain_init_49432 md_domain_init 2 49432 NULL +compat_do_msg_fill_49440 compat_do_msg_fill 3 49440 NULL ++get_lru_size_49441 get_lru_size 0 49441 NULL +agp_3_5_isochronous_node_enable_49465 agp_3_5_isochronous_node_enable 3 49465 NULL +xfs_iformat_local_49472 xfs_iformat_local 4 49472 NULL +savu_sysfs_read_49473 savu_sysfs_read 6 49473 NULL +isr_decrypt_done_read_49490 isr_decrypt_done_read 3 49490 NULL ++SyS_listxattr_49519 SyS_listxattr 3 49519 NULL +emulator_write_phys_49520 emulator_write_phys 2-4 49520 NULL +acpi_os_ioremap_49523 acpi_os_ioremap 1-2 49523 NULL +smk_write_access_49561 smk_write_access 3 49561 NULL +ntfs_malloc_nofs_49572 ntfs_malloc_nofs 1 49572 NULL +alloc_chunk_49575 alloc_chunk 1 49575 NULL +sctp_setsockopt_default_send_param_49578 sctp_setsockopt_default_send_param 3 49578 NULL ++tap_write_49595 tap_write 3 49595 NULL +isr_wakeups_read_49607 isr_wakeups_read 3 49607 NULL +btrfs_mksubvol_49616 btrfs_mksubvol 3 49616 NULL +heap_init_49617 heap_init 2 49617 NULL +smk_write_doi_49621 smk_write_doi 3 49621 NULL +btrfsic_cmp_log_and_dev_bytenr_49628 btrfsic_cmp_log_and_dev_bytenr 2 49628 NULL +aa_simple_write_to_buffer_49683 aa_simple_write_to_buffer 3-4 49683 NULL ++SyS_pwritev_49688 SyS_pwritev 3 49688 NULL +sys_gethostname_49698 sys_gethostname 2 49698 NULL +cx2341x_ctrl_new_menu_49700 cx2341x_ctrl_new_menu 3 49700 NULL +dm_thin_insert_block_49720 dm_thin_insert_block 2-3 49720 NULL @@ -101128,16 +101820,18 @@ index 0000000..7982a0c +fuse_wr_pages_49753 fuse_wr_pages 0-1-2 49753 NULL +key_conf_keylen_read_49758 key_conf_keylen_read 3 49758 NULL +fuse_conn_waiting_read_49762 fuse_conn_waiting_read 3 49762 NULL -+isku_sysfs_write_49767 isku_sysfs_write 6 49767 NULL ++isku_sysfs_write_49767 isku_sysfs_write 6-5 49767 NULL +ceph_osdc_readpages_49789 ceph_osdc_readpages 10-4 49789 NULL +nfs4_acl_new_49806 nfs4_acl_new 1 49806 NULL +arch_gnttab_map_status_49812 arch_gnttab_map_status 3 49812 NULL +ntfs_copy_from_user_iovec_49829 ntfs_copy_from_user_iovec 3-6-0 49829 NULL +add_uuid_49831 add_uuid 4 49831 NULL ++tcf_csum_ipv4_tcp_49834 tcf_csum_ipv4_tcp 3 49834 NULL +ath6kl_fwlog_block_read_49836 ath6kl_fwlog_block_read 3 49836 NULL +twl4030_write_49846 twl4030_write 2 49846 NULL +scsi_dispatch_cmd_entry_49848 scsi_dispatch_cmd_entry 3 49848 NULL +timeradd_entry_49850 timeradd_entry 3 49850 NULL ++btrfs_subvolume_reserve_metadata_49859 btrfs_subvolume_reserve_metadata 3 49859 NULL +sctp_setsockopt_bindx_49870 sctp_setsockopt_bindx 3 49870 NULL +ceph_get_caps_49890 ceph_get_caps 0 49890 NULL +__cow_file_range_49901 __cow_file_range 5 49901 NULL @@ -101145,6 +101839,7 @@ index 0000000..7982a0c +batadv_tt_realloc_packet_buff_49960 batadv_tt_realloc_packet_buff 4 49960 NULL +b43legacy_pio_read_49978 b43legacy_pio_read 0 49978 NULL +ieee80211_if_fmt_dtim_count_49987 ieee80211_if_fmt_dtim_count 3 49987 NULL ++sta2x11_swiotlb_alloc_coherent_49994 sta2x11_swiotlb_alloc_coherent 2 49994 NULL +l2cap_chan_send_49995 l2cap_chan_send 3 49995 NULL +__module_alloc_50004 __module_alloc 1 50004 NULL +dn_mss_from_pmtu_50011 dn_mss_from_pmtu 0-2 50011 NULL @@ -101159,6 +101854,7 @@ index 0000000..7982a0c +sock_setsockopt_50088 sock_setsockopt 5 50088 NULL +altera_swap_dr_50090 altera_swap_dr 2 50090 NULL +read_file_slot_50111 read_file_slot 3 50111 NULL ++SYSC_preadv_50134 SYSC_preadv 3 50134 NULL +copy_items_50140 copy_items 6 50140 NULL +tx_frag_need_fragmentation_read_50153 tx_frag_need_fragmentation_read 3 50153 NULL +set_cmd_header_50155 set_cmd_header 0 50155 NULL @@ -101178,6 +101874,8 @@ index 0000000..7982a0c +afs_extract_data_50261 afs_extract_data 5 50261 NULL +rxrpc_setsockopt_50286 rxrpc_setsockopt 5 50286 NULL +soc_codec_reg_show_50302 soc_codec_reg_show 0 50302 NULL ++SYSC_flistxattr_50307 SYSC_flistxattr 3 50307 NULL ++SYSC_sched_setaffinity_50310 SYSC_sched_setaffinity 2 50310 NULL +soc_camera_read_50319 soc_camera_read 3 50319 NULL +do_launder_page_50329 do_launder_page 0 50329 NULL +nouveau_engine_create__50331 nouveau_engine_create_ 7 50331 NULL @@ -101186,16 +101884,20 @@ index 0000000..7982a0c +snd_pcm_lib_writev_50337 snd_pcm_lib_writev 0-3 50337 &ocfs2_block_to_cluster_group_50337 +roccat_common2_send_with_status_50343 roccat_common2_send_with_status 4 50343 NULL +tpm_read_50344 tpm_read 3 50344 NULL ++sched_clock_remote_50347 sched_clock_remote 0 50347 NULL +kvm_arch_create_memslot_50354 kvm_arch_create_memslot 2 50354 NULL +isdn_ppp_read_50356 isdn_ppp_read 4 50356 NULL +unpack_u16_chunk_50357 unpack_u16_chunk 0 50357 NULL +xfrm_send_migrate_50365 xfrm_send_migrate 5 50365 NULL +roccat_common2_receive_50369 roccat_common2_receive 4 50369 NULL +sl_alloc_bufs_50380 sl_alloc_bufs 2 50380 NULL ++hash_ip6_expire_50390 hash_ip6_expire 3 50390 NULL +l2tp_ip_sendmsg_50411 l2tp_ip_sendmsg 4 50411 NULL ++ceph_writepages_osd_request_50423 ceph_writepages_osd_request 5 50423 NULL +iscsi_create_conn_50425 iscsi_create_conn 2 50425 NULL +validate_acl_mac_addrs_50429 validate_acl_mac_addrs 0 50429 NULL +btrfs_error_discard_extent_50444 btrfs_error_discard_extent 2 50444 NULL ++calc_csum_metadata_size_50448 calc_csum_metadata_size 0 50448 NULL +pgctrl_write_50453 pgctrl_write 3 50453 NULL +force_mapping_50464 force_mapping 2 50464 NULL +cdrom_read_cdda_50478 cdrom_read_cdda 4 50478 NULL @@ -101207,8 +101909,10 @@ index 0000000..7982a0c +fat_readpages_50582 fat_readpages 4 50582 NULL +iwl_dbgfs_missed_beacon_read_50584 iwl_dbgfs_missed_beacon_read 3 50584 NULL +build_inv_iommu_pages_50589 build_inv_iommu_pages 2-3 50589 NULL ++sge_rx_50594 sge_rx 3 50594 NULL +rx_rx_checksum_result_read_50617 rx_rx_checksum_result_read 3 50617 NULL +__ffs_50625 __ffs 0 50625 NULL ++regcache_rbtree_write_50629 regcache_rbtree_write 2 50629 NULL +simple_transaction_get_50633 simple_transaction_get 3 50633 NULL +ath6kl_tm_rx_event_50664 ath6kl_tm_rx_event 3 50664 NULL nohasharray +sys_readv_50664 sys_readv 3 50664 &ath6kl_tm_rx_event_50664 @@ -101234,6 +101938,7 @@ index 0000000..7982a0c +videobuf_dma_init_user_50839 videobuf_dma_init_user 3 50839 NULL +self_check_write_50856 self_check_write 5 50856 NULL +carl9170_debugfs_write_50857 carl9170_debugfs_write 3 50857 NULL ++SyS_lgetxattr_50889 SyS_lgetxattr 4 50889 NULL +netlbl_secattr_catmap_walk_rng_50894 netlbl_secattr_catmap_walk_rng 0-2 50894 NULL +osd_req_write_sg_50908 osd_req_write_sg 5 50908 NULL +xfs_iext_remove_50909 xfs_iext_remove 3 50909 NULL @@ -101241,6 +101946,7 @@ index 0000000..7982a0c +hash_recvmsg_50924 hash_recvmsg 4 50924 NULL +chd_dec_fetch_cdata_50926 chd_dec_fetch_cdata 3 50926 NULL +ocfs2_add_refcount_flag_50952 ocfs2_add_refcount_flag 6 50952 NULL ++SyS_setxattr_50957 SyS_setxattr 4 50957 NULL +iwl_statistics_flag_50981 iwl_statistics_flag 0-3 50981 NULL +timeout_write_50991 timeout_write 3 50991 NULL +wm831x_irq_map_50995 wm831x_irq_map 2 50995 NULL @@ -101255,6 +101961,7 @@ index 0000000..7982a0c +do_arpt_set_ctl_51053 do_arpt_set_ctl 4 51053 NULL +wusb_prf_64_51065 wusb_prf_64 7 51065 NULL +jbd2_journal_init_revoke_51088 jbd2_journal_init_revoke 2 51088 NULL ++solo_enc_v4l2_init_51094 solo_enc_v4l2_init 2 51094 NULL +__ocfs2_find_path_51096 __ocfs2_find_path 0 51096 NULL +ti_recv_51110 ti_recv 3 51110 NULL +dgrp_net_read_51113 dgrp_net_read 3 51113 NULL @@ -101277,6 +101984,7 @@ index 0000000..7982a0c +pvr2_std_id_to_str_51288 pvr2_std_id_to_str 2 51288 NULL +bnad_debugfs_read_regrd_51308 bnad_debugfs_read_regrd 3 51308 NULL +get_cell_51316 get_cell 2 51316 NULL ++init_map_ipmac_51317 init_map_ipmac 4-3-5 51317 NULL +alloc_hippi_dev_51320 alloc_hippi_dev 1 51320 NULL +ext2_xattr_get_51327 ext2_xattr_get 0 51327 NULL +alloc_smp_req_51337 alloc_smp_req 1 51337 NULL nohasharray @@ -101294,6 +102002,8 @@ index 0000000..7982a0c +____alloc_ei_netdev_51475 ____alloc_ei_netdev 1 51475 NULL +xfs_buf_get_uncached_51477 xfs_buf_get_uncached 2 51477 NULL +vaddr_51480 vaddr 0 51480 NULL ++skb_inner_mac_header_51482 skb_inner_mac_header 0 51482 NULL nohasharray ++btrfs_find_space_cluster_51482 btrfs_find_space_cluster 5 51482 &skb_inner_mac_header_51482 +__cpa_process_fault_51502 __cpa_process_fault 2 51502 NULL +ieee80211_if_write_uapsd_queues_51526 ieee80211_if_write_uapsd_queues 3 51526 NULL +load_pdptrs_51541 load_pdptrs 3 51541 NULL @@ -101323,11 +102033,13 @@ index 0000000..7982a0c +if_write_51756 if_write 3 51756 NULL +ioremap_prot_51764 ioremap_prot 1-2 51764 NULL +iio_buffer_add_channel_sysfs_51766 iio_buffer_add_channel_sysfs 0 51766 NULL ++to_ratio_51809 to_ratio 2-1 51809 NULL +qib_alloc_devdata_51819 qib_alloc_devdata 2 51819 NULL +buffer_from_user_51826 buffer_from_user 3 51826 NULL +ioread32_51847 ioread32 0 51847 NULL nohasharray +read_file_tgt_tx_stats_51847 read_file_tgt_tx_stats 3 51847 &ioread32_51847 +do_readv_writev_51849 do_readv_writev 4 51849 NULL ++SYSC_sendto_51852 SYSC_sendto 6 51852 NULL +pointer_size_read_51863 pointer_size_read 3 51863 NULL +mlx4_alloc_db_from_pgdir_51865 mlx4_alloc_db_from_pgdir 3 51865 NULL +get_indirect_ea_51869 get_indirect_ea 4 51869 NULL @@ -101344,6 +102056,7 @@ index 0000000..7982a0c +arizona_free_irq_51969 arizona_free_irq 2 51969 NULL nohasharray +snd_mask_min_51969 snd_mask_min 0 51969 &arizona_free_irq_51969 +ath6kl_sdio_alloc_prep_scat_req_51986 ath6kl_sdio_alloc_prep_scat_req 2 51986 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 +vxge_rx_alloc_52024 vxge_rx_alloc 3 52024 NULL @@ -101356,6 +102069,7 @@ index 0000000..7982a0c +isofs_readpages_52067 isofs_readpages 4 52067 NULL +nsm_get_handle_52089 nsm_get_handle 4 52089 NULL +o2net_debug_read_52105 o2net_debug_read 3 52105 NULL ++smsdvb_stats_read_52114 smsdvb_stats_read 3 52114 NULL +retry_count_read_52129 retry_count_read 3 52129 NULL +zram_meta_alloc_52140 zram_meta_alloc 1 52140 NULL +hysdn_conf_write_52145 hysdn_conf_write 3 52145 NULL nohasharray @@ -101376,12 +102090,14 @@ index 0000000..7982a0c +shrink_slab_52261 shrink_slab 2-3 52261 NULL +hva_to_pfn_slow_52262 hva_to_pfn_slow 1 52262 NULL +sisusbcon_do_font_op_52271 sisusbcon_do_font_op 9 52271 NULL ++atomic64_read_52300 atomic64_read 0 52300 NULL +ath6kl_wmi_get_new_buf_52304 ath6kl_wmi_get_new_buf 1 52304 NULL +read_file_reset_52310 read_file_reset 3 52310 NULL +request_asymmetric_key_52317 request_asymmetric_key 2-4 52317 NULL +hwflags_read_52318 hwflags_read 3 52318 NULL +ntfs_rl_split_52328 ntfs_rl_split 2-4 52328 NULL +test_unaligned_bulk_52333 test_unaligned_bulk 3 52333 NULL ++compat_SyS_preadv64_52351 compat_SyS_preadv64 3 52351 NULL +bytes_to_frames_52362 bytes_to_frames 0-2 52362 NULL +copy_entries_to_user_52367 copy_entries_to_user 1 52367 NULL +mq_emit_config_values_52378 mq_emit_config_values 3 52378 NULL @@ -101400,20 +102116,24 @@ index 0000000..7982a0c +skb_cow_head_52495 skb_cow_head 2 52495 &fd_do_rw_52495 +qib_user_sdma_pin_pages_52498 qib_user_sdma_pin_pages 3-5 52498 NULL +int_tasklet_entry_52500 int_tasklet_entry 3 52500 NULL ++qlcnic_83xx_sysfs_flash_write_52507 qlcnic_83xx_sysfs_flash_write 4 52507 NULL +pm_qos_power_write_52513 pm_qos_power_write 3 52513 NULL +dup_variable_bug_52525 dup_variable_bug 3 52525 NULL +from_oblock_52546 from_oblock 0-1 52546 NULL +dccpprobe_read_52549 dccpprobe_read 3 52549 NULL +ocfs2_make_right_split_rec_52562 ocfs2_make_right_split_rec 3 52562 NULL +emit_code_52583 emit_code 0-3 52583 NULL ++isku_sysfs_read_macro_52587 isku_sysfs_read_macro 6 52587 NULL +tps80031_writes_52638 tps80031_writes 3-4 52638 NULL +brcmf_sdio_assert_info_52653 brcmf_sdio_assert_info 4 52653 NULL ++SYSC_gethostname_52677 SYSC_gethostname 2 52677 NULL +nvd0_disp_pioc_create__52693 nvd0_disp_pioc_create_ 5 52693 NULL +nouveau_client_create__52715 nouveau_client_create_ 5 52715 NULL +cx25840_ir_rx_read_52724 cx25840_ir_rx_read 3 52724 NULL +blkcipher_next_slow_52733 blkcipher_next_slow 3-4 52733 NULL +relay_alloc_page_array_52735 relay_alloc_page_array 1 52735 NULL +carl9170_debugfs_vif_dump_read_52755 carl9170_debugfs_vif_dump_read 3 52755 NULL ++ieee80211_if_read_beacon_timeout_52756 ieee80211_if_read_beacon_timeout 3 52756 NULL +copy_ctr_args_52761 copy_ctr_args 2 52761 NULL +pwr_rcvd_beacons_read_52836 pwr_rcvd_beacons_read 3 52836 NULL +ext2_xattr_set_acl_52857 ext2_xattr_set_acl 4 52857 NULL @@ -101447,6 +102167,7 @@ index 0000000..7982a0c +brcmf_usb_dl_cmd_53130 brcmf_usb_dl_cmd 4 53130 NULL +ps_poll_ps_poll_max_ap_turn_read_53140 ps_poll_ps_poll_max_ap_turn_read 3 53140 NULL +ieee80211_bss_info_update_53170 ieee80211_bss_info_update 4 53170 NULL ++btrfs_io_bio_alloc_53179 btrfs_io_bio_alloc 2 53179 NULL +clear_capture_buf_53192 clear_capture_buf 2 53192 NULL +mtdoops_erase_block_53206 mtdoops_erase_block 2 53206 NULL +fixup_user_fault_53210 fixup_user_fault 3 53210 NULL @@ -101455,6 +102176,7 @@ index 0000000..7982a0c +xfs_trans_read_buf_map_53258 xfs_trans_read_buf_map 5 53258 NULL +wil_write_file_ssid_53266 wil_write_file_ssid 3 53266 NULL +btrfs_file_extent_num_bytes_53269 btrfs_file_extent_num_bytes 0 53269 NULL ++isku_sysfs_write_key_mask_53305 isku_sysfs_write_key_mask 6 53305 NULL +batadv_interface_rx_53325 batadv_interface_rx 4 53325 NULL +gsm_control_reply_53333 gsm_control_reply 4 53333 NULL +vm_mmap_53339 vm_mmap 0 53339 NULL @@ -101476,7 +102198,8 @@ index 0000000..7982a0c +ocfs2_xattr_set_acl_53508 ocfs2_xattr_set_acl 4 53508 NULL +check_acl_53512 check_acl 0 53512 NULL +alloc_pages_exact_nid_53515 alloc_pages_exact_nid 2 53515 NULL -+set_registers_53582 set_registers 3 53582 NULL ++SYSC_bind_53582 SYSC_bind 3 53582 NULL nohasharray ++set_registers_53582 set_registers 3 53582 &SYSC_bind_53582 +cifs_utf16_bytes_53593 cifs_utf16_bytes 0 53593 NULL +gfn_to_pfn_async_53597 gfn_to_pfn_async 2 53597 NULL +___alloc_bootmem_nopanic_53626 ___alloc_bootmem_nopanic 1-2 53626 NULL @@ -101484,6 +102207,7 @@ index 0000000..7982a0c +ccid_getsockopt_builtin_ccids_53634 ccid_getsockopt_builtin_ccids 2 53634 NULL +nr_sendmsg_53656 nr_sendmsg 4 53656 NULL +_preload_range_53676 _preload_range 2-3 53676 NULL ++lowpan_fragment_xmit_53680 lowpan_fragment_xmit 3-4 53680 NULL +fuse_fill_write_pages_53682 fuse_fill_write_pages 4 53682 NULL +v4l2_event_subscribe_53687 v4l2_event_subscribe 3 53687 NULL +bdev_logical_block_size_53690 bdev_logical_block_size 0 53690 NULL nohasharray @@ -101505,7 +102229,8 @@ index 0000000..7982a0c +nls_nullsize_53815 nls_nullsize 0 53815 NULL +pms_read_53873 pms_read 3 53873 NULL +ieee80211_if_fmt_dropped_frames_congestion_53883 ieee80211_if_fmt_dropped_frames_congestion 3 53883 NULL -+ocfs2_rm_xattr_cluster_53900 ocfs2_rm_xattr_cluster 5-4-3 53900 NULL ++ocfs2_rm_xattr_cluster_53900 ocfs2_rm_xattr_cluster 5-4-3 53900 NULL nohasharray ++SyS_setgroups_53900 SyS_setgroups 1 53900 &ocfs2_rm_xattr_cluster_53900 +proc_file_read_53905 proc_file_read 3 53905 NULL +early_reserve_e820_53915 early_reserve_e820 1-2 53915 NULL +ocfs2_make_clusters_writable_53938 ocfs2_make_clusters_writable 4 53938 NULL @@ -101521,10 +102246,12 @@ index 0000000..7982a0c +pipeline_dec_packet_out_read_54052 pipeline_dec_packet_out_read 3 54052 NULL +nl80211_send_disconnected_54056 nl80211_send_disconnected 5 54056 NULL +rproc_state_read_54057 rproc_state_read 3 54057 NULL ++btrfs_start_transaction_54066 btrfs_start_transaction 2 54066 NULL +_malloc_54077 _malloc 1 54077 NULL +bitmap_bitremap_54096 bitmap_bitremap 4 54096 NULL +altera_set_ir_pre_54103 altera_set_ir_pre 2 54103 NULL +create_xattr_54106 create_xattr 5 54106 NULL ++inc_zcache_pers_zbytes_54107 inc_zcache_pers_zbytes 1 54107 NULL +strn_len_54122 strn_len 0 54122 NULL +isku_receive_54130 isku_receive 4 54130 NULL +isr_host_acknowledges_read_54136 isr_host_acknowledges_read 3 54136 NULL @@ -101532,6 +102259,7 @@ index 0000000..7982a0c +memcpy_toiovec_54166 memcpy_toiovec 3 54166 &i2400m_zrealloc_2x_54166 +nouveau_falcon_create__54169 nouveau_falcon_create_ 8 54169 NULL +acpi_os_read_memory_54186 acpi_os_read_memory 1-3 54186 NULL ++SyS_ipc_54206 SyS_ipc 3 54206 NULL +__register_chrdev_54223 __register_chrdev 2-3 54223 NULL +_format_mac_addr_54229 _format_mac_addr 2-0 54229 NULL +pi_read_regr_54231 pi_read_regr 0 54231 NULL @@ -101575,6 +102303,7 @@ index 0000000..7982a0c +unix_dgram_connect_54535 unix_dgram_connect 3 54535 NULL +setsockopt_54539 setsockopt 5 54539 NULL +mwifiex_usb_submit_rx_urb_54558 mwifiex_usb_submit_rx_urb 2 54558 NULL ++SYSC_setsockopt_54561 SYSC_setsockopt 5 54561 NULL +nfsd_vfs_write_54577 nfsd_vfs_write 6 54577 NULL +fw_iso_buffer_init_54582 fw_iso_buffer_init 3 54582 NULL +nvme_npages_54601 nvme_npages 0-1 54601 NULL @@ -101588,7 +102317,8 @@ index 0000000..7982a0c +evm_read_key_54674 evm_read_key 3 54674 NULL +resource_string_54699 resource_string 0 54699 NULL +platform_get_irq_byname_54700 platform_get_irq_byname 0 54700 NULL -+rfkill_fop_read_54711 rfkill_fop_read 3 54711 NULL ++rfkill_fop_read_54711 rfkill_fop_read 3 54711 NULL nohasharray ++compat_SyS_readv_54711 compat_SyS_readv 3 54711 &rfkill_fop_read_54711 +_add_sg_continuation_descriptor_54721 _add_sg_continuation_descriptor 3 54721 NULL +ocfs2_control_write_54737 ocfs2_control_write 3 54737 NULL +kzalloc_54740 kzalloc 1 54740 NULL @@ -101626,6 +102356,7 @@ index 0000000..7982a0c +__proc_file_read_54978 __proc_file_read 3 54978 NULL +ext3_xattr_get_54989 ext3_xattr_get 0 54989 NULL +Bus_to_Virtual_54991 Bus_to_Virtual 1 54991 NULL ++mem_cgroup_get_lru_size_55008 mem_cgroup_get_lru_size 0 55008 NULL +cx231xx_v4l2_read_55014 cx231xx_v4l2_read 3 55014 NULL +paging32_get_level1_sp_gpa_55022 paging32_get_level1_sp_gpa 0 55022 NULL +error_error_null_Frame_tx_start_read_55024 error_error_null_Frame_tx_start_read 3 55024 NULL @@ -101646,12 +102377,16 @@ index 0000000..7982a0c +ht40allow_map_read_55209 ht40allow_map_read 3 55209 NULL +__kfifo_dma_out_prepare_r_55211 __kfifo_dma_out_prepare_r 4-5 55211 NULL +do_raw_setsockopt_55215 do_raw_setsockopt 5 55215 NULL ++qxl_alloc_client_monitors_config_55216 qxl_alloc_client_monitors_config 2 55216 NULL ++nouveau_mc_create__55217 nouveau_mc_create_ 4 55217 NULL +dump_command_55220 dump_command 1 55220 NULL +dbAllocDmap_55227 dbAllocDmap 0 55227 NULL +tipc_port_reject_sections_55229 tipc_port_reject_sections 5 55229 NULL ++hash_netport6_expire_55232 hash_netport6_expire 3 55232 NULL +register_unifi_sdio_55239 register_unifi_sdio 2 55239 NULL +memcpy_fromiovec_55247 memcpy_fromiovec 3 55247 NULL -+ptrace_request_55288 ptrace_request 3 55288 NULL ++persistent_ram_new_55286 persistent_ram_new 1-2 55286 NULL ++ptrace_request_55288 ptrace_request 3-4 55288 NULL +rx_streaming_interval_read_55291 rx_streaming_interval_read 3 55291 NULL +gsm_control_modem_55303 gsm_control_modem 3 55303 NULL +qp_alloc_guest_work_55305 qp_alloc_guest_work 3-5 55305 NULL nohasharray @@ -101664,6 +102399,7 @@ index 0000000..7982a0c +acpi_system_read_event_55362 acpi_system_read_event 3 55362 NULL +nf_nat_ipv4_manip_pkt_55387 nf_nat_ipv4_manip_pkt 2 55387 NULL +iwl_dbgfs_plcp_delta_read_55407 iwl_dbgfs_plcp_delta_read 3 55407 NULL ++si476x_radio_read_rds_blckcnt_blob_55427 si476x_radio_read_rds_blckcnt_blob 3 55427 NULL +alloc_skb_55439 alloc_skb 1 55439 NULL +__vxge_hw_channel_allocate_55462 __vxge_hw_channel_allocate 3 55462 NULL +isdnhdlc_decode_55466 isdnhdlc_decode 0 55466 NULL @@ -101679,7 +102415,9 @@ index 0000000..7982a0c +buffer_size_55534 buffer_size 0 55534 NULL +set_msr_interception_55538 set_msr_interception 2 55538 NULL +tty_port_register_device_55543 tty_port_register_device 3 55543 NULL ++hash_netport4_expire_55584 hash_netport4_expire 3 55584 NULL +add_partition_55588 add_partition 2 55588 NULL ++SyS_keyctl_55602 SyS_keyctl 4 55602 NULL +free_pages_55603 free_pages 1 55603 NULL +macvtap_put_user_55609 macvtap_put_user 4 55609 NULL +selinux_setprocattr_55611 selinux_setprocattr 4 55611 NULL @@ -101699,6 +102437,7 @@ index 0000000..7982a0c +__videobuf_alloc_uncached_55711 __videobuf_alloc_uncached 1 55711 NULL +pm8001_store_update_fw_55716 pm8001_store_update_fw 4 55716 NULL +mtdswap_init_55719 mtdswap_init 2 55719 NULL ++tap_pwup_write_55723 tap_pwup_write 3 55723 NULL +__iio_allocate_kfifo_55738 __iio_allocate_kfifo 2 55738 NULL +set_local_name_55757 set_local_name 4 55757 NULL +strlen_55778 strlen 0 55778 NULL @@ -101727,12 +102466,14 @@ index 0000000..7982a0c +kmem_zalloc_large_56128 kmem_zalloc_large 1 56128 NULL +sel_read_handle_status_56139 sel_read_handle_status 3 56139 NULL +map_addr_56144 map_addr 7 56144 NULL ++__i2c_transfer_56162 __i2c_transfer 0 56162 NULL +rawv6_setsockopt_56165 rawv6_setsockopt 5 56165 NULL +create_irq_nr_56180 create_irq_nr 1 56180 NULL +ath9k_dump_legacy_btcoex_56194 ath9k_dump_legacy_btcoex 0 56194 NULL +skb_headroom_56200 skb_headroom 0 56200 NULL +usb_dump_iad_descriptor_56204 usb_dump_iad_descriptor 0 56204 NULL +ncp_read_bounce_size_56221 ncp_read_bounce_size 0-1 56221 NULL ++vring_add_indirect_56222 vring_add_indirect 4 56222 NULL +ocfs2_find_xe_in_bucket_56224 ocfs2_find_xe_in_bucket 0 56224 NULL +cp210x_get_config_56229 cp210x_get_config 4 56229 NULL +do_ipt_set_ctl_56238 do_ipt_set_ctl 4 56238 NULL @@ -101751,6 +102492,7 @@ index 0000000..7982a0c +vxge_os_dma_malloc_async_56348 vxge_os_dma_malloc_async 3 56348 NULL +iov_iter_copy_from_user_atomic_56368 iov_iter_copy_from_user_atomic 4 56368 NULL +dev_read_56369 dev_read 3 56369 NULL ++write_gssp_56404 write_gssp 3 56404 NULL +ocfs2_control_read_56405 ocfs2_control_read 3 56405 NULL +__get_vm_area_caller_56416 __get_vm_area_caller 1 56416 NULL nohasharray +acpi_os_write_memory_56416 acpi_os_write_memory 1-3 56416 &__get_vm_area_caller_56416 @@ -101761,9 +102503,12 @@ index 0000000..7982a0c +cx231xx_init_isoc_56453 cx231xx_init_isoc 3-2 56453 NULL +set_connectable_56458 set_connectable 4 56458 NULL +osd_req_list_partition_objects_56464 osd_req_list_partition_objects 5 56464 NULL ++putused_user_56467 putused_user 3 56467 NULL +calc_linear_pos_56472 calc_linear_pos 0-3 56472 NULL ++global_rt_period_56476 global_rt_period 0 56476 NULL +crypto_shash_alignmask_56486 crypto_shash_alignmask 0 56486 NULL +ieee80211_rx_mgmt_probe_beacon_56491 ieee80211_rx_mgmt_probe_beacon 3 56491 NULL ++init_map_ip_56508 init_map_ip 5 56508 NULL +cfg80211_connect_result_56515 cfg80211_connect_result 4-6 56515 NULL +ip_options_get_56538 ip_options_get 4 56538 NULL +ocfs2_change_extent_flag_56549 ocfs2_change_extent_flag 5 56549 NULL @@ -101790,6 +102535,7 @@ index 0000000..7982a0c +mtdchar_write_56831 mtdchar_write 3 56831 NULL nohasharray +ntfs_rl_realloc_56831 ntfs_rl_realloc 3 56831 &mtdchar_write_56831 +snd_rawmidi_kernel_write1_56847 snd_rawmidi_kernel_write1 4 56847 NULL ++si476x_radio_read_agc_blob_56849 si476x_radio_read_agc_blob 3 56849 NULL +wb_lookup_56858 wb_lookup 2 56858 NULL +ext3_xattr_ibody_get_56880 ext3_xattr_ibody_get 0 56880 NULL +pvr2_debugifc_print_status_56890 pvr2_debugifc_print_status 3 56890 NULL @@ -101827,6 +102573,7 @@ index 0000000..7982a0c +rx_hw_stuck_read_57179 rx_hw_stuck_read 3 57179 NULL +tt3650_ci_msg_57219 tt3650_ci_msg 4 57219 NULL +dma_fifo_alloc_57236 dma_fifo_alloc 5-3-2 57236 NULL ++flush_space_57241 flush_space 3 57241 NULL +ieee80211_if_fmt_tsf_57249 ieee80211_if_fmt_tsf 3 57249 NULL +oprofilefs_ulong_from_user_57251 oprofilefs_ulong_from_user 3 57251 NULL +alloc_flex_gd_57259 alloc_flex_gd 1 57259 NULL @@ -101893,6 +102640,7 @@ index 0000000..7982a0c +nouveau_gpio_create__57735 nouveau_gpio_create_ 4-5 57735 NULL +compat_sys_set_mempolicy_57742 compat_sys_set_mempolicy 3 57742 NULL +ieee80211_if_fmt_dot11MeshHWMPpreqMinInterval_57762 ieee80211_if_fmt_dot11MeshHWMPpreqMinInterval 3 57762 NULL ++SYSC_process_vm_writev_57776 SYSC_process_vm_writev 3-5 57776 NULL +ld2_57794 ld2 0 57794 NULL +ivtv_read_57796 ivtv_read 3 57796 NULL +generic_ptrace_peekdata_57806 generic_ptrace_peekdata 2 57806 NULL @@ -101942,9 +102690,11 @@ index 0000000..7982a0c +pcim_iomap_58334 pcim_iomap 3 58334 NULL +diva_init_dma_map_58336 diva_init_dma_map 3 58336 NULL +next_pidmap_58347 next_pidmap 2 58347 NULL ++SyS_migrate_pages_58348 SyS_migrate_pages 2 58348 NULL +vmalloc_to_sg_58354 vmalloc_to_sg 2 58354 NULL +save_hint_58359 save_hint 2 58359 NULL +brcmf_debugfs_sdio_counter_read_58369 brcmf_debugfs_sdio_counter_read 3 58369 NULL ++hash_ipportnet6_expire_58379 hash_ipportnet6_expire 3 58379 NULL +il_dbgfs_status_read_58388 il_dbgfs_status_read 3 58388 NULL +kvm_mmu_write_protect_pt_masked_58406 kvm_mmu_write_protect_pt_masked 3 58406 NULL +i2400m_pld_size_58415 i2400m_pld_size 0 58415 NULL @@ -101960,10 +102710,12 @@ index 0000000..7982a0c +memblock_alloc_try_nid_58493 memblock_alloc_try_nid 1-2 58493 NULL +rndis_add_response_58544 rndis_add_response 2 58544 NULL +__clear_discard_58546 __clear_discard 2 58546 NULL ++wrap_max_58548 wrap_max 0-1-2 58548 NULL +wep_decrypt_fail_read_58567 wep_decrypt_fail_read 3 58567 NULL +sip_sprintf_addr_port_58574 sip_sprintf_addr_port 0 58574 NULL +scnprint_mac_oui_58578 scnprint_mac_oui 3-0 58578 NULL +ea_read_inline_58589 ea_read_inline 0 58589 NULL ++isku_sysfs_read_keys_thumbster_58590 isku_sysfs_read_keys_thumbster 6 58590 NULL +xip_file_read_58592 xip_file_read 3 58592 NULL +gdth_search_isa_58595 gdth_search_isa 1 58595 NULL +ebt_buf_count_58607 ebt_buf_count 0 58607 NULL @@ -101990,7 +102742,7 @@ index 0000000..7982a0c +__do_config_autodelink_58763 __do_config_autodelink 3 58763 NULL +regmap_calc_reg_len_58795 regmap_calc_reg_len 0 58795 NULL +raw_send_hdrinc_58803 raw_send_hdrinc 4 58803 NULL -+isku_sysfs_read_58806 isku_sysfs_read 6 58806 NULL ++isku_sysfs_read_58806 isku_sysfs_read 6-5 58806 NULL +ep_read_58813 ep_read 3 58813 NULL +command_write_58841 command_write 3 58841 NULL +ocfs2_truncate_log_append_58850 ocfs2_truncate_log_append 3 58850 NULL @@ -102010,6 +102762,7 @@ index 0000000..7982a0c +edac_align_ptr_59003 edac_align_ptr 0 59003 NULL +ep_write_59008 ep_write 3 59008 NULL +i915_ring_stop_write_59010 i915_ring_stop_write 3 59010 NULL ++SyS_preadv_59029 SyS_preadv 3 59029 NULL +init_pci_cap_msi_perm_59033 init_pci_cap_msi_perm 2 59033 NULL +selinux_transaction_write_59038 selinux_transaction_write 3 59038 NULL +crypto_aead_reqsize_59039 crypto_aead_reqsize 0 59039 NULL @@ -102043,8 +102796,10 @@ index 0000000..7982a0c +xfs_dir2_sf_entsize_59366 xfs_dir2_sf_entsize 0-2 59366 NULL +pvr2_debugifc_print_info_59380 pvr2_debugifc_print_info 3 59380 NULL +fc_frame_alloc_fill_59394 fc_frame_alloc_fill 2 59394 NULL ++isku_sysfs_read_keys_function_59412 isku_sysfs_read_keys_function 6 59412 NULL +vxge_hw_ring_rxds_per_block_get_59425 vxge_hw_ring_rxds_per_block_get 0 59425 NULL +squashfs_read_data_59440 squashfs_read_data 6 59440 NULL ++SyS_sched_setaffinity_59442 SyS_sched_setaffinity 2 59442 NULL +fs_path_ensure_buf_59445 fs_path_ensure_buf 2 59445 NULL +descriptor_loc_59446 descriptor_loc 3 59446 NULL +do_compat_semctl_59449 do_compat_semctl 4 59449 NULL @@ -102062,7 +102817,9 @@ index 0000000..7982a0c +ubifs_setxattr_59650 ubifs_setxattr 4 59650 NULL nohasharray +hidraw_read_59650 hidraw_read 3 59650 &ubifs_setxattr_59650 +v9fs_xattr_set_acl_59651 v9fs_xattr_set_acl 4 59651 NULL ++paravirt_sched_clock_59660 paravirt_sched_clock 0 59660 NULL +__devcgroup_check_permission_59665 __devcgroup_check_permission 0 59665 NULL ++iwl_dbgfs_mac_params_read_59666 iwl_dbgfs_mac_params_read 3 59666 NULL +alloc_dca_provider_59670 alloc_dca_provider 2 59670 NULL +can_nocow_odirect_59681 can_nocow_odirect 3 59681 NULL +sriov_enable_59689 sriov_enable 2 59689 NULL @@ -102075,6 +102832,8 @@ index 0000000..7982a0c +ext3_acl_count_59754 ext3_acl_count 0-1 59754 NULL +long_retry_limit_read_59766 long_retry_limit_read 3 59766 NULL +venus_remove_59781 venus_remove 4 59781 NULL ++mei_nfc_recv_59784 mei_nfc_recv 3 59784 NULL ++C_SYSC_preadv_59801 C_SYSC_preadv 3 59801 NULL +ipw_write_59807 ipw_write 3 59807 NULL +rtllib_wx_set_gen_ie_59808 rtllib_wx_set_gen_ie 3 59808 NULL +scsi_init_shared_tag_map_59812 scsi_init_shared_tag_map 2 59812 NULL @@ -102082,7 +102841,8 @@ index 0000000..7982a0c +gspca_dev_probe2_59833 gspca_dev_probe2 4 59833 NULL +regmap_raw_write_async_59849 regmap_raw_write_async 2-4 59849 NULL +pvr2_ioread_set_sync_key_59882 pvr2_ioread_set_sync_key 3 59882 NULL -+shmem_zero_setup_59885 shmem_zero_setup 0 59885 NULL ++shmem_zero_setup_59885 shmem_zero_setup 0 59885 NULL nohasharray ++start_transaction_59885 start_transaction 2 59885 &shmem_zero_setup_59885 +ffs_prepare_buffer_59892 ffs_prepare_buffer 2 59892 NULL +swiotlb_map_page_59909 swiotlb_map_page 3 59909 NULL +il_dbgfs_rxon_flags_read_59950 il_dbgfs_rxon_flags_read 3 59950 NULL nohasharray @@ -102113,11 +102873,13 @@ index 0000000..7982a0c +mp_register_gsi_60079 mp_register_gsi 2 60079 NULL +rxrpc_kernel_send_data_60083 rxrpc_kernel_send_data 3 60083 NULL +ieee80211_if_fmt_fwded_frames_60103 ieee80211_if_fmt_fwded_frames 3 60103 NULL ++SYSC_msgsnd_60113 SYSC_msgsnd 3 60113 NULL +ttm_bo_kmap_60118 ttm_bo_kmap 3-2 60118 NULL +jmb38x_ms_count_slots_60164 jmb38x_ms_count_slots 0 60164 NULL +init_state_60165 init_state 2 60165 NULL +sg_build_sgat_60179 sg_build_sgat 3 60179 NULL nohasharray +jffs2_alloc_full_dirent_60179 jffs2_alloc_full_dirent 1 60179 &sg_build_sgat_60179 ++fuse_async_req_send_60183 fuse_async_req_send 0-3 60183 NULL +rx_rx_tkip_replays_read_60193 rx_rx_tkip_replays_read 3 60193 NULL +svc_compat_ioctl_60194 svc_compat_ioctl 3 60194 NULL +ib_send_cm_mra_60202 ib_send_cm_mra 4 60202 NULL nohasharray @@ -102138,6 +102900,7 @@ index 0000000..7982a0c +dccp_setsockopt_60367 dccp_setsockopt 5 60367 NULL +ubi_eba_atomic_leb_change_60379 ubi_eba_atomic_leb_change 5 60379 NULL +instruction_pointer_60384 instruction_pointer 0 60384 NULL ++drop_outstanding_extent_60390 drop_outstanding_extent 0 60390 NULL +mthca_alloc_resize_buf_60394 mthca_alloc_resize_buf 3 60394 NULL +ocfs2_zero_extend_60396 ocfs2_zero_extend 3 60396 NULL +driver_names_read_60399 driver_names_read 3 60399 NULL @@ -102147,7 +102910,8 @@ index 0000000..7982a0c +tstats_write_60432 tstats_write 3 60432 NULL nohasharray +kmalloc_60432 kmalloc 1 60432 &tstats_write_60432 +tipc_buf_acquire_60437 tipc_buf_acquire 1 60437 NULL -+rx_data_60442 rx_data 4 60442 NULL ++rx_data_60442 rx_data 4 60442 NULL nohasharray ++scaled_div32_60442 scaled_div32 1-2 60442 &rx_data_60442 +tcf_csum_ipv4_igmp_60446 tcf_csum_ipv4_igmp 3 60446 NULL +snd_hda_get_num_raw_conns_60462 snd_hda_get_num_raw_conns 0 60462 NULL +crypto_shash_setkey_60483 crypto_shash_setkey 3 60483 NULL @@ -102155,6 +102919,8 @@ index 0000000..7982a0c +hysdn_sched_rx_60533 hysdn_sched_rx 3 60533 NULL +v9fs_fid_readn_60544 v9fs_fid_readn 4 60544 NULL +nonpaging_map_60551 nonpaging_map 4 60551 NULL ++nfsd_hashsize_60562 nfsd_hashsize 0 60562 NULL ++hash_net6_expire_60598 hash_net6_expire 3 60598 NULL +skb_transport_offset_60619 skb_transport_offset 0 60619 NULL +wl1273_fm_fops_write_60621 wl1273_fm_fops_write 3 60621 NULL +acl_alloc_stack_init_60630 acl_alloc_stack_init 1 60630 NULL @@ -102184,7 +102950,7 @@ index 0000000..7982a0c +hsc_msg_alloc_60990 hsc_msg_alloc 1 60990 NULL +ath6kl_lrssi_roam_read_61022 ath6kl_lrssi_roam_read 3 61022 NULL +symtab_init_61050 symtab_init 2 61050 NULL -+fuse_send_write_61053 fuse_send_write 0 61053 NULL ++fuse_send_write_61053 fuse_send_write 0-4 61053 NULL +bitmap_scnlistprintf_61062 bitmap_scnlistprintf 0-4-2 61062 NULL +ahash_align_buffer_size_61070 ahash_align_buffer_size 0-1-2 61070 NULL +get_derived_key_61100 get_derived_key 4 61100 NULL @@ -102193,17 +102959,23 @@ index 0000000..7982a0c +__probe_kernel_read_61119 __probe_kernel_read 3 61119 &p80211_headerlen_61119 +vmemmap_alloc_block_buf_61126 vmemmap_alloc_block_buf 1 61126 NULL +afs_proc_cells_write_61139 afs_proc_cells_write 3 61139 NULL ++brcmf_sdio_chip_cr4_exitdl_61143 brcmf_sdio_chip_cr4_exitdl 4 61143 NULL +__vmalloc_61168 __vmalloc 1 61168 NULL +event_oom_late_read_61175 event_oom_late_read 3 61175 NULL nohasharray +pair_device_61175 pair_device 4 61175 &event_oom_late_read_61175 +sys_lsetxattr_61177 sys_lsetxattr 4 61177 NULL ++SyS_prctl_61202 SyS_prctl 4 61202 NULL +arch_hibernation_header_save_61212 arch_hibernation_header_save 0 61212 NULL +smk_read_ambient_61220 smk_read_ambient 3 61220 NULL +btrfs_bio_alloc_61270 btrfs_bio_alloc 3 61270 NULL +vortex_adbdma_getlinearpos_61283 vortex_adbdma_getlinearpos 0 61283 NULL -+sys_add_key_61288 sys_add_key 4 61288 NULL ++sys_add_key_61288 sys_add_key 4 61288 NULL nohasharray ++nvme_trans_copy_to_user_61288 nvme_trans_copy_to_user 3 61288 &sys_add_key_61288 +ext4_issue_discard_61305 ext4_issue_discard 2 61305 NULL ++xfer_from_user_61307 xfer_from_user 3 61307 NULL ++timespec_to_ns_61317 timespec_to_ns 0 61317 NULL +xfrm_user_sec_ctx_size_61320 xfrm_user_sec_ctx_size 0 61320 NULL ++C_SYSC_msgsnd_61330 C_SYSC_msgsnd 2-3 61330 NULL +st5481_setup_isocpipes_61340 st5481_setup_isocpipes 6-4 61340 NULL +rx_rx_wa_ba_not_expected_read_61341 rx_rx_wa_ba_not_expected_read 3 61341 NULL +f1x_map_sysaddr_to_csrow_61344 f1x_map_sysaddr_to_csrow 2 61344 NULL @@ -102218,6 +102990,7 @@ index 0000000..7982a0c +btrfs_item_size_61485 btrfs_item_size 0 61485 NULL +erst_errno_61526 erst_errno 0 61526 NULL +ntfs_attr_lookup_61539 ntfs_attr_lookup 0 61539 NULL ++get_ohm_of_thermistor_61545 get_ohm_of_thermistor 2 61545 NULL +o2hb_pop_count_61553 o2hb_pop_count 2 61553 NULL +dvb_net_ioctl_61559 dvb_net_ioctl 2 61559 NULL +ieee80211_if_read_rc_rateidx_mask_2ghz_61570 ieee80211_if_read_rc_rateidx_mask_2ghz 3 61570 NULL @@ -102233,6 +103006,7 @@ index 0000000..7982a0c +ttm_page_pool_free_61661 ttm_page_pool_free 2 61661 NULL +insert_one_name_61668 insert_one_name 7 61668 NULL +lock_loop_61681 lock_loop 1 61681 NULL ++__do_tune_cpucache_61684 __do_tune_cpucache 2 61684 NULL +filter_read_61692 filter_read 3 61692 NULL +iov_length_61716 iov_length 0 61716 NULL +fragmentation_threshold_read_61718 fragmentation_threshold_read 3 61718 NULL @@ -102243,6 +103017,7 @@ index 0000000..7982a0c +bfad_debugfs_write_regwr_61841 bfad_debugfs_write_regwr 3 61841 NULL +fs_path_prepare_for_add_61854 fs_path_prepare_for_add 2 61854 NULL +evdev_compute_buffer_size_61863 evdev_compute_buffer_size 0 61863 NULL ++SYSC_lsetxattr_61869 SYSC_lsetxattr 4 61869 NULL +get_fw_name_61874 get_fw_name 3 61874 NULL +free_init_pages_61875 free_init_pages 2 61875 NULL +twl4030_sih_setup_61878 twl4030_sih_setup 3 61878 NULL @@ -102264,6 +103039,7 @@ index 0000000..7982a0c +virtnet_send_command_61993 virtnet_send_command 5-6 61993 NULL +xt_compat_match_offset_62011 xt_compat_match_offset 0 62011 NULL +jffs2_do_unlink_62020 jffs2_do_unlink 4 62020 NULL ++SYSC_select_62024 SYSC_select 1 62024 NULL +pmcraid_build_passthrough_ioadls_62034 pmcraid_build_passthrough_ioadls 2 62034 NULL +ppp_tx_cp_62044 ppp_tx_cp 5 62044 NULL +sctp_user_addto_chunk_62047 sctp_user_addto_chunk 2-3 62047 NULL @@ -102280,6 +103056,7 @@ index 0000000..7982a0c +alloc_upcall_62186 alloc_upcall 2 62186 NULL +btrfs_xattr_acl_set_62203 btrfs_xattr_acl_set 4 62203 NULL +sock_kmalloc_62205 sock_kmalloc 2 62205 NULL ++SYSC_setgroups16_62232 SYSC_setgroups16 1 62232 NULL +nfsd_read_file_62241 nfsd_read_file 6 62241 NULL +allocate_partition_62245 allocate_partition 4 62245 NULL +__qib_get_user_pages_62287 __qib_get_user_pages 1-2 62287 NULL @@ -102329,6 +103106,7 @@ index 0000000..7982a0c +init_chip_wc_pat_62768 init_chip_wc_pat 2 62768 NULL +ax25_sendmsg_62770 ax25_sendmsg 4 62770 NULL +page_key_alloc_62771 page_key_alloc 0 62771 NULL ++C_SYSC_ipc_62776 C_SYSC_ipc 5-3-6-4 62776 NULL +tracing_total_entries_read_62817 tracing_total_entries_read 3 62817 NULL +__rounddown_pow_of_two_62836 __rounddown_pow_of_two 0 62836 NULL +bio_get_nr_vecs_62838 bio_get_nr_vecs 0 62838 NULL @@ -102341,11 +103119,13 @@ index 0000000..7982a0c +if_spi_host_to_card_62890 if_spi_host_to_card 4 62890 NULL +mempool_create_slab_pool_62907 mempool_create_slab_pool 1 62907 NULL +getdqbuf_62908 getdqbuf 1 62908 NULL -+try_async_pf_62914 try_async_pf 3 62914 NULL ++try_async_pf_62914 try_async_pf 3 62914 NULL nohasharray ++SyS_remap_file_pages_62914 SyS_remap_file_pages 1 62914 &try_async_pf_62914 +agp_create_user_memory_62955 agp_create_user_memory 1 62955 NULL +__vb2_perform_fileio_63033 __vb2_perform_fileio 3 63033 NULL +pipeline_defrag_to_csum_swi_read_63037 pipeline_defrag_to_csum_swi_read 3 63037 NULL +scsi_host_alloc_63041 scsi_host_alloc 2 63041 NULL ++gso_pskb_expand_head_63052 gso_pskb_expand_head 2 63052 NULL +unlink1_63059 unlink1 3 63059 NULL +xen_set_nslabs_63066 xen_set_nslabs 0 63066 NULL +ocfs2_decrease_refcount_63078 ocfs2_decrease_refcount 3 63078 NULL @@ -102356,6 +103136,7 @@ index 0000000..7982a0c +xen_zap_pfn_range_63149 xen_zap_pfn_range 1 63149 NULL +smk_write_revoke_subj_63173 smk_write_revoke_subj 3 63173 NULL +vme_master_read_63221 vme_master_read 0 63221 NULL ++SyS_gethostname_63227 SyS_gethostname 2 63227 NULL +module_alloc_update_bounds_rw_63233 module_alloc_update_bounds_rw 1 63233 NULL +ptp_read_63251 ptp_read 4 63251 NULL +raid5_resize_63306 raid5_resize 2 63306 NULL @@ -102409,6 +103190,8 @@ index 0000000..7982a0c +kovaplus_sysfs_write_63795 kovaplus_sysfs_write 6 63795 NULL +mwifiex_11n_create_rx_reorder_tbl_63806 mwifiex_11n_create_rx_reorder_tbl 4 63806 NULL +copy_nodes_to_user_63807 copy_nodes_to_user 2 63807 NULL ++dec_zcache_eph_zbytes_63817 dec_zcache_eph_zbytes 1 63817 NULL ++prepare_copy_63826 prepare_copy 2 63826 NULL +sel_write_load_63830 sel_write_load 3 63830 NULL +proc_pid_attr_write_63845 proc_pid_attr_write 3 63845 NULL +init_map_ipmac_63896 init_map_ipmac 4-3 63896 NULL @@ -102426,19 +103209,23 @@ index 0000000..7982a0c +diva_xdi_write_63975 diva_xdi_write 4 63975 NULL +read_file_frameerrors_64001 read_file_frameerrors 3 64001 NULL +kmemdup_64015 kmemdup 2 64015 NULL ++SyS_rt_sigpending_64018 SyS_rt_sigpending 2 64018 NULL +offset_to_vaddr_64025 offset_to_vaddr 0-2 64025 NULL nohasharray +tcf_csum_skb_nextlayer_64025 tcf_csum_skb_nextlayer 3 64025 &offset_to_vaddr_64025 +dbAllocDmapLev_64030 dbAllocDmapLev 0 64030 NULL +resize_async_buffer_64031 resize_async_buffer 4 64031 NULL +sep_lli_table_secure_dma_64042 sep_lli_table_secure_dma 2-3 64042 NULL ++tfrc_calc_x_reverse_lookup_64057 tfrc_calc_x_reverse_lookup 0 64057 NULL +get_u8_64076 get_u8 0 64076 NULL +sl_realloc_bufs_64086 sl_realloc_bufs 2 64086 NULL +vmci_handle_arr_get_size_64088 vmci_handle_arr_get_size 0 64088 NULL +lbs_highrssi_read_64089 lbs_highrssi_read 3 64089 NULL ++SyS_mq_timedsend_64107 SyS_mq_timedsend 3 64107 NULL +do_load_xattr_datum_64118 do_load_xattr_datum 0 64118 NULL +ol_quota_entries_per_block_64122 ol_quota_entries_per_block 0 64122 NULL +ext4_prepare_inline_data_64124 ext4_prepare_inline_data 3 64124 NULL +init_bch_64130 init_bch 1-2 64130 NULL ++SYSC_ptrace_64136 SYSC_ptrace 3-4 64136 NULL +uea_idma_write_64139 uea_idma_write 3 64139 NULL +ablkcipher_copy_iv_64140 ablkcipher_copy_iv 3 64140 NULL +dlfb_ops_write_64150 dlfb_ops_write 3 64150 NULL @@ -102455,6 +103242,7 @@ index 0000000..7982a0c +ocfs2_block_check_validate_bhs_64302 ocfs2_block_check_validate_bhs 0 64302 NULL +error_error_bar_retry_read_64305 error_error_bar_retry_read 3 64305 NULL +ffz_64324 ffz 0 64324 NULL ++map_region_64328 map_region 1 64328 NULL +sisusbcon_clear_64329 sisusbcon_clear 4-3-5 64329 NULL +ts_write_64336 ts_write 3 64336 NULL +usbtmc_write_64340 usbtmc_write 3 64340 NULL @@ -102477,6 +103265,7 @@ index 0000000..7982a0c +read_file_spectral_short_repeat_64431 read_file_spectral_short_repeat 3 64431 &ext4_trim_extent_64431 +cap_capable_64462 cap_capable 0 64462 NULL +ip_vs_create_timeout_table_64478 ip_vs_create_timeout_table 2 64478 NULL ++single_open_size_64483 single_open_size 4 64483 NULL +p54_parse_rssical_64493 p54_parse_rssical 3 64493 NULL +msg_data_sz_64503 msg_data_sz 0 64503 NULL +remove_uuid_64505 remove_uuid 4 64505 NULL nohasharray @@ -102485,6 +103274,8 @@ index 0000000..7982a0c +opera1_usb_i2c_msgxfer_64521 opera1_usb_i2c_msgxfer 4 64521 NULL +ses_send_diag_64527 ses_send_diag 4 64527 NULL +prctl_set_mm_64538 prctl_set_mm 3 64538 NULL ++SyS_bind_64544 SyS_bind 3 64544 NULL ++rbd_obj_read_sync_64554 rbd_obj_read_sync 3-4 64554 NULL +__spi_sync_64561 __spi_sync 0 64561 NULL +__apei_exec_run_64563 __apei_exec_run 0 64563 NULL +fanotify_write_64623 fanotify_write 3 64623 NULL @@ -102505,6 +103296,7 @@ index 0000000..7982a0c +bio_map_kern_64751 bio_map_kern 3 64751 NULL +rt2x00debug_write_csr_64753 rt2x00debug_write_csr 3 64753 NULL +isr_low_rssi_read_64789 isr_low_rssi_read 3 64789 NULL ++regmap_reg_ranges_read_file_64798 regmap_reg_ranges_read_file 3 64798 NULL +nfsctl_transaction_write_64800 nfsctl_transaction_write 3 64800 NULL +megaraid_change_queue_depth_64815 megaraid_change_queue_depth 2 64815 NULL +ecryptfs_send_miscdev_64816 ecryptfs_send_miscdev 2 64816 NULL @@ -102536,10 +103328,12 @@ index 0000000..7982a0c +__alloc_bootmem_node_high_65076 __alloc_bootmem_node_high 2-3 65076 NULL +ocfs2_truncate_cluster_pages_65086 ocfs2_truncate_cluster_pages 2 65086 NULL +ath9k_dump_mci_btcoex_65090 ath9k_dump_mci_btcoex 0 65090 NULL ++C_SYSC_semctl_65091 C_SYSC_semctl 4 65091 NULL +ssb_bus_register_65183 ssb_bus_register 3 65183 NULL +rx_rx_done_read_65217 rx_rx_done_read 3 65217 NULL +print_endpoint_stat_65232 print_endpoint_stat 3-4-0 65232 NULL +whci_n_caps_65247 whci_n_caps 0 65247 NULL ++atomic_long_read_65263 atomic_long_read 0 65263 NULL +kmem_zalloc_greedy_65268 kmem_zalloc_greedy 3-2 65268 NULL +kmalloc_parameter_65279 kmalloc_parameter 1 65279 NULL +compat_core_sys_select_65285 compat_core_sys_select 1 65285 NULL @@ -102549,11 +103343,13 @@ index 0000000..7982a0c +unpack_array_65318 unpack_array 0 65318 NULL +pci_vpd_find_tag_65325 pci_vpd_find_tag 0-2 65325 NULL +dccp_setsockopt_service_65336 dccp_setsockopt_service 4 65336 NULL ++init_list_set_65351 init_list_set 2-3 65351 NULL +dma_rx_requested_read_65354 dma_rx_requested_read 3 65354 NULL +batadv_tt_save_orig_buffer_65361 batadv_tt_save_orig_buffer 4 65361 NULL +alloc_cpu_rmap_65363 alloc_cpu_rmap 1 65363 NULL +__ext4_new_inode_65370 __ext4_new_inode 5 65370 NULL -+strchr_65372 strchr 0 65372 NULL ++strchr_65372 strchr 0 65372 NULL nohasharray ++SyS_writev_65372 SyS_writev 3 65372 &strchr_65372 +__alloc_bootmem_nopanic_65397 __alloc_bootmem_nopanic 1-2 65397 NULL +trace_seq_to_user_65398 trace_seq_to_user 3 65398 NULL +mtd_get_device_size_65400 mtd_get_device_size 0 65400 NULL diff --git a/3.10.3/4425_grsec_remove_EI_PAX.patch b/3.10.4/4425_grsec_remove_EI_PAX.patch index 415fda5..415fda5 100644 --- a/3.10.3/4425_grsec_remove_EI_PAX.patch +++ b/3.10.4/4425_grsec_remove_EI_PAX.patch diff --git a/3.10.3/4427_force_XATTR_PAX_tmpfs.patch b/3.10.4/4427_force_XATTR_PAX_tmpfs.patch index e2a9551..e2a9551 100644 --- a/3.10.3/4427_force_XATTR_PAX_tmpfs.patch +++ b/3.10.4/4427_force_XATTR_PAX_tmpfs.patch diff --git a/3.10.3/4430_grsec-remove-localversion-grsec.patch b/3.10.4/4430_grsec-remove-localversion-grsec.patch index 31cf878..31cf878 100644 --- a/3.10.3/4430_grsec-remove-localversion-grsec.patch +++ b/3.10.4/4430_grsec-remove-localversion-grsec.patch diff --git a/3.10.3/4435_grsec-mute-warnings.patch b/3.10.4/4435_grsec-mute-warnings.patch index ed941d5..ed941d5 100644 --- a/3.10.3/4435_grsec-mute-warnings.patch +++ b/3.10.4/4435_grsec-mute-warnings.patch diff --git a/3.10.3/4440_grsec-remove-protected-paths.patch b/3.10.4/4440_grsec-remove-protected-paths.patch index 637934a..637934a 100644 --- a/3.10.3/4440_grsec-remove-protected-paths.patch +++ b/3.10.4/4440_grsec-remove-protected-paths.patch diff --git a/3.10.3/4450_grsec-kconfig-default-gids.patch b/3.10.4/4450_grsec-kconfig-default-gids.patch index f144c0e..f144c0e 100644 --- a/3.10.3/4450_grsec-kconfig-default-gids.patch +++ b/3.10.4/4450_grsec-kconfig-default-gids.patch diff --git a/3.10.3/4465_selinux-avc_audit-log-curr_ip.patch b/3.10.4/4465_selinux-avc_audit-log-curr_ip.patch index b0786d4..b0786d4 100644 --- a/3.10.3/4465_selinux-avc_audit-log-curr_ip.patch +++ b/3.10.4/4465_selinux-avc_audit-log-curr_ip.patch diff --git a/3.10.3/4470_disable-compat_vdso.patch b/3.10.4/4470_disable-compat_vdso.patch index 424d91f..424d91f 100644 --- a/3.10.3/4470_disable-compat_vdso.patch +++ b/3.10.4/4470_disable-compat_vdso.patch diff --git a/3.10.3/4475_emutramp_default_on.patch b/3.10.4/4475_emutramp_default_on.patch index 27bfc2d..27bfc2d 100644 --- a/3.10.3/4475_emutramp_default_on.patch +++ b/3.10.4/4475_emutramp_default_on.patch diff --git a/3.2.48/0000_README b/3.2.49/0000_README index 5e3379d..e27d48b 100644 --- a/3.2.48/0000_README +++ b/3.2.49/0000_README @@ -110,7 +110,11 @@ Patch: 1047_linux-3.2.48.patch From: http://www.kernel.org Desc: Linux 3.2.48 -Patch: 4420_grsecurity-2.9.1-3.2.48-201307261327.patch +Patch: 1048_linux-3.2.49.patch +From: http://www.kernel.org +Desc: Linux 3.2.49 + +Patch: 4420_grsecurity-2.9.1-3.2.49-201307302311.patch From: http://www.grsecurity.net Desc: hardened-sources base patch from upstream grsecurity diff --git a/3.2.48/1021_linux-3.2.22.patch b/3.2.49/1021_linux-3.2.22.patch index e6ad93a..e6ad93a 100644 --- a/3.2.48/1021_linux-3.2.22.patch +++ b/3.2.49/1021_linux-3.2.22.patch diff --git a/3.2.48/1022_linux-3.2.23.patch b/3.2.49/1022_linux-3.2.23.patch index 3d796d0..3d796d0 100644 --- a/3.2.48/1022_linux-3.2.23.patch +++ b/3.2.49/1022_linux-3.2.23.patch diff --git a/3.2.48/1023_linux-3.2.24.patch b/3.2.49/1023_linux-3.2.24.patch index 4692eb4..4692eb4 100644 --- a/3.2.48/1023_linux-3.2.24.patch +++ b/3.2.49/1023_linux-3.2.24.patch diff --git a/3.2.48/1024_linux-3.2.25.patch b/3.2.49/1024_linux-3.2.25.patch index e95c213..e95c213 100644 --- a/3.2.48/1024_linux-3.2.25.patch +++ b/3.2.49/1024_linux-3.2.25.patch diff --git a/3.2.48/1025_linux-3.2.26.patch b/3.2.49/1025_linux-3.2.26.patch index 44065b9..44065b9 100644 --- a/3.2.48/1025_linux-3.2.26.patch +++ b/3.2.49/1025_linux-3.2.26.patch diff --git a/3.2.48/1026_linux-3.2.27.patch b/3.2.49/1026_linux-3.2.27.patch index 5878eb4..5878eb4 100644 --- a/3.2.48/1026_linux-3.2.27.patch +++ b/3.2.49/1026_linux-3.2.27.patch diff --git a/3.2.48/1027_linux-3.2.28.patch b/3.2.49/1027_linux-3.2.28.patch index 4dbba4b..4dbba4b 100644 --- a/3.2.48/1027_linux-3.2.28.patch +++ b/3.2.49/1027_linux-3.2.28.patch diff --git a/3.2.48/1028_linux-3.2.29.patch b/3.2.49/1028_linux-3.2.29.patch index 3c65179..3c65179 100644 --- a/3.2.48/1028_linux-3.2.29.patch +++ b/3.2.49/1028_linux-3.2.29.patch diff --git a/3.2.48/1029_linux-3.2.30.patch b/3.2.49/1029_linux-3.2.30.patch index 86aea4b..86aea4b 100644 --- a/3.2.48/1029_linux-3.2.30.patch +++ b/3.2.49/1029_linux-3.2.30.patch diff --git a/3.2.48/1030_linux-3.2.31.patch b/3.2.49/1030_linux-3.2.31.patch index c6accf5..c6accf5 100644 --- a/3.2.48/1030_linux-3.2.31.patch +++ b/3.2.49/1030_linux-3.2.31.patch diff --git a/3.2.48/1031_linux-3.2.32.patch b/3.2.49/1031_linux-3.2.32.patch index 247fc0b..247fc0b 100644 --- a/3.2.48/1031_linux-3.2.32.patch +++ b/3.2.49/1031_linux-3.2.32.patch diff --git a/3.2.48/1032_linux-3.2.33.patch b/3.2.49/1032_linux-3.2.33.patch index c32fb75..c32fb75 100644 --- a/3.2.48/1032_linux-3.2.33.patch +++ b/3.2.49/1032_linux-3.2.33.patch diff --git a/3.2.48/1033_linux-3.2.34.patch b/3.2.49/1033_linux-3.2.34.patch index d647b38..d647b38 100644 --- a/3.2.48/1033_linux-3.2.34.patch +++ b/3.2.49/1033_linux-3.2.34.patch diff --git a/3.2.48/1034_linux-3.2.35.patch b/3.2.49/1034_linux-3.2.35.patch index 76a9c19..76a9c19 100644 --- a/3.2.48/1034_linux-3.2.35.patch +++ b/3.2.49/1034_linux-3.2.35.patch diff --git a/3.2.48/1035_linux-3.2.36.patch b/3.2.49/1035_linux-3.2.36.patch index 5d192a3..5d192a3 100644 --- a/3.2.48/1035_linux-3.2.36.patch +++ b/3.2.49/1035_linux-3.2.36.patch diff --git a/3.2.48/1036_linux-3.2.37.patch b/3.2.49/1036_linux-3.2.37.patch index ad13251..ad13251 100644 --- a/3.2.48/1036_linux-3.2.37.patch +++ b/3.2.49/1036_linux-3.2.37.patch diff --git a/3.2.48/1037_linux-3.2.38.patch b/3.2.49/1037_linux-3.2.38.patch index a3c106f..a3c106f 100644 --- a/3.2.48/1037_linux-3.2.38.patch +++ b/3.2.49/1037_linux-3.2.38.patch diff --git a/3.2.48/1038_linux-3.2.39.patch b/3.2.49/1038_linux-3.2.39.patch index 5639e92..5639e92 100644 --- a/3.2.48/1038_linux-3.2.39.patch +++ b/3.2.49/1038_linux-3.2.39.patch diff --git a/3.2.48/1039_linux-3.2.40.patch b/3.2.49/1039_linux-3.2.40.patch index f26b39c..f26b39c 100644 --- a/3.2.48/1039_linux-3.2.40.patch +++ b/3.2.49/1039_linux-3.2.40.patch diff --git a/3.2.48/1040_linux-3.2.41.patch b/3.2.49/1040_linux-3.2.41.patch index 0d27fcb..0d27fcb 100644 --- a/3.2.48/1040_linux-3.2.41.patch +++ b/3.2.49/1040_linux-3.2.41.patch diff --git a/3.2.48/1041_linux-3.2.42.patch b/3.2.49/1041_linux-3.2.42.patch index 77a08ed..77a08ed 100644 --- a/3.2.48/1041_linux-3.2.42.patch +++ b/3.2.49/1041_linux-3.2.42.patch diff --git a/3.2.48/1042_linux-3.2.43.patch b/3.2.49/1042_linux-3.2.43.patch index a3f878b..a3f878b 100644 --- a/3.2.48/1042_linux-3.2.43.patch +++ b/3.2.49/1042_linux-3.2.43.patch diff --git a/3.2.48/1043_linux-3.2.44.patch b/3.2.49/1043_linux-3.2.44.patch index 3d5e6ff..3d5e6ff 100644 --- a/3.2.48/1043_linux-3.2.44.patch +++ b/3.2.49/1043_linux-3.2.44.patch diff --git a/3.2.48/1044_linux-3.2.45.patch b/3.2.49/1044_linux-3.2.45.patch index 44e1767..44e1767 100644 --- a/3.2.48/1044_linux-3.2.45.patch +++ b/3.2.49/1044_linux-3.2.45.patch diff --git a/3.2.48/1045_linux-3.2.46.patch b/3.2.49/1045_linux-3.2.46.patch index bc10efd..bc10efd 100644 --- a/3.2.48/1045_linux-3.2.46.patch +++ b/3.2.49/1045_linux-3.2.46.patch diff --git a/3.2.48/1046_linux-3.2.47.patch b/3.2.49/1046_linux-3.2.47.patch index b74563c..b74563c 100644 --- a/3.2.48/1046_linux-3.2.47.patch +++ b/3.2.49/1046_linux-3.2.47.patch diff --git a/3.2.48/1047_linux-3.2.48.patch b/3.2.49/1047_linux-3.2.48.patch index 6d55b1f..6d55b1f 100644 --- a/3.2.48/1047_linux-3.2.48.patch +++ b/3.2.49/1047_linux-3.2.48.patch diff --git a/3.2.49/1048_linux-3.2.49.patch b/3.2.49/1048_linux-3.2.49.patch new file mode 100644 index 0000000..2dab0cf --- /dev/null +++ b/3.2.49/1048_linux-3.2.49.patch @@ -0,0 +1,2970 @@ +diff --git a/Documentation/i2c/busses/i2c-piix4 b/Documentation/i2c/busses/i2c-piix4 +index 475bb4a..65da157 100644 +--- a/Documentation/i2c/busses/i2c-piix4 ++++ b/Documentation/i2c/busses/i2c-piix4 +@@ -8,7 +8,7 @@ Supported adapters: + Datasheet: Only available via NDA from ServerWorks + * ATI IXP200, IXP300, IXP400, SB600, SB700 and SB800 southbridges + Datasheet: Not publicly available +- * AMD Hudson-2 ++ * AMD Hudson-2, CZ + Datasheet: Not publicly available + * Standard Microsystems (SMSC) SLC90E66 (Victory66) southbridge + Datasheet: Publicly available at the SMSC website http://www.smsc.com +diff --git a/MAINTAINERS b/MAINTAINERS +index 83f156e..8659eba 100644 +--- a/MAINTAINERS ++++ b/MAINTAINERS +@@ -159,7 +159,7 @@ S: Maintained + F: drivers/net/ethernet/realtek/r8169.c + + 8250/16?50 (AND CLONE UARTS) SERIAL DRIVER +-M: Greg Kroah-Hartman <gregkh@suse.de> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + L: linux-serial@vger.kernel.org + W: http://serial.sourceforge.net + S: Maintained +@@ -1781,9 +1781,9 @@ X: net/wireless/wext* + + CHAR and MISC DRIVERS + M: Arnd Bergmann <arnd@arndb.de> +-M: Greg Kroah-Hartman <greg@kroah.com> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + T: git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git +-S: Maintained ++S: Supported + F: drivers/char/* + F: drivers/misc/* + +@@ -2315,7 +2315,7 @@ F: lib/lru_cache.c + F: Documentation/blockdev/drbd/ + + DRIVER CORE, KOBJECTS, DEBUGFS AND SYSFS +-M: Greg Kroah-Hartman <gregkh@suse.de> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + T: git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6.git + S: Supported + F: Documentation/kobject.txt +@@ -6257,15 +6257,16 @@ S: Maintained + F: arch/alpha/kernel/srm_env.c + + STABLE BRANCH +-M: Greg Kroah-Hartman <greg@kroah.com> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + L: stable@vger.kernel.org +-S: Maintained ++S: Supported ++F: Documentation/stable_kernel_rules.txt + + STAGING SUBSYSTEM +-M: Greg Kroah-Hartman <gregkh@suse.de> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + T: git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git + L: devel@driverdev.osuosl.org +-S: Maintained ++S: Supported + F: drivers/staging/ + + STAGING - AGERE HERMES II and II.5 WIRELESS DRIVERS +@@ -6654,8 +6655,8 @@ S: Maintained + K: ^Subject:.*(?i)trivial + + TTY LAYER +-M: Greg Kroah-Hartman <gregkh@suse.de> +-S: Maintained ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> ++S: Supported + T: git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6.git + F: drivers/tty/* + F: drivers/tty/serial/serial_core.c +@@ -6943,7 +6944,7 @@ S: Maintained + F: drivers/usb/serial/digi_acceleport.c + + USB SERIAL DRIVER +-M: Greg Kroah-Hartman <gregkh@suse.de> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + L: linux-usb@vger.kernel.org + S: Supported + F: Documentation/usb/usb-serial.txt +@@ -6958,9 +6959,8 @@ S: Maintained + F: drivers/usb/serial/empeg.c + + USB SERIAL KEYSPAN DRIVER +-M: Greg Kroah-Hartman <greg@kroah.com> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + L: linux-usb@vger.kernel.org +-W: http://www.kroah.com/linux/ + S: Maintained + F: drivers/usb/serial/*keyspan* + +@@ -6988,7 +6988,7 @@ F: Documentation/video4linux/sn9c102.txt + F: drivers/media/video/sn9c102/ + + USB SUBSYSTEM +-M: Greg Kroah-Hartman <gregkh@suse.de> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + L: linux-usb@vger.kernel.org + W: http://www.linux-usb.org + T: git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6.git +@@ -7075,7 +7075,7 @@ F: fs/hppfs/ + + USERSPACE I/O (UIO) + M: "Hans J. Koch" <hjk@hansjkoch.de> +-M: Greg Kroah-Hartman <gregkh@suse.de> ++M: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + S: Maintained + F: Documentation/DocBook/uio-howto.tmpl + F: drivers/uio/ +diff --git a/Makefile b/Makefile +index 299e2eb..2e3d791 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 2 +-SUBLEVEL = 48 ++SUBLEVEL = 49 + EXTRAVERSION = + NAME = Saber-toothed Squirrel + +diff --git a/arch/arm/kernel/perf_event.c b/arch/arm/kernel/perf_event.c +index a559ee7..778d248 100644 +--- a/arch/arm/kernel/perf_event.c ++++ b/arch/arm/kernel/perf_event.c +@@ -795,6 +795,7 @@ perf_callchain_user(struct perf_callchain_entry *entry, struct pt_regs *regs) + struct frame_tail __user *tail; + + ++ perf_callchain_store(entry, regs->ARM_pc); + tail = (struct frame_tail __user *)regs->ARM_fp - 1; + + while ((entry->nr < PERF_MAX_STACK_DEPTH) && +diff --git a/arch/powerpc/kernel/setup_64.c b/arch/powerpc/kernel/setup_64.c +index fb9bb46..2c8890a 100644 +--- a/arch/powerpc/kernel/setup_64.c ++++ b/arch/powerpc/kernel/setup_64.c +@@ -74,7 +74,7 @@ + #endif + + int boot_cpuid = 0; +-int __initdata spinning_secondaries; ++int spinning_secondaries; + u64 ppc64_pft_size; + + /* Pick defaults since we might want to patch instructions +diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c +index 054cc01..d50a821 100644 +--- a/arch/x86/xen/time.c ++++ b/arch/x86/xen/time.c +@@ -36,9 +36,8 @@ static DEFINE_PER_CPU(struct vcpu_runstate_info, xen_runstate); + /* snapshots of runstate info */ + static DEFINE_PER_CPU(struct vcpu_runstate_info, xen_runstate_snapshot); + +-/* unused ns of stolen and blocked time */ ++/* unused ns of stolen time */ + static DEFINE_PER_CPU(u64, xen_residual_stolen); +-static DEFINE_PER_CPU(u64, xen_residual_blocked); + + /* return an consistent snapshot of 64-bit time/counter value */ + static u64 get64(const u64 *p) +@@ -115,7 +114,7 @@ static void do_stolen_accounting(void) + { + struct vcpu_runstate_info state; + struct vcpu_runstate_info *snap; +- s64 blocked, runnable, offline, stolen; ++ s64 runnable, offline, stolen; + cputime_t ticks; + + get_runstate_snapshot(&state); +@@ -125,7 +124,6 @@ static void do_stolen_accounting(void) + snap = &__get_cpu_var(xen_runstate_snapshot); + + /* work out how much time the VCPU has not been runn*ing* */ +- blocked = state.time[RUNSTATE_blocked] - snap->time[RUNSTATE_blocked]; + runnable = state.time[RUNSTATE_runnable] - snap->time[RUNSTATE_runnable]; + offline = state.time[RUNSTATE_offline] - snap->time[RUNSTATE_offline]; + +@@ -141,17 +139,6 @@ static void do_stolen_accounting(void) + ticks = iter_div_u64_rem(stolen, NS_PER_TICK, &stolen); + __this_cpu_write(xen_residual_stolen, stolen); + account_steal_ticks(ticks); +- +- /* Add the appropriate number of ticks of blocked time, +- including any left-overs from last time. */ +- blocked += __this_cpu_read(xen_residual_blocked); +- +- if (blocked < 0) +- blocked = 0; +- +- ticks = iter_div_u64_rem(blocked, NS_PER_TICK, &blocked); +- __this_cpu_write(xen_residual_blocked, blocked); +- account_idle_ticks(ticks); + } + + /* Get the TSC speed from Xen */ +diff --git a/block/genhd.c b/block/genhd.c +index 6edf228..8bd4ef2 100644 +--- a/block/genhd.c ++++ b/block/genhd.c +@@ -519,7 +519,7 @@ void register_disk(struct gendisk *disk) + + ddev->parent = disk->driverfs_dev; + +- dev_set_name(ddev, disk->disk_name); ++ dev_set_name(ddev, "%s", disk->disk_name); + + /* delay uevents, until we scanned partition table */ + dev_set_uevent_suppress(ddev, 1); +diff --git a/crypto/algapi.c b/crypto/algapi.c +index 54dd4e3..dc9991f 100644 +--- a/crypto/algapi.c ++++ b/crypto/algapi.c +@@ -477,7 +477,8 @@ static struct crypto_template *__crypto_lookup_template(const char *name) + + struct crypto_template *crypto_lookup_template(const char *name) + { +- return try_then_request_module(__crypto_lookup_template(name), name); ++ return try_then_request_module(__crypto_lookup_template(name), "%s", ++ name); + } + EXPORT_SYMBOL_GPL(crypto_lookup_template); + +diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c +index 87acc23..0445f52 100644 +--- a/drivers/ata/ahci.c ++++ b/drivers/ata/ahci.c +@@ -302,6 +302,7 @@ static const struct pci_device_id ahci_pci_tbl[] = { + { PCI_VDEVICE(INTEL, 0x8d64), board_ahci }, /* Wellsburg RAID */ + { PCI_VDEVICE(INTEL, 0x8d66), board_ahci }, /* Wellsburg RAID */ + { PCI_VDEVICE(INTEL, 0x8d6e), board_ahci }, /* Wellsburg RAID */ ++ { PCI_VDEVICE(INTEL, 0x23a3), board_ahci }, /* Coleto Creek AHCI */ + + /* JMicron 360/1/3/5/6, match class to avoid IDE function */ + { PCI_VENDOR_ID_JMICRON, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, +@@ -318,6 +319,7 @@ static const struct pci_device_id ahci_pci_tbl[] = { + + /* AMD */ + { PCI_VDEVICE(AMD, 0x7800), board_ahci }, /* AMD Hudson-2 */ ++ { PCI_VDEVICE(AMD, 0x7900), board_ahci }, /* AMD CZ */ + /* AMD is using RAID class only for ahci controllers */ + { PCI_VENDOR_ID_AMD, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, + PCI_CLASS_STORAGE_RAID << 8, 0xffffff, board_ahci }, +diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c +index 0e92326..7a949af 100644 +--- a/drivers/ata/ata_piix.c ++++ b/drivers/ata/ata_piix.c +@@ -360,6 +360,8 @@ static const struct pci_device_id piix_pci_tbl[] = { + /* SATA Controller IDE (BayTrail) */ + { 0x8086, 0x0F20, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata_byt }, + { 0x8086, 0x0F21, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata_byt }, ++ /* SATA Controller IDE (Coleto Creek) */ ++ { 0x8086, 0x23a6, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, + + { } /* terminate list */ + }; +diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c +index 3c92dbd..60def03 100644 +--- a/drivers/ata/libahci.c ++++ b/drivers/ata/libahci.c +@@ -1541,8 +1541,7 @@ static void ahci_error_intr(struct ata_port *ap, u32 irq_stat) + u32 fbs = readl(port_mmio + PORT_FBS); + int pmp = fbs >> PORT_FBS_DWE_OFFSET; + +- if ((fbs & PORT_FBS_SDE) && (pmp < ap->nr_pmp_links) && +- ata_link_online(&ap->pmp_link[pmp])) { ++ if ((fbs & PORT_FBS_SDE) && (pmp < ap->nr_pmp_links)) { + link = &ap->pmp_link[pmp]; + fbs_need_dec = true; + } +diff --git a/drivers/ata/libata-pmp.c b/drivers/ata/libata-pmp.c +index 21b80c5..f63a588 100644 +--- a/drivers/ata/libata-pmp.c ++++ b/drivers/ata/libata-pmp.c +@@ -389,9 +389,13 @@ static void sata_pmp_quirks(struct ata_port *ap) + /* link reports offline after LPM */ + link->flags |= ATA_LFLAG_NO_LPM; + +- /* Class code report is unreliable. */ ++ /* ++ * Class code report is unreliable and SRST times ++ * out under certain configurations. ++ */ + if (link->pmp < 5) +- link->flags |= ATA_LFLAG_ASSUME_ATA; ++ link->flags |= ATA_LFLAG_NO_SRST | ++ ATA_LFLAG_ASSUME_ATA; + + /* port 5 is for SEMB device and it doesn't like SRST */ + if (link->pmp == 5) +@@ -399,20 +403,17 @@ static void sata_pmp_quirks(struct ata_port *ap) + ATA_LFLAG_ASSUME_SEMB; + } + } else if (vendor == 0x1095 && devid == 0x4723) { +- /* sil4723 quirks */ +- ata_for_each_link(link, ap, EDGE) { +- /* link reports offline after LPM */ +- link->flags |= ATA_LFLAG_NO_LPM; +- +- /* class code report is unreliable */ +- if (link->pmp < 2) +- link->flags |= ATA_LFLAG_ASSUME_ATA; +- +- /* the config device at port 2 locks up on SRST */ +- if (link->pmp == 2) +- link->flags |= ATA_LFLAG_NO_SRST | +- ATA_LFLAG_ASSUME_ATA; +- } ++ /* ++ * sil4723 quirks ++ * ++ * Link reports offline after LPM. Class code report is ++ * unreliable. SIMG PMPs never got SRST reliable and the ++ * config device at port 2 locks up on SRST. ++ */ ++ ata_for_each_link(link, ap, EDGE) ++ link->flags |= ATA_LFLAG_NO_LPM | ++ ATA_LFLAG_NO_SRST | ++ ATA_LFLAG_ASSUME_ATA; + } else if (vendor == 0x1095 && devid == 0x4726) { + /* sil4726 quirks */ + ata_for_each_link(link, ap, EDGE) { +diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c +index 40a0fcb..5fb6885 100644 +--- a/drivers/block/nbd.c ++++ b/drivers/block/nbd.c +@@ -598,8 +598,10 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *lo, + if (!lo->sock) + return -EINVAL; + ++ lo->disconnect = 1; ++ + nbd_send_req(lo, &sreq); +- return 0; ++ return 0; + } + + case NBD_CLEAR_SOCK: { +@@ -629,6 +631,7 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *lo, + lo->sock = SOCKET_I(inode); + if (max_part > 0) + bdev->bd_invalidated = 1; ++ lo->disconnect = 0; /* we're connected now */ + return 0; + } else { + fput(file); +@@ -675,7 +678,8 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *lo, + + mutex_unlock(&lo->tx_lock); + +- thread = kthread_create(nbd_thread, lo, lo->disk->disk_name); ++ thread = kthread_create(nbd_thread, lo, "%s", ++ lo->disk->disk_name); + if (IS_ERR(thread)) { + mutex_lock(&lo->tx_lock); + return PTR_ERR(thread); +@@ -700,6 +704,8 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *lo, + set_capacity(lo->disk, 0); + if (max_part > 0) + ioctl_by_bdev(bdev, BLKRRPART, 0); ++ if (lo->disconnect) /* user requested, ignore socket errors */ ++ return 0; + return lo->harderror; + } + +diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c +index 2678b6f..1331740 100644 +--- a/drivers/cdrom/cdrom.c ++++ b/drivers/cdrom/cdrom.c +@@ -2885,7 +2885,7 @@ static noinline int mmc_ioctl_cdrom_read_data(struct cdrom_device_info *cdi, + if (lba < 0) + return -EINVAL; + +- cgc->buffer = kmalloc(blocksize, GFP_KERNEL); ++ cgc->buffer = kzalloc(blocksize, GFP_KERNEL); + if (cgc->buffer == NULL) + return -ENOMEM; + +diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c +index e8eedb7..720cace 100644 +--- a/drivers/dma/pl330.c ++++ b/drivers/dma/pl330.c +@@ -349,10 +349,10 @@ static void pl330_free_chan_resources(struct dma_chan *chan) + struct dma_pl330_chan *pch = to_pchan(chan); + unsigned long flags; + +- spin_lock_irqsave(&pch->lock, flags); +- + tasklet_kill(&pch->task); + ++ spin_lock_irqsave(&pch->lock, flags); ++ + pl330_release_channel(pch->pl330_chid); + pch->pl330_chid = NULL; + +diff --git a/drivers/hv/ring_buffer.c b/drivers/hv/ring_buffer.c +index 8af25a0..810658e 100644 +--- a/drivers/hv/ring_buffer.c ++++ b/drivers/hv/ring_buffer.c +@@ -383,7 +383,7 @@ int hv_ringbuffer_write(struct hv_ring_buffer_info *outring_info, + sizeof(u64)); + + /* Make sure we flush all writes before updating the writeIndex */ +- smp_wmb(); ++ wmb(); + + /* Now, update the write location */ + hv_set_next_write_location(outring_info, next_write_location); +diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c +index d2d0a2a..44442d5 100644 +--- a/drivers/hv/vmbus_drv.c ++++ b/drivers/hv/vmbus_drv.c +@@ -466,7 +466,7 @@ static void vmbus_on_msg_dpc(unsigned long data) + * will not deliver any more messages since there is + * no empty slot + */ +- smp_mb(); ++ mb(); + + if (msg->header.message_flags.msg_pending) { + /* +diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig +index 60f593c..dbd4fa5 100644 +--- a/drivers/i2c/busses/Kconfig ++++ b/drivers/i2c/busses/Kconfig +@@ -137,6 +137,7 @@ config I2C_PIIX4 + ATI SB700 + ATI SB800 + AMD Hudson-2 ++ AMD CZ + Serverworks OSB4 + Serverworks CSB5 + Serverworks CSB6 +diff --git a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c +index 6d14ac2..14b588c 100644 +--- a/drivers/i2c/busses/i2c-piix4.c ++++ b/drivers/i2c/busses/i2c-piix4.c +@@ -22,7 +22,7 @@ + Intel PIIX4, 440MX + Serverworks OSB4, CSB5, CSB6, HT-1000, HT-1100 + ATI IXP200, IXP300, IXP400, SB600, SB700, SB800 +- AMD Hudson-2 ++ AMD Hudson-2, CZ + SMSC Victory66 + + Note: we assume there can only be one device, with one SMBus interface. +@@ -481,6 +481,7 @@ static const struct pci_device_id piix4_ids[] = { + { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_SMBUS) }, + { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_HUDSON2_SMBUS) }, ++ { PCI_DEVICE(PCI_VENDOR_ID_AMD, 0x790b) }, + { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, + PCI_DEVICE_ID_SERVERWORKS_OSB4) }, + { PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, +diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c +index 07cb1a6..6cc8e67 100644 +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -1076,6 +1076,10 @@ static unsigned long iommu_unmap_page(struct protection_domain *dom, + + /* Large PTE found which maps this address */ + unmap_size = PTE_PAGE_SIZE(*pte); ++ ++ /* Only unmap from the first pte in the page */ ++ if ((unmap_size - 1) & bus_addr) ++ break; + count = PAGE_SIZE_PTE_COUNT(unmap_size); + for (i = 0; i < count; i++) + pte[i] = 0ULL; +@@ -1085,7 +1089,7 @@ static unsigned long iommu_unmap_page(struct protection_domain *dom, + unmapped += unmap_size; + } + +- BUG_ON(!is_power_of_2(unmapped)); ++ BUG_ON(unmapped && !is_power_of_2(unmapped)); + + return unmapped; + } +diff --git a/drivers/media/dvb/dvb-core/dmxdev.c b/drivers/media/dvb/dvb-core/dmxdev.c +index e4b5c03..4f8c3f7 100644 +--- a/drivers/media/dvb/dvb-core/dmxdev.c ++++ b/drivers/media/dvb/dvb-core/dmxdev.c +@@ -380,10 +380,8 @@ static int dvb_dmxdev_section_callback(const u8 *buffer1, size_t buffer1_len, + ret = dvb_dmxdev_buffer_write(&dmxdevfilter->buffer, buffer2, + buffer2_len); + } +- if (ret < 0) { +- dvb_ringbuffer_flush(&dmxdevfilter->buffer); ++ if (ret < 0) + dmxdevfilter->buffer.error = ret; +- } + if (dmxdevfilter->params.sec.flags & DMX_ONESHOT) + dmxdevfilter->state = DMXDEV_STATE_DONE; + spin_unlock(&dmxdevfilter->dev->lock); +@@ -419,10 +417,8 @@ static int dvb_dmxdev_ts_callback(const u8 *buffer1, size_t buffer1_len, + ret = dvb_dmxdev_buffer_write(buffer, buffer1, buffer1_len); + if (ret == buffer1_len) + ret = dvb_dmxdev_buffer_write(buffer, buffer2, buffer2_len); +- if (ret < 0) { +- dvb_ringbuffer_flush(buffer); ++ if (ret < 0) + buffer->error = ret; +- } + spin_unlock(&dmxdevfilter->dev->lock); + wake_up(&buffer->queue); + return 0; +diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c +index ed7a5a6..a3bd0ba 100644 +--- a/drivers/net/ethernet/realtek/r8169.c ++++ b/drivers/net/ethernet/realtek/r8169.c +@@ -5584,14 +5584,6 @@ static netdev_tx_t rtl8169_start_xmit(struct sk_buff *skb, + goto err_stop_0; + } + +- /* 8168evl does not automatically pad to minimum length. */ +- if (unlikely(tp->mac_version == RTL_GIGA_MAC_VER_34 && +- skb->len < ETH_ZLEN)) { +- if (skb_padto(skb, ETH_ZLEN)) +- goto err_update_stats; +- skb_put(skb, ETH_ZLEN - skb->len); +- } +- + if (unlikely(le32_to_cpu(txd->opts1) & DescOwn)) + goto err_stop_0; + +diff --git a/drivers/net/wan/dlci.c b/drivers/net/wan/dlci.c +index 48ab38a..02c939e 100644 +--- a/drivers/net/wan/dlci.c ++++ b/drivers/net/wan/dlci.c +@@ -385,21 +385,37 @@ static int dlci_del(struct dlci_add *dlci) + struct frad_local *flp; + struct net_device *master, *slave; + int err; ++ bool found = false; ++ ++ rtnl_lock(); + + /* validate slave device */ + master = __dev_get_by_name(&init_net, dlci->devname); +- if (!master) +- return -ENODEV; ++ if (!master) { ++ err = -ENODEV; ++ goto out; ++ } ++ ++ list_for_each_entry(dlp, &dlci_devs, list) { ++ if (dlp->master == master) { ++ found = true; ++ break; ++ } ++ } ++ if (!found) { ++ err = -ENODEV; ++ goto out; ++ } + + if (netif_running(master)) { +- return -EBUSY; ++ err = -EBUSY; ++ goto out; + } + + dlp = netdev_priv(master); + slave = dlp->slave; + flp = netdev_priv(slave); + +- rtnl_lock(); + err = (*flp->deassoc)(slave, master); + if (!err) { + list_del(&dlp->list); +@@ -408,8 +424,8 @@ static int dlci_del(struct dlci_add *dlci) + + dev_put(slave); + } ++out: + rtnl_unlock(); +- + return err; + } + +diff --git a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c +index 3b262ba..c41eb9d 100644 +--- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c ++++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c +@@ -3625,7 +3625,7 @@ static u16 ar9003_hw_ant_ctrl_chain_get(struct ath_hw *ah, + static void ar9003_hw_ant_ctrl_apply(struct ath_hw *ah, bool is2ghz) + { + int chain; +- u32 regval; ++ u32 regval, value; + u32 ant_div_ctl1; + static const u32 switch_chain_reg[AR9300_MAX_CHAINS] = { + AR_PHY_SWITCH_CHAIN_0, +@@ -3633,7 +3633,11 @@ static void ar9003_hw_ant_ctrl_apply(struct ath_hw *ah, bool is2ghz) + AR_PHY_SWITCH_CHAIN_2, + }; + +- u32 value = ar9003_hw_ant_ctrl_common_get(ah, is2ghz); ++ if (AR_SREV_9485(ah) && (ar9003_hw_get_rx_gain_idx(ah) == 0)) ++ ath9k_hw_cfg_output(ah, AR9300_EXT_LNA_CTL_GPIO_AR9485, ++ AR_GPIO_OUTPUT_MUX_AS_PCIE_ATTENTION_LED); ++ ++ value = ar9003_hw_ant_ctrl_common_get(ah, is2ghz); + + if (AR_SREV_9462(ah)) { + if (AR_SREV_9462_10(ah)) { +diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.h b/drivers/net/wireless/ath/ath9k/ar9003_phy.h +index 4114fe7..4e9b71b 100644 +--- a/drivers/net/wireless/ath/ath9k/ar9003_phy.h ++++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.h +@@ -334,6 +334,8 @@ + + #define AR_PHY_CCA_NOM_VAL_9330_2GHZ -118 + ++#define AR9300_EXT_LNA_CTL_GPIO_AR9485 9 ++ + /* + * AGC Field Definitions + */ +diff --git a/drivers/net/wireless/ath/ath9k/calib.c b/drivers/net/wireless/ath/ath9k/calib.c +index bcabfbf..5e522e4 100644 +--- a/drivers/net/wireless/ath/ath9k/calib.c ++++ b/drivers/net/wireless/ath/ath9k/calib.c +@@ -391,7 +391,6 @@ bool ath9k_hw_getnf(struct ath_hw *ah, struct ath9k_channel *chan) + + if (!caldata) { + chan->noisefloor = nf; +- ah->noise = ath9k_hw_getchan_noise(ah, chan); + return false; + } + +@@ -413,6 +412,7 @@ void ath9k_init_nfcal_hist_buffer(struct ath_hw *ah, + + ah->caldata->channel = chan->channel; + ah->caldata->channelFlags = chan->channelFlags & ~CHANNEL_CW_INT; ++ ah->caldata->chanmode = chan->chanmode; + h = ah->caldata->nfCalHist; + default_nf = ath9k_hw_get_default_nf(ah, chan); + for (i = 0; i < NUM_NF_READINGS; i++) { +diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c +index 2b8e957..c623527 100644 +--- a/drivers/net/wireless/ath/ath9k/hw.c ++++ b/drivers/net/wireless/ath/ath9k/hw.c +@@ -1540,7 +1540,8 @@ int ath9k_hw_reset(struct ath_hw *ah, struct ath9k_channel *chan, + if (caldata && + (chan->channel != caldata->channel || + (chan->channelFlags & ~CHANNEL_CW_INT) != +- (caldata->channelFlags & ~CHANNEL_CW_INT))) { ++ (caldata->channelFlags & ~CHANNEL_CW_INT) || ++ chan->chanmode != caldata->chanmode)) { + /* Operating channel changed, reset channel calibration data */ + memset(caldata, 0, sizeof(*caldata)); + ath9k_init_nfcal_hist_buffer(ah, chan); +diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h +index 0c65a09..dc774cd 100644 +--- a/drivers/net/wireless/ath/ath9k/hw.h ++++ b/drivers/net/wireless/ath/ath9k/hw.h +@@ -352,6 +352,7 @@ struct ath9k_rtt_hist { + struct ath9k_hw_cal_data { + u16 channel; + u32 channelFlags; ++ u32 chanmode; + int32_t CalValid; + int8_t iCoff; + int8_t qCoff; +diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c +index df3e27c..a59267a 100644 +--- a/drivers/net/wireless/ath/ath9k/main.c ++++ b/drivers/net/wireless/ath/ath9k/main.c +@@ -1688,13 +1688,6 @@ static int ath9k_config(struct ieee80211_hw *hw, u32 changed) + ath_update_survey_stats(sc); + spin_unlock_irqrestore(&common->cc_lock, flags); + +- /* +- * Preserve the current channel values, before updating +- * the same channel +- */ +- if (ah->curchan && (old_pos == pos)) +- ath9k_hw_getnf(ah, ah->curchan); +- + ath9k_cmn_update_ichannel(&sc->sc_ah->channels[pos], + curchan, conf->channel_type); + +diff --git a/drivers/net/wireless/b43/Kconfig b/drivers/net/wireless/b43/Kconfig +index b97a40e..36a7ce3 100644 +--- a/drivers/net/wireless/b43/Kconfig ++++ b/drivers/net/wireless/b43/Kconfig +@@ -28,12 +28,12 @@ config B43 + + config B43_BCMA + bool "Support for BCMA bus" +- depends on B43 && BCMA ++ depends on B43 && (BCMA = y || BCMA = B43) + default y + + config B43_SSB + bool +- depends on B43 && SSB ++ depends on B43 && (SSB = y || SSB = B43) + default y + + # Auto-select SSB PCI-HOST support, if possible +diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/rf.c b/drivers/net/wireless/rtlwifi/rtl8192cu/rf.c +index 1e851aa..17a8e96 100644 +--- a/drivers/net/wireless/rtlwifi/rtl8192cu/rf.c ++++ b/drivers/net/wireless/rtlwifi/rtl8192cu/rf.c +@@ -104,7 +104,7 @@ void rtl92cu_phy_rf6052_set_cck_txpower(struct ieee80211_hw *hw, + tx_agc[RF90_PATH_A] = 0x10101010; + tx_agc[RF90_PATH_B] = 0x10101010; + } else if (rtlpriv->dm.dynamic_txhighpower_lvl == +- TXHIGHPWRLEVEL_LEVEL1) { ++ TXHIGHPWRLEVEL_LEVEL2) { + tx_agc[RF90_PATH_A] = 0x00000000; + tx_agc[RF90_PATH_B] = 0x00000000; + } else{ +diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c b/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c +index 0984dcf..016ef86 100644 +--- a/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c ++++ b/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c +@@ -367,6 +367,7 @@ static struct usb_device_id rtl8192c_usb_ids[] = { + {RTL_USB_DEVICE(0x2001, 0x330a, rtl92cu_hal_cfg)}, /*D-Link-Alpha*/ + {RTL_USB_DEVICE(0x2019, 0xab2b, rtl92cu_hal_cfg)}, /*Planex -Abocom*/ + {RTL_USB_DEVICE(0x20f4, 0x624d, rtl92cu_hal_cfg)}, /*TRENDNet*/ ++ {RTL_USB_DEVICE(0x2357, 0x0100, rtl92cu_hal_cfg)}, /*TP-Link WN8200ND*/ + {RTL_USB_DEVICE(0x7392, 0x7822, rtl92cu_hal_cfg)}, /*Edimax -Edimax*/ + {} + }; +diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c +index cab24f7..f0c8c5d 100644 +--- a/drivers/pci/quirks.c ++++ b/drivers/pci/quirks.c +@@ -1123,6 +1123,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP700_SATA, quirk + DECLARE_PCI_FIXUP_RESUME_EARLY(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP700_SATA, quirk_amd_ide_mode); + DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_HUDSON2_SATA_IDE, quirk_amd_ide_mode); + DECLARE_PCI_FIXUP_RESUME_EARLY(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_HUDSON2_SATA_IDE, quirk_amd_ide_mode); ++DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, 0x7900, quirk_amd_ide_mode); ++DECLARE_PCI_FIXUP_RESUME_EARLY(PCI_VENDOR_ID_AMD, 0x7900, quirk_amd_ide_mode); + + /* + * Serverworks CSB5 IDE does not fully support native mode +diff --git a/drivers/rtc/rtc-rv3029c2.c b/drivers/rtc/rtc-rv3029c2.c +index ea09ff2..5317d94 100644 +--- a/drivers/rtc/rtc-rv3029c2.c ++++ b/drivers/rtc/rtc-rv3029c2.c +@@ -310,7 +310,7 @@ static int rv3029c2_rtc_i2c_set_alarm(struct i2c_client *client, + dev_dbg(&client->dev, "alarm IRQ armed\n"); + } else { + /* disable AIE irq */ +- ret = rv3029c2_rtc_i2c_alarm_set_irq(client, 1); ++ ret = rv3029c2_rtc_i2c_alarm_set_irq(client, 0); + if (ret) + return ret; + +diff --git a/drivers/s390/scsi/zfcp_aux.c b/drivers/s390/scsi/zfcp_aux.c +index 4f1b10b..3743ac9 100644 +--- a/drivers/s390/scsi/zfcp_aux.c ++++ b/drivers/s390/scsi/zfcp_aux.c +@@ -3,7 +3,7 @@ + * + * Module interface and handling of zfcp data structures. + * +- * Copyright IBM Corporation 2002, 2010 ++ * Copyright IBM Corp. 2002, 2013 + */ + + /* +@@ -23,6 +23,7 @@ + * Christof Schmitt + * Martin Petermann + * Sven Schuetz ++ * Steffen Maier + */ + + #define KMSG_COMPONENT "zfcp" +@@ -415,6 +416,8 @@ struct zfcp_adapter *zfcp_adapter_enqueue(struct ccw_device *ccw_device) + adapter->dma_parms.max_segment_size = ZFCP_QDIO_SBALE_LEN; + adapter->ccw_device->dev.dma_parms = &adapter->dma_parms; + ++ adapter->stat_read_buf_num = FSF_STATUS_READS_RECOM; ++ + if (!zfcp_scsi_adapter_register(adapter)) + return adapter; + +diff --git a/drivers/s390/scsi/zfcp_fsf.c b/drivers/s390/scsi/zfcp_fsf.c +index 8c849f0..8bfd579 100644 +--- a/drivers/s390/scsi/zfcp_fsf.c ++++ b/drivers/s390/scsi/zfcp_fsf.c +@@ -3,7 +3,7 @@ + * + * Implementation of FSF commands. + * +- * Copyright IBM Corporation 2002, 2010 ++ * Copyright IBM Corp. 2002, 2013 + */ + + #define KMSG_COMPONENT "zfcp" +@@ -455,11 +455,8 @@ static int zfcp_fsf_exchange_config_evaluate(struct zfcp_fsf_req *req) + + fc_host_port_name(shost) = nsp->fl_wwpn; + fc_host_node_name(shost) = nsp->fl_wwnn; +- fc_host_port_id(shost) = ntoh24(bottom->s_id); +- fc_host_speed(shost) = bottom->fc_link_speed; + fc_host_supported_classes(shost) = FC_COS_CLASS2 | FC_COS_CLASS3; + +- adapter->hydra_version = bottom->adapter_type; + adapter->timer_ticks = bottom->timer_interval & ZFCP_FSF_TIMER_INT_MASK; + adapter->stat_read_buf_num = max(bottom->status_read_buf_num, + (u16)FSF_STATUS_READS_RECOM); +@@ -467,6 +464,18 @@ static int zfcp_fsf_exchange_config_evaluate(struct zfcp_fsf_req *req) + if (fc_host_permanent_port_name(shost) == -1) + fc_host_permanent_port_name(shost) = fc_host_port_name(shost); + ++ zfcp_scsi_set_prot(adapter); ++ ++ /* no error return above here, otherwise must fix call chains */ ++ /* do not evaluate invalid fields */ ++ if (req->qtcb->header.fsf_status == FSF_EXCHANGE_CONFIG_DATA_INCOMPLETE) ++ return 0; ++ ++ fc_host_port_id(shost) = ntoh24(bottom->s_id); ++ fc_host_speed(shost) = bottom->fc_link_speed; ++ ++ adapter->hydra_version = bottom->adapter_type; ++ + switch (bottom->fc_topology) { + case FSF_TOPO_P2P: + adapter->peer_d_id = ntoh24(bottom->peer_d_id); +@@ -488,8 +497,6 @@ static int zfcp_fsf_exchange_config_evaluate(struct zfcp_fsf_req *req) + return -EIO; + } + +- zfcp_scsi_set_prot(adapter); +- + return 0; + } + +@@ -534,8 +541,14 @@ static void zfcp_fsf_exchange_config_data_handler(struct zfcp_fsf_req *req) + fc_host_port_type(shost) = FC_PORTTYPE_UNKNOWN; + adapter->hydra_version = 0; + ++ /* avoids adapter shutdown to be able to recognize ++ * events such as LINK UP */ ++ atomic_set_mask(ZFCP_STATUS_ADAPTER_XCONFIG_OK, ++ &adapter->status); + zfcp_fsf_link_down_info_eval(req, + &qtcb->header.fsf_status_qual.link_down_info); ++ if (zfcp_fsf_exchange_config_evaluate(req)) ++ return; + break; + default: + zfcp_erp_adapter_shutdown(adapter, 0, "fsecdh3"); +diff --git a/drivers/s390/scsi/zfcp_scsi.c b/drivers/s390/scsi/zfcp_scsi.c +index b79576b..7b35364 100644 +--- a/drivers/s390/scsi/zfcp_scsi.c ++++ b/drivers/s390/scsi/zfcp_scsi.c +@@ -3,7 +3,7 @@ + * + * Interface to Linux SCSI midlayer. + * +- * Copyright IBM Corporation 2002, 2010 ++ * Copyright IBM Corp. 2002, 2013 + */ + + #define KMSG_COMPONENT "zfcp" +@@ -311,8 +311,12 @@ static struct scsi_host_template zfcp_scsi_host_template = { + .proc_name = "zfcp", + .can_queue = 4096, + .this_id = -1, +- .sg_tablesize = 1, /* adjusted later */ +- .max_sectors = 8, /* adjusted later */ ++ .sg_tablesize = (((QDIO_MAX_ELEMENTS_PER_BUFFER - 1) ++ * ZFCP_QDIO_MAX_SBALS_PER_REQ) - 2), ++ /* GCD, adjusted later */ ++ .max_sectors = (((QDIO_MAX_ELEMENTS_PER_BUFFER - 1) ++ * ZFCP_QDIO_MAX_SBALS_PER_REQ) - 2) * 8, ++ /* GCD, adjusted later */ + .dma_boundary = ZFCP_QDIO_SBALE_LEN - 1, + .cmd_per_lun = 1, + .use_clustering = 1, +diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c +index 7c471eb..fc5a2ef 100644 +--- a/drivers/scsi/megaraid/megaraid_sas_base.c ++++ b/drivers/scsi/megaraid/megaraid_sas_base.c +@@ -4886,10 +4886,12 @@ megasas_mgmt_fw_ioctl(struct megasas_instance *instance, + sense, sense_handle); + } + +- for (i = 0; i < ioc->sge_count && kbuff_arr[i]; i++) { +- dma_free_coherent(&instance->pdev->dev, +- kern_sge32[i].length, +- kbuff_arr[i], kern_sge32[i].phys_addr); ++ for (i = 0; i < ioc->sge_count; i++) { ++ if (kbuff_arr[i]) ++ dma_free_coherent(&instance->pdev->dev, ++ kern_sge32[i].length, ++ kbuff_arr[i], ++ kern_sge32[i].phys_addr); + } + + megasas_return_cmd(instance, cmd); +diff --git a/drivers/scsi/mpt2sas/mpt2sas_base.c b/drivers/scsi/mpt2sas/mpt2sas_base.c +index 17de348..a11a909 100644 +--- a/drivers/scsi/mpt2sas/mpt2sas_base.c ++++ b/drivers/scsi/mpt2sas/mpt2sas_base.c +@@ -79,10 +79,6 @@ static int msix_disable = -1; + module_param(msix_disable, int, 0); + MODULE_PARM_DESC(msix_disable, " disable msix routed interrupts (default=0)"); + +-static int missing_delay[2] = {-1, -1}; +-module_param_array(missing_delay, int, NULL, 0); +-MODULE_PARM_DESC(missing_delay, " device missing delay , io missing delay"); +- + static int mpt2sas_fwfault_debug; + MODULE_PARM_DESC(mpt2sas_fwfault_debug, " enable detection of firmware fault " + "and halt firmware - (default=0)"); +@@ -2104,7 +2100,7 @@ _base_display_ioc_capabilities(struct MPT2SAS_ADAPTER *ioc) + } + + /** +- * _base_update_missing_delay - change the missing delay timers ++ * mpt2sas_base_update_missing_delay - change the missing delay timers + * @ioc: per adapter object + * @device_missing_delay: amount of time till device is reported missing + * @io_missing_delay: interval IO is returned when there is a missing device +@@ -2115,8 +2111,8 @@ _base_display_ioc_capabilities(struct MPT2SAS_ADAPTER *ioc) + * delay, as well as the io missing delay. This should be called at driver + * load time. + */ +-static void +-_base_update_missing_delay(struct MPT2SAS_ADAPTER *ioc, ++void ++mpt2sas_base_update_missing_delay(struct MPT2SAS_ADAPTER *ioc, + u16 device_missing_delay, u8 io_missing_delay) + { + u16 dmd, dmd_new, dmd_orignal; +@@ -4302,9 +4298,6 @@ mpt2sas_base_attach(struct MPT2SAS_ADAPTER *ioc) + if (r) + goto out_free_resources; + +- if (missing_delay[0] != -1 && missing_delay[1] != -1) +- _base_update_missing_delay(ioc, missing_delay[0], +- missing_delay[1]); + + return 0; + +diff --git a/drivers/scsi/mpt2sas/mpt2sas_base.h b/drivers/scsi/mpt2sas/mpt2sas_base.h +index 3c3babc..aa4daf6 100644 +--- a/drivers/scsi/mpt2sas/mpt2sas_base.h ++++ b/drivers/scsi/mpt2sas/mpt2sas_base.h +@@ -1029,6 +1029,9 @@ void mpt2sas_base_validate_event_type(struct MPT2SAS_ADAPTER *ioc, u32 *event_ty + + void mpt2sas_halt_firmware(struct MPT2SAS_ADAPTER *ioc); + ++void mpt2sas_base_update_missing_delay(struct MPT2SAS_ADAPTER *ioc, ++ u16 device_missing_delay, u8 io_missing_delay); ++ + int mpt2sas_port_enable(struct MPT2SAS_ADAPTER *ioc); + + /* scsih shared API */ +diff --git a/drivers/scsi/mpt2sas/mpt2sas_scsih.c b/drivers/scsi/mpt2sas/mpt2sas_scsih.c +index 2824a90..987c6d6 100644 +--- a/drivers/scsi/mpt2sas/mpt2sas_scsih.c ++++ b/drivers/scsi/mpt2sas/mpt2sas_scsih.c +@@ -101,6 +101,10 @@ static ushort max_sectors = 0xFFFF; + module_param(max_sectors, ushort, 0); + MODULE_PARM_DESC(max_sectors, "max sectors, range 64 to 8192 default=8192"); + ++static int missing_delay[2] = {-1, -1}; ++module_param_array(missing_delay, int, NULL, 0); ++MODULE_PARM_DESC(missing_delay, " device missing delay , io missing delay"); ++ + /* scsi-mid layer global parmeter is max_report_luns, which is 511 */ + #define MPT2SAS_MAX_LUN (16895) + static int max_lun = MPT2SAS_MAX_LUN; +@@ -3930,11 +3934,7 @@ _scsih_qcmd_lck(struct scsi_cmnd *scmd, void (*done)(struct scsi_cmnd *)) + else + mpi_control |= MPI2_SCSIIO_CONTROL_SIMPLEQ; + } else +-/* MPI Revision I (UNIT = 0xA) - removed MPI2_SCSIIO_CONTROL_UNTAGGED */ +-/* mpi_control |= MPI2_SCSIIO_CONTROL_UNTAGGED; +- */ +- mpi_control |= (0x500); +- ++ mpi_control |= MPI2_SCSIIO_CONTROL_SIMPLEQ; + } else + mpi_control |= MPI2_SCSIIO_CONTROL_SIMPLEQ; + /* Make sure Device is not raid volume. +@@ -7006,11 +7006,14 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + struct _sas_device *sas_device; + struct _sas_node *expander_device; + static struct _raid_device *raid_device; ++ u8 retry_count; + + printk(MPT2SAS_INFO_FMT "scan devices: start\n", ioc->name); + + _scsih_sas_host_refresh(ioc); + ++ printk(MPT2SAS_INFO_FMT "\tscan devices: expanders start\n", ++ ioc->name); + /* expanders */ + handle = 0xFFFF; + while (!(mpt2sas_config_get_expander_pg0(ioc, &mpi_reply, &expander_pg0, +@@ -7019,19 +7022,39 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + MPI2_IOCSTATUS_MASK; + if (ioc_status == MPI2_IOCSTATUS_CONFIG_INVALID_PAGE) + break; ++ if (ioc_status != MPI2_IOCSTATUS_SUCCESS) { ++ printk(MPT2SAS_INFO_FMT "\tbreak from expander scan: " ++ "ioc_status(0x%04x), loginfo(0x%08x)\n", ++ ioc->name, ioc_status, ++ le32_to_cpu(mpi_reply.IOCLogInfo)); ++ break; ++ } + handle = le16_to_cpu(expander_pg0.DevHandle); + expander_device = mpt2sas_scsih_expander_find_by_sas_address( + ioc, le64_to_cpu(expander_pg0.SASAddress)); + if (expander_device) + _scsih_refresh_expander_links(ioc, expander_device, + handle); +- else ++ else { ++ printk(MPT2SAS_INFO_FMT "\tBEFORE adding expander: " ++ "handle (0x%04x), sas_addr(0x%016llx)\n", ++ ioc->name, handle, (unsigned long long) ++ le64_to_cpu(expander_pg0.SASAddress)); + _scsih_expander_add(ioc, handle); ++ printk(MPT2SAS_INFO_FMT "\tAFTER adding expander: " ++ "handle (0x%04x), sas_addr(0x%016llx)\n", ++ ioc->name, handle, (unsigned long long) ++ le64_to_cpu(expander_pg0.SASAddress)); ++ } + } + ++ printk(MPT2SAS_INFO_FMT "\tscan devices: expanders complete\n", ++ ioc->name); ++ + if (!ioc->ir_firmware) + goto skip_to_sas; + ++ printk(MPT2SAS_INFO_FMT "\tscan devices phys disk start\n", ioc->name); + /* phys disk */ + phys_disk_num = 0xFF; + while (!(mpt2sas_config_get_phys_disk_pg0(ioc, &mpi_reply, +@@ -7041,6 +7064,13 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + MPI2_IOCSTATUS_MASK; + if (ioc_status == MPI2_IOCSTATUS_CONFIG_INVALID_PAGE) + break; ++ if (ioc_status != MPI2_IOCSTATUS_SUCCESS) { ++ printk(MPT2SAS_INFO_FMT "\tbreak from phys disk scan:" ++ "ioc_status(0x%04x), loginfo(0x%08x)\n", ++ ioc->name, ioc_status, ++ le32_to_cpu(mpi_reply.IOCLogInfo)); ++ break; ++ } + phys_disk_num = pd_pg0.PhysDiskNum; + handle = le16_to_cpu(pd_pg0.DevHandle); + sas_device = _scsih_sas_device_find_by_handle(ioc, handle); +@@ -7050,17 +7080,46 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + &sas_device_pg0, MPI2_SAS_DEVICE_PGAD_FORM_HANDLE, + handle) != 0) + continue; ++ ioc_status = le16_to_cpu(mpi_reply.IOCStatus) & ++ MPI2_IOCSTATUS_MASK; ++ if (ioc_status != MPI2_IOCSTATUS_SUCCESS) { ++ printk(MPT2SAS_INFO_FMT "\tbreak from phys disk scan " ++ "ioc_status(0x%04x), loginfo(0x%08x)\n", ++ ioc->name, ioc_status, ++ le32_to_cpu(mpi_reply.IOCLogInfo)); ++ break; ++ } + parent_handle = le16_to_cpu(sas_device_pg0.ParentDevHandle); + if (!_scsih_get_sas_address(ioc, parent_handle, + &sas_address)) { ++ printk(MPT2SAS_INFO_FMT "\tBEFORE adding phys disk: " ++ " handle (0x%04x), sas_addr(0x%016llx)\n", ++ ioc->name, handle, (unsigned long long) ++ le64_to_cpu(sas_device_pg0.SASAddress)); + mpt2sas_transport_update_links(ioc, sas_address, + handle, sas_device_pg0.PhyNum, + MPI2_SAS_NEG_LINK_RATE_1_5); + set_bit(handle, ioc->pd_handles); +- _scsih_add_device(ioc, handle, 0, 1); ++ retry_count = 0; ++ /* This will retry adding the end device. ++ * _scsih_add_device() will decide on retries and ++ * return "1" when it should be retried ++ */ ++ while (_scsih_add_device(ioc, handle, retry_count++, ++ 1)) { ++ ssleep(1); ++ } ++ printk(MPT2SAS_INFO_FMT "\tAFTER adding phys disk: " ++ " handle (0x%04x), sas_addr(0x%016llx)\n", ++ ioc->name, handle, (unsigned long long) ++ le64_to_cpu(sas_device_pg0.SASAddress)); + } + } + ++ printk(MPT2SAS_INFO_FMT "\tscan devices: phys disk complete\n", ++ ioc->name); ++ ++ printk(MPT2SAS_INFO_FMT "\tscan devices: volumes start\n", ioc->name); + /* volumes */ + handle = 0xFFFF; + while (!(mpt2sas_config_get_raid_volume_pg1(ioc, &mpi_reply, +@@ -7069,6 +7128,13 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + MPI2_IOCSTATUS_MASK; + if (ioc_status == MPI2_IOCSTATUS_CONFIG_INVALID_PAGE) + break; ++ if (ioc_status != MPI2_IOCSTATUS_SUCCESS) { ++ printk(MPT2SAS_INFO_FMT "\tbreak from volume scan: " ++ "ioc_status(0x%04x), loginfo(0x%08x)\n", ++ ioc->name, ioc_status, ++ le32_to_cpu(mpi_reply.IOCLogInfo)); ++ break; ++ } + handle = le16_to_cpu(volume_pg1.DevHandle); + raid_device = _scsih_raid_device_find_by_wwid(ioc, + le64_to_cpu(volume_pg1.WWID)); +@@ -7078,18 +7144,38 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + &volume_pg0, MPI2_RAID_VOLUME_PGAD_FORM_HANDLE, handle, + sizeof(Mpi2RaidVolPage0_t))) + continue; ++ ioc_status = le16_to_cpu(mpi_reply.IOCStatus) & ++ MPI2_IOCSTATUS_MASK; ++ if (ioc_status != MPI2_IOCSTATUS_SUCCESS) { ++ printk(MPT2SAS_INFO_FMT "\tbreak from volume scan: " ++ "ioc_status(0x%04x), loginfo(0x%08x)\n", ++ ioc->name, ioc_status, ++ le32_to_cpu(mpi_reply.IOCLogInfo)); ++ break; ++ } + if (volume_pg0.VolumeState == MPI2_RAID_VOL_STATE_OPTIMAL || + volume_pg0.VolumeState == MPI2_RAID_VOL_STATE_ONLINE || + volume_pg0.VolumeState == MPI2_RAID_VOL_STATE_DEGRADED) { + memset(&element, 0, sizeof(Mpi2EventIrConfigElement_t)); + element.ReasonCode = MPI2_EVENT_IR_CHANGE_RC_ADDED; + element.VolDevHandle = volume_pg1.DevHandle; ++ printk(MPT2SAS_INFO_FMT "\tBEFORE adding volume: " ++ " handle (0x%04x)\n", ioc->name, ++ volume_pg1.DevHandle); + _scsih_sas_volume_add(ioc, &element); ++ printk(MPT2SAS_INFO_FMT "\tAFTER adding volume: " ++ " handle (0x%04x)\n", ioc->name, ++ volume_pg1.DevHandle); + } + } + ++ printk(MPT2SAS_INFO_FMT "\tscan devices: volumes complete\n", ++ ioc->name); ++ + skip_to_sas: + ++ printk(MPT2SAS_INFO_FMT "\tscan devices: end devices start\n", ++ ioc->name); + /* sas devices */ + handle = 0xFFFF; + while (!(mpt2sas_config_get_sas_device_pg0(ioc, &mpi_reply, +@@ -7099,6 +7185,13 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + MPI2_IOCSTATUS_MASK; + if (ioc_status == MPI2_IOCSTATUS_CONFIG_INVALID_PAGE) + break; ++ if (ioc_status != MPI2_IOCSTATUS_SUCCESS) { ++ printk(MPT2SAS_INFO_FMT "\tbreak from end device scan:" ++ " ioc_status(0x%04x), loginfo(0x%08x)\n", ++ ioc->name, ioc_status, ++ le32_to_cpu(mpi_reply.IOCLogInfo)); ++ break; ++ } + handle = le16_to_cpu(sas_device_pg0.DevHandle); + if (!(_scsih_is_end_device( + le32_to_cpu(sas_device_pg0.DeviceInfo)))) +@@ -7109,12 +7202,31 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc) + continue; + parent_handle = le16_to_cpu(sas_device_pg0.ParentDevHandle); + if (!_scsih_get_sas_address(ioc, parent_handle, &sas_address)) { ++ printk(MPT2SAS_INFO_FMT "\tBEFORE adding end device: " ++ "handle (0x%04x), sas_addr(0x%016llx)\n", ++ ioc->name, handle, (unsigned long long) ++ le64_to_cpu(sas_device_pg0.SASAddress)); + mpt2sas_transport_update_links(ioc, sas_address, handle, + sas_device_pg0.PhyNum, MPI2_SAS_NEG_LINK_RATE_1_5); +- _scsih_add_device(ioc, handle, 0, 0); ++ retry_count = 0; ++ /* This will retry adding the end device. ++ * _scsih_add_device() will decide on retries and ++ * return "1" when it should be retried ++ */ ++ while (_scsih_add_device(ioc, handle, retry_count++, ++ 0)) { ++ ssleep(1); ++ } ++ printk(MPT2SAS_INFO_FMT "\tAFTER adding end device: " ++ "handle (0x%04x), sas_addr(0x%016llx)\n", ++ ioc->name, handle, (unsigned long long) ++ le64_to_cpu(sas_device_pg0.SASAddress)); + } + } + ++ printk(MPT2SAS_INFO_FMT "\tscan devices: end devices complete\n", ++ ioc->name); ++ + printk(MPT2SAS_INFO_FMT "scan devices: complete\n", ioc->name); + } + +@@ -7206,7 +7318,9 @@ _firmware_event_work(struct work_struct *work) + case MPT2SAS_PORT_ENABLE_COMPLETE: + ioc->start_scan = 0; + +- ++ if (missing_delay[0] != -1 && missing_delay[1] != -1) ++ mpt2sas_base_update_missing_delay(ioc, missing_delay[0], ++ missing_delay[1]); + + dewtprintk(ioc, printk(MPT2SAS_INFO_FMT "port enable: complete " + "from worker thread\n", ioc->name)); +diff --git a/drivers/scsi/osd/osd_uld.c b/drivers/scsi/osd/osd_uld.c +index d4ed9eb..caac1b2 100644 +--- a/drivers/scsi/osd/osd_uld.c ++++ b/drivers/scsi/osd/osd_uld.c +@@ -465,7 +465,7 @@ static int osd_probe(struct device *dev) + oud->class_dev.class = &osd_uld_class; + oud->class_dev.parent = dev; + oud->class_dev.release = __remove; +- error = dev_set_name(&oud->class_dev, disk->disk_name); ++ error = dev_set_name(&oud->class_dev, "%s", disk->disk_name); + if (error) { + OSD_ERR("dev_set_name failed => %d\n", error); + goto err_put_cdev; +diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c +index f44d633..6dace1a 100644 +--- a/drivers/scsi/sd.c ++++ b/drivers/scsi/sd.c +@@ -138,6 +138,7 @@ sd_store_cache_type(struct device *dev, struct device_attribute *attr, + char *buffer_data; + struct scsi_mode_data data; + struct scsi_sense_hdr sshdr; ++ static const char temp[] = "temporary "; + int len; + + if (sdp->type != TYPE_DISK) +@@ -146,6 +147,13 @@ sd_store_cache_type(struct device *dev, struct device_attribute *attr, + * it's not worth the risk */ + return -EINVAL; + ++ if (strncmp(buf, temp, sizeof(temp) - 1) == 0) { ++ buf += sizeof(temp) - 1; ++ sdkp->cache_override = 1; ++ } else { ++ sdkp->cache_override = 0; ++ } ++ + for (i = 0; i < ARRAY_SIZE(sd_cache_types); i++) { + len = strlen(sd_cache_types[i]); + if (strncmp(sd_cache_types[i], buf, len) == 0 && +@@ -158,6 +166,13 @@ sd_store_cache_type(struct device *dev, struct device_attribute *attr, + return -EINVAL; + rcd = ct & 0x01 ? 1 : 0; + wce = ct & 0x02 ? 1 : 0; ++ ++ if (sdkp->cache_override) { ++ sdkp->WCE = wce; ++ sdkp->RCD = rcd; ++ return count; ++ } ++ + if (scsi_mode_sense(sdp, 0x08, 8, buffer, sizeof(buffer), SD_TIMEOUT, + SD_MAX_RETRIES, &data, NULL)) + return -EINVAL; +@@ -2037,6 +2052,10 @@ sd_read_cache_type(struct scsi_disk *sdkp, unsigned char *buffer) + int old_rcd = sdkp->RCD; + int old_dpofua = sdkp->DPOFUA; + ++ ++ if (sdkp->cache_override) ++ return; ++ + first_len = 4; + if (sdp->skip_ms_page_8) { + if (sdp->type == TYPE_RBC) +@@ -2518,6 +2537,7 @@ static void sd_probe_async(void *data, async_cookie_t cookie) + sdkp->capacity = 0; + sdkp->media_present = 1; + sdkp->write_prot = 0; ++ sdkp->cache_override = 0; + sdkp->WCE = 0; + sdkp->RCD = 0; + sdkp->ATO = 0; +diff --git a/drivers/scsi/sd.h b/drivers/scsi/sd.h +index 4163f29..e3e3cd2 100644 +--- a/drivers/scsi/sd.h ++++ b/drivers/scsi/sd.h +@@ -64,6 +64,7 @@ struct scsi_disk { + u8 protection_type;/* Data Integrity Field */ + u8 provisioning_mode; + unsigned ATO : 1; /* state of disk ATO bit */ ++ unsigned cache_override : 1; /* temp override of WCE,RCD */ + unsigned WCE : 1; /* state of disk WCE bit */ + unsigned RCD : 1; /* state of disk RCD bit, unused */ + unsigned DPOFUA : 1; /* state of disk DPOFUA bit */ +diff --git a/drivers/staging/zram/zram_drv.c b/drivers/staging/zram/zram_drv.c +index 2594a31..926d483 100644 +--- a/drivers/staging/zram/zram_drv.c ++++ b/drivers/staging/zram/zram_drv.c +@@ -541,13 +541,20 @@ out: + */ + static inline int valid_io_request(struct zram *zram, struct bio *bio) + { +- if (unlikely( +- (bio->bi_sector >= (zram->disksize >> SECTOR_SHIFT)) || +- (bio->bi_sector & (ZRAM_SECTOR_PER_LOGICAL_BLOCK - 1)) || +- (bio->bi_size & (ZRAM_LOGICAL_BLOCK_SIZE - 1)))) { ++ u64 start, end, bound; ++ ++ /* unaligned request */ ++ if (unlikely(bio->bi_sector & (ZRAM_SECTOR_PER_LOGICAL_BLOCK - 1))) ++ return 0; ++ if (unlikely(bio->bi_size & (ZRAM_LOGICAL_BLOCK_SIZE - 1))) ++ return 0; + ++ start = bio->bi_sector; ++ end = start + (bio->bi_size >> SECTOR_SHIFT); ++ bound = zram->disksize >> SECTOR_SHIFT; ++ /* out of range range */ ++ if (unlikely(start >= bound || end >= bound || start > end)) + return 0; +- } + + /* I/O request is valid */ + return 1; +@@ -702,7 +709,9 @@ static void zram_slot_free_notify(struct block_device *bdev, + struct zram *zram; + + zram = bdev->bd_disk->private_data; ++ down_write(&zram->lock); + zram_free_page(zram, index); ++ up_write(&zram->lock); + zram_stat64_inc(zram, &zram->stats.notify_free); + } + +@@ -713,7 +722,7 @@ static const struct block_device_operations zram_devops = { + + static int create_device(struct zram *zram, int device_id) + { +- int ret = 0; ++ int ret = -ENOMEM; + + init_rwsem(&zram->lock); + init_rwsem(&zram->init_lock); +@@ -723,7 +732,6 @@ static int create_device(struct zram *zram, int device_id) + if (!zram->queue) { + pr_err("Error allocating disk queue for device %d\n", + device_id); +- ret = -ENOMEM; + goto out; + } + +@@ -733,11 +741,9 @@ static int create_device(struct zram *zram, int device_id) + /* gendisk structure */ + zram->disk = alloc_disk(1); + if (!zram->disk) { +- blk_cleanup_queue(zram->queue); + pr_warning("Error allocating disk structure for device %d\n", + device_id); +- ret = -ENOMEM; +- goto out; ++ goto out_free_queue; + } + + zram->disk->major = zram_major; +@@ -766,11 +772,17 @@ static int create_device(struct zram *zram, int device_id) + &zram_disk_attr_group); + if (ret < 0) { + pr_warning("Error creating sysfs group"); +- goto out; ++ goto out_free_disk; + } + + zram->init_done = 0; ++ return 0; + ++out_free_disk: ++ del_gendisk(zram->disk); ++ put_disk(zram->disk); ++out_free_queue: ++ blk_cleanup_queue(zram->queue); + out: + return ret; + } +@@ -846,9 +858,11 @@ static void __exit zram_exit(void) + for (i = 0; i < zram_num_devices; i++) { + zram = &zram_devices[i]; + ++ get_disk(zram->disk); + destroy_device(zram); + if (zram->init_done) + zram_reset_device(zram); ++ put_disk(zram->disk); + } + + unregister_blkdev(zram_major, "zram"); +diff --git a/drivers/staging/zram/zram_drv.h b/drivers/staging/zram/zram_drv.h +index e5cd246..87f2fec 100644 +--- a/drivers/staging/zram/zram_drv.h ++++ b/drivers/staging/zram/zram_drv.h +@@ -107,8 +107,9 @@ struct zram { + void *compress_buffer; + struct table *table; + spinlock_t stat64_lock; /* protect 64-bit stats */ +- struct rw_semaphore lock; /* protect compression buffers and table +- * against concurrent read and writes */ ++ struct rw_semaphore lock; /* protect compression buffers, table, ++ * 32bit stat counters against concurrent ++ * notifications, reads and writes */ + struct request_queue *queue; + struct gendisk *disk; + int init_done; +diff --git a/drivers/staging/zram/zram_sysfs.c b/drivers/staging/zram/zram_sysfs.c +index 0ea8ed2..1fae1e9 100644 +--- a/drivers/staging/zram/zram_sysfs.c ++++ b/drivers/staging/zram/zram_sysfs.c +@@ -186,10 +186,12 @@ static ssize_t mem_used_total_show(struct device *dev, + u64 val = 0; + struct zram *zram = dev_to_zram(dev); + ++ down_read(&zram->init_lock); + if (zram->init_done) { + val = xv_get_total_size_bytes(zram->mem_pool) + + ((u64)(zram->stats.pages_expand) << PAGE_SHIFT); + } ++ up_read(&zram->init_lock); + + return sprintf(buf, "%llu\n", val); + } +diff --git a/drivers/target/iscsi/iscsi_target_configfs.c b/drivers/target/iscsi/iscsi_target_configfs.c +index 83dcf49..3b80285 100644 +--- a/drivers/target/iscsi/iscsi_target_configfs.c ++++ b/drivers/target/iscsi/iscsi_target_configfs.c +@@ -419,7 +419,7 @@ static ssize_t __iscsi_##prefix##_store_##name( \ + if (!capable(CAP_SYS_ADMIN)) \ + return -EPERM; \ + \ +- snprintf(auth->name, PAGE_SIZE, "%s", page); \ ++ snprintf(auth->name, sizeof(auth->name), "%s", page); \ + if (!strncmp("NULL", auth->name, 4)) \ + auth->naf_flags &= ~flags; \ + else \ +diff --git a/drivers/tty/serial/8250_pci.c b/drivers/tty/serial/8250_pci.c +index 6986256..6c9bcdf 100644 +--- a/drivers/tty/serial/8250_pci.c ++++ b/drivers/tty/serial/8250_pci.c +@@ -4083,10 +4083,6 @@ static struct pci_device_id serial_pci_tbl[] = { + PCI_VENDOR_ID_IBM, 0x0299, + 0, 0, pbn_b0_bt_2_115200 }, + +- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9835, +- 0x1000, 0x0012, +- 0, 0, pbn_b0_bt_2_115200 }, +- + { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9901, + 0xA000, 0x1000, + 0, 0, pbn_b0_1_115200 }, +diff --git a/drivers/tty/serial/pch_uart.c b/drivers/tty/serial/pch_uart.c +index 8d70fbc..c0b4872 100644 +--- a/drivers/tty/serial/pch_uart.c ++++ b/drivers/tty/serial/pch_uart.c +@@ -940,22 +940,37 @@ static unsigned int dma_handle_tx(struct eg20t_port *priv) + static void pch_uart_err_ir(struct eg20t_port *priv, unsigned int lsr) + { + u8 fcr = ioread8(priv->membase + UART_FCR); ++ struct uart_port *port = &priv->port; ++ struct tty_struct *tty = tty_port_tty_get(&port->state->port); ++ char *error_msg[5] = {}; ++ int i = 0; + + /* Reset FIFO */ + fcr |= UART_FCR_CLEAR_RCVR; + iowrite8(fcr, priv->membase + UART_FCR); + + if (lsr & PCH_UART_LSR_ERR) +- dev_err(&priv->pdev->dev, "Error data in FIFO\n"); ++ error_msg[i++] = "Error data in FIFO\n"; + +- if (lsr & UART_LSR_FE) +- dev_err(&priv->pdev->dev, "Framing Error\n"); ++ if (lsr & UART_LSR_FE) { ++ port->icount.frame++; ++ error_msg[i++] = " Framing Error\n"; ++ } + +- if (lsr & UART_LSR_PE) +- dev_err(&priv->pdev->dev, "Parity Error\n"); ++ if (lsr & UART_LSR_PE) { ++ port->icount.parity++; ++ error_msg[i++] = " Parity Error\n"; ++ } + +- if (lsr & UART_LSR_OE) +- dev_err(&priv->pdev->dev, "Overrun Error\n"); ++ if (lsr & UART_LSR_OE) { ++ port->icount.overrun++; ++ error_msg[i++] = " Overrun Error\n"; ++ } ++ ++ if (tty == NULL) { ++ for (i = 0; error_msg[i] != NULL; i++) ++ dev_err(&priv->pdev->dev, error_msg[i]); ++ } + } + + static irqreturn_t pch_uart_interrupt(int irq, void *dev_id) +diff --git a/drivers/usb/gadget/f_mass_storage.c b/drivers/usb/gadget/f_mass_storage.c +index a5570b6..8d7fb6b 100644 +--- a/drivers/usb/gadget/f_mass_storage.c ++++ b/drivers/usb/gadget/f_mass_storage.c +@@ -512,6 +512,7 @@ static int fsg_set_halt(struct fsg_dev *fsg, struct usb_ep *ep) + /* Caller must hold fsg->lock */ + static void wakeup_thread(struct fsg_common *common) + { ++ smp_wmb(); /* ensure the write of bh->state is complete */ + /* Tell the main thread that something has happened */ + common->thread_wakeup_needed = 1; + if (common->thread_task) +@@ -731,6 +732,7 @@ static int sleep_thread(struct fsg_common *common) + } + __set_current_state(TASK_RUNNING); + common->thread_wakeup_needed = 0; ++ smp_rmb(); /* ensure the latest bh->state is visible */ + return rc; + } + +diff --git a/drivers/usb/host/xhci-mem.c b/drivers/usb/host/xhci-mem.c +index 5018e33..ec73541 100644 +--- a/drivers/usb/host/xhci-mem.c ++++ b/drivers/usb/host/xhci-mem.c +@@ -271,6 +271,10 @@ static struct xhci_container_ctx *xhci_alloc_container_ctx(struct xhci_hcd *xhci + ctx->size += CTX_SIZE(xhci->hcc_params); + + ctx->bytes = dma_pool_alloc(xhci->device_pool, flags, &ctx->dma); ++ if (!ctx->bytes) { ++ kfree(ctx); ++ return NULL; ++ } + memset(ctx->bytes, 0, ctx->size); + return ctx; + } +diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c +index 8ea37bc..b8365a7 100644 +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -159,8 +159,6 @@ static void option_instat_callback(struct urb *urb); + #define NOVATELWIRELESS_PRODUCT_HSPA_EMBEDDED_FULLSPEED 0x9000 + #define NOVATELWIRELESS_PRODUCT_HSPA_EMBEDDED_HIGHSPEED 0x9001 + #define NOVATELWIRELESS_PRODUCT_E362 0x9010 +-#define NOVATELWIRELESS_PRODUCT_G1 0xA001 +-#define NOVATELWIRELESS_PRODUCT_G1_M 0xA002 + #define NOVATELWIRELESS_PRODUCT_G2 0xA010 + #define NOVATELWIRELESS_PRODUCT_MC551 0xB001 + +@@ -744,8 +742,6 @@ static const struct usb_device_id option_ids[] = { + { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_MC547) }, + { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_EVDO_EMBEDDED_HIGHSPEED) }, + { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_HSPA_EMBEDDED_HIGHSPEED) }, +- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_G1) }, +- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_G1_M) }, + { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_G2) }, + /* Novatel Ovation MC551 a.k.a. Verizon USB551L */ + { USB_DEVICE_AND_INTERFACE_INFO(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_MC551, 0xff, 0xff, 0xff) }, +diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c +index 5535c3a..e8c4f0c 100644 +--- a/drivers/usb/serial/qcserial.c ++++ b/drivers/usb/serial/qcserial.c +@@ -37,7 +37,13 @@ static const struct usb_device_id id_table[] = { + {DEVICE_G1K(0x04da, 0x250c)}, /* Panasonic Gobi QDL device */ + {DEVICE_G1K(0x413c, 0x8172)}, /* Dell Gobi Modem device */ + {DEVICE_G1K(0x413c, 0x8171)}, /* Dell Gobi QDL device */ +- {DEVICE_G1K(0x1410, 0xa001)}, /* Novatel Gobi Modem device */ ++ {DEVICE_G1K(0x1410, 0xa001)}, /* Novatel/Verizon USB-1000 */ ++ {DEVICE_G1K(0x1410, 0xa002)}, /* Novatel Gobi Modem device */ ++ {DEVICE_G1K(0x1410, 0xa003)}, /* Novatel Gobi Modem device */ ++ {DEVICE_G1K(0x1410, 0xa004)}, /* Novatel Gobi Modem device */ ++ {DEVICE_G1K(0x1410, 0xa005)}, /* Novatel Gobi Modem device */ ++ {DEVICE_G1K(0x1410, 0xa006)}, /* Novatel Gobi Modem device */ ++ {DEVICE_G1K(0x1410, 0xa007)}, /* Novatel Gobi Modem device */ + {DEVICE_G1K(0x1410, 0xa008)}, /* Novatel Gobi QDL device */ + {DEVICE_G1K(0x0b05, 0x1776)}, /* Asus Gobi Modem device */ + {DEVICE_G1K(0x0b05, 0x1774)}, /* Asus Gobi QDL device */ +diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c +index 5855d17..9d8feac 100644 +--- a/drivers/video/console/vgacon.c ++++ b/drivers/video/console/vgacon.c +@@ -42,6 +42,7 @@ + #include <linux/kd.h> + #include <linux/slab.h> + #include <linux/vt_kern.h> ++#include <linux/sched.h> + #include <linux/selection.h> + #include <linux/spinlock.h> + #include <linux/ioport.h> +@@ -1124,11 +1125,15 @@ static int vgacon_do_font_op(struct vgastate *state,char *arg,int set,int ch512) + + if (arg) { + if (set) +- for (i = 0; i < cmapsz; i++) ++ for (i = 0; i < cmapsz; i++) { + vga_writeb(arg[i], charmap + i); ++ cond_resched(); ++ } + else +- for (i = 0; i < cmapsz; i++) ++ for (i = 0; i < cmapsz; i++) { + arg[i] = vga_readb(charmap + i); ++ cond_resched(); ++ } + + /* + * In 512-character mode, the character map is not contiguous if +@@ -1139,11 +1144,15 @@ static int vgacon_do_font_op(struct vgastate *state,char *arg,int set,int ch512) + charmap += 2 * cmapsz; + arg += cmapsz; + if (set) +- for (i = 0; i < cmapsz; i++) ++ for (i = 0; i < cmapsz; i++) { + vga_writeb(arg[i], charmap + i); ++ cond_resched(); ++ } + else +- for (i = 0; i < cmapsz; i++) ++ for (i = 0; i < cmapsz; i++) { + arg[i] = vga_readb(charmap + i); ++ cond_resched(); ++ } + } + } + +diff --git a/fs/block_dev.c b/fs/block_dev.c +index 53ab273..c103267 100644 +--- a/fs/block_dev.c ++++ b/fs/block_dev.c +@@ -55,17 +55,24 @@ static void bdev_inode_switch_bdi(struct inode *inode, + struct backing_dev_info *dst) + { + struct backing_dev_info *old = inode->i_data.backing_dev_info; ++ bool wakeup_bdi = false; + + if (unlikely(dst == old)) /* deadlock avoidance */ + return; + bdi_lock_two(&old->wb, &dst->wb); + spin_lock(&inode->i_lock); + inode->i_data.backing_dev_info = dst; +- if (inode->i_state & I_DIRTY) ++ if (inode->i_state & I_DIRTY) { ++ if (bdi_cap_writeback_dirty(dst) && !wb_has_dirty_io(&dst->wb)) ++ wakeup_bdi = true; + list_move(&inode->i_wb_list, &dst->wb.b_dirty); ++ } + spin_unlock(&inode->i_lock); + spin_unlock(&old->wb.list_lock); + spin_unlock(&dst->wb.list_lock); ++ ++ if (wakeup_bdi) ++ bdi_wakeup_thread_delayed(dst); + } + + sector_t blkdev_max_block(struct block_device *bdev) +diff --git a/fs/ceph/super.c b/fs/ceph/super.c +index b48f15f..de268a8 100644 +--- a/fs/ceph/super.c ++++ b/fs/ceph/super.c +@@ -70,8 +70,14 @@ static int ceph_statfs(struct dentry *dentry, struct kstatfs *buf) + /* + * express utilization in terms of large blocks to avoid + * overflow on 32-bit machines. ++ * ++ * NOTE: for the time being, we make bsize == frsize to humor ++ * not-yet-ancient versions of glibc that are broken. ++ * Someday, we will probably want to report a real block ++ * size... whatever that may mean for a network file system! + */ + buf->f_bsize = 1 << CEPH_BLOCK_SHIFT; ++ buf->f_frsize = 1 << CEPH_BLOCK_SHIFT; + buf->f_blocks = le64_to_cpu(st.kb) >> (CEPH_BLOCK_SHIFT-10); + buf->f_bfree = le64_to_cpu(st.kb_avail) >> (CEPH_BLOCK_SHIFT-10); + buf->f_bavail = le64_to_cpu(st.kb_avail) >> (CEPH_BLOCK_SHIFT-10); +@@ -79,7 +85,6 @@ static int ceph_statfs(struct dentry *dentry, struct kstatfs *buf) + buf->f_files = le64_to_cpu(st.num_objects); + buf->f_ffree = -1; + buf->f_namelen = NAME_MAX; +- buf->f_frsize = PAGE_CACHE_SIZE; + + /* leave fsid little-endian, regardless of host endianness */ + fsid = *(u64 *)(&monmap->fsid) ^ *((u64 *)&monmap->fsid + 1); +diff --git a/fs/ceph/super.h b/fs/ceph/super.h +index edcbf37..a097817 100644 +--- a/fs/ceph/super.h ++++ b/fs/ceph/super.h +@@ -21,7 +21,7 @@ + + /* large granularity for statfs utilization stats to facilitate + * large volume sizes on 32-bit machines. */ +-#define CEPH_BLOCK_SHIFT 20 /* 1 MB */ ++#define CEPH_BLOCK_SHIFT 22 /* 4 MB */ + #define CEPH_BLOCK (1 << CEPH_BLOCK_SHIFT) + + #define CEPH_MOUNT_OPT_DIRSTAT (1<<4) /* `cat dirname` for stats */ +diff --git a/fs/cifs/cifs_unicode.h b/fs/cifs/cifs_unicode.h +index 6d02fd5..aab18fe 100644 +--- a/fs/cifs/cifs_unicode.h ++++ b/fs/cifs/cifs_unicode.h +@@ -323,14 +323,14 @@ UniToupper(register wchar_t uc) + /* + * UniStrupr: Upper case a unicode string + */ +-static inline wchar_t * +-UniStrupr(register wchar_t *upin) ++static inline __le16 * ++UniStrupr(register __le16 *upin) + { +- register wchar_t *up; ++ register __le16 *up; + + up = upin; + while (*up) { /* For all characters */ +- *up = UniToupper(*up); ++ *up = cpu_to_le16(UniToupper(le16_to_cpu(*up))); + up++; + } + return upin; /* Return input pointer */ +diff --git a/fs/cifs/cifsencrypt.c b/fs/cifs/cifsencrypt.c +index 5d9b9ac..cdcd665 100644 +--- a/fs/cifs/cifsencrypt.c ++++ b/fs/cifs/cifsencrypt.c +@@ -394,7 +394,7 @@ static int calc_ntlmv2_hash(struct cifs_ses *ses, char *ntlmv2_hash, + int rc = 0; + int len; + char nt_hash[CIFS_NTHASH_SIZE]; +- wchar_t *user; ++ __le16 *user; + wchar_t *domain; + wchar_t *server; + +@@ -419,7 +419,7 @@ static int calc_ntlmv2_hash(struct cifs_ses *ses, char *ntlmv2_hash, + return rc; + } + +- /* convert ses->user_name to unicode and uppercase */ ++ /* convert ses->user_name to unicode */ + len = strlen(ses->user_name); + user = kmalloc(2 + (len * 2), GFP_KERNEL); + if (user == NULL) { +@@ -427,7 +427,7 @@ static int calc_ntlmv2_hash(struct cifs_ses *ses, char *ntlmv2_hash, + rc = -ENOMEM; + return rc; + } +- len = cifs_strtoUCS((__le16 *)user, ses->user_name, len, nls_cp); ++ len = cifs_strtoUCS(user, ses->user_name, len, nls_cp); + UniStrupr(user); + + rc = crypto_shash_update(&ses->server->secmech.sdeschmacmd5->shash, +diff --git a/fs/exec.c b/fs/exec.c +index 312e297..a2d0e51 100644 +--- a/fs/exec.c ++++ b/fs/exec.c +@@ -1159,13 +1159,6 @@ void setup_new_exec(struct linux_binprm * bprm) + set_dumpable(current->mm, suid_dumpable); + } + +- /* +- * Flush performance counters when crossing a +- * security domain: +- */ +- if (!get_dumpable(current->mm)) +- perf_event_exit_task(current); +- + /* An exec changes our domain. We are no longer part of the thread + group */ + +@@ -1229,6 +1222,15 @@ void install_exec_creds(struct linux_binprm *bprm) + + commit_creds(bprm->cred); + bprm->cred = NULL; ++ ++ /* ++ * Disable monitoring for regular users ++ * when executing setuid binaries. Must ++ * wait until new credentials are committed ++ * by commit_creds() above ++ */ ++ if (get_dumpable(current->mm) != SUID_DUMP_USER) ++ perf_event_exit_task(current); + /* + * cred_guard_mutex must be held at least to this point to prevent + * ptrace_attach() from altering our determination of the task's +diff --git a/fs/ext3/namei.c b/fs/ext3/namei.c +index 642dc6d..1272dfb 100644 +--- a/fs/ext3/namei.c ++++ b/fs/ext3/namei.c +@@ -585,11 +585,8 @@ static int htree_dirblock_to_tree(struct file *dir_file, + if (!ext3_check_dir_entry("htree_dirblock_to_tree", dir, de, bh, + (block<<EXT3_BLOCK_SIZE_BITS(dir->i_sb)) + +((char *)de - bh->b_data))) { +- /* On error, skip the f_pos to the next block. */ +- dir_file->f_pos = (dir_file->f_pos | +- (dir->i_sb->s_blocksize - 1)) + 1; +- brelse (bh); +- return count; ++ /* silently ignore the rest of the block */ ++ break; + } + ext3fs_dirhash(de->name, de->name_len, hinfo); + if ((hinfo->hash < start_hash) || +diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c +index ce0bc25..3e8fc80 100644 +--- a/fs/ext4/extents.c ++++ b/fs/ext4/extents.c +@@ -4801,7 +4801,7 @@ static int ext4_xattr_fiemap(struct inode *inode, + error = ext4_get_inode_loc(inode, &iloc); + if (error) + return error; +- physical = iloc.bh->b_blocknr << blockbits; ++ physical = (__u64)iloc.bh->b_blocknr << blockbits; + offset = EXT4_GOOD_OLD_INODE_SIZE + + EXT4_I(inode)->i_extra_isize; + physical += offset; +@@ -4809,7 +4809,7 @@ static int ext4_xattr_fiemap(struct inode *inode, + flags |= FIEMAP_EXTENT_DATA_INLINE; + brelse(iloc.bh); + } else { /* external block */ +- physical = EXT4_I(inode)->i_file_acl << blockbits; ++ physical = (__u64)EXT4_I(inode)->i_file_acl << blockbits; + length = inode->i_sb->s_blocksize; + } + +diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c +index 025b4b6..45778a6 100644 +--- a/fs/ext4/inode.c ++++ b/fs/ext4/inode.c +@@ -4335,7 +4335,7 @@ int ext4_getattr(struct vfsmount *mnt, struct dentry *dentry, + struct kstat *stat) + { + struct inode *inode; +- unsigned long delalloc_blocks; ++ unsigned long long delalloc_blocks; + + inode = dentry->d_inode; + generic_fillattr(inode, stat); +@@ -4352,7 +4352,7 @@ int ext4_getattr(struct vfsmount *mnt, struct dentry *dentry, + */ + delalloc_blocks = EXT4_I(inode)->i_reserved_data_blocks; + +- stat->blocks += (delalloc_blocks << inode->i_sb->s_blocksize_bits)>>9; ++ stat->blocks += delalloc_blocks << (inode->i_sb->s_blocksize_bits-9); + return 0; + } + +diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c +index 88f97e5..3ca3b7f 100644 +--- a/fs/ext4/namei.c ++++ b/fs/ext4/namei.c +@@ -585,11 +585,8 @@ static int htree_dirblock_to_tree(struct file *dir_file, + if (ext4_check_dir_entry(dir, NULL, de, bh, + (block<<EXT4_BLOCK_SIZE_BITS(dir->i_sb)) + + ((char *)de - bh->b_data))) { +- /* On error, skip the f_pos to the next block. */ +- dir_file->f_pos = (dir_file->f_pos | +- (dir->i_sb->s_blocksize - 1)) + 1; +- brelse(bh); +- return count; ++ /* silently ignore the rest of the block */ ++ break; + } + ext4fs_dirhash(de->name, de->name_len, hinfo); + if ((hinfo->hash < start_hash) || +diff --git a/fs/hpfs/map.c b/fs/hpfs/map.c +index a790821..ea3d1ca 100644 +--- a/fs/hpfs/map.c ++++ b/fs/hpfs/map.c +@@ -17,7 +17,8 @@ unsigned int *hpfs_map_bitmap(struct super_block *s, unsigned bmp_block, + struct quad_buffer_head *qbh, char *id) + { + secno sec; +- if (hpfs_sb(s)->sb_chk) if (bmp_block * 16384 > hpfs_sb(s)->sb_fs_size) { ++ unsigned n_bands = (hpfs_sb(s)->sb_fs_size + 0x3fff) >> 14; ++ if (hpfs_sb(s)->sb_chk) if (bmp_block >= n_bands) { + hpfs_error(s, "hpfs_map_bitmap called with bad parameter: %08x at %s", bmp_block, id); + return NULL; + } +diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c +index 98580a3..f760c15 100644 +--- a/fs/hpfs/super.c ++++ b/fs/hpfs/super.c +@@ -553,7 +553,13 @@ static int hpfs_fill_super(struct super_block *s, void *options, int silent) + sbi->sb_cp_table = NULL; + sbi->sb_c_bitmap = -1; + sbi->sb_max_fwd_alloc = 0xffffff; +- ++ ++ if (sbi->sb_fs_size >= 0x80000000) { ++ hpfs_error(s, "invalid size in superblock: %08x", ++ (unsigned)sbi->sb_fs_size); ++ goto bail4; ++ } ++ + /* Load bitmap directory */ + if (!(sbi->sb_bmp_dir = hpfs_load_bitmap_directory(s, le32_to_cpu(superblock->bitmaps)))) + goto bail4; +diff --git a/fs/jbd2/transaction.c b/fs/jbd2/transaction.c +index 6ac5bb1..18ea4d9 100644 +--- a/fs/jbd2/transaction.c ++++ b/fs/jbd2/transaction.c +@@ -470,10 +470,10 @@ int jbd2__journal_restart(handle_t *handle, int nblocks, gfp_t gfp_mask) + &transaction->t_outstanding_credits); + if (atomic_dec_and_test(&transaction->t_updates)) + wake_up(&journal->j_wait_updates); ++ tid = transaction->t_tid; + spin_unlock(&transaction->t_handle_lock); + + jbd_debug(2, "restarting handle %p\n", handle); +- tid = transaction->t_tid; + need_to_start = !tid_geq(journal->j_commit_request, tid); + read_unlock(&journal->j_state_lock); + if (need_to_start) +diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c +index ade5316..99625b8 100644 +--- a/fs/nfsd/nfs4xdr.c ++++ b/fs/nfsd/nfs4xdr.c +@@ -177,8 +177,8 @@ static __be32 *read_buf(struct nfsd4_compoundargs *argp, u32 nbytes) + */ + memcpy(p, argp->p, avail); + /* step to next page */ +- argp->p = page_address(argp->pagelist[0]); + argp->pagelist++; ++ argp->p = page_address(argp->pagelist[0]); + if (argp->pagelen < PAGE_SIZE) { + argp->end = argp->p + (argp->pagelen>>2); + argp->pagelen = 0; +diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c +index 0d5ea9c..bef187b 100644 +--- a/fs/ocfs2/xattr.c ++++ b/fs/ocfs2/xattr.c +@@ -6499,6 +6499,16 @@ static int ocfs2_reflink_xattr_inline(struct ocfs2_xattr_reflink *args) + } + + new_oi = OCFS2_I(args->new_inode); ++ /* ++ * Adjust extent record count to reserve space for extended attribute. ++ * Inline data count had been adjusted in ocfs2_duplicate_inline_data(). ++ */ ++ if (!(new_oi->ip_dyn_features & OCFS2_INLINE_DATA_FL) && ++ !(ocfs2_inode_is_fast_symlink(args->new_inode))) { ++ struct ocfs2_extent_list *el = &new_di->id2.i_list; ++ le16_add_cpu(&el->l_count, -(inline_size / ++ sizeof(struct ocfs2_extent_rec))); ++ } + spin_lock(&new_oi->ip_lock); + new_oi->ip_dyn_features |= OCFS2_HAS_XATTR_FL | OCFS2_INLINE_XATTR_FL; + new_di->i_dyn_features = cpu_to_le16(new_oi->ip_dyn_features); +diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c +index 6834920..aaebf0f 100644 +--- a/fs/ubifs/dir.c ++++ b/fs/ubifs/dir.c +@@ -357,31 +357,50 @@ static unsigned int vfs_dent_type(uint8_t type) + static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir) + { + int err, over = 0; ++ loff_t pos = file->f_pos; + struct qstr nm; + union ubifs_key key; + struct ubifs_dent_node *dent; + struct inode *dir = file->f_path.dentry->d_inode; + struct ubifs_info *c = dir->i_sb->s_fs_info; + +- dbg_gen("dir ino %lu, f_pos %#llx", dir->i_ino, file->f_pos); ++ dbg_gen("dir ino %lu, f_pos %#llx", dir->i_ino, pos); + +- if (file->f_pos > UBIFS_S_KEY_HASH_MASK || file->f_pos == 2) ++ if (pos > UBIFS_S_KEY_HASH_MASK || pos == 2) + /* + * The directory was seek'ed to a senseless position or there + * are no more entries. + */ + return 0; + ++ if (file->f_version == 0) { ++ /* ++ * The file was seek'ed, which means that @file->private_data ++ * is now invalid. This may also be just the first ++ * 'ubifs_readdir()' invocation, in which case ++ * @file->private_data is NULL, and the below code is ++ * basically a no-op. ++ */ ++ kfree(file->private_data); ++ file->private_data = NULL; ++ } ++ ++ /* ++ * 'generic_file_llseek()' unconditionally sets @file->f_version to ++ * zero, and we use this for detecting whether the file was seek'ed. ++ */ ++ file->f_version = 1; ++ + /* File positions 0 and 1 correspond to "." and ".." */ +- if (file->f_pos == 0) { ++ if (pos == 0) { + ubifs_assert(!file->private_data); + over = filldir(dirent, ".", 1, 0, dir->i_ino, DT_DIR); + if (over) + return 0; +- file->f_pos = 1; ++ file->f_pos = pos = 1; + } + +- if (file->f_pos == 1) { ++ if (pos == 1) { + ubifs_assert(!file->private_data); + over = filldir(dirent, "..", 2, 1, + parent_ino(file->f_path.dentry), DT_DIR); +@@ -397,7 +416,7 @@ static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir) + goto out; + } + +- file->f_pos = key_hash_flash(c, &dent->key); ++ file->f_pos = pos = key_hash_flash(c, &dent->key); + file->private_data = dent; + } + +@@ -405,17 +424,16 @@ static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir) + if (!dent) { + /* + * The directory was seek'ed to and is now readdir'ed. +- * Find the entry corresponding to @file->f_pos or the +- * closest one. ++ * Find the entry corresponding to @pos or the closest one. + */ +- dent_key_init_hash(c, &key, dir->i_ino, file->f_pos); ++ dent_key_init_hash(c, &key, dir->i_ino, pos); + nm.name = NULL; + dent = ubifs_tnc_next_ent(c, &key, &nm); + if (IS_ERR(dent)) { + err = PTR_ERR(dent); + goto out; + } +- file->f_pos = key_hash_flash(c, &dent->key); ++ file->f_pos = pos = key_hash_flash(c, &dent->key); + file->private_data = dent; + } + +@@ -427,7 +445,7 @@ static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir) + ubifs_inode(dir)->creat_sqnum); + + nm.len = le16_to_cpu(dent->nlen); +- over = filldir(dirent, dent->name, nm.len, file->f_pos, ++ over = filldir(dirent, dent->name, nm.len, pos, + le64_to_cpu(dent->inum), + vfs_dent_type(dent->type)); + if (over) +@@ -443,9 +461,17 @@ static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir) + } + + kfree(file->private_data); +- file->f_pos = key_hash_flash(c, &dent->key); ++ file->f_pos = pos = key_hash_flash(c, &dent->key); + file->private_data = dent; + cond_resched(); ++ ++ if (file->f_version == 0) ++ /* ++ * The file was seek'ed meanwhile, lets return and start ++ * reading direntries from the new position on the next ++ * invocation. ++ */ ++ return 0; + } + + out: +@@ -456,15 +482,13 @@ out: + + kfree(file->private_data); + file->private_data = NULL; ++ /* 2 is a special value indicating that there are no more direntries */ + file->f_pos = 2; + return 0; + } + +-/* If a directory is seeked, we have to free saved readdir() state */ + static loff_t ubifs_dir_llseek(struct file *file, loff_t offset, int origin) + { +- kfree(file->private_data); +- file->private_data = NULL; + return generic_file_llseek(file, offset, origin); + } + +diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h +index 9bab75f..ace0984 100644 +--- a/include/linux/cgroup.h ++++ b/include/linux/cgroup.h +@@ -531,16 +531,54 @@ static inline struct cgroup_subsys_state *cgroup_subsys_state( + return cgrp->subsys[subsys_id]; + } + +-/* +- * function to get the cgroup_subsys_state which allows for extra +- * rcu_dereference_check() conditions, such as locks used during the +- * cgroup_subsys::attach() methods. ++/** ++ * task_css_set_check - obtain a task's css_set with extra access conditions ++ * @task: the task to obtain css_set for ++ * @__c: extra condition expression to be passed to rcu_dereference_check() ++ * ++ * A task's css_set is RCU protected, initialized and exited while holding ++ * task_lock(), and can only be modified while holding both cgroup_mutex ++ * and task_lock() while the task is alive. This macro verifies that the ++ * caller is inside proper critical section and returns @task's css_set. ++ * ++ * The caller can also specify additional allowed conditions via @__c, such ++ * as locks used during the cgroup_subsys::attach() methods. ++ */ ++#define task_css_set_check(task, __c) \ ++ rcu_dereference_check((task)->cgroups, \ ++ lockdep_is_held(&(task)->alloc_lock) || \ ++ cgroup_lock_is_held() || (__c)) ++ ++/** ++ * task_subsys_state_check - obtain css for (task, subsys) w/ extra access conds ++ * @task: the target task ++ * @subsys_id: the target subsystem ID ++ * @__c: extra condition expression to be passed to rcu_dereference_check() ++ * ++ * Return the cgroup_subsys_state for the (@task, @subsys_id) pair. The ++ * synchronization rules are the same as task_css_set_check(). + */ + #define task_subsys_state_check(task, subsys_id, __c) \ +- rcu_dereference_check(task->cgroups->subsys[subsys_id], \ +- lockdep_is_held(&task->alloc_lock) || \ +- cgroup_lock_is_held() || (__c)) ++ task_css_set_check((task), (__c))->subsys[(subsys_id)] ++ ++/** ++ * task_css_set - obtain a task's css_set ++ * @task: the task to obtain css_set for ++ * ++ * See task_css_set_check(). ++ */ ++static inline struct css_set *task_css_set(struct task_struct *task) ++{ ++ return task_css_set_check(task, false); ++} + ++/** ++ * task_subsys_state - obtain css for (task, subsys) ++ * @task: the target task ++ * @subsys_id: the target subsystem ID ++ * ++ * See task_subsys_state_check(). ++ */ + static inline struct cgroup_subsys_state * + task_subsys_state(struct task_struct *task, int subsys_id) + { +diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h +index a2227f7..32697c1 100644 +--- a/include/linux/hugetlb.h ++++ b/include/linux/hugetlb.h +@@ -327,6 +327,17 @@ static inline unsigned hstate_index_to_shift(unsigned index) + return hstates[index].order + PAGE_SHIFT; + } + ++pgoff_t __basepage_index(struct page *page); ++ ++/* Return page->index in PAGE_SIZE units */ ++static inline pgoff_t basepage_index(struct page *page) ++{ ++ if (!PageCompound(page)) ++ return page->index; ++ ++ return __basepage_index(page); ++} ++ + #else + struct hstate {}; + #define alloc_huge_page_node(h, nid) NULL +@@ -345,6 +356,11 @@ static inline unsigned int pages_per_huge_page(struct hstate *h) + return 1; + } + #define hstate_index_to_shift(index) 0 ++ ++static inline pgoff_t basepage_index(struct page *page) ++{ ++ return page->index; ++} + #endif + + #endif /* _LINUX_HUGETLB_H */ +diff --git a/include/linux/nbd.h b/include/linux/nbd.h +index d146ca1..e6fe174 100644 +--- a/include/linux/nbd.h ++++ b/include/linux/nbd.h +@@ -68,6 +68,7 @@ struct nbd_device { + u64 bytesize; + pid_t pid; /* pid of nbd-client, if attached */ + int xmit_timeout; ++ int disconnect; /* a disconnect has been requested by user */ + }; + + #endif +diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h +index 9b9b2aa..3cfcfea 100644 +--- a/include/linux/perf_event.h ++++ b/include/linux/perf_event.h +@@ -819,8 +819,7 @@ struct perf_event { + /* mmap bits */ + struct mutex mmap_mutex; + atomic_t mmap_count; +- int mmap_locked; +- struct user_struct *mmap_user; ++ + struct ring_buffer *rb; + struct list_head rb_entry; + +diff --git a/kernel/events/core.c b/kernel/events/core.c +index 9f21915..8be9b746 100644 +--- a/kernel/events/core.c ++++ b/kernel/events/core.c +@@ -185,9 +185,6 @@ static void cpu_ctx_sched_in(struct perf_cpu_context *cpuctx, + static void update_context_time(struct perf_event_context *ctx); + static u64 perf_event_time(struct perf_event *event); + +-static void ring_buffer_attach(struct perf_event *event, +- struct ring_buffer *rb); +- + void __weak perf_event_print_debug(void) { } + + extern __weak const char *perf_pmu_name(void) +@@ -714,8 +711,18 @@ perf_lock_task_context(struct task_struct *task, int ctxn, unsigned long *flags) + { + struct perf_event_context *ctx; + +- rcu_read_lock(); + retry: ++ /* ++ * One of the few rules of preemptible RCU is that one cannot do ++ * rcu_read_unlock() while holding a scheduler (or nested) lock when ++ * part of the read side critical section was preemptible -- see ++ * rcu_read_unlock_special(). ++ * ++ * Since ctx->lock nests under rq->lock we must ensure the entire read ++ * side critical section is non-preemptible. ++ */ ++ preempt_disable(); ++ rcu_read_lock(); + ctx = rcu_dereference(task->perf_event_ctxp[ctxn]); + if (ctx) { + /* +@@ -731,6 +738,8 @@ retry: + raw_spin_lock_irqsave(&ctx->lock, *flags); + if (ctx != rcu_dereference(task->perf_event_ctxp[ctxn])) { + raw_spin_unlock_irqrestore(&ctx->lock, *flags); ++ rcu_read_unlock(); ++ preempt_enable(); + goto retry; + } + +@@ -740,6 +749,7 @@ retry: + } + } + rcu_read_unlock(); ++ preempt_enable(); + return ctx; + } + +@@ -1687,7 +1697,16 @@ static int __perf_event_enable(void *info) + struct perf_cpu_context *cpuctx = __get_cpu_context(ctx); + int err; + +- if (WARN_ON_ONCE(!ctx->is_active)) ++ /* ++ * There's a time window between 'ctx->is_active' check ++ * in perf_event_enable function and this place having: ++ * - IRQs on ++ * - ctx->lock unlocked ++ * ++ * where the task could be killed and 'ctx' deactivated ++ * by perf_event_exit_task. ++ */ ++ if (!ctx->is_active) + return -EINVAL; + + raw_spin_lock(&ctx->lock); +@@ -2939,6 +2958,7 @@ static void free_event_rcu(struct rcu_head *head) + } + + static void ring_buffer_put(struct ring_buffer *rb); ++static void ring_buffer_detach(struct perf_event *event, struct ring_buffer *rb); + + static void free_event(struct perf_event *event) + { +@@ -2962,8 +2982,22 @@ static void free_event(struct perf_event *event) + } + + if (event->rb) { +- ring_buffer_put(event->rb); +- event->rb = NULL; ++ struct ring_buffer *rb; ++ ++ /* ++ * Can happen when we close an event with re-directed output. ++ * ++ * Since we have a 0 refcount, perf_mmap_close() will skip ++ * over us; possibly making our ring_buffer_put() the last. ++ */ ++ mutex_lock(&event->mmap_mutex); ++ rb = event->rb; ++ if (rb) { ++ rcu_assign_pointer(event->rb, NULL); ++ ring_buffer_detach(event, rb); ++ ring_buffer_put(rb); /* could be last */ ++ } ++ mutex_unlock(&event->mmap_mutex); + } + + if (is_cgroup_event(event)) +@@ -3201,30 +3235,13 @@ static unsigned int perf_poll(struct file *file, poll_table *wait) + unsigned int events = POLL_HUP; + + /* +- * Race between perf_event_set_output() and perf_poll(): perf_poll() +- * grabs the rb reference but perf_event_set_output() overrides it. +- * Here is the timeline for two threads T1, T2: +- * t0: T1, rb = rcu_dereference(event->rb) +- * t1: T2, old_rb = event->rb +- * t2: T2, event->rb = new rb +- * t3: T2, ring_buffer_detach(old_rb) +- * t4: T1, ring_buffer_attach(rb1) +- * t5: T1, poll_wait(event->waitq) +- * +- * To avoid this problem, we grab mmap_mutex in perf_poll() +- * thereby ensuring that the assignment of the new ring buffer +- * and the detachment of the old buffer appear atomic to perf_poll() ++ * Pin the event->rb by taking event->mmap_mutex; otherwise ++ * perf_event_set_output() can swizzle our rb and make us miss wakeups. + */ + mutex_lock(&event->mmap_mutex); +- +- rcu_read_lock(); +- rb = rcu_dereference(event->rb); +- if (rb) { +- ring_buffer_attach(event, rb); ++ rb = event->rb; ++ if (rb) + events = atomic_xchg(&rb->poll, 0); +- } +- rcu_read_unlock(); +- + mutex_unlock(&event->mmap_mutex); + + poll_wait(file, &event->waitq, wait); +@@ -3538,16 +3555,12 @@ static void ring_buffer_attach(struct perf_event *event, + return; + + spin_lock_irqsave(&rb->event_lock, flags); +- if (!list_empty(&event->rb_entry)) +- goto unlock; +- +- list_add(&event->rb_entry, &rb->event_list); +-unlock: ++ if (list_empty(&event->rb_entry)) ++ list_add(&event->rb_entry, &rb->event_list); + spin_unlock_irqrestore(&rb->event_lock, flags); + } + +-static void ring_buffer_detach(struct perf_event *event, +- struct ring_buffer *rb) ++static void ring_buffer_detach(struct perf_event *event, struct ring_buffer *rb) + { + unsigned long flags; + +@@ -3566,13 +3579,10 @@ static void ring_buffer_wakeup(struct perf_event *event) + + rcu_read_lock(); + rb = rcu_dereference(event->rb); +- if (!rb) +- goto unlock; +- +- list_for_each_entry_rcu(event, &rb->event_list, rb_entry) +- wake_up_all(&event->waitq); +- +-unlock: ++ if (rb) { ++ list_for_each_entry_rcu(event, &rb->event_list, rb_entry) ++ wake_up_all(&event->waitq); ++ } + rcu_read_unlock(); + } + +@@ -3601,18 +3611,10 @@ static struct ring_buffer *ring_buffer_get(struct perf_event *event) + + static void ring_buffer_put(struct ring_buffer *rb) + { +- struct perf_event *event, *n; +- unsigned long flags; +- + if (!atomic_dec_and_test(&rb->refcount)) + return; + +- spin_lock_irqsave(&rb->event_lock, flags); +- list_for_each_entry_safe(event, n, &rb->event_list, rb_entry) { +- list_del_init(&event->rb_entry); +- wake_up_all(&event->waitq); +- } +- spin_unlock_irqrestore(&rb->event_lock, flags); ++ WARN_ON_ONCE(!list_empty(&rb->event_list)); + + call_rcu(&rb->rcu_head, rb_free_rcu); + } +@@ -3622,26 +3624,100 @@ static void perf_mmap_open(struct vm_area_struct *vma) + struct perf_event *event = vma->vm_file->private_data; + + atomic_inc(&event->mmap_count); ++ atomic_inc(&event->rb->mmap_count); + } + ++/* ++ * A buffer can be mmap()ed multiple times; either directly through the same ++ * event, or through other events by use of perf_event_set_output(). ++ * ++ * In order to undo the VM accounting done by perf_mmap() we need to destroy ++ * the buffer here, where we still have a VM context. This means we need ++ * to detach all events redirecting to us. ++ */ + static void perf_mmap_close(struct vm_area_struct *vma) + { + struct perf_event *event = vma->vm_file->private_data; + +- if (atomic_dec_and_mutex_lock(&event->mmap_count, &event->mmap_mutex)) { +- unsigned long size = perf_data_size(event->rb); +- struct user_struct *user = event->mmap_user; +- struct ring_buffer *rb = event->rb; ++ struct ring_buffer *rb = event->rb; ++ struct user_struct *mmap_user = rb->mmap_user; ++ int mmap_locked = rb->mmap_locked; ++ unsigned long size = perf_data_size(rb); ++ ++ atomic_dec(&rb->mmap_count); ++ ++ if (!atomic_dec_and_mutex_lock(&event->mmap_count, &event->mmap_mutex)) ++ return; ++ ++ /* Detach current event from the buffer. */ ++ rcu_assign_pointer(event->rb, NULL); ++ ring_buffer_detach(event, rb); ++ mutex_unlock(&event->mmap_mutex); ++ ++ /* If there's still other mmap()s of this buffer, we're done. */ ++ if (atomic_read(&rb->mmap_count)) { ++ ring_buffer_put(rb); /* can't be last */ ++ return; ++ } ++ ++ /* ++ * No other mmap()s, detach from all other events that might redirect ++ * into the now unreachable buffer. Somewhat complicated by the ++ * fact that rb::event_lock otherwise nests inside mmap_mutex. ++ */ ++again: ++ rcu_read_lock(); ++ list_for_each_entry_rcu(event, &rb->event_list, rb_entry) { ++ if (!atomic_long_inc_not_zero(&event->refcount)) { ++ /* ++ * This event is en-route to free_event() which will ++ * detach it and remove it from the list. ++ */ ++ continue; ++ } ++ rcu_read_unlock(); + +- atomic_long_sub((size >> PAGE_SHIFT) + 1, &user->locked_vm); +- vma->vm_mm->pinned_vm -= event->mmap_locked; +- rcu_assign_pointer(event->rb, NULL); +- ring_buffer_detach(event, rb); ++ mutex_lock(&event->mmap_mutex); ++ /* ++ * Check we didn't race with perf_event_set_output() which can ++ * swizzle the rb from under us while we were waiting to ++ * acquire mmap_mutex. ++ * ++ * If we find a different rb; ignore this event, a next ++ * iteration will no longer find it on the list. We have to ++ * still restart the iteration to make sure we're not now ++ * iterating the wrong list. ++ */ ++ if (event->rb == rb) { ++ rcu_assign_pointer(event->rb, NULL); ++ ring_buffer_detach(event, rb); ++ ring_buffer_put(rb); /* can't be last, we still have one */ ++ } + mutex_unlock(&event->mmap_mutex); ++ put_event(event); + +- ring_buffer_put(rb); +- free_uid(user); ++ /* ++ * Restart the iteration; either we're on the wrong list or ++ * destroyed its integrity by doing a deletion. ++ */ ++ goto again; + } ++ rcu_read_unlock(); ++ ++ /* ++ * It could be there's still a few 0-ref events on the list; they'll ++ * get cleaned up by free_event() -- they'll also still have their ++ * ref on the rb and will free it whenever they are done with it. ++ * ++ * Aside from that, this buffer is 'fully' detached and unmapped, ++ * undo the VM accounting. ++ */ ++ ++ atomic_long_sub((size >> PAGE_SHIFT) + 1, &mmap_user->locked_vm); ++ vma->vm_mm->pinned_vm -= mmap_locked; ++ free_uid(mmap_user); ++ ++ ring_buffer_put(rb); /* could be last */ + } + + static const struct vm_operations_struct perf_mmap_vmops = { +@@ -3691,12 +3767,24 @@ static int perf_mmap(struct file *file, struct vm_area_struct *vma) + return -EINVAL; + + WARN_ON_ONCE(event->ctx->parent_ctx); ++again: + mutex_lock(&event->mmap_mutex); + if (event->rb) { +- if (event->rb->nr_pages == nr_pages) +- atomic_inc(&event->rb->refcount); +- else ++ if (event->rb->nr_pages != nr_pages) { + ret = -EINVAL; ++ goto unlock; ++ } ++ ++ if (!atomic_inc_not_zero(&event->rb->mmap_count)) { ++ /* ++ * Raced against perf_mmap_close() through ++ * perf_event_set_output(). Try again, hope for better ++ * luck. ++ */ ++ mutex_unlock(&event->mmap_mutex); ++ goto again; ++ } ++ + goto unlock; + } + +@@ -3737,19 +3825,27 @@ static int perf_mmap(struct file *file, struct vm_area_struct *vma) + ret = -ENOMEM; + goto unlock; + } +- rcu_assign_pointer(event->rb, rb); ++ ++ atomic_set(&rb->mmap_count, 1); ++ rb->mmap_locked = extra; ++ rb->mmap_user = get_current_user(); + + atomic_long_add(user_extra, &user->locked_vm); +- event->mmap_locked = extra; +- event->mmap_user = get_current_user(); +- vma->vm_mm->pinned_vm += event->mmap_locked; ++ vma->vm_mm->pinned_vm += extra; ++ ++ ring_buffer_attach(event, rb); ++ rcu_assign_pointer(event->rb, rb); + + unlock: + if (!ret) + atomic_inc(&event->mmap_count); + mutex_unlock(&event->mmap_mutex); + +- vma->vm_flags |= VM_RESERVED; ++ /* ++ * Since pinned accounting is per vm we cannot allow fork() to copy our ++ * vma. ++ */ ++ vma->vm_flags |= VM_DONTCOPY | VM_RESERVED; + vma->vm_ops = &perf_mmap_vmops; + + return ret; +@@ -6114,6 +6210,8 @@ set: + if (atomic_read(&event->mmap_count)) + goto unlock; + ++ old_rb = event->rb; ++ + if (output_event) { + /* get the rb we want to redirect to */ + rb = ring_buffer_get(output_event); +@@ -6121,16 +6219,28 @@ set: + goto unlock; + } + +- old_rb = event->rb; +- rcu_assign_pointer(event->rb, rb); + if (old_rb) + ring_buffer_detach(event, old_rb); ++ ++ if (rb) ++ ring_buffer_attach(event, rb); ++ ++ rcu_assign_pointer(event->rb, rb); ++ ++ if (old_rb) { ++ ring_buffer_put(old_rb); ++ /* ++ * Since we detached before setting the new rb, so that we ++ * could attach the new rb, we could have missed a wakeup. ++ * Provide it now. ++ */ ++ wake_up_all(&event->waitq); ++ } ++ + ret = 0; + unlock: + mutex_unlock(&event->mmap_mutex); + +- if (old_rb) +- ring_buffer_put(old_rb); + out: + return ret; + } +@@ -6797,7 +6907,7 @@ inherit_task_group(struct perf_event *event, struct task_struct *parent, + * child. + */ + +- child_ctx = alloc_perf_context(event->pmu, child); ++ child_ctx = alloc_perf_context(parent_ctx->pmu, child); + if (!child_ctx) + return -ENOMEM; + +diff --git a/kernel/events/hw_breakpoint.c b/kernel/events/hw_breakpoint.c +index b7971d6..98ac24e 100644 +--- a/kernel/events/hw_breakpoint.c ++++ b/kernel/events/hw_breakpoint.c +@@ -147,7 +147,7 @@ fetch_bp_busy_slots(struct bp_busy_slots *slots, struct perf_event *bp, + return; + } + +- for_each_online_cpu(cpu) { ++ for_each_possible_cpu(cpu) { + unsigned int nr; + + nr = per_cpu(nr_cpu_bp_pinned[type], cpu); +@@ -233,7 +233,7 @@ toggle_bp_slot(struct perf_event *bp, bool enable, enum bp_type_idx type, + if (cpu >= 0) { + toggle_bp_task_slot(bp, cpu, enable, type, weight); + } else { +- for_each_online_cpu(cpu) ++ for_each_possible_cpu(cpu) + toggle_bp_task_slot(bp, cpu, enable, type, weight); + } + +diff --git a/kernel/events/internal.h b/kernel/events/internal.h +index 64568a6..a2101bb 100644 +--- a/kernel/events/internal.h ++++ b/kernel/events/internal.h +@@ -26,6 +26,10 @@ struct ring_buffer { + spinlock_t event_lock; + struct list_head event_list; + ++ atomic_t mmap_count; ++ unsigned long mmap_locked; ++ struct user_struct *mmap_user; ++ + struct perf_event_mmap_page *user_page; + void *data_pages[0]; + }; +diff --git a/kernel/futex.c b/kernel/futex.c +index 77bccfc..1d0538e 100644 +--- a/kernel/futex.c ++++ b/kernel/futex.c +@@ -60,6 +60,7 @@ + #include <linux/pid.h> + #include <linux/nsproxy.h> + #include <linux/ptrace.h> ++#include <linux/hugetlb.h> + + #include <asm/futex.h> + +@@ -363,7 +364,7 @@ again: + } else { + key->both.offset |= FUT_OFF_INODE; /* inode-based key */ + key->shared.inode = page_head->mapping->host; +- key->shared.pgoff = page_head->index; ++ key->shared.pgoff = basepage_index(page); + } + + get_futex_key_refs(key); +diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c +index 382a6bd..52bdd58 100644 +--- a/kernel/irq/manage.c ++++ b/kernel/irq/manage.c +@@ -539,9 +539,9 @@ int can_request_irq(unsigned int irq, unsigned long irqflags) + return 0; + + if (irq_settings_can_request(desc)) { +- if (desc->action) +- if (irqflags & desc->action->flags & IRQF_SHARED) +- canrequest =1; ++ if (!desc->action || ++ irqflags & desc->action->flags & IRQF_SHARED) ++ canrequest = 1; + } + irq_put_desc_unlock(desc, flags); + return canrequest; +diff --git a/kernel/printk.c b/kernel/printk.c +index c0d12ea..16688ec 100644 +--- a/kernel/printk.c ++++ b/kernel/printk.c +@@ -813,9 +813,9 @@ static int console_trylock_for_printk(unsigned int cpu) + } + } + printk_cpu = UINT_MAX; ++ raw_spin_unlock(&logbuf_lock); + if (wake) + up(&console_sem); +- raw_spin_unlock(&logbuf_lock); + return retval; + } + static const char recursion_bug_msg [] = +diff --git a/kernel/timer.c b/kernel/timer.c +index f2f71d7..f8b05a4 100644 +--- a/kernel/timer.c ++++ b/kernel/timer.c +@@ -145,9 +145,11 @@ static unsigned long round_jiffies_common(unsigned long j, int cpu, + /* now that we have rounded, subtract the extra skew again */ + j -= cpu * 3; + +- if (j <= jiffies) /* rounding ate our timeout entirely; */ +- return original; +- return j; ++ /* ++ * Make sure j is still in the future. Otherwise return the ++ * unmodified value. ++ */ ++ return time_is_after_jiffies(j) ? j : original; + } + + /** +diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c +index cb65454..7c75bbb 100644 +--- a/kernel/trace/trace_syscalls.c ++++ b/kernel/trace/trace_syscalls.c +@@ -303,6 +303,8 @@ void ftrace_syscall_enter(void *ignore, struct pt_regs *regs, long id) + struct syscall_metadata *sys_data; + struct ring_buffer_event *event; + struct ring_buffer *buffer; ++ unsigned long irq_flags; ++ int pc; + int size; + int syscall_nr; + +@@ -318,8 +320,11 @@ void ftrace_syscall_enter(void *ignore, struct pt_regs *regs, long id) + + size = sizeof(*entry) + sizeof(unsigned long) * sys_data->nb_args; + ++ local_save_flags(irq_flags); ++ pc = preempt_count(); ++ + event = trace_current_buffer_lock_reserve(&buffer, +- sys_data->enter_event->event.type, size, 0, 0); ++ sys_data->enter_event->event.type, size, irq_flags, pc); + if (!event) + return; + +@@ -329,7 +334,8 @@ void ftrace_syscall_enter(void *ignore, struct pt_regs *regs, long id) + + if (!filter_current_check_discard(buffer, sys_data->enter_event, + entry, event)) +- trace_current_buffer_unlock_commit(buffer, event, 0, 0); ++ trace_current_buffer_unlock_commit(buffer, event, ++ irq_flags, pc); + } + + void ftrace_syscall_exit(void *ignore, struct pt_regs *regs, long ret) +@@ -338,6 +344,8 @@ void ftrace_syscall_exit(void *ignore, struct pt_regs *regs, long ret) + struct syscall_metadata *sys_data; + struct ring_buffer_event *event; + struct ring_buffer *buffer; ++ unsigned long irq_flags; ++ int pc; + int syscall_nr; + + syscall_nr = syscall_get_nr(current, regs); +@@ -350,8 +358,12 @@ void ftrace_syscall_exit(void *ignore, struct pt_regs *regs, long ret) + if (!sys_data) + return; + ++ local_save_flags(irq_flags); ++ pc = preempt_count(); ++ + event = trace_current_buffer_lock_reserve(&buffer, +- sys_data->exit_event->event.type, sizeof(*entry), 0, 0); ++ sys_data->exit_event->event.type, sizeof(*entry), ++ irq_flags, pc); + if (!event) + return; + +@@ -361,7 +373,8 @@ void ftrace_syscall_exit(void *ignore, struct pt_regs *regs, long ret) + + if (!filter_current_check_discard(buffer, sys_data->exit_event, + entry, event)) +- trace_current_buffer_unlock_commit(buffer, event, 0, 0); ++ trace_current_buffer_unlock_commit(buffer, event, ++ irq_flags, pc); + } + + int reg_event_syscall_enter(struct ftrace_event_call *call) +diff --git a/mm/hugetlb.c b/mm/hugetlb.c +index 2dcd716..ddf2128 100644 +--- a/mm/hugetlb.c ++++ b/mm/hugetlb.c +@@ -679,6 +679,23 @@ int PageHuge(struct page *page) + } + EXPORT_SYMBOL_GPL(PageHuge); + ++pgoff_t __basepage_index(struct page *page) ++{ ++ struct page *page_head = compound_head(page); ++ pgoff_t index = page_index(page_head); ++ unsigned long compound_idx; ++ ++ if (!PageHuge(page_head)) ++ return page_index(page); ++ ++ if (compound_order(page_head) >= MAX_ORDER) ++ compound_idx = page_to_pfn(page) - page_to_pfn(page_head); ++ else ++ compound_idx = page - page_head; ++ ++ return (index << compound_order(page_head)) + compound_idx; ++} ++ + static struct page *alloc_fresh_huge_page_node(struct hstate *h, int nid) + { + struct page *page; +diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c +index a0b6c50..dd7c019 100644 +--- a/net/bluetooth/l2cap_core.c ++++ b/net/bluetooth/l2cap_core.c +@@ -1737,6 +1737,9 @@ static struct sk_buff *l2cap_build_cmd(struct l2cap_conn *conn, + BT_DBG("conn %p, code 0x%2.2x, ident 0x%2.2x, len %d", + conn, code, ident, dlen); + ++ if (conn->mtu < L2CAP_HDR_SIZE + L2CAP_CMD_HDR_SIZE) ++ return NULL; ++ + len = L2CAP_HDR_SIZE + L2CAP_CMD_HDR_SIZE + dlen; + count = min_t(unsigned int, conn->mtu, len); + +@@ -2865,7 +2868,7 @@ static inline int l2cap_information_rsp(struct l2cap_conn *conn, + struct l2cap_info_rsp *rsp = (struct l2cap_info_rsp *) data; + u16 type, result; + +- if (cmd_len != sizeof(*rsp)) ++ if (cmd_len < sizeof(*rsp)) + return -EPROTO; + + type = __le16_to_cpu(rsp->type); +diff --git a/net/ceph/auth_none.c b/net/ceph/auth_none.c +index 214c2bb..9f78c5f 100644 +--- a/net/ceph/auth_none.c ++++ b/net/ceph/auth_none.c +@@ -39,6 +39,11 @@ static int should_authenticate(struct ceph_auth_client *ac) + return xi->starting; + } + ++static int build_request(struct ceph_auth_client *ac, void *buf, void *end) ++{ ++ return 0; ++} ++ + /* + * the generic auth code decode the global_id, and we carry no actual + * authenticate state, so nothing happens here. +@@ -107,6 +112,7 @@ static const struct ceph_auth_client_ops ceph_auth_none_ops = { + .destroy = destroy, + .is_authenticated = is_authenticated, + .should_authenticate = should_authenticate, ++ .build_request = build_request, + .handle_reply = handle_reply, + .create_authorizer = ceph_auth_none_create_authorizer, + .destroy_authorizer = ceph_auth_none_destroy_authorizer, +diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c +index 3c8bc6e..d148a2b 100644 +--- a/sound/pci/hda/patch_hdmi.c ++++ b/sound/pci/hda/patch_hdmi.c +@@ -902,7 +902,7 @@ static int hdmi_pcm_open(struct hda_pcm_stream *hinfo, + per_cvt->assigned = 1; + hinfo->nid = per_cvt->cvt_nid; + +- snd_hda_codec_write(codec, per_pin->pin_nid, 0, ++ snd_hda_codec_write_cache(codec, per_pin->pin_nid, 0, + AC_VERB_SET_CONNECT_SEL, + mux_idx); + snd_hda_spdif_ctls_assign(codec, pin_idx, per_cvt->cvt_nid); +diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c +index e97df24..8b687da 100644 +--- a/sound/soc/codecs/wm8962.c ++++ b/sound/soc/codecs/wm8962.c +@@ -2117,7 +2117,6 @@ static int wm8962_put_hp_sw(struct snd_kcontrol *kcontrol, + struct snd_ctl_elem_value *ucontrol) + { + struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol); +- u16 *reg_cache = codec->reg_cache; + int ret; + + /* Apply the update (if any) */ +@@ -2126,16 +2125,19 @@ static int wm8962_put_hp_sw(struct snd_kcontrol *kcontrol, + return 0; + + /* If the left PGA is enabled hit that VU bit... */ +- if (snd_soc_read(codec, WM8962_PWR_MGMT_2) & WM8962_HPOUTL_PGA_ENA) +- return snd_soc_write(codec, WM8962_HPOUTL_VOLUME, +- reg_cache[WM8962_HPOUTL_VOLUME]); ++ ret = snd_soc_read(codec, WM8962_PWR_MGMT_2); ++ if (ret & WM8962_HPOUTL_PGA_ENA) { ++ snd_soc_write(codec, WM8962_HPOUTL_VOLUME, ++ snd_soc_read(codec, WM8962_HPOUTL_VOLUME)); ++ return 1; ++ } + + /* ...otherwise the right. The VU is stereo. */ +- if (snd_soc_read(codec, WM8962_PWR_MGMT_2) & WM8962_HPOUTR_PGA_ENA) +- return snd_soc_write(codec, WM8962_HPOUTR_VOLUME, +- reg_cache[WM8962_HPOUTR_VOLUME]); ++ if (ret & WM8962_HPOUTR_PGA_ENA) ++ snd_soc_write(codec, WM8962_HPOUTR_VOLUME, ++ snd_soc_read(codec, WM8962_HPOUTR_VOLUME)); + +- return 0; ++ return 1; + } + + /* The VU bits for the speakers are in a different register to the mute +@@ -3944,7 +3946,6 @@ static int wm8962_probe(struct snd_soc_codec *codec) + int ret; + struct wm8962_priv *wm8962 = snd_soc_codec_get_drvdata(codec); + struct wm8962_pdata *pdata = dev_get_platdata(codec->dev); +- u16 *reg_cache = codec->reg_cache; + int i, trigger, irq_pol; + bool dmicclk, dmicdat; + +@@ -4055,8 +4056,9 @@ static int wm8962_probe(struct snd_soc_codec *codec) + + /* Put the speakers into mono mode? */ + if (pdata->spk_mono) +- reg_cache[WM8962_CLASS_D_CONTROL_2] +- |= WM8962_SPK_MONO; ++ snd_soc_update_bits(codec, WM8962_CLASS_D_CONTROL_2, ++ WM8962_SPK_MONO_MASK, WM8962_SPK_MONO); ++ + + /* Micbias setup, detection enable and detection + * threasholds. */ diff --git a/3.2.48/4420_grsecurity-2.9.1-3.2.48-201307261327.patch b/3.2.49/4420_grsecurity-2.9.1-3.2.49-201307302311.patch index df50f4e..2d76489 100644 --- a/3.2.48/4420_grsecurity-2.9.1-3.2.48-201307261327.patch +++ b/3.2.49/4420_grsecurity-2.9.1-3.2.49-201307302311.patch @@ -270,7 +270,7 @@ index 88fd7f5..b318a78 100644 ============================================================== diff --git a/Makefile b/Makefile -index 299e2eb..cb3e698 100644 +index 2e3d791..7e68b16 100644 --- a/Makefile +++ b/Makefile @@ -245,8 +245,9 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ @@ -24944,7 +24944,7 @@ index a63efd6..ccecad8 100644 ret CFI_ENDPROC diff --git a/arch/x86/lib/usercopy_32.c b/arch/x86/lib/usercopy_32.c -index e218d5d..7d522b8 100644 +index e218d5d..f655ced 100644 --- a/arch/x86/lib/usercopy_32.c +++ b/arch/x86/lib/usercopy_32.c @@ -43,7 +43,7 @@ do { \ @@ -25489,7 +25489,7 @@ index e218d5d..7d522b8 100644 return n; } EXPORT_SYMBOL(__copy_from_user_ll_nozero); -@@ -827,65 +943,50 @@ unsigned long __copy_from_user_ll_nocache_nozero(void *to, const void __user *fr +@@ -827,65 +943,49 @@ unsigned long __copy_from_user_ll_nocache_nozero(void *to, const void __user *fr if (n > 64 && cpu_has_xmm2) n = __copy_user_intel_nocache(to, from, n); else @@ -25580,7 +25580,6 @@ index e218d5d..7d522b8 100644 + default: + BUG(); + } -+ return; +} +EXPORT_SYMBOL(__set_fs); + @@ -27675,6 +27674,19 @@ index f6ff57b..481690f 100644 cattr_name(want_flags), (unsigned long long)paddr, (unsigned long long)(paddr + size), +diff --git a/arch/x86/mm/pat_rbtree.c b/arch/x86/mm/pat_rbtree.c +index 8acaddd..4eaa657 100644 +--- a/arch/x86/mm/pat_rbtree.c ++++ b/arch/x86/mm/pat_rbtree.c +@@ -165,7 +165,7 @@ success: + + failure: + printk(KERN_INFO "%s:%d conflicting memory types " +- "%Lx-%Lx %s<->%s\n", current->comm, current->pid, start, ++ "%Lx-%Lx %s<->%s\n", current->comm, task_pid_nr(current), start, + end, cattr_name(found_type), cattr_name(match->type)); + return -EBUSY; + } diff --git a/arch/x86/mm/pf_in.c b/arch/x86/mm/pf_in.c index 9f0614d..92ae64a 100644 --- a/arch/x86/mm/pf_in.c @@ -29486,6 +29498,19 @@ index e529730..8d08690 100644 read_shdrs(fp); read_strtabs(fp); read_symtabs(fp); +diff --git a/arch/x86/um/tls_32.c b/arch/x86/um/tls_32.c +index c6c7131..2851e03 100644 +--- a/arch/x86/um/tls_32.c ++++ b/arch/x86/um/tls_32.c +@@ -259,7 +259,7 @@ out: + if (unlikely(task == current && + !t->arch.tls_array[idx - GDT_ENTRY_TLS_MIN].flushed)) { + printk(KERN_ERR "get_tls_entry: task with pid %d got here " +- "without flushed TLS.", current->pid); ++ "without flushed TLS.", task_pid_nr(current)); + } + + return 0; diff --git a/arch/x86/vdso/Makefile b/arch/x86/vdso/Makefile index 5d17950..2253fc9 100644 --- a/arch/x86/vdso/Makefile @@ -30102,7 +30127,7 @@ index 7b72502..646105c 100644 err = -EFAULT; goto out; diff --git a/block/genhd.c b/block/genhd.c -index 6edf228..078f68b9 100644 +index 8bd4ef2..078f68b9 100644 --- a/block/genhd.c +++ b/block/genhd.c @@ -474,21 +474,24 @@ static char *bdevt_str(dev_t devt, char *buf) @@ -30133,15 +30158,6 @@ index 6edf228..078f68b9 100644 } EXPORT_SYMBOL(blk_unregister_region); -@@ -519,7 +522,7 @@ void register_disk(struct gendisk *disk) - - ddev->parent = disk->driverfs_dev; - -- dev_set_name(ddev, disk->disk_name); -+ dev_set_name(ddev, "%s", disk->disk_name); - - /* delay uevents, until we scanned partition table */ - dev_set_uevent_suppress(ddev, 1); diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c index 9e76a32..48d7145 100644 --- a/block/scsi_ioctl.c @@ -30197,19 +30213,6 @@ index 9e76a32..48d7145 100644 if (in_len && copy_from_user(buffer, sic->data + cmdlen, in_len)) goto error; -diff --git a/crypto/algapi.c b/crypto/algapi.c -index 54dd4e3..27ea1b0 100644 ---- a/crypto/algapi.c -+++ b/crypto/algapi.c -@@ -477,7 +477,7 @@ static struct crypto_template *__crypto_lookup_template(const char *name) - - struct crypto_template *crypto_lookup_template(const char *name) - { -- return try_then_request_module(__crypto_lookup_template(name), name); -+ return try_then_request_module(__crypto_lookup_template(name), "%s", name); - } - EXPORT_SYMBOL_GPL(crypto_lookup_template); - diff --git a/crypto/cryptd.c b/crypto/cryptd.c index 7bdd61b..afec999 100644 --- a/crypto/cryptd.c @@ -30479,7 +30482,7 @@ index 240a244..bc6239e 100644 static void delete_gpe_attr_array(void) { diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c -index 3c92dbd..008b08b 100644 +index 60def03..dcbb9ac 100644 --- a/drivers/ata/libahci.c +++ b/drivers/ata/libahci.c @@ -1211,7 +1211,7 @@ int ahci_kick_engine(struct ata_port *ap) @@ -32248,19 +32251,6 @@ index a365562..933bbbd 100644 set_fs(old_fs); if (likely(bw == len)) return 0; -diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c -index 40a0fcb..556767c 100644 ---- a/drivers/block/nbd.c -+++ b/drivers/block/nbd.c -@@ -675,7 +675,7 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *lo, - - mutex_unlock(&lo->tx_lock); - -- thread = kthread_create(nbd_thread, lo, lo->disk->disk_name); -+ thread = kthread_create(nbd_thread, lo, "%s", lo->disk->disk_name); - if (IS_ERR(thread)) { - mutex_lock(&lo->tx_lock); - return PTR_ERR(thread); diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index a63b0a2..30228d1 100644 --- a/drivers/block/pktcdvd.c @@ -32275,7 +32265,7 @@ index a63b0a2..30228d1 100644 static DEFINE_MUTEX(pktcdvd_mutex); static struct pktcdvd_device *pkt_devs[MAX_WRITERS]; diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c -index 2678b6f..a691234 100644 +index 1331740..a691234 100644 --- a/drivers/cdrom/cdrom.c +++ b/drivers/cdrom/cdrom.c @@ -419,7 +419,6 @@ int register_cdrom(struct cdrom_device_info *cdi) @@ -32317,15 +32307,6 @@ index 2678b6f..a691234 100644 if (cgc.buffer) break; -@@ -2885,7 +2886,7 @@ static noinline int mmc_ioctl_cdrom_read_data(struct cdrom_device_info *cdi, - if (lba < 0) - return -EINVAL; - -- cgc->buffer = kmalloc(blocksize, GFP_KERNEL); -+ cgc->buffer = kzalloc(blocksize, GFP_KERNEL); - if (cgc->buffer == NULL) - return -ENOMEM; - @@ -3432,7 +3433,7 @@ static int cdrom_print_info(const char *header, int val, char *info, struct cdrom_device_info *cdi; int ret; @@ -35196,7 +35177,7 @@ index e8422ae..d22d4a8 100644 DRM_DEBUG("pid=%d\n", DRM_CURRENTPID); diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c -index 0b5468b..7ecf242 100644 +index 0b5468b..74cfb87 100644 --- a/drivers/gpu/drm/radeon/radeon_ttm.c +++ b/drivers/gpu/drm/radeon/radeon_ttm.c @@ -631,7 +631,7 @@ void radeon_ttm_set_active_vram_size(struct radeon_device *rdev, u64 size) @@ -35219,37 +35200,51 @@ index 0b5468b..7ecf242 100644 } vma->vm_ops = &radeon_ttm_vm_ops; return 0; -@@ -829,21 +831,24 @@ static int radeon_ttm_debugfs_init(struct radeon_device *rdev) - sprintf(radeon_mem_types_names[i], "radeon_vram_mm"); - else - sprintf(radeon_mem_types_names[i], "radeon_gtt_mm"); +@@ -820,30 +822,25 @@ static int radeon_mm_dump_table(struct seq_file *m, void *data) + static int radeon_ttm_debugfs_init(struct radeon_device *rdev) + { + #if defined(CONFIG_DEBUG_FS) +- static struct drm_info_list radeon_mem_types_list[RADEON_DEBUGFS_MEM_TYPES+1]; +- static char radeon_mem_types_names[RADEON_DEBUGFS_MEM_TYPES+1][32]; +- unsigned i; ++ static struct drm_info_list radeon_mem_types_list[RADEON_DEBUGFS_MEM_TYPES+1] = { ++ { ++ .name = "radeon_vram_mm", ++ .show = &radeon_mm_dump_table, ++ }, ++ { ++ .name = "radeon_gtt_mm", ++ .show = &radeon_mm_dump_table, ++ }, ++ { ++ .name = "ttm_page_pool", ++ .show = &ttm_page_alloc_debugfs, ++ }, ++ }; + +- for (i = 0; i < RADEON_DEBUGFS_MEM_TYPES; i++) { +- if (i == 0) +- sprintf(radeon_mem_types_names[i], "radeon_vram_mm"); +- else +- sprintf(radeon_mem_types_names[i], "radeon_gtt_mm"); - radeon_mem_types_list[i].name = radeon_mem_types_names[i]; - radeon_mem_types_list[i].show = &radeon_mm_dump_table; - radeon_mem_types_list[i].driver_features = 0; -+ pax_open_kernel(); -+ *(const char **)&radeon_mem_types_list[i].name = radeon_mem_types_names[i]; -+ *(void **)&radeon_mem_types_list[i].show = &radeon_mm_dump_table; -+ *(u32 *)&radeon_mem_types_list[i].driver_features = 0; - if (i == 0) +- if (i == 0) - radeon_mem_types_list[i].data = rdev->mman.bdev.man[TTM_PL_VRAM].priv; -+ *(void **)&radeon_mem_types_list[i].data = rdev->mman.bdev.man[TTM_PL_VRAM].priv; - else +- else - radeon_mem_types_list[i].data = rdev->mman.bdev.man[TTM_PL_TT].priv; - -+ *(void **)&radeon_mem_types_list[i].data = rdev->mman.bdev.man[TTM_PL_TT].priv; -+ pax_close_kernel(); - } - /* Add ttm page pool to debugfs */ - sprintf(radeon_mem_types_names[i], "ttm_page_pool"); +- } +- /* Add ttm page pool to debugfs */ +- sprintf(radeon_mem_types_names[i], "ttm_page_pool"); - radeon_mem_types_list[i].name = radeon_mem_types_names[i]; - radeon_mem_types_list[i].show = &ttm_page_alloc_debugfs; - radeon_mem_types_list[i].driver_features = 0; - radeon_mem_types_list[i].data = NULL; + pax_open_kernel(); -+ *(const char **)&radeon_mem_types_list[i].name = radeon_mem_types_names[i]; -+ *(void **)&radeon_mem_types_list[i].show = &ttm_page_alloc_debugfs; -+ *(u32 *)&radeon_mem_types_list[i].driver_features = 0; -+ *(void **)&radeon_mem_types_list[i++].data = NULL; ++ *(void **)&radeon_mem_types_list[0].data = rdev->mman.bdev.man[TTM_PL_VRAM].priv; ++ *(void **)&radeon_mem_types_list[1].data = rdev->mman.bdev.man[TTM_PL_TT].priv; + pax_close_kernel(); return radeon_debugfs_add_files(rdev, radeon_mem_types_list, RADEON_DEBUGFS_MEM_TYPES+1); @@ -35607,7 +35602,7 @@ index 0aee112..b72d21f 100644 /* * Represents channel interrupts. Each bit position represents a diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c -index d2d0a2a..90b8f4d 100644 +index 44442d5..9f4b007 100644 --- a/drivers/hv/vmbus_drv.c +++ b/drivers/hv/vmbus_drv.c @@ -663,10 +663,10 @@ int vmbus_device_register(struct hv_device *child_device_obj) @@ -39932,7 +39927,7 @@ index 49b549f..13d648c 100644 mac->phydev = phydev; diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c -index ed7a5a6..606fc45 100644 +index a3bd0ba..8a34a90 100644 --- a/drivers/net/ethernet/realtek/r8169.c +++ b/drivers/net/ethernet/realtek/r8169.c @@ -704,17 +704,17 @@ struct rtl8169_private { @@ -40448,62 +40443,6 @@ index e662cbc..8d4a102 100644 return -EINVAL; } -diff --git a/drivers/net/wan/dlci.c b/drivers/net/wan/dlci.c -index 48ab38a..02c939e 100644 ---- a/drivers/net/wan/dlci.c -+++ b/drivers/net/wan/dlci.c -@@ -385,21 +385,37 @@ static int dlci_del(struct dlci_add *dlci) - struct frad_local *flp; - struct net_device *master, *slave; - int err; -+ bool found = false; -+ -+ rtnl_lock(); - - /* validate slave device */ - master = __dev_get_by_name(&init_net, dlci->devname); -- if (!master) -- return -ENODEV; -+ if (!master) { -+ err = -ENODEV; -+ goto out; -+ } -+ -+ list_for_each_entry(dlp, &dlci_devs, list) { -+ if (dlp->master == master) { -+ found = true; -+ break; -+ } -+ } -+ if (!found) { -+ err = -ENODEV; -+ goto out; -+ } - - if (netif_running(master)) { -- return -EBUSY; -+ err = -EBUSY; -+ goto out; - } - - dlp = netdev_priv(master); - slave = dlp->slave; - flp = netdev_priv(slave); - -- rtnl_lock(); - err = (*flp->deassoc)(slave, master); - if (!err) { - list_del(&dlp->list); -@@ -408,8 +424,8 @@ static int dlci_del(struct dlci_add *dlci) - - dev_put(slave); - } -+out: - rtnl_unlock(); -- - return err; - } - diff --git a/drivers/net/wireless/at76c50x-usb.c b/drivers/net/wireless/at76c50x-usb.c index 4045e5a..506f1cf 100644 --- a/drivers/net/wireless/at76c50x-usb.c @@ -40744,10 +40683,10 @@ index f5ae3c6..7936af3 100644 static u16 ar9003_calc_ptr_chksum(struct ar9003_txc *ads) diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h -index 0c65a09..313fb6d 100644 +index dc774cd..fd6efed 100644 --- a/drivers/net/wireless/ath/ath9k/hw.h +++ b/drivers/net/wireless/ath/ath9k/hw.h -@@ -606,7 +606,7 @@ struct ath_hw_private_ops { +@@ -607,7 +607,7 @@ struct ath_hw_private_ops { /* ANI */ void (*ani_cache_ini_regs)(struct ath_hw *ah); @@ -40756,7 +40695,7 @@ index 0c65a09..313fb6d 100644 /** * struct ath_hw_ops - callbacks used by hardware code and driver code -@@ -636,7 +636,7 @@ struct ath_hw_ops { +@@ -637,7 +637,7 @@ struct ath_hw_ops { void (*antdiv_comb_conf_set)(struct ath_hw *ah, struct ath_hw_antcomb_conf *antconf); @@ -49168,10 +49107,10 @@ index 4fc4dbb..bae9dce 100644 __bio_for_each_segment(bvec, bio, i, 0) { char *addr = page_address(bvec->bv_page); diff --git a/fs/block_dev.c b/fs/block_dev.c -index 53ab273..25649b6 100644 +index c103267..260cbd9 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c -@@ -683,7 +683,7 @@ static bool bd_may_claim(struct block_device *bdev, struct block_device *whole, +@@ -690,7 +690,7 @@ static bool bd_may_claim(struct block_device *bdev, struct block_device *whole, else if (bdev->bd_contains == bdev) return true; /* is a whole device which isn't held */ @@ -49476,10 +49415,10 @@ index 9895400..78a67e7 100644 } diff --git a/fs/ceph/super.c b/fs/ceph/super.c -index b48f15f..9fe4eab 100644 +index de268a8..06e0541 100644 --- a/fs/ceph/super.c +++ b/fs/ceph/super.c -@@ -896,6 +896,7 @@ static struct file_system_type ceph_fs_type = { +@@ -901,6 +901,7 @@ static struct file_system_type ceph_fs_type = { .kill_sb = ceph_kill_sb, .fs_flags = FS_RENAME_DOES_D_MOVE, }; @@ -50261,7 +50200,7 @@ index 451b9b8..12e5a03 100644 out_free_fd: diff --git a/fs/exec.c b/fs/exec.c -index 312e297..25c839c 100644 +index a2d0e51..25c839c 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -55,12 +55,35 @@ @@ -50648,37 +50587,7 @@ index 312e297..25c839c 100644 /* Set the new mm task size. We have to do that late because it may * depend on TIF_32BIT which is only updated in flush_thread() on -@@ -1159,13 +1238,6 @@ void setup_new_exec(struct linux_binprm * bprm) - set_dumpable(current->mm, suid_dumpable); - } - -- /* -- * Flush performance counters when crossing a -- * security domain: -- */ -- if (!get_dumpable(current->mm)) -- perf_event_exit_task(current); -- - /* An exec changes our domain. We are no longer part of the thread - group */ - -@@ -1229,6 +1301,15 @@ void install_exec_creds(struct linux_binprm *bprm) - - commit_creds(bprm->cred); - bprm->cred = NULL; -+ -+ /* -+ * Disable monitoring for regular users -+ * when executing setuid binaries. Must -+ * wait until new credentials are committed -+ * by commit_creds() above -+ */ -+ if (get_dumpable(current->mm) != SUID_DUMP_USER) -+ perf_event_exit_task(current); - /* - * cred_guard_mutex must be held at least to this point to prevent - * ptrace_attach() from altering our determination of the task's -@@ -1266,7 +1347,7 @@ int check_unsafe_exec(struct linux_binprm *bprm) +@@ -1268,7 +1347,7 @@ int check_unsafe_exec(struct linux_binprm *bprm) } rcu_read_unlock(); @@ -50687,7 +50596,7 @@ index 312e297..25c839c 100644 bprm->unsafe |= LSM_UNSAFE_SHARE; } else { res = -EAGAIN; -@@ -1461,6 +1542,31 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) +@@ -1463,6 +1542,31 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) EXPORT_SYMBOL(search_binary_handler); @@ -50719,7 +50628,7 @@ index 312e297..25c839c 100644 /* * sys_execve() executes a new program. */ -@@ -1469,6 +1575,11 @@ static int do_execve_common(const char *filename, +@@ -1471,6 +1575,11 @@ static int do_execve_common(const char *filename, struct user_arg_ptr envp, struct pt_regs *regs) { @@ -50731,7 +50640,7 @@ index 312e297..25c839c 100644 struct linux_binprm *bprm; struct file *file; struct files_struct *displaced; -@@ -1476,6 +1587,8 @@ static int do_execve_common(const char *filename, +@@ -1478,6 +1587,8 @@ static int do_execve_common(const char *filename, int retval; const struct cred *cred = current_cred(); @@ -50740,7 +50649,7 @@ index 312e297..25c839c 100644 /* * We move the actual failure in case of RLIMIT_NPROC excess from * set*uid() to execve() because too many poorly written programs -@@ -1516,12 +1629,22 @@ static int do_execve_common(const char *filename, +@@ -1518,12 +1629,22 @@ static int do_execve_common(const char *filename, if (IS_ERR(file)) goto out_unmark; @@ -50763,7 +50672,7 @@ index 312e297..25c839c 100644 retval = bprm_mm_init(bprm); if (retval) goto out_file; -@@ -1538,24 +1661,70 @@ static int do_execve_common(const char *filename, +@@ -1540,24 +1661,70 @@ static int do_execve_common(const char *filename, if (retval < 0) goto out; @@ -50838,7 +50747,7 @@ index 312e297..25c839c 100644 current->fs->in_exec = 0; current->in_execve = 0; acct_update_integrals(current); -@@ -1564,6 +1733,14 @@ static int do_execve_common(const char *filename, +@@ -1566,6 +1733,14 @@ static int do_execve_common(const char *filename, put_files_struct(displaced); return retval; @@ -50853,7 +50762,7 @@ index 312e297..25c839c 100644 out: if (bprm->mm) { acct_arg_size(bprm, 0); -@@ -1637,7 +1814,7 @@ static int expand_corename(struct core_name *cn) +@@ -1639,7 +1814,7 @@ static int expand_corename(struct core_name *cn) { char *old_corename = cn->corename; @@ -50862,7 +50771,7 @@ index 312e297..25c839c 100644 cn->corename = krealloc(old_corename, cn->size, GFP_KERNEL); if (!cn->corename) { -@@ -1734,7 +1911,7 @@ static int format_corename(struct core_name *cn, long signr) +@@ -1736,7 +1911,7 @@ static int format_corename(struct core_name *cn, long signr) int pid_in_pattern = 0; int err = 0; @@ -50871,7 +50780,7 @@ index 312e297..25c839c 100644 cn->corename = kmalloc(cn->size, GFP_KERNEL); cn->used = 0; -@@ -1831,6 +2008,280 @@ out: +@@ -1833,6 +2008,280 @@ out: return ispipe; } @@ -51152,7 +51061,7 @@ index 312e297..25c839c 100644 static int zap_process(struct task_struct *start, int exit_code) { struct task_struct *t; -@@ -2004,17 +2455,17 @@ static void coredump_finish(struct mm_struct *mm) +@@ -2006,17 +2455,17 @@ static void coredump_finish(struct mm_struct *mm) void set_dumpable(struct mm_struct *mm, int value) { switch (value) { @@ -51173,7 +51082,7 @@ index 312e297..25c839c 100644 set_bit(MMF_DUMP_SECURELY, &mm->flags); smp_wmb(); set_bit(MMF_DUMPABLE, &mm->flags); -@@ -2027,7 +2478,7 @@ static int __get_dumpable(unsigned long mm_flags) +@@ -2029,7 +2478,7 @@ static int __get_dumpable(unsigned long mm_flags) int ret; ret = mm_flags & MMF_DUMPABLE_MASK; @@ -51182,7 +51091,7 @@ index 312e297..25c839c 100644 } int get_dumpable(struct mm_struct *mm) -@@ -2042,17 +2493,17 @@ static void wait_for_dump_helpers(struct file *file) +@@ -2044,17 +2493,17 @@ static void wait_for_dump_helpers(struct file *file) pipe = file->f_path.dentry->d_inode->i_pipe; pipe_lock(pipe); @@ -51205,7 +51114,7 @@ index 312e297..25c839c 100644 pipe_unlock(pipe); } -@@ -2113,7 +2564,8 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) +@@ -2115,7 +2564,8 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) int retval = 0; int flag = 0; int ispipe; @@ -51215,7 +51124,7 @@ index 312e297..25c839c 100644 struct coredump_params cprm = { .signr = signr, .regs = regs, -@@ -2128,6 +2580,9 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) +@@ -2130,6 +2580,9 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) audit_core_dumps(signr); @@ -51225,7 +51134,7 @@ index 312e297..25c839c 100644 binfmt = mm->binfmt; if (!binfmt || !binfmt->core_dump) goto fail; -@@ -2138,14 +2593,16 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) +@@ -2140,14 +2593,16 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) if (!cred) goto fail; /* @@ -51246,7 +51155,7 @@ index 312e297..25c839c 100644 } retval = coredump_wait(exit_code, &core_state); -@@ -2195,7 +2652,7 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) +@@ -2197,7 +2652,7 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) } cprm.limit = RLIM_INFINITY; @@ -51255,7 +51164,7 @@ index 312e297..25c839c 100644 if (core_pipe_limit && (core_pipe_limit < dump_count)) { printk(KERN_WARNING "Pid %d(%s) over core_pipe_limit\n", task_tgid_vnr(current), current->comm); -@@ -2222,9 +2679,19 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) +@@ -2224,9 +2679,19 @@ void do_coredump(long signr, int exit_code, struct pt_regs *regs) } else { struct inode *inode; @@ -51275,7 +51184,7 @@ index 312e297..25c839c 100644 cprm.file = filp_open(cn.corename, O_CREAT | 2 | O_NOFOLLOW | O_LARGEFILE | flag, 0600); -@@ -2265,7 +2732,7 @@ close_fail: +@@ -2267,7 +2732,7 @@ close_fail: filp_close(cprm.file, NULL); fail_dropcount: if (ispipe) @@ -51284,7 +51193,7 @@ index 312e297..25c839c 100644 fail_unlock: kfree(cn.corename); fail_corename: -@@ -2284,7 +2751,7 @@ fail: +@@ -2286,7 +2751,7 @@ fail: */ int dump_write(struct file *file, const void *addr, int nr) { @@ -53375,10 +53284,10 @@ index 2f72da5..7ee87b1 100644 static int __init init_hostfs(void) { diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c -index 98580a3..c95accd 100644 +index f760c15..61b7191 100644 --- a/fs/hpfs/super.c +++ b/fs/hpfs/super.c -@@ -685,6 +685,7 @@ static struct file_system_type hpfs_fs_type = { +@@ -691,6 +691,7 @@ static struct file_system_type hpfs_fs_type = { .kill_sb = kill_block_super, .fs_flags = FS_REQUIRES_DEV, }; @@ -54531,7 +54440,7 @@ index e065497..258fa11 100644 static struct nfsd4_operation nfsd4_ops[]; diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c -index ade5316..f1a6152 100644 +index 99625b8..7e04dea 100644 --- a/fs/nfsd/nfs4xdr.c +++ b/fs/nfsd/nfs4xdr.c @@ -1445,7 +1445,7 @@ nfsd4_decode_notsupp(struct nfsd4_compoundargs *argp, void *p) @@ -57457,70 +57366,6 @@ index bb55cdb..e9ebb8a 100644 { if (sbi->s_bytesex == BYTESEX_PDP) return PDP_swab((__force __u32)n); -diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c -index 6834920..6b0cc3e 100644 ---- a/fs/ubifs/dir.c -+++ b/fs/ubifs/dir.c -@@ -372,6 +372,24 @@ static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir) - */ - return 0; - -+ if (file->f_version == 0) { -+ /* -+ * The file was seek'ed, which means that @file->private_data -+ * is now invalid. This may also be just the first -+ * 'ubifs_readdir()' invocation, in which case -+ * @file->private_data is NULL, and the below code is -+ * basically a no-op. -+ */ -+ kfree(file->private_data); -+ file->private_data = NULL; -+ } -+ -+ /* -+ * 'generic_file_llseek()' unconditionally sets @file->f_version to -+ * zero, and we use this for detecting whether the file was seek'ed. -+ */ -+ file->f_version = 1; -+ - /* File positions 0 and 1 correspond to "." and ".." */ - if (file->f_pos == 0) { - ubifs_assert(!file->private_data); -@@ -446,6 +464,14 @@ static int ubifs_readdir(struct file *file, void *dirent, filldir_t filldir) - file->f_pos = key_hash_flash(c, &dent->key); - file->private_data = dent; - cond_resched(); -+ -+ if (file->f_version == 0) -+ /* -+ * The file was seek'ed meanwhile, lets return and start -+ * reading direntries from the new position on the next -+ * invocation. -+ */ -+ return 0; - } - - out: -@@ -456,16 +482,14 @@ out: - - kfree(file->private_data); - file->private_data = NULL; -+ /* 2 is a special value indicating that there are no more direntries */ - file->f_pos = 2; - return 0; - } - --/* If a directory is seeked, we have to free saved readdir() state */ --static loff_t ubifs_dir_llseek(struct file *file, loff_t offset, int origin) -+static loff_t ubifs_dir_llseek(struct file *file, loff_t offset, int whence) - { -- kfree(file->private_data); -- file->private_data = NULL; -- return generic_file_llseek(file, offset, origin); -+ return generic_file_llseek(file, offset, whence); - } - - /* Free saved readdir() state when the directory is closed */ diff --git a/fs/ubifs/io.c b/fs/ubifs/io.c index 9228950..bbad895 100644 --- a/fs/ubifs/io.c @@ -72065,7 +71910,7 @@ index 45fc162..01a4068 100644 /** * struct hotplug_slot_info - used to notify the hotplug pci core of the state of the slot diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h -index 9b9b2aa..df3199e 100644 +index 3cfcfea..0227030 100644 --- a/include/linux/perf_event.h +++ b/include/linux/perf_event.h @@ -748,8 +748,8 @@ struct perf_event { @@ -72090,7 +71935,7 @@ index 9b9b2aa..df3199e 100644 /* * Protect attach/detach and child_list: -@@ -1101,7 +1101,7 @@ static inline void perf_callchain_store(struct perf_callchain_entry *entry, u64 +@@ -1100,7 +1100,7 @@ static inline void perf_callchain_store(struct perf_callchain_entry *entry, u64 entry->ip[entry->nr++] = ip; } @@ -72099,7 +71944,7 @@ index 9b9b2aa..df3199e 100644 extern int sysctl_perf_event_mlock; extern int sysctl_perf_event_sample_rate; -@@ -1109,19 +1109,24 @@ extern int perf_proc_update_handler(struct ctl_table *table, int write, +@@ -1108,19 +1108,24 @@ extern int perf_proc_update_handler(struct ctl_table *table, int write, void __user *buffer, size_t *lenp, loff_t *ppos); @@ -72127,7 +71972,7 @@ index 9b9b2aa..df3199e 100644 } extern void perf_event_init(void); -@@ -1199,7 +1204,7 @@ static inline void perf_restore_debug_store(void) { } +@@ -1198,7 +1203,7 @@ static inline void perf_restore_debug_store(void) { } */ #define perf_cpu_notifier(fn) \ do { \ @@ -76161,7 +76006,7 @@ index 63786e7..0780cac 100644 #ifdef CONFIG_MODULE_UNLOAD { diff --git a/kernel/events/core.c b/kernel/events/core.c -index 9f21915..73a9f27 100644 +index 8be9b746..cb7b792 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -145,8 +145,15 @@ static struct srcu_struct pmus_srcu; @@ -76190,7 +76035,7 @@ index 9f21915..73a9f27 100644 static void cpu_ctx_sched_out(struct perf_cpu_context *cpuctx, enum event_type_t event_type); -@@ -2540,7 +2547,7 @@ static void __perf_event_read(void *info) +@@ -2559,7 +2566,7 @@ static void __perf_event_read(void *info) static inline u64 perf_event_count(struct perf_event *event) { @@ -76199,7 +76044,7 @@ index 9f21915..73a9f27 100644 } static u64 perf_event_read(struct perf_event *event) -@@ -3071,9 +3078,9 @@ u64 perf_event_read_value(struct perf_event *event, u64 *enabled, u64 *running) +@@ -3105,9 +3112,9 @@ u64 perf_event_read_value(struct perf_event *event, u64 *enabled, u64 *running) mutex_lock(&event->child_mutex); total += perf_event_read(event); *enabled += event->total_time_enabled + @@ -76211,7 +76056,7 @@ index 9f21915..73a9f27 100644 list_for_each_entry(child, &event->child_list, child_list) { total += perf_event_read(child); -@@ -3482,10 +3489,10 @@ void perf_event_update_userpage(struct perf_event *event) +@@ -3499,10 +3506,10 @@ void perf_event_update_userpage(struct perf_event *event) userpg->offset -= local64_read(&event->hw.prev_count); userpg->time_enabled = enabled + @@ -76224,7 +76069,7 @@ index 9f21915..73a9f27 100644 barrier(); ++userpg->lock; -@@ -3914,11 +3921,11 @@ static void perf_output_read_one(struct perf_output_handle *handle, +@@ -4010,11 +4017,11 @@ static void perf_output_read_one(struct perf_output_handle *handle, values[n++] = perf_event_count(event); if (read_format & PERF_FORMAT_TOTAL_TIME_ENABLED) { values[n++] = enabled + @@ -76238,7 +76083,7 @@ index 9f21915..73a9f27 100644 } if (read_format & PERF_FORMAT_ID) values[n++] = primary_event_id(event); -@@ -4569,12 +4576,12 @@ static void perf_event_mmap_event(struct perf_mmap_event *mmap_event) +@@ -4665,12 +4672,12 @@ static void perf_event_mmap_event(struct perf_mmap_event *mmap_event) * need to add enough zero bytes after the string to handle * the 64bit alignment we do later. */ @@ -76253,7 +76098,7 @@ index 9f21915..73a9f27 100644 if (IS_ERR(name)) { name = strncpy(tmp, "//toolong", sizeof(tmp)); goto got_name; -@@ -5931,7 +5938,7 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu, +@@ -6027,7 +6034,7 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu, event->parent = parent_event; event->ns = get_pid_ns(current->nsproxy->pid_ns); @@ -76262,7 +76107,7 @@ index 9f21915..73a9f27 100644 event->state = PERF_EVENT_STATE_INACTIVE; -@@ -6164,6 +6171,11 @@ SYSCALL_DEFINE5(perf_event_open, +@@ -6274,6 +6281,11 @@ SYSCALL_DEFINE5(perf_event_open, if (flags & ~PERF_FLAG_ALL) return -EINVAL; @@ -76274,7 +76119,7 @@ index 9f21915..73a9f27 100644 err = perf_copy_attr(attr_uptr, &attr); if (err) return err; -@@ -6451,10 +6463,10 @@ static void sync_child_event(struct perf_event *child_event, +@@ -6561,10 +6573,10 @@ static void sync_child_event(struct perf_event *child_event, /* * Add back the child's count to the parent's count: */ @@ -76723,7 +76568,7 @@ index ce0c182..16fd1e0 100644 else new_fs = fs; diff --git a/kernel/futex.c b/kernel/futex.c -index 77bccfc..f2b5e1f 100644 +index 1d0538e..58e6a1a 100644 --- a/kernel/futex.c +++ b/kernel/futex.c @@ -54,6 +54,7 @@ @@ -76734,7 +76579,7 @@ index 77bccfc..f2b5e1f 100644 #include <linux/signal.h> #include <linux/export.h> #include <linux/magic.h> -@@ -239,6 +240,11 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw) +@@ -240,6 +241,11 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw) struct page *page, *page_head; int err, ro = 0; @@ -76746,7 +76591,7 @@ index 77bccfc..f2b5e1f 100644 /* * The futex address must be "naturally" aligned. */ -@@ -2743,6 +2749,7 @@ static int __init futex_init(void) +@@ -2744,6 +2750,7 @@ static int __init futex_init(void) { u32 curval; int i; @@ -76754,7 +76599,7 @@ index 77bccfc..f2b5e1f 100644 /* * This will fail and we want it. Some arch implementations do -@@ -2754,8 +2761,11 @@ static int __init futex_init(void) +@@ -2755,8 +2762,11 @@ static int __init futex_init(void) * implementation, the non-functional ones will return * -ENOSYS. */ @@ -78554,7 +78399,7 @@ index 3d4b954..11af930 100644 if (pm_wakeup_pending()) { diff --git a/kernel/printk.c b/kernel/printk.c -index c0d12ea..5ac488d 100644 +index 16688ec..327729b 100644 --- a/kernel/printk.c +++ b/kernel/printk.c @@ -313,6 +313,11 @@ static int check_syslog_permissions(int type, bool from_file) @@ -80603,10 +80448,10 @@ index 0b537f2..40d6c20 100644 return -ENOMEM; return 0; diff --git a/kernel/timer.c b/kernel/timer.c -index f2f71d7..dd26ca7 100644 +index f8b05a4..9769e5b 100644 --- a/kernel/timer.c +++ b/kernel/timer.c -@@ -1306,7 +1306,7 @@ void update_process_times(int user_tick) +@@ -1308,7 +1308,7 @@ void update_process_times(int user_tick) /* * This function runs timers and the timer-tq in bottom half context. */ @@ -80615,7 +80460,7 @@ index f2f71d7..dd26ca7 100644 { struct tvec_base *base = __this_cpu_read(tvec_bases); -@@ -1433,7 +1433,7 @@ static void process_timeout(unsigned long __data) +@@ -1435,7 +1435,7 @@ static void process_timeout(unsigned long __data) * * In all cases the return value is guaranteed to be non-negative. */ @@ -80624,7 +80469,7 @@ index f2f71d7..dd26ca7 100644 { struct timer_list timer; unsigned long expire; -@@ -1725,7 +1725,7 @@ static int __cpuinit timer_cpu_notify(struct notifier_block *self, +@@ -1727,7 +1727,7 @@ static int __cpuinit timer_cpu_notify(struct notifier_block *self, return NOTIFY_OK; } @@ -82068,10 +81913,10 @@ index d80ac4b..9fd73bc 100644 /* if an huge pmd materialized from under us just retry later */ if (unlikely(pmd_trans_huge(*pmd))) diff --git a/mm/hugetlb.c b/mm/hugetlb.c -index 2dcd716..984ad56 100644 +index ddf2128..af57f40 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c -@@ -1973,15 +1973,17 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy, +@@ -1990,15 +1990,17 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy, struct hstate *h = &default_hstate; unsigned long tmp; int ret; @@ -82092,7 +81937,7 @@ index 2dcd716..984ad56 100644 if (ret) goto out; -@@ -2038,15 +2040,17 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write, +@@ -2055,15 +2057,17 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write, struct hstate *h = &default_hstate; unsigned long tmp; int ret; @@ -82113,7 +81958,7 @@ index 2dcd716..984ad56 100644 if (ret) goto out; -@@ -2465,6 +2469,27 @@ static int unmap_ref_private(struct mm_struct *mm, struct vm_area_struct *vma, +@@ -2482,6 +2486,27 @@ static int unmap_ref_private(struct mm_struct *mm, struct vm_area_struct *vma, return 1; } @@ -82141,7 +81986,7 @@ index 2dcd716..984ad56 100644 /* * Hugetlb_cow() should be called with page lock of the original hugepage held. */ -@@ -2567,6 +2592,11 @@ retry_avoidcopy: +@@ -2584,6 +2609,11 @@ retry_avoidcopy: make_huge_pte(vma, new_page, 1)); page_remove_rmap(old_page); hugepage_add_new_anon_rmap(new_page, vma, address); @@ -82153,7 +81998,7 @@ index 2dcd716..984ad56 100644 /* Make the old page be freed below */ new_page = old_page; mmu_notifier_invalidate_range_end(mm, -@@ -2718,6 +2748,10 @@ retry: +@@ -2735,6 +2765,10 @@ retry: && (vma->vm_flags & VM_SHARED))); set_huge_pte_at(mm, address, ptep, new_pte); @@ -82164,7 +82009,7 @@ index 2dcd716..984ad56 100644 if ((flags & FAULT_FLAG_WRITE) && !(vma->vm_flags & VM_SHARED)) { /* Optimization, do the COW without a second fault */ ret = hugetlb_cow(mm, vma, address, ptep, new_pte, page); -@@ -2747,6 +2781,10 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma, +@@ -2764,6 +2798,10 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma, static DEFINE_MUTEX(hugetlb_instantiation_mutex); struct hstate *h = hstate_vma(vma); @@ -82175,7 +82020,7 @@ index 2dcd716..984ad56 100644 ptep = huge_pte_offset(mm, address); if (ptep) { entry = huge_ptep_get(ptep); -@@ -2758,6 +2796,26 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma, +@@ -2775,6 +2813,26 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma, VM_FAULT_SET_HINDEX(h - hstates); } @@ -87341,20 +87186,10 @@ index 0274157..f8afbf3c7 100644 hid->dev.parent = hidp_get_device(session); hid->ll_driver = &hidp_hid_driver; diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c -index a0b6c50..a5dd784 100644 +index dd7c019..9d19c31 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c -@@ -1737,6 +1737,9 @@ static struct sk_buff *l2cap_build_cmd(struct l2cap_conn *conn, - BT_DBG("conn %p, code 0x%2.2x, ident 0x%2.2x, len %d", - conn, code, ident, dlen); - -+ if (conn->mtu < L2CAP_HDR_SIZE + L2CAP_CMD_HDR_SIZE) -+ return NULL; -+ - len = L2CAP_HDR_SIZE + L2CAP_CMD_HDR_SIZE + dlen; - count = min_t(unsigned int, conn->mtu, len); - -@@ -2178,8 +2181,10 @@ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len, voi +@@ -2181,8 +2181,10 @@ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len, voi break; case L2CAP_CONF_RFC: @@ -87778,30 +87613,6 @@ index f78f898..d7aa843 100644 register_netdevice_notifier(¬ifier); if (__rtnl_register(PF_CAN, RTM_GETROUTE, NULL, cgw_dump_jobs, NULL)) { -diff --git a/net/ceph/auth_none.c b/net/ceph/auth_none.c -index 214c2bb..9f78c5f 100644 ---- a/net/ceph/auth_none.c -+++ b/net/ceph/auth_none.c -@@ -39,6 +39,11 @@ static int should_authenticate(struct ceph_auth_client *ac) - return xi->starting; - } - -+static int build_request(struct ceph_auth_client *ac, void *buf, void *end) -+{ -+ return 0; -+} -+ - /* - * the generic auth code decode the global_id, and we carry no actual - * authenticate state, so nothing happens here. -@@ -107,6 +112,7 @@ static const struct ceph_auth_client_ops ceph_auth_none_ops = { - .destroy = destroy, - .is_authenticated = is_authenticated, - .should_authenticate = should_authenticate, -+ .build_request = build_request, - .handle_reply = handle_reply, - .create_authorizer = ceph_auth_none_create_authorizer, - .destroy_authorizer = ceph_auth_none_destroy_authorizer, diff --git a/net/compat.c b/net/compat.c index 8c979cc..5800e81 100644 --- a/net/compat.c diff --git a/3.2.48/4425_grsec_remove_EI_PAX.patch b/3.2.49/4425_grsec_remove_EI_PAX.patch index 7d06ac2..7d06ac2 100644 --- a/3.2.48/4425_grsec_remove_EI_PAX.patch +++ b/3.2.49/4425_grsec_remove_EI_PAX.patch diff --git a/3.2.48/4427_force_XATTR_PAX_tmpfs.patch b/3.2.49/4427_force_XATTR_PAX_tmpfs.patch index 8c7a533..8c7a533 100644 --- a/3.2.48/4427_force_XATTR_PAX_tmpfs.patch +++ b/3.2.49/4427_force_XATTR_PAX_tmpfs.patch diff --git a/3.2.48/4430_grsec-remove-localversion-grsec.patch b/3.2.49/4430_grsec-remove-localversion-grsec.patch index 31cf878..31cf878 100644 --- a/3.2.48/4430_grsec-remove-localversion-grsec.patch +++ b/3.2.49/4430_grsec-remove-localversion-grsec.patch diff --git a/3.2.48/4435_grsec-mute-warnings.patch b/3.2.49/4435_grsec-mute-warnings.patch index f099757..f099757 100644 --- a/3.2.48/4435_grsec-mute-warnings.patch +++ b/3.2.49/4435_grsec-mute-warnings.patch diff --git a/3.2.48/4440_grsec-remove-protected-paths.patch b/3.2.49/4440_grsec-remove-protected-paths.patch index 637934a..637934a 100644 --- a/3.2.48/4440_grsec-remove-protected-paths.patch +++ b/3.2.49/4440_grsec-remove-protected-paths.patch diff --git a/3.2.48/4450_grsec-kconfig-default-gids.patch b/3.2.49/4450_grsec-kconfig-default-gids.patch index c882e28..c882e28 100644 --- a/3.2.48/4450_grsec-kconfig-default-gids.patch +++ b/3.2.49/4450_grsec-kconfig-default-gids.patch diff --git a/3.2.48/4465_selinux-avc_audit-log-curr_ip.patch b/3.2.49/4465_selinux-avc_audit-log-curr_ip.patch index 5607ab4..5607ab4 100644 --- a/3.2.48/4465_selinux-avc_audit-log-curr_ip.patch +++ b/3.2.49/4465_selinux-avc_audit-log-curr_ip.patch diff --git a/3.2.48/4470_disable-compat_vdso.patch b/3.2.49/4470_disable-compat_vdso.patch index 99c691b..99c691b 100644 --- a/3.2.48/4470_disable-compat_vdso.patch +++ b/3.2.49/4470_disable-compat_vdso.patch diff --git a/3.2.48/4475_emutramp_default_on.patch b/3.2.49/4475_emutramp_default_on.patch index 30f6978..30f6978 100644 --- a/3.2.48/4475_emutramp_default_on.patch +++ b/3.2.49/4475_emutramp_default_on.patch |