summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2016-02-19 21:11:23 -0500
committerAnthony G. Basile <blueness@gentoo.org>2016-02-19 21:11:23 -0500
commitd47ea9080b76a7445e8a36545c539b2a62c31faa (patch)
tree987ca58fb34764c947b2e668c7fd6179cb04b624
parentgrsecurity-3.1-4.3.5-201602070910 (diff)
downloadhardened-patchset-d47ea9080b76a7445e8a36545c539b2a62c31faa.tar.gz
hardened-patchset-d47ea9080b76a7445e8a36545c539b2a62c31faa.tar.bz2
hardened-patchset-d47ea9080b76a7445e8a36545c539b2a62c31faa.zip
grsecurity-3.1-4.4.2-20160218204820160218
-rw-r--r--4.4.2/0000_README (renamed from 4.3.5/0000_README)6
-rw-r--r--4.4.2/1001_linux-4.4.2.patch5320
-rw-r--r--4.4.2/4420_grsecurity-3.1-4.4.2-201602182048.patch (renamed from 4.3.5/4420_grsecurity-3.1-4.3.5-201602070910.patch)14768
-rw-r--r--4.4.2/4425_grsec_remove_EI_PAX.patch (renamed from 4.3.5/4425_grsec_remove_EI_PAX.patch)0
-rw-r--r--4.4.2/4427_force_XATTR_PAX_tmpfs.patch (renamed from 4.3.5/4427_force_XATTR_PAX_tmpfs.patch)4
-rw-r--r--4.4.2/4430_grsec-remove-localversion-grsec.patch (renamed from 4.3.5/4430_grsec-remove-localversion-grsec.patch)0
-rw-r--r--4.4.2/4435_grsec-mute-warnings.patch (renamed from 4.3.5/4435_grsec-mute-warnings.patch)0
-rw-r--r--4.4.2/4440_grsec-remove-protected-paths.patch (renamed from 4.3.5/4440_grsec-remove-protected-paths.patch)0
-rw-r--r--4.4.2/4450_grsec-kconfig-default-gids.patch (renamed from 4.3.5/4450_grsec-kconfig-default-gids.patch)10
-rw-r--r--4.4.2/4465_selinux-avc_audit-log-curr_ip.patch (renamed from 4.3.5/4465_selinux-avc_audit-log-curr_ip.patch)2
-rw-r--r--4.4.2/4470_disable-compat_vdso.patch (renamed from 4.3.5/4470_disable-compat_vdso.patch)6
-rw-r--r--4.4.2/4475_emutramp_default_on.patch (renamed from 4.3.5/4475_emutramp_default_on.patch)0
12 files changed, 12210 insertions, 7906 deletions
diff --git a/4.3.5/0000_README b/4.4.2/0000_README
index 40c470e..780df77 100644
--- a/4.3.5/0000_README
+++ b/4.4.2/0000_README
@@ -2,7 +2,11 @@ README
-----------------------------------------------------------------------------
Individual Patch Descriptions:
-----------------------------------------------------------------------------
-Patch: 4420_grsecurity-3.1-4.3.5-201602070910.patch
+Patch: 1001_linux-4.4.2.patch
+From: http://www.kernel.org
+Desc: Linux 4.4.2
+
+Patch: 4420_grsecurity-3.1-4.4.2-201602182048.patch
From: http://www.grsecurity.net
Desc: hardened-sources base patch from upstream grsecurity
diff --git a/4.4.2/1001_linux-4.4.2.patch b/4.4.2/1001_linux-4.4.2.patch
new file mode 100644
index 0000000..d190146
--- /dev/null
+++ b/4.4.2/1001_linux-4.4.2.patch
@@ -0,0 +1,5320 @@
+diff --git a/Makefile b/Makefile
+index c6a265b..e7a2958 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,6 +1,6 @@
+ VERSION = 4
+ PATCHLEVEL = 4
+-SUBLEVEL = 1
++SUBLEVEL = 2
+ EXTRAVERSION =
+ NAME = Blurry Fish Butt
+
+diff --git a/arch/parisc/include/asm/hugetlb.h b/arch/parisc/include/asm/hugetlb.h
+index 7d56a9c..a65d888 100644
+--- a/arch/parisc/include/asm/hugetlb.h
++++ b/arch/parisc/include/asm/hugetlb.h
+@@ -54,24 +54,12 @@ static inline pte_t huge_pte_wrprotect(pte_t pte)
+ return pte_wrprotect(pte);
+ }
+
+-static inline void huge_ptep_set_wrprotect(struct mm_struct *mm,
+- unsigned long addr, pte_t *ptep)
+-{
+- pte_t old_pte = *ptep;
+- set_huge_pte_at(mm, addr, ptep, pte_wrprotect(old_pte));
+-}
++void huge_ptep_set_wrprotect(struct mm_struct *mm,
++ unsigned long addr, pte_t *ptep);
+
+-static inline int huge_ptep_set_access_flags(struct vm_area_struct *vma,
++int huge_ptep_set_access_flags(struct vm_area_struct *vma,
+ unsigned long addr, pte_t *ptep,
+- pte_t pte, int dirty)
+-{
+- int changed = !pte_same(*ptep, pte);
+- if (changed) {
+- set_huge_pte_at(vma->vm_mm, addr, ptep, pte);
+- flush_tlb_page(vma, addr);
+- }
+- return changed;
+-}
++ pte_t pte, int dirty);
+
+ static inline pte_t huge_ptep_get(pte_t *ptep)
+ {
+diff --git a/arch/parisc/include/uapi/asm/siginfo.h b/arch/parisc/include/uapi/asm/siginfo.h
+index d703472..1c75565 100644
+--- a/arch/parisc/include/uapi/asm/siginfo.h
++++ b/arch/parisc/include/uapi/asm/siginfo.h
+@@ -1,6 +1,10 @@
+ #ifndef _PARISC_SIGINFO_H
+ #define _PARISC_SIGINFO_H
+
++#if defined(__LP64__)
++#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
++#endif
++
+ #include <asm-generic/siginfo.h>
+
+ #undef NSIGTRAP
+diff --git a/arch/parisc/mm/hugetlbpage.c b/arch/parisc/mm/hugetlbpage.c
+index f6fdc77..54ba392 100644
+--- a/arch/parisc/mm/hugetlbpage.c
++++ b/arch/parisc/mm/hugetlbpage.c
+@@ -105,15 +105,13 @@ static inline void purge_tlb_entries_huge(struct mm_struct *mm, unsigned long ad
+ addr |= _HUGE_PAGE_SIZE_ENCODING_DEFAULT;
+
+ for (i = 0; i < (1 << (HPAGE_SHIFT-REAL_HPAGE_SHIFT)); i++) {
+- mtsp(mm->context, 1);
+- pdtlb(addr);
+- if (unlikely(split_tlb))
+- pitlb(addr);
++ purge_tlb_entries(mm, addr);
+ addr += (1UL << REAL_HPAGE_SHIFT);
+ }
+ }
+
+-void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
++/* __set_huge_pte_at() must be called holding the pa_tlb_lock. */
++static void __set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
+ pte_t *ptep, pte_t entry)
+ {
+ unsigned long addr_start;
+@@ -123,14 +121,9 @@ void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
+ addr_start = addr;
+
+ for (i = 0; i < (1 << HUGETLB_PAGE_ORDER); i++) {
+- /* Directly write pte entry. We could call set_pte_at(mm, addr, ptep, entry)
+- * instead, but then we get double locking on pa_tlb_lock. */
+- *ptep = entry;
++ set_pte(ptep, entry);
+ ptep++;
+
+- /* Drop the PAGE_SIZE/non-huge tlb entry */
+- purge_tlb_entries(mm, addr);
+-
+ addr += PAGE_SIZE;
+ pte_val(entry) += PAGE_SIZE;
+ }
+@@ -138,18 +131,61 @@ void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
+ purge_tlb_entries_huge(mm, addr_start);
+ }
+
++void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
++ pte_t *ptep, pte_t entry)
++{
++ unsigned long flags;
++
++ purge_tlb_start(flags);
++ __set_huge_pte_at(mm, addr, ptep, entry);
++ purge_tlb_end(flags);
++}
++
+
+ pte_t huge_ptep_get_and_clear(struct mm_struct *mm, unsigned long addr,
+ pte_t *ptep)
+ {
++ unsigned long flags;
+ pte_t entry;
+
++ purge_tlb_start(flags);
+ entry = *ptep;
+- set_huge_pte_at(mm, addr, ptep, __pte(0));
++ __set_huge_pte_at(mm, addr, ptep, __pte(0));
++ purge_tlb_end(flags);
+
+ return entry;
+ }
+
++
++void huge_ptep_set_wrprotect(struct mm_struct *mm,
++ unsigned long addr, pte_t *ptep)
++{
++ unsigned long flags;
++ pte_t old_pte;
++
++ purge_tlb_start(flags);
++ old_pte = *ptep;
++ __set_huge_pte_at(mm, addr, ptep, pte_wrprotect(old_pte));
++ purge_tlb_end(flags);
++}
++
++int huge_ptep_set_access_flags(struct vm_area_struct *vma,
++ unsigned long addr, pte_t *ptep,
++ pte_t pte, int dirty)
++{
++ unsigned long flags;
++ int changed;
++
++ purge_tlb_start(flags);
++ changed = !pte_same(*ptep, pte);
++ if (changed) {
++ __set_huge_pte_at(vma->vm_mm, addr, ptep, pte);
++ }
++ purge_tlb_end(flags);
++ return changed;
++}
++
++
+ int pmd_huge(pmd_t pmd)
+ {
+ return 0;
+diff --git a/arch/x86/crypto/chacha20-ssse3-x86_64.S b/arch/x86/crypto/chacha20-ssse3-x86_64.S
+index 712b130..3a33124 100644
+--- a/arch/x86/crypto/chacha20-ssse3-x86_64.S
++++ b/arch/x86/crypto/chacha20-ssse3-x86_64.S
+@@ -157,7 +157,9 @@ ENTRY(chacha20_4block_xor_ssse3)
+ # done with the slightly better performing SSSE3 byte shuffling,
+ # 7/12-bit word rotation uses traditional shift+OR.
+
+- sub $0x40,%rsp
++ mov %rsp,%r11
++ sub $0x80,%rsp
++ and $~63,%rsp
+
+ # x0..15[0-3] = s0..3[0..3]
+ movq 0x00(%rdi),%xmm1
+@@ -620,6 +622,6 @@ ENTRY(chacha20_4block_xor_ssse3)
+ pxor %xmm1,%xmm15
+ movdqu %xmm15,0xf0(%rsi)
+
+- add $0x40,%rsp
++ mov %r11,%rsp
+ ret
+ ENDPROC(chacha20_4block_xor_ssse3)
+diff --git a/block/blk-merge.c b/block/blk-merge.c
+index e01405a..b966db8 100644
+--- a/block/blk-merge.c
++++ b/block/blk-merge.c
+@@ -68,6 +68,18 @@ static struct bio *blk_bio_write_same_split(struct request_queue *q,
+ return bio_split(bio, q->limits.max_write_same_sectors, GFP_NOIO, bs);
+ }
+
++static inline unsigned get_max_io_size(struct request_queue *q,
++ struct bio *bio)
++{
++ unsigned sectors = blk_max_size_offset(q, bio->bi_iter.bi_sector);
++ unsigned mask = queue_logical_block_size(q) - 1;
++
++ /* aligned to logical block size */
++ sectors &= ~(mask >> 9);
++
++ return sectors;
++}
++
+ static struct bio *blk_bio_segment_split(struct request_queue *q,
+ struct bio *bio,
+ struct bio_set *bs,
+@@ -79,11 +91,9 @@ static struct bio *blk_bio_segment_split(struct request_queue *q,
+ unsigned front_seg_size = bio->bi_seg_front_size;
+ bool do_split = true;
+ struct bio *new = NULL;
++ const unsigned max_sectors = get_max_io_size(q, bio);
+
+ bio_for_each_segment(bv, bio, iter) {
+- if (sectors + (bv.bv_len >> 9) > queue_max_sectors(q))
+- goto split;
+-
+ /*
+ * If the queue doesn't support SG gaps and adding this
+ * offset would create a gap, disallow it.
+@@ -91,6 +101,21 @@ static struct bio *blk_bio_segment_split(struct request_queue *q,
+ if (bvprvp && bvec_gap_to_prev(q, bvprvp, bv.bv_offset))
+ goto split;
+
++ if (sectors + (bv.bv_len >> 9) > max_sectors) {
++ /*
++ * Consider this a new segment if we're splitting in
++ * the middle of this vector.
++ */
++ if (nsegs < queue_max_segments(q) &&
++ sectors < max_sectors) {
++ nsegs++;
++ sectors = max_sectors;
++ }
++ if (sectors)
++ goto split;
++ /* Make this single bvec as the 1st segment */
++ }
++
+ if (bvprvp && blk_queue_cluster(q)) {
+ if (seg_size + bv.bv_len > queue_max_segment_size(q))
+ goto new_segment;
+diff --git a/crypto/af_alg.c b/crypto/af_alg.c
+index a8e7aa3..f5e18c2 100644
+--- a/crypto/af_alg.c
++++ b/crypto/af_alg.c
+@@ -76,6 +76,8 @@ int af_alg_register_type(const struct af_alg_type *type)
+ goto unlock;
+
+ type->ops->owner = THIS_MODULE;
++ if (type->ops_nokey)
++ type->ops_nokey->owner = THIS_MODULE;
+ node->type = type;
+ list_add(&node->list, &alg_types);
+ err = 0;
+@@ -125,6 +127,26 @@ int af_alg_release(struct socket *sock)
+ }
+ EXPORT_SYMBOL_GPL(af_alg_release);
+
++void af_alg_release_parent(struct sock *sk)
++{
++ struct alg_sock *ask = alg_sk(sk);
++ unsigned int nokey = ask->nokey_refcnt;
++ bool last = nokey && !ask->refcnt;
++
++ sk = ask->parent;
++ ask = alg_sk(sk);
++
++ lock_sock(sk);
++ ask->nokey_refcnt -= nokey;
++ if (!last)
++ last = !--ask->refcnt;
++ release_sock(sk);
++
++ if (last)
++ sock_put(sk);
++}
++EXPORT_SYMBOL_GPL(af_alg_release_parent);
++
+ static int alg_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ {
+ const u32 forbidden = CRYPTO_ALG_INTERNAL;
+@@ -133,6 +155,7 @@ static int alg_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ struct sockaddr_alg *sa = (void *)uaddr;
+ const struct af_alg_type *type;
+ void *private;
++ int err;
+
+ if (sock->state == SS_CONNECTED)
+ return -EINVAL;
+@@ -160,16 +183,22 @@ static int alg_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ return PTR_ERR(private);
+ }
+
++ err = -EBUSY;
+ lock_sock(sk);
++ if (ask->refcnt | ask->nokey_refcnt)
++ goto unlock;
+
+ swap(ask->type, type);
+ swap(ask->private, private);
+
++ err = 0;
++
++unlock:
+ release_sock(sk);
+
+ alg_do_release(type, private);
+
+- return 0;
++ return err;
+ }
+
+ static int alg_setkey(struct sock *sk, char __user *ukey,
+@@ -202,11 +231,15 @@ static int alg_setsockopt(struct socket *sock, int level, int optname,
+ struct sock *sk = sock->sk;
+ struct alg_sock *ask = alg_sk(sk);
+ const struct af_alg_type *type;
+- int err = -ENOPROTOOPT;
++ int err = -EBUSY;
+
+ lock_sock(sk);
++ if (ask->refcnt)
++ goto unlock;
++
+ type = ask->type;
+
++ err = -ENOPROTOOPT;
+ if (level != SOL_ALG || !type)
+ goto unlock;
+
+@@ -238,6 +271,7 @@ int af_alg_accept(struct sock *sk, struct socket *newsock)
+ struct alg_sock *ask = alg_sk(sk);
+ const struct af_alg_type *type;
+ struct sock *sk2;
++ unsigned int nokey;
+ int err;
+
+ lock_sock(sk);
+@@ -257,20 +291,29 @@ int af_alg_accept(struct sock *sk, struct socket *newsock)
+ security_sk_clone(sk, sk2);
+
+ err = type->accept(ask->private, sk2);
+- if (err) {
+- sk_free(sk2);
++
++ nokey = err == -ENOKEY;
++ if (nokey && type->accept_nokey)
++ err = type->accept_nokey(ask->private, sk2);
++
++ if (err)
+ goto unlock;
+- }
+
+ sk2->sk_family = PF_ALG;
+
+- sock_hold(sk);
++ if (nokey || !ask->refcnt++)
++ sock_hold(sk);
++ ask->nokey_refcnt += nokey;
+ alg_sk(sk2)->parent = sk;
+ alg_sk(sk2)->type = type;
++ alg_sk(sk2)->nokey_refcnt = nokey;
+
+ newsock->ops = type->ops;
+ newsock->state = SS_CONNECTED;
+
++ if (nokey)
++ newsock->ops = type->ops_nokey;
++
+ err = 0;
+
+ unlock:
+diff --git a/crypto/ahash.c b/crypto/ahash.c
+index 9c1dc8d..d19b523 100644
+--- a/crypto/ahash.c
++++ b/crypto/ahash.c
+@@ -451,6 +451,7 @@ static int crypto_ahash_init_tfm(struct crypto_tfm *tfm)
+ struct ahash_alg *alg = crypto_ahash_alg(hash);
+
+ hash->setkey = ahash_nosetkey;
++ hash->has_setkey = false;
+ hash->export = ahash_no_export;
+ hash->import = ahash_no_import;
+
+@@ -463,8 +464,10 @@ static int crypto_ahash_init_tfm(struct crypto_tfm *tfm)
+ hash->finup = alg->finup ?: ahash_def_finup;
+ hash->digest = alg->digest;
+
+- if (alg->setkey)
++ if (alg->setkey) {
+ hash->setkey = alg->setkey;
++ hash->has_setkey = true;
++ }
+ if (alg->export)
+ hash->export = alg->export;
+ if (alg->import)
+diff --git a/crypto/algif_hash.c b/crypto/algif_hash.c
+index b4c24fe..68a5cea 100644
+--- a/crypto/algif_hash.c
++++ b/crypto/algif_hash.c
+@@ -34,6 +34,11 @@ struct hash_ctx {
+ struct ahash_request req;
+ };
+
++struct algif_hash_tfm {
++ struct crypto_ahash *hash;
++ bool has_key;
++};
++
+ static int hash_sendmsg(struct socket *sock, struct msghdr *msg,
+ size_t ignored)
+ {
+@@ -49,7 +54,8 @@ static int hash_sendmsg(struct socket *sock, struct msghdr *msg,
+
+ lock_sock(sk);
+ if (!ctx->more) {
+- err = crypto_ahash_init(&ctx->req);
++ err = af_alg_wait_for_completion(crypto_ahash_init(&ctx->req),
++ &ctx->completion);
+ if (err)
+ goto unlock;
+ }
+@@ -120,6 +126,7 @@ static ssize_t hash_sendpage(struct socket *sock, struct page *page,
+ } else {
+ if (!ctx->more) {
+ err = crypto_ahash_init(&ctx->req);
++ err = af_alg_wait_for_completion(err, &ctx->completion);
+ if (err)
+ goto unlock;
+ }
+@@ -235,19 +242,151 @@ static struct proto_ops algif_hash_ops = {
+ .accept = hash_accept,
+ };
+
++static int hash_check_key(struct socket *sock)
++{
++ int err = 0;
++ struct sock *psk;
++ struct alg_sock *pask;
++ struct algif_hash_tfm *tfm;
++ struct sock *sk = sock->sk;
++ struct alg_sock *ask = alg_sk(sk);
++
++ lock_sock(sk);
++ if (ask->refcnt)
++ goto unlock_child;
++
++ psk = ask->parent;
++ pask = alg_sk(ask->parent);
++ tfm = pask->private;
++
++ err = -ENOKEY;
++ lock_sock_nested(psk, SINGLE_DEPTH_NESTING);
++ if (!tfm->has_key)
++ goto unlock;
++
++ if (!pask->refcnt++)
++ sock_hold(psk);
++
++ ask->refcnt = 1;
++ sock_put(psk);
++
++ err = 0;
++
++unlock:
++ release_sock(psk);
++unlock_child:
++ release_sock(sk);
++
++ return err;
++}
++
++static int hash_sendmsg_nokey(struct socket *sock, struct msghdr *msg,
++ size_t size)
++{
++ int err;
++
++ err = hash_check_key(sock);
++ if (err)
++ return err;
++
++ return hash_sendmsg(sock, msg, size);
++}
++
++static ssize_t hash_sendpage_nokey(struct socket *sock, struct page *page,
++ int offset, size_t size, int flags)
++{
++ int err;
++
++ err = hash_check_key(sock);
++ if (err)
++ return err;
++
++ return hash_sendpage(sock, page, offset, size, flags);
++}
++
++static int hash_recvmsg_nokey(struct socket *sock, struct msghdr *msg,
++ size_t ignored, int flags)
++{
++ int err;
++
++ err = hash_check_key(sock);
++ if (err)
++ return err;
++
++ return hash_recvmsg(sock, msg, ignored, flags);
++}
++
++static int hash_accept_nokey(struct socket *sock, struct socket *newsock,
++ int flags)
++{
++ int err;
++
++ err = hash_check_key(sock);
++ if (err)
++ return err;
++
++ return hash_accept(sock, newsock, flags);
++}
++
++static struct proto_ops algif_hash_ops_nokey = {
++ .family = PF_ALG,
++
++ .connect = sock_no_connect,
++ .socketpair = sock_no_socketpair,
++ .getname = sock_no_getname,
++ .ioctl = sock_no_ioctl,
++ .listen = sock_no_listen,
++ .shutdown = sock_no_shutdown,
++ .getsockopt = sock_no_getsockopt,
++ .mmap = sock_no_mmap,
++ .bind = sock_no_bind,
++ .setsockopt = sock_no_setsockopt,
++ .poll = sock_no_poll,
++
++ .release = af_alg_release,
++ .sendmsg = hash_sendmsg_nokey,
++ .sendpage = hash_sendpage_nokey,
++ .recvmsg = hash_recvmsg_nokey,
++ .accept = hash_accept_nokey,
++};
++
+ static void *hash_bind(const char *name, u32 type, u32 mask)
+ {
+- return crypto_alloc_ahash(name, type, mask);
++ struct algif_hash_tfm *tfm;
++ struct crypto_ahash *hash;
++
++ tfm = kzalloc(sizeof(*tfm), GFP_KERNEL);
++ if (!tfm)
++ return ERR_PTR(-ENOMEM);
++
++ hash = crypto_alloc_ahash(name, type, mask);
++ if (IS_ERR(hash)) {
++ kfree(tfm);
++ return ERR_CAST(hash);
++ }
++
++ tfm->hash = hash;
++
++ return tfm;
+ }
+
+ static void hash_release(void *private)
+ {
+- crypto_free_ahash(private);
++ struct algif_hash_tfm *tfm = private;
++
++ crypto_free_ahash(tfm->hash);
++ kfree(tfm);
+ }
+
+ static int hash_setkey(void *private, const u8 *key, unsigned int keylen)
+ {
+- return crypto_ahash_setkey(private, key, keylen);
++ struct algif_hash_tfm *tfm = private;
++ int err;
++
++ err = crypto_ahash_setkey(tfm->hash, key, keylen);
++ tfm->has_key = !err;
++
++ return err;
+ }
+
+ static void hash_sock_destruct(struct sock *sk)
+@@ -261,12 +400,14 @@ static void hash_sock_destruct(struct sock *sk)
+ af_alg_release_parent(sk);
+ }
+
+-static int hash_accept_parent(void *private, struct sock *sk)
++static int hash_accept_parent_nokey(void *private, struct sock *sk)
+ {
+ struct hash_ctx *ctx;
+ struct alg_sock *ask = alg_sk(sk);
+- unsigned len = sizeof(*ctx) + crypto_ahash_reqsize(private);
+- unsigned ds = crypto_ahash_digestsize(private);
++ struct algif_hash_tfm *tfm = private;
++ struct crypto_ahash *hash = tfm->hash;
++ unsigned len = sizeof(*ctx) + crypto_ahash_reqsize(hash);
++ unsigned ds = crypto_ahash_digestsize(hash);
+
+ ctx = sock_kmalloc(sk, len, GFP_KERNEL);
+ if (!ctx)
+@@ -286,7 +427,7 @@ static int hash_accept_parent(void *private, struct sock *sk)
+
+ ask->private = ctx;
+
+- ahash_request_set_tfm(&ctx->req, private);
++ ahash_request_set_tfm(&ctx->req, hash);
+ ahash_request_set_callback(&ctx->req, CRYPTO_TFM_REQ_MAY_BACKLOG,
+ af_alg_complete, &ctx->completion);
+
+@@ -295,12 +436,24 @@ static int hash_accept_parent(void *private, struct sock *sk)
+ return 0;
+ }
+
++static int hash_accept_parent(void *private, struct sock *sk)
++{
++ struct algif_hash_tfm *tfm = private;
++
++ if (!tfm->has_key && crypto_ahash_has_setkey(tfm->hash))
++ return -ENOKEY;
++
++ return hash_accept_parent_nokey(private, sk);
++}
++
+ static const struct af_alg_type algif_type_hash = {
+ .bind = hash_bind,
+ .release = hash_release,
+ .setkey = hash_setkey,
+ .accept = hash_accept_parent,
++ .accept_nokey = hash_accept_parent_nokey,
+ .ops = &algif_hash_ops,
++ .ops_nokey = &algif_hash_ops_nokey,
+ .name = "hash",
+ .owner = THIS_MODULE
+ };
+diff --git a/crypto/algif_skcipher.c b/crypto/algif_skcipher.c
+index 634b4d1..f5e9f93 100644
+--- a/crypto/algif_skcipher.c
++++ b/crypto/algif_skcipher.c
+@@ -31,6 +31,11 @@ struct skcipher_sg_list {
+ struct scatterlist sg[0];
+ };
+
++struct skcipher_tfm {
++ struct crypto_skcipher *skcipher;
++ bool has_key;
++};
++
+ struct skcipher_ctx {
+ struct list_head tsgl;
+ struct af_alg_sgl rsgl;
+@@ -60,18 +65,10 @@ struct skcipher_async_req {
+ struct skcipher_async_rsgl first_sgl;
+ struct list_head list;
+ struct scatterlist *tsg;
+- char iv[];
++ atomic_t *inflight;
++ struct skcipher_request req;
+ };
+
+-#define GET_SREQ(areq, ctx) (struct skcipher_async_req *)((char *)areq + \
+- crypto_skcipher_reqsize(crypto_skcipher_reqtfm(&ctx->req)))
+-
+-#define GET_REQ_SIZE(ctx) \
+- crypto_skcipher_reqsize(crypto_skcipher_reqtfm(&ctx->req))
+-
+-#define GET_IV_SIZE(ctx) \
+- crypto_skcipher_ivsize(crypto_skcipher_reqtfm(&ctx->req))
+-
+ #define MAX_SGL_ENTS ((4096 - sizeof(struct skcipher_sg_list)) / \
+ sizeof(struct scatterlist) - 1)
+
+@@ -97,15 +94,12 @@ static void skcipher_free_async_sgls(struct skcipher_async_req *sreq)
+
+ static void skcipher_async_cb(struct crypto_async_request *req, int err)
+ {
+- struct sock *sk = req->data;
+- struct alg_sock *ask = alg_sk(sk);
+- struct skcipher_ctx *ctx = ask->private;
+- struct skcipher_async_req *sreq = GET_SREQ(req, ctx);
++ struct skcipher_async_req *sreq = req->data;
+ struct kiocb *iocb = sreq->iocb;
+
+- atomic_dec(&ctx->inflight);
++ atomic_dec(sreq->inflight);
+ skcipher_free_async_sgls(sreq);
+- kfree(req);
++ kzfree(sreq);
+ iocb->ki_complete(iocb, err, err);
+ }
+
+@@ -301,8 +295,11 @@ static int skcipher_sendmsg(struct socket *sock, struct msghdr *msg,
+ {
+ struct sock *sk = sock->sk;
+ struct alg_sock *ask = alg_sk(sk);
++ struct sock *psk = ask->parent;
++ struct alg_sock *pask = alg_sk(psk);
+ struct skcipher_ctx *ctx = ask->private;
+- struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(&ctx->req);
++ struct skcipher_tfm *skc = pask->private;
++ struct crypto_skcipher *tfm = skc->skcipher;
+ unsigned ivsize = crypto_skcipher_ivsize(tfm);
+ struct skcipher_sg_list *sgl;
+ struct af_alg_control con = {};
+@@ -387,7 +384,8 @@ static int skcipher_sendmsg(struct socket *sock, struct msghdr *msg,
+
+ sgl = list_entry(ctx->tsgl.prev, struct skcipher_sg_list, list);
+ sg = sgl->sg;
+- sg_unmark_end(sg + sgl->cur);
++ if (sgl->cur)
++ sg_unmark_end(sg + sgl->cur - 1);
+ do {
+ i = sgl->cur;
+ plen = min_t(int, len, PAGE_SIZE);
+@@ -503,37 +501,43 @@ static int skcipher_recvmsg_async(struct socket *sock, struct msghdr *msg,
+ {
+ struct sock *sk = sock->sk;
+ struct alg_sock *ask = alg_sk(sk);
++ struct sock *psk = ask->parent;
++ struct alg_sock *pask = alg_sk(psk);
+ struct skcipher_ctx *ctx = ask->private;
++ struct skcipher_tfm *skc = pask->private;
++ struct crypto_skcipher *tfm = skc->skcipher;
+ struct skcipher_sg_list *sgl;
+ struct scatterlist *sg;
+ struct skcipher_async_req *sreq;
+ struct skcipher_request *req;
+ struct skcipher_async_rsgl *last_rsgl = NULL;
+- unsigned int txbufs = 0, len = 0, tx_nents = skcipher_all_sg_nents(ctx);
+- unsigned int reqlen = sizeof(struct skcipher_async_req) +
+- GET_REQ_SIZE(ctx) + GET_IV_SIZE(ctx);
++ unsigned int txbufs = 0, len = 0, tx_nents;
++ unsigned int reqsize = crypto_skcipher_reqsize(tfm);
++ unsigned int ivsize = crypto_skcipher_ivsize(tfm);
+ int err = -ENOMEM;
+ bool mark = false;
++ char *iv;
+
+- lock_sock(sk);
+- req = kmalloc(reqlen, GFP_KERNEL);
+- if (unlikely(!req))
+- goto unlock;
++ sreq = kzalloc(sizeof(*sreq) + reqsize + ivsize, GFP_KERNEL);
++ if (unlikely(!sreq))
++ goto out;
+
+- sreq = GET_SREQ(req, ctx);
++ req = &sreq->req;
++ iv = (char *)(req + 1) + reqsize;
+ sreq->iocb = msg->msg_iocb;
+- memset(&sreq->first_sgl, '\0', sizeof(struct skcipher_async_rsgl));
+ INIT_LIST_HEAD(&sreq->list);
++ sreq->inflight = &ctx->inflight;
++
++ lock_sock(sk);
++ tx_nents = skcipher_all_sg_nents(ctx);
+ sreq->tsg = kcalloc(tx_nents, sizeof(*sg), GFP_KERNEL);
+- if (unlikely(!sreq->tsg)) {
+- kfree(req);
++ if (unlikely(!sreq->tsg))
+ goto unlock;
+- }
+ sg_init_table(sreq->tsg, tx_nents);
+- memcpy(sreq->iv, ctx->iv, GET_IV_SIZE(ctx));
+- skcipher_request_set_tfm(req, crypto_skcipher_reqtfm(&ctx->req));
+- skcipher_request_set_callback(req, CRYPTO_TFM_REQ_MAY_BACKLOG,
+- skcipher_async_cb, sk);
++ memcpy(iv, ctx->iv, ivsize);
++ skcipher_request_set_tfm(req, tfm);
++ skcipher_request_set_callback(req, CRYPTO_TFM_REQ_MAY_SLEEP,
++ skcipher_async_cb, sreq);
+
+ while (iov_iter_count(&msg->msg_iter)) {
+ struct skcipher_async_rsgl *rsgl;
+@@ -609,20 +613,22 @@ static int skcipher_recvmsg_async(struct socket *sock, struct msghdr *msg,
+ sg_mark_end(sreq->tsg + txbufs - 1);
+
+ skcipher_request_set_crypt(req, sreq->tsg, sreq->first_sgl.sgl.sg,
+- len, sreq->iv);
++ len, iv);
+ err = ctx->enc ? crypto_skcipher_encrypt(req) :
+ crypto_skcipher_decrypt(req);
+ if (err == -EINPROGRESS) {
+ atomic_inc(&ctx->inflight);
+ err = -EIOCBQUEUED;
++ sreq = NULL;
+ goto unlock;
+ }
+ free:
+ skcipher_free_async_sgls(sreq);
+- kfree(req);
+ unlock:
+ skcipher_wmem_wakeup(sk);
+ release_sock(sk);
++ kzfree(sreq);
++out:
+ return err;
+ }
+
+@@ -631,9 +637,12 @@ static int skcipher_recvmsg_sync(struct socket *sock, struct msghdr *msg,
+ {
+ struct sock *sk = sock->sk;
+ struct alg_sock *ask = alg_sk(sk);
++ struct sock *psk = ask->parent;
++ struct alg_sock *pask = alg_sk(psk);
+ struct skcipher_ctx *ctx = ask->private;
+- unsigned bs = crypto_skcipher_blocksize(crypto_skcipher_reqtfm(
+- &ctx->req));
++ struct skcipher_tfm *skc = pask->private;
++ struct crypto_skcipher *tfm = skc->skcipher;
++ unsigned bs = crypto_skcipher_blocksize(tfm);
+ struct skcipher_sg_list *sgl;
+ struct scatterlist *sg;
+ int err = -EAGAIN;
+@@ -642,13 +651,6 @@ static int skcipher_recvmsg_sync(struct socket *sock, struct msghdr *msg,
+
+ lock_sock(sk);
+ while (msg_data_left(msg)) {
+- sgl = list_first_entry(&ctx->tsgl,
+- struct skcipher_sg_list, list);
+- sg = sgl->sg;
+-
+- while (!sg->length)
+- sg++;
+-
+ if (!ctx->used) {
+ err = skcipher_wait_for_data(sk, flags);
+ if (err)
+@@ -669,6 +671,13 @@ static int skcipher_recvmsg_sync(struct socket *sock, struct msghdr *msg,
+ if (!used)
+ goto free;
+
++ sgl = list_first_entry(&ctx->tsgl,
++ struct skcipher_sg_list, list);
++ sg = sgl->sg;
++
++ while (!sg->length)
++ sg++;
++
+ skcipher_request_set_crypt(&ctx->req, sg, ctx->rsgl.sg, used,
+ ctx->iv);
+
+@@ -748,19 +757,139 @@ static struct proto_ops algif_skcipher_ops = {
+ .poll = skcipher_poll,
+ };
+
++static int skcipher_check_key(struct socket *sock)
++{
++ int err = 0;
++ struct sock *psk;
++ struct alg_sock *pask;
++ struct skcipher_tfm *tfm;
++ struct sock *sk = sock->sk;
++ struct alg_sock *ask = alg_sk(sk);
++
++ lock_sock(sk);
++ if (ask->refcnt)
++ goto unlock_child;
++
++ psk = ask->parent;
++ pask = alg_sk(ask->parent);
++ tfm = pask->private;
++
++ err = -ENOKEY;
++ lock_sock_nested(psk, SINGLE_DEPTH_NESTING);
++ if (!tfm->has_key)
++ goto unlock;
++
++ if (!pask->refcnt++)
++ sock_hold(psk);
++
++ ask->refcnt = 1;
++ sock_put(psk);
++
++ err = 0;
++
++unlock:
++ release_sock(psk);
++unlock_child:
++ release_sock(sk);
++
++ return err;
++}
++
++static int skcipher_sendmsg_nokey(struct socket *sock, struct msghdr *msg,
++ size_t size)
++{
++ int err;
++
++ err = skcipher_check_key(sock);
++ if (err)
++ return err;
++
++ return skcipher_sendmsg(sock, msg, size);
++}
++
++static ssize_t skcipher_sendpage_nokey(struct socket *sock, struct page *page,
++ int offset, size_t size, int flags)
++{
++ int err;
++
++ err = skcipher_check_key(sock);
++ if (err)
++ return err;
++
++ return skcipher_sendpage(sock, page, offset, size, flags);
++}
++
++static int skcipher_recvmsg_nokey(struct socket *sock, struct msghdr *msg,
++ size_t ignored, int flags)
++{
++ int err;
++
++ err = skcipher_check_key(sock);
++ if (err)
++ return err;
++
++ return skcipher_recvmsg(sock, msg, ignored, flags);
++}
++
++static struct proto_ops algif_skcipher_ops_nokey = {
++ .family = PF_ALG,
++
++ .connect = sock_no_connect,
++ .socketpair = sock_no_socketpair,
++ .getname = sock_no_getname,
++ .ioctl = sock_no_ioctl,
++ .listen = sock_no_listen,
++ .shutdown = sock_no_shutdown,
++ .getsockopt = sock_no_getsockopt,
++ .mmap = sock_no_mmap,
++ .bind = sock_no_bind,
++ .accept = sock_no_accept,
++ .setsockopt = sock_no_setsockopt,
++
++ .release = af_alg_release,
++ .sendmsg = skcipher_sendmsg_nokey,
++ .sendpage = skcipher_sendpage_nokey,
++ .recvmsg = skcipher_recvmsg_nokey,
++ .poll = skcipher_poll,
++};
++
+ static void *skcipher_bind(const char *name, u32 type, u32 mask)
+ {
+- return crypto_alloc_skcipher(name, type, mask);
++ struct skcipher_tfm *tfm;
++ struct crypto_skcipher *skcipher;
++
++ tfm = kzalloc(sizeof(*tfm), GFP_KERNEL);
++ if (!tfm)
++ return ERR_PTR(-ENOMEM);
++
++ skcipher = crypto_alloc_skcipher(name, type, mask);
++ if (IS_ERR(skcipher)) {
++ kfree(tfm);
++ return ERR_CAST(skcipher);
++ }
++
++ tfm->skcipher = skcipher;
++
++ return tfm;
+ }
+
+ static void skcipher_release(void *private)
+ {
+- crypto_free_skcipher(private);
++ struct skcipher_tfm *tfm = private;
++
++ crypto_free_skcipher(tfm->skcipher);
++ kfree(tfm);
+ }
+
+ static int skcipher_setkey(void *private, const u8 *key, unsigned int keylen)
+ {
+- return crypto_skcipher_setkey(private, key, keylen);
++ struct skcipher_tfm *tfm = private;
++ int err;
++
++ err = crypto_skcipher_setkey(tfm->skcipher, key, keylen);
++ tfm->has_key = !err;
++
++ return err;
+ }
+
+ static void skcipher_wait(struct sock *sk)
+@@ -788,24 +917,26 @@ static void skcipher_sock_destruct(struct sock *sk)
+ af_alg_release_parent(sk);
+ }
+
+-static int skcipher_accept_parent(void *private, struct sock *sk)
++static int skcipher_accept_parent_nokey(void *private, struct sock *sk)
+ {
+ struct skcipher_ctx *ctx;
+ struct alg_sock *ask = alg_sk(sk);
+- unsigned int len = sizeof(*ctx) + crypto_skcipher_reqsize(private);
++ struct skcipher_tfm *tfm = private;
++ struct crypto_skcipher *skcipher = tfm->skcipher;
++ unsigned int len = sizeof(*ctx) + crypto_skcipher_reqsize(skcipher);
+
+ ctx = sock_kmalloc(sk, len, GFP_KERNEL);
+ if (!ctx)
+ return -ENOMEM;
+
+- ctx->iv = sock_kmalloc(sk, crypto_skcipher_ivsize(private),
++ ctx->iv = sock_kmalloc(sk, crypto_skcipher_ivsize(skcipher),
+ GFP_KERNEL);
+ if (!ctx->iv) {
+ sock_kfree_s(sk, ctx, len);
+ return -ENOMEM;
+ }
+
+- memset(ctx->iv, 0, crypto_skcipher_ivsize(private));
++ memset(ctx->iv, 0, crypto_skcipher_ivsize(skcipher));
+
+ INIT_LIST_HEAD(&ctx->tsgl);
+ ctx->len = len;
+@@ -818,8 +949,9 @@ static int skcipher_accept_parent(void *private, struct sock *sk)
+
+ ask->private = ctx;
+
+- skcipher_request_set_tfm(&ctx->req, private);
+- skcipher_request_set_callback(&ctx->req, CRYPTO_TFM_REQ_MAY_BACKLOG,
++ skcipher_request_set_tfm(&ctx->req, skcipher);
++ skcipher_request_set_callback(&ctx->req, CRYPTO_TFM_REQ_MAY_SLEEP |
++ CRYPTO_TFM_REQ_MAY_BACKLOG,
+ af_alg_complete, &ctx->completion);
+
+ sk->sk_destruct = skcipher_sock_destruct;
+@@ -827,12 +959,24 @@ static int skcipher_accept_parent(void *private, struct sock *sk)
+ return 0;
+ }
+
++static int skcipher_accept_parent(void *private, struct sock *sk)
++{
++ struct skcipher_tfm *tfm = private;
++
++ if (!tfm->has_key && crypto_skcipher_has_setkey(tfm->skcipher))
++ return -ENOKEY;
++
++ return skcipher_accept_parent_nokey(private, sk);
++}
++
+ static const struct af_alg_type algif_type_skcipher = {
+ .bind = skcipher_bind,
+ .release = skcipher_release,
+ .setkey = skcipher_setkey,
+ .accept = skcipher_accept_parent,
++ .accept_nokey = skcipher_accept_parent_nokey,
+ .ops = &algif_skcipher_ops,
++ .ops_nokey = &algif_skcipher_ops_nokey,
+ .name = "skcipher",
+ .owner = THIS_MODULE
+ };
+diff --git a/crypto/crc32c_generic.c b/crypto/crc32c_generic.c
+index 06f1b60..4c0a0e2 100644
+--- a/crypto/crc32c_generic.c
++++ b/crypto/crc32c_generic.c
+@@ -172,4 +172,3 @@ MODULE_DESCRIPTION("CRC32c (Castagnoli) calculations wrapper for lib/crc32c");
+ MODULE_LICENSE("GPL");
+ MODULE_ALIAS_CRYPTO("crc32c");
+ MODULE_ALIAS_CRYPTO("crc32c-generic");
+-MODULE_SOFTDEP("pre: crc32c");
+diff --git a/crypto/crypto_user.c b/crypto/crypto_user.c
+index 237f379..43fe85f 100644
+--- a/crypto/crypto_user.c
++++ b/crypto/crypto_user.c
+@@ -499,6 +499,7 @@ static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
+ if (link->dump == NULL)
+ return -EINVAL;
+
++ down_read(&crypto_alg_sem);
+ list_for_each_entry(alg, &crypto_alg_list, cra_list)
+ dump_alloc += CRYPTO_REPORT_MAXSIZE;
+
+@@ -508,8 +509,11 @@ static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
+ .done = link->done,
+ .min_dump_alloc = dump_alloc,
+ };
+- return netlink_dump_start(crypto_nlsk, skb, nlh, &c);
++ err = netlink_dump_start(crypto_nlsk, skb, nlh, &c);
+ }
++ up_read(&crypto_alg_sem);
++
++ return err;
+ }
+
+ err = nlmsg_parse(nlh, crypto_msg_min[type], attrs, CRYPTOCFGA_MAX,
+diff --git a/crypto/shash.c b/crypto/shash.c
+index ecb1e3d..3597545 100644
+--- a/crypto/shash.c
++++ b/crypto/shash.c
+@@ -354,9 +354,10 @@ int crypto_init_shash_ops_async(struct crypto_tfm *tfm)
+ crt->final = shash_async_final;
+ crt->finup = shash_async_finup;
+ crt->digest = shash_async_digest;
++ crt->setkey = shash_async_setkey;
++
++ crt->has_setkey = alg->setkey != shash_no_setkey;
+
+- if (alg->setkey)
+- crt->setkey = shash_async_setkey;
+ if (alg->export)
+ crt->export = shash_async_export;
+ if (alg->import)
+diff --git a/crypto/skcipher.c b/crypto/skcipher.c
+index 7591928..d199c0b 100644
+--- a/crypto/skcipher.c
++++ b/crypto/skcipher.c
+@@ -118,6 +118,7 @@ static int crypto_init_skcipher_ops_blkcipher(struct crypto_tfm *tfm)
+ skcipher->decrypt = skcipher_decrypt_blkcipher;
+
+ skcipher->ivsize = crypto_blkcipher_ivsize(blkcipher);
++ skcipher->has_setkey = calg->cra_blkcipher.max_keysize;
+
+ return 0;
+ }
+@@ -210,6 +211,7 @@ static int crypto_init_skcipher_ops_ablkcipher(struct crypto_tfm *tfm)
+ skcipher->ivsize = crypto_ablkcipher_ivsize(ablkcipher);
+ skcipher->reqsize = crypto_ablkcipher_reqsize(ablkcipher) +
+ sizeof(struct ablkcipher_request);
++ skcipher->has_setkey = calg->cra_ablkcipher.max_keysize;
+
+ return 0;
+ }
+diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
+index cdfbcc5..99921aa 100644
+--- a/drivers/ata/ahci.c
++++ b/drivers/ata/ahci.c
+@@ -264,6 +264,26 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x3b2b), board_ahci }, /* PCH RAID */
+ { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci }, /* PCH RAID */
+ { PCI_VDEVICE(INTEL, 0x3b2f), board_ahci }, /* PCH AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b0), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b1), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b2), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b3), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b4), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b5), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b6), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19b7), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19bE), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19bF), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c0), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c1), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c2), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c3), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c4), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c5), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c6), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19c7), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19cE), board_ahci }, /* DNV AHCI */
++ { PCI_VDEVICE(INTEL, 0x19cF), board_ahci }, /* DNV AHCI */
+ { PCI_VDEVICE(INTEL, 0x1c02), board_ahci }, /* CPT AHCI */
+ { PCI_VDEVICE(INTEL, 0x1c03), board_ahci }, /* CPT AHCI */
+ { PCI_VDEVICE(INTEL, 0x1c04), board_ahci }, /* CPT RAID */
+diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
+index 4665512..1f225cc 100644
+--- a/drivers/ata/libahci.c
++++ b/drivers/ata/libahci.c
+@@ -495,8 +495,8 @@ void ahci_save_initial_config(struct device *dev, struct ahci_host_priv *hpriv)
+ }
+ }
+
+- /* fabricate port_map from cap.nr_ports */
+- if (!port_map) {
++ /* fabricate port_map from cap.nr_ports for < AHCI 1.3 */
++ if (!port_map && vers < 0x10300) {
+ port_map = (1 << ahci_nr_ports(cap)) - 1;
+ dev_warn(dev, "forcing PORTS_IMPL to 0x%x\n", port_map);
+
+diff --git a/drivers/base/platform.c b/drivers/base/platform.c
+index 1dd6d3b..176b59f 100644
+--- a/drivers/base/platform.c
++++ b/drivers/base/platform.c
+@@ -513,10 +513,15 @@ static int platform_drv_probe(struct device *_dev)
+ return ret;
+
+ ret = dev_pm_domain_attach(_dev, true);
+- if (ret != -EPROBE_DEFER && drv->probe) {
+- ret = drv->probe(dev);
+- if (ret)
+- dev_pm_domain_detach(_dev, true);
++ if (ret != -EPROBE_DEFER) {
++ if (drv->probe) {
++ ret = drv->probe(dev);
++ if (ret)
++ dev_pm_domain_detach(_dev, true);
++ } else {
++ /* don't fail if just dev_pm_domain_attach failed */
++ ret = 0;
++ }
+ }
+
+ if (drv->prevent_deferred_probe && ret == -EPROBE_DEFER) {
+diff --git a/drivers/block/zram/zcomp.c b/drivers/block/zram/zcomp.c
+index 5cb13ca..c536177 100644
+--- a/drivers/block/zram/zcomp.c
++++ b/drivers/block/zram/zcomp.c
+@@ -76,7 +76,7 @@ static void zcomp_strm_free(struct zcomp *comp, struct zcomp_strm *zstrm)
+ */
+ static struct zcomp_strm *zcomp_strm_alloc(struct zcomp *comp)
+ {
+- struct zcomp_strm *zstrm = kmalloc(sizeof(*zstrm), GFP_KERNEL);
++ struct zcomp_strm *zstrm = kmalloc(sizeof(*zstrm), GFP_NOIO);
+ if (!zstrm)
+ return NULL;
+
+@@ -85,7 +85,7 @@ static struct zcomp_strm *zcomp_strm_alloc(struct zcomp *comp)
+ * allocate 2 pages. 1 for compressed data, plus 1 extra for the
+ * case when compressed size is larger than the original one
+ */
+- zstrm->buffer = (void *)__get_free_pages(GFP_KERNEL | __GFP_ZERO, 1);
++ zstrm->buffer = (void *)__get_free_pages(GFP_NOIO | __GFP_ZERO, 1);
+ if (!zstrm->private || !zstrm->buffer) {
+ zcomp_strm_free(comp, zstrm);
+ zstrm = NULL;
+diff --git a/drivers/block/zram/zcomp_lz4.c b/drivers/block/zram/zcomp_lz4.c
+index f2afb7e..dd60831 100644
+--- a/drivers/block/zram/zcomp_lz4.c
++++ b/drivers/block/zram/zcomp_lz4.c
+@@ -10,17 +10,36 @@
+ #include <linux/kernel.h>
+ #include <linux/slab.h>
+ #include <linux/lz4.h>
++#include <linux/vmalloc.h>
++#include <linux/mm.h>
+
+ #include "zcomp_lz4.h"
+
+ static void *zcomp_lz4_create(void)
+ {
+- return kzalloc(LZ4_MEM_COMPRESS, GFP_KERNEL);
++ void *ret;
++
++ /*
++ * This function can be called in swapout/fs write path
++ * so we can't use GFP_FS|IO. And it assumes we already
++ * have at least one stream in zram initialization so we
++ * don't do best effort to allocate more stream in here.
++ * A default stream will work well without further multiple
++ * streams. That's why we use NORETRY | NOWARN.
++ */
++ ret = kzalloc(LZ4_MEM_COMPRESS, GFP_NOIO | __GFP_NORETRY |
++ __GFP_NOWARN);
++ if (!ret)
++ ret = __vmalloc(LZ4_MEM_COMPRESS,
++ GFP_NOIO | __GFP_NORETRY | __GFP_NOWARN |
++ __GFP_ZERO | __GFP_HIGHMEM,
++ PAGE_KERNEL);
++ return ret;
+ }
+
+ static void zcomp_lz4_destroy(void *private)
+ {
+- kfree(private);
++ kvfree(private);
+ }
+
+ static int zcomp_lz4_compress(const unsigned char *src, unsigned char *dst,
+diff --git a/drivers/block/zram/zcomp_lzo.c b/drivers/block/zram/zcomp_lzo.c
+index da1bc47..edc5499 100644
+--- a/drivers/block/zram/zcomp_lzo.c
++++ b/drivers/block/zram/zcomp_lzo.c
+@@ -10,17 +10,36 @@
+ #include <linux/kernel.h>
+ #include <linux/slab.h>
+ #include <linux/lzo.h>
++#include <linux/vmalloc.h>
++#include <linux/mm.h>
+
+ #include "zcomp_lzo.h"
+
+ static void *lzo_create(void)
+ {
+- return kzalloc(LZO1X_MEM_COMPRESS, GFP_KERNEL);
++ void *ret;
++
++ /*
++ * This function can be called in swapout/fs write path
++ * so we can't use GFP_FS|IO. And it assumes we already
++ * have at least one stream in zram initialization so we
++ * don't do best effort to allocate more stream in here.
++ * A default stream will work well without further multiple
++ * streams. That's why we use NORETRY | NOWARN.
++ */
++ ret = kzalloc(LZO1X_MEM_COMPRESS, GFP_NOIO | __GFP_NORETRY |
++ __GFP_NOWARN);
++ if (!ret)
++ ret = __vmalloc(LZO1X_MEM_COMPRESS,
++ GFP_NOIO | __GFP_NORETRY | __GFP_NOWARN |
++ __GFP_ZERO | __GFP_HIGHMEM,
++ PAGE_KERNEL);
++ return ret;
+ }
+
+ static void lzo_destroy(void *private)
+ {
+- kfree(private);
++ kvfree(private);
+ }
+
+ static int lzo_compress(const unsigned char *src, unsigned char *dst,
+diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
+index 47915d7..370c2f7 100644
+--- a/drivers/block/zram/zram_drv.c
++++ b/drivers/block/zram/zram_drv.c
+@@ -1325,7 +1325,6 @@ static int zram_remove(struct zram *zram)
+
+ pr_info("Removed device: %s\n", zram->disk->disk_name);
+
+- idr_remove(&zram_index_idr, zram->disk->first_minor);
+ blk_cleanup_queue(zram->disk->queue);
+ del_gendisk(zram->disk);
+ put_disk(zram->disk);
+@@ -1367,10 +1366,12 @@ static ssize_t hot_remove_store(struct class *class,
+ mutex_lock(&zram_index_mutex);
+
+ zram = idr_find(&zram_index_idr, dev_id);
+- if (zram)
++ if (zram) {
+ ret = zram_remove(zram);
+- else
++ idr_remove(&zram_index_idr, dev_id);
++ } else {
+ ret = -ENODEV;
++ }
+
+ mutex_unlock(&zram_index_mutex);
+ return ret ? ret : count;
+diff --git a/drivers/crypto/atmel-sha.c b/drivers/crypto/atmel-sha.c
+index 660d8c0..3178f84 100644
+--- a/drivers/crypto/atmel-sha.c
++++ b/drivers/crypto/atmel-sha.c
+@@ -783,7 +783,7 @@ static void atmel_sha_finish_req(struct ahash_request *req, int err)
+ dd->flags &= ~(SHA_FLAGS_BUSY | SHA_FLAGS_FINAL | SHA_FLAGS_CPU |
+ SHA_FLAGS_DMA_READY | SHA_FLAGS_OUTPUT_READY);
+
+- clk_disable_unprepare(dd->iclk);
++ clk_disable(dd->iclk);
+
+ if (req->base.complete)
+ req->base.complete(&req->base, err);
+@@ -796,7 +796,7 @@ static int atmel_sha_hw_init(struct atmel_sha_dev *dd)
+ {
+ int err;
+
+- err = clk_prepare_enable(dd->iclk);
++ err = clk_enable(dd->iclk);
+ if (err)
+ return err;
+
+@@ -823,7 +823,7 @@ static void atmel_sha_hw_version_init(struct atmel_sha_dev *dd)
+ dev_info(dd->dev,
+ "version: 0x%x\n", dd->hw_version);
+
+- clk_disable_unprepare(dd->iclk);
++ clk_disable(dd->iclk);
+ }
+
+ static int atmel_sha_handle_queue(struct atmel_sha_dev *dd,
+@@ -1411,6 +1411,10 @@ static int atmel_sha_probe(struct platform_device *pdev)
+ goto res_err;
+ }
+
++ err = clk_prepare(sha_dd->iclk);
++ if (err)
++ goto res_err;
++
+ atmel_sha_hw_version_init(sha_dd);
+
+ atmel_sha_get_cap(sha_dd);
+@@ -1422,12 +1426,12 @@ static int atmel_sha_probe(struct platform_device *pdev)
+ if (IS_ERR(pdata)) {
+ dev_err(&pdev->dev, "platform data not available\n");
+ err = PTR_ERR(pdata);
+- goto res_err;
++ goto iclk_unprepare;
+ }
+ }
+ if (!pdata->dma_slave) {
+ err = -ENXIO;
+- goto res_err;
++ goto iclk_unprepare;
+ }
+ err = atmel_sha_dma_init(sha_dd, pdata);
+ if (err)
+@@ -1458,6 +1462,8 @@ err_algs:
+ if (sha_dd->caps.has_dma)
+ atmel_sha_dma_cleanup(sha_dd);
+ err_sha_dma:
++iclk_unprepare:
++ clk_unprepare(sha_dd->iclk);
+ res_err:
+ tasklet_kill(&sha_dd->done_task);
+ sha_dd_err:
+@@ -1484,12 +1490,7 @@ static int atmel_sha_remove(struct platform_device *pdev)
+ if (sha_dd->caps.has_dma)
+ atmel_sha_dma_cleanup(sha_dd);
+
+- iounmap(sha_dd->io_base);
+-
+- clk_put(sha_dd->iclk);
+-
+- if (sha_dd->irq >= 0)
+- free_irq(sha_dd->irq, sha_dd);
++ clk_unprepare(sha_dd->iclk);
+
+ return 0;
+ }
+diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c
+index 8abb4bc..69d4a13 100644
+--- a/drivers/crypto/caam/ctrl.c
++++ b/drivers/crypto/caam/ctrl.c
+@@ -534,8 +534,8 @@ static int caam_probe(struct platform_device *pdev)
+ * long pointers in master configuration register
+ */
+ clrsetbits_32(&ctrl->mcr, MCFGR_AWCACHE_MASK, MCFGR_AWCACHE_CACH |
+- MCFGR_WDENABLE | (sizeof(dma_addr_t) == sizeof(u64) ?
+- MCFGR_LONG_PTR : 0));
++ MCFGR_AWCACHE_BUFF | MCFGR_WDENABLE |
++ (sizeof(dma_addr_t) == sizeof(u64) ? MCFGR_LONG_PTR : 0));
+
+ /*
+ * Read the Compile Time paramters and SCFGR to determine
+diff --git a/drivers/crypto/marvell/cesa.c b/drivers/crypto/marvell/cesa.c
+index 0643e33..c0656e7 100644
+--- a/drivers/crypto/marvell/cesa.c
++++ b/drivers/crypto/marvell/cesa.c
+@@ -306,7 +306,7 @@ static int mv_cesa_dev_dma_init(struct mv_cesa_dev *cesa)
+ return -ENOMEM;
+
+ dma->padding_pool = dmam_pool_create("cesa_padding", dev, 72, 1, 0);
+- if (!dma->cache_pool)
++ if (!dma->padding_pool)
+ return -ENOMEM;
+
+ cesa->dma = dma;
+diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-core.c b/drivers/crypto/sunxi-ss/sun4i-ss-core.c
+index eab6fe2..107cd2a 100644
+--- a/drivers/crypto/sunxi-ss/sun4i-ss-core.c
++++ b/drivers/crypto/sunxi-ss/sun4i-ss-core.c
+@@ -39,6 +39,7 @@ static struct sun4i_ss_alg_template ss_algs[] = {
+ .import = sun4i_hash_import_md5,
+ .halg = {
+ .digestsize = MD5_DIGEST_SIZE,
++ .statesize = sizeof(struct md5_state),
+ .base = {
+ .cra_name = "md5",
+ .cra_driver_name = "md5-sun4i-ss",
+@@ -66,6 +67,7 @@ static struct sun4i_ss_alg_template ss_algs[] = {
+ .import = sun4i_hash_import_sha1,
+ .halg = {
+ .digestsize = SHA1_DIGEST_SIZE,
++ .statesize = sizeof(struct sha1_state),
+ .base = {
+ .cra_name = "sha1",
+ .cra_driver_name = "sha1-sun4i-ss",
+diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
+index 3d664d0..2b8ff18 100644
+--- a/drivers/hid/hid-multitouch.c
++++ b/drivers/hid/hid-multitouch.c
+@@ -357,8 +357,19 @@ static void mt_feature_mapping(struct hid_device *hdev,
+ break;
+ }
+
+- td->inputmode = field->report->id;
+- td->inputmode_index = usage->usage_index;
++ if (td->inputmode < 0) {
++ td->inputmode = field->report->id;
++ td->inputmode_index = usage->usage_index;
++ } else {
++ /*
++ * Some elan panels wrongly declare 2 input mode
++ * features, and silently ignore when we set the
++ * value in the second field. Skip the second feature
++ * and hope for the best.
++ */
++ dev_info(&hdev->dev,
++ "Ignoring the extra HID_DG_INPUTMODE\n");
++ }
+
+ break;
+ case HID_DG_CONTACTMAX:
+diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c
+index 36712e9..5dd426f 100644
+--- a/drivers/hid/usbhid/hid-core.c
++++ b/drivers/hid/usbhid/hid-core.c
+@@ -477,8 +477,6 @@ static void hid_ctrl(struct urb *urb)
+ struct usbhid_device *usbhid = hid->driver_data;
+ int unplug = 0, status = urb->status;
+
+- spin_lock(&usbhid->lock);
+-
+ switch (status) {
+ case 0: /* success */
+ if (usbhid->ctrl[usbhid->ctrltail].dir == USB_DIR_IN)
+@@ -498,6 +496,8 @@ static void hid_ctrl(struct urb *urb)
+ hid_warn(urb->dev, "ctrl urb status %d received\n", status);
+ }
+
++ spin_lock(&usbhid->lock);
++
+ if (unplug) {
+ usbhid->ctrltail = usbhid->ctrlhead;
+ } else {
+diff --git a/drivers/iommu/io-pgtable-arm.c b/drivers/iommu/io-pgtable-arm.c
+index 7df9777..dad768c 100644
+--- a/drivers/iommu/io-pgtable-arm.c
++++ b/drivers/iommu/io-pgtable-arm.c
+@@ -405,17 +405,18 @@ static void __arm_lpae_free_pgtable(struct arm_lpae_io_pgtable *data, int lvl,
+ arm_lpae_iopte *start, *end;
+ unsigned long table_size;
+
+- /* Only leaf entries at the last level */
+- if (lvl == ARM_LPAE_MAX_LEVELS - 1)
+- return;
+-
+ if (lvl == ARM_LPAE_START_LVL(data))
+ table_size = data->pgd_size;
+ else
+ table_size = 1UL << data->pg_shift;
+
+ start = ptep;
+- end = (void *)ptep + table_size;
++
++ /* Only leaf entries at the last level */
++ if (lvl == ARM_LPAE_MAX_LEVELS - 1)
++ end = ptep;
++ else
++ end = (void *)ptep + table_size;
+
+ while (ptep != end) {
+ arm_lpae_iopte pte = *ptep++;
+diff --git a/drivers/md/md.c b/drivers/md/md.c
+index 61aacab..b1e1f6b 100644
+--- a/drivers/md/md.c
++++ b/drivers/md/md.c
+@@ -2017,28 +2017,32 @@ int md_integrity_register(struct mddev *mddev)
+ }
+ EXPORT_SYMBOL(md_integrity_register);
+
+-/* Disable data integrity if non-capable/non-matching disk is being added */
+-void md_integrity_add_rdev(struct md_rdev *rdev, struct mddev *mddev)
++/*
++ * Attempt to add an rdev, but only if it is consistent with the current
++ * integrity profile
++ */
++int md_integrity_add_rdev(struct md_rdev *rdev, struct mddev *mddev)
+ {
+ struct blk_integrity *bi_rdev;
+ struct blk_integrity *bi_mddev;
++ char name[BDEVNAME_SIZE];
+
+ if (!mddev->gendisk)
+- return;
++ return 0;
+
+ bi_rdev = bdev_get_integrity(rdev->bdev);
+ bi_mddev = blk_get_integrity(mddev->gendisk);
+
+ if (!bi_mddev) /* nothing to do */
+- return;
+- if (rdev->raid_disk < 0) /* skip spares */
+- return;
+- if (bi_rdev && blk_integrity_compare(mddev->gendisk,
+- rdev->bdev->bd_disk) >= 0)
+- return;
+- WARN_ON_ONCE(!mddev->suspended);
+- printk(KERN_NOTICE "disabling data integrity on %s\n", mdname(mddev));
+- blk_integrity_unregister(mddev->gendisk);
++ return 0;
++
++ if (blk_integrity_compare(mddev->gendisk, rdev->bdev->bd_disk) != 0) {
++ printk(KERN_NOTICE "%s: incompatible integrity profile for %s\n",
++ mdname(mddev), bdevname(rdev->bdev, name));
++ return -ENXIO;
++ }
++
++ return 0;
+ }
+ EXPORT_SYMBOL(md_integrity_add_rdev);
+
+diff --git a/drivers/md/md.h b/drivers/md/md.h
+index ca0b643..dfa57b4 100644
+--- a/drivers/md/md.h
++++ b/drivers/md/md.h
+@@ -657,7 +657,7 @@ extern void md_wait_for_blocked_rdev(struct md_rdev *rdev, struct mddev *mddev);
+ extern void md_set_array_sectors(struct mddev *mddev, sector_t array_sectors);
+ extern int md_check_no_bitmap(struct mddev *mddev);
+ extern int md_integrity_register(struct mddev *mddev);
+-extern void md_integrity_add_rdev(struct md_rdev *rdev, struct mddev *mddev);
++extern int md_integrity_add_rdev(struct md_rdev *rdev, struct mddev *mddev);
+ extern int strict_strtoul_scaled(const char *cp, unsigned long *res, int scale);
+
+ extern void mddev_init(struct mddev *mddev);
+diff --git a/drivers/md/multipath.c b/drivers/md/multipath.c
+index 7331a80..0a72ab6 100644
+--- a/drivers/md/multipath.c
++++ b/drivers/md/multipath.c
+@@ -257,6 +257,9 @@ static int multipath_add_disk(struct mddev *mddev, struct md_rdev *rdev)
+ disk_stack_limits(mddev->gendisk, rdev->bdev,
+ rdev->data_offset << 9);
+
++ err = md_integrity_add_rdev(rdev, mddev);
++ if (err)
++ break;
+ spin_lock_irq(&conf->device_lock);
+ mddev->degraded--;
+ rdev->raid_disk = path;
+@@ -264,9 +267,6 @@ static int multipath_add_disk(struct mddev *mddev, struct md_rdev *rdev)
+ spin_unlock_irq(&conf->device_lock);
+ rcu_assign_pointer(p->rdev, rdev);
+ err = 0;
+- mddev_suspend(mddev);
+- md_integrity_add_rdev(rdev, mddev);
+- mddev_resume(mddev);
+ break;
+ }
+
+diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
+index e2169ff..c4b9134 100644
+--- a/drivers/md/raid1.c
++++ b/drivers/md/raid1.c
+@@ -1589,6 +1589,9 @@ static int raid1_add_disk(struct mddev *mddev, struct md_rdev *rdev)
+ if (mddev->recovery_disabled == conf->recovery_disabled)
+ return -EBUSY;
+
++ if (md_integrity_add_rdev(rdev, mddev))
++ return -ENXIO;
++
+ if (rdev->raid_disk >= 0)
+ first = last = rdev->raid_disk;
+
+@@ -1632,9 +1635,6 @@ static int raid1_add_disk(struct mddev *mddev, struct md_rdev *rdev)
+ break;
+ }
+ }
+- mddev_suspend(mddev);
+- md_integrity_add_rdev(rdev, mddev);
+- mddev_resume(mddev);
+ if (mddev->queue && blk_queue_discard(bdev_get_queue(rdev->bdev)))
+ queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, mddev->queue);
+ print_conf(conf);
+diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
+index 84e597e..ce959b4 100644
+--- a/drivers/md/raid10.c
++++ b/drivers/md/raid10.c
+@@ -1698,6 +1698,9 @@ static int raid10_add_disk(struct mddev *mddev, struct md_rdev *rdev)
+ if (rdev->saved_raid_disk < 0 && !_enough(conf, 1, -1))
+ return -EINVAL;
+
++ if (md_integrity_add_rdev(rdev, mddev))
++ return -ENXIO;
++
+ if (rdev->raid_disk >= 0)
+ first = last = rdev->raid_disk;
+
+@@ -1739,9 +1742,6 @@ static int raid10_add_disk(struct mddev *mddev, struct md_rdev *rdev)
+ rcu_assign_pointer(p->rdev, rdev);
+ break;
+ }
+- mddev_suspend(mddev);
+- md_integrity_add_rdev(rdev, mddev);
+- mddev_resume(mddev);
+ if (mddev->queue && blk_queue_discard(bdev_get_queue(rdev->bdev)))
+ queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, mddev->queue);
+
+diff --git a/drivers/media/i2c/ir-kbd-i2c.c b/drivers/media/i2c/ir-kbd-i2c.c
+index 728d2cc..175a761 100644
+--- a/drivers/media/i2c/ir-kbd-i2c.c
++++ b/drivers/media/i2c/ir-kbd-i2c.c
+@@ -478,7 +478,6 @@ static const struct i2c_device_id ir_kbd_id[] = {
+ { "ir_rx_z8f0811_hdpvr", 0 },
+ { }
+ };
+-MODULE_DEVICE_TABLE(i2c, ir_kbd_id);
+
+ static struct i2c_driver ir_kbd_driver = {
+ .driver = {
+diff --git a/drivers/media/pci/saa7134/saa7134-alsa.c b/drivers/media/pci/saa7134/saa7134-alsa.c
+index 1d2c310..94f8162 100644
+--- a/drivers/media/pci/saa7134/saa7134-alsa.c
++++ b/drivers/media/pci/saa7134/saa7134-alsa.c
+@@ -1211,6 +1211,8 @@ static int alsa_device_init(struct saa7134_dev *dev)
+
+ static int alsa_device_exit(struct saa7134_dev *dev)
+ {
++ if (!snd_saa7134_cards[dev->nr])
++ return 1;
+
+ snd_card_free(snd_saa7134_cards[dev->nr]);
+ snd_saa7134_cards[dev->nr] = NULL;
+@@ -1260,7 +1262,8 @@ static void saa7134_alsa_exit(void)
+ int idx;
+
+ for (idx = 0; idx < SNDRV_CARDS; idx++) {
+- snd_card_free(snd_saa7134_cards[idx]);
++ if (snd_saa7134_cards[idx])
++ snd_card_free(snd_saa7134_cards[idx]);
+ }
+
+ saa7134_dmasound_init = NULL;
+diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
+index ece544e..3ff583f 100644
+--- a/drivers/mtd/nand/nand_base.c
++++ b/drivers/mtd/nand/nand_base.c
+@@ -3995,6 +3995,9 @@ int nand_scan_ident(struct mtd_info *mtd, int maxchips,
+ return ret;
+ }
+
++ if (!mtd->name && mtd->dev.parent)
++ mtd->name = dev_name(mtd->dev.parent);
++
+ /* Set the default functions */
+ nand_set_defaults(chip, chip->options & NAND_BUSWIDTH_16);
+
+diff --git a/drivers/net/wireless/realtek/rtlwifi/regd.c b/drivers/net/wireless/realtek/rtlwifi/regd.c
+index a62bf0a..5be3411 100644
+--- a/drivers/net/wireless/realtek/rtlwifi/regd.c
++++ b/drivers/net/wireless/realtek/rtlwifi/regd.c
+@@ -351,7 +351,6 @@ static const struct ieee80211_regdomain *_rtl_regdomain_select(
+ case COUNTRY_CODE_SPAIN:
+ case COUNTRY_CODE_FRANCE:
+ case COUNTRY_CODE_ISRAEL:
+- case COUNTRY_CODE_WORLD_WIDE_13:
+ return &rtl_regdom_12_13;
+ case COUNTRY_CODE_MKK:
+ case COUNTRY_CODE_MKK1:
+@@ -360,6 +359,7 @@ static const struct ieee80211_regdomain *_rtl_regdomain_select(
+ return &rtl_regdom_14_60_64;
+ case COUNTRY_CODE_GLOBAL_DOMAIN:
+ return &rtl_regdom_14;
++ case COUNTRY_CODE_WORLD_WIDE_13:
+ case COUNTRY_CODE_WORLD_WIDE_13_5G_ALL:
+ return &rtl_regdom_12_13_5g_all;
+ default:
+diff --git a/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/sw.c b/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/sw.c
+index 142bdff..4159f9b 100644
+--- a/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/sw.c
++++ b/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/sw.c
+@@ -95,8 +95,6 @@ int rtl8821ae_init_sw_vars(struct ieee80211_hw *hw)
+ struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));
+
+ rtl8821ae_bt_reg_init(hw);
+- rtlpci->msi_support = rtlpriv->cfg->mod_params->msi_support;
+- rtlpci->int_clear = rtlpriv->cfg->mod_params->int_clear;
+ rtlpriv->btcoexist.btc_ops = rtl_btc_get_ops_pointer();
+
+ rtlpriv->dm.dm_initialgain_enable = 1;
+@@ -168,12 +166,15 @@ int rtl8821ae_init_sw_vars(struct ieee80211_hw *hw)
+ rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
+ rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps;
+ rtlpci->msi_support = rtlpriv->cfg->mod_params->msi_support;
+- rtlpci->msi_support = rtlpriv->cfg->mod_params->int_clear;
++ rtlpci->int_clear = rtlpriv->cfg->mod_params->int_clear;
++ rtlpriv->cfg->mod_params->sw_crypto =
++ rtlpriv->cfg->mod_params->sw_crypto;
++ rtlpriv->cfg->mod_params->disable_watchdog =
++ rtlpriv->cfg->mod_params->disable_watchdog;
+ if (rtlpriv->cfg->mod_params->disable_watchdog)
+ pr_info("watchdog disabled\n");
+ rtlpriv->psc.reg_fwctrl_lps = 3;
+ rtlpriv->psc.reg_max_lps_awakeintvl = 5;
+- rtlpci->msi_support = rtlpriv->cfg->mod_params->msi_support;
+
+ /* for ASPM, you can close aspm through
+ * set const_support_pciaspm = 0
+diff --git a/drivers/net/wireless/ti/wlcore/io.h b/drivers/net/wireless/ti/wlcore/io.h
+index 0305729..10cf374 100644
+--- a/drivers/net/wireless/ti/wlcore/io.h
++++ b/drivers/net/wireless/ti/wlcore/io.h
+@@ -207,19 +207,23 @@ static inline int __must_check wlcore_write_reg(struct wl1271 *wl, int reg,
+
+ static inline void wl1271_power_off(struct wl1271 *wl)
+ {
+- int ret;
++ int ret = 0;
+
+ if (!test_bit(WL1271_FLAG_GPIO_POWER, &wl->flags))
+ return;
+
+- ret = wl->if_ops->power(wl->dev, false);
++ if (wl->if_ops->power)
++ ret = wl->if_ops->power(wl->dev, false);
+ if (!ret)
+ clear_bit(WL1271_FLAG_GPIO_POWER, &wl->flags);
+ }
+
+ static inline int wl1271_power_on(struct wl1271 *wl)
+ {
+- int ret = wl->if_ops->power(wl->dev, true);
++ int ret = 0;
++
++ if (wl->if_ops->power)
++ ret = wl->if_ops->power(wl->dev, true);
+ if (ret == 0)
+ set_bit(WL1271_FLAG_GPIO_POWER, &wl->flags);
+
+diff --git a/drivers/net/wireless/ti/wlcore/spi.c b/drivers/net/wireless/ti/wlcore/spi.c
+index 236b410..44f059f7 100644
+--- a/drivers/net/wireless/ti/wlcore/spi.c
++++ b/drivers/net/wireless/ti/wlcore/spi.c
+@@ -73,7 +73,10 @@
+ */
+ #define SPI_AGGR_BUFFER_SIZE (4 * PAGE_SIZE)
+
+-#define WSPI_MAX_NUM_OF_CHUNKS (SPI_AGGR_BUFFER_SIZE / WSPI_MAX_CHUNK_SIZE)
++/* Maximum number of SPI write chunks */
++#define WSPI_MAX_NUM_OF_CHUNKS \
++ ((SPI_AGGR_BUFFER_SIZE / WSPI_MAX_CHUNK_SIZE) + 1)
++
+
+ struct wl12xx_spi_glue {
+ struct device *dev;
+@@ -268,9 +271,10 @@ static int __must_check wl12xx_spi_raw_write(struct device *child, int addr,
+ void *buf, size_t len, bool fixed)
+ {
+ struct wl12xx_spi_glue *glue = dev_get_drvdata(child->parent);
+- struct spi_transfer t[2 * (WSPI_MAX_NUM_OF_CHUNKS + 1)];
++ /* SPI write buffers - 2 for each chunk */
++ struct spi_transfer t[2 * WSPI_MAX_NUM_OF_CHUNKS];
+ struct spi_message m;
+- u32 commands[WSPI_MAX_NUM_OF_CHUNKS];
++ u32 commands[WSPI_MAX_NUM_OF_CHUNKS]; /* 1 command per chunk */
+ u32 *cmd;
+ u32 chunk_len;
+ int i;
+diff --git a/drivers/pci/bus.c b/drivers/pci/bus.c
+index d3346d2..89b3bef 100644
+--- a/drivers/pci/bus.c
++++ b/drivers/pci/bus.c
+@@ -140,6 +140,8 @@ static int pci_bus_alloc_from_region(struct pci_bus *bus, struct resource *res,
+ type_mask |= IORESOURCE_TYPE_BITS;
+
+ pci_bus_for_each_resource(bus, r, i) {
++ resource_size_t min_used = min;
++
+ if (!r)
+ continue;
+
+@@ -163,12 +165,12 @@ static int pci_bus_alloc_from_region(struct pci_bus *bus, struct resource *res,
+ * overrides "min".
+ */
+ if (avail.start)
+- min = avail.start;
++ min_used = avail.start;
+
+ max = avail.end;
+
+ /* Ok, try it out.. */
+- ret = allocate_resource(r, res, size, min, max,
++ ret = allocate_resource(r, res, size, min_used, max,
+ align, alignf, alignf_data);
+ if (ret == 0)
+ return 0;
+diff --git a/drivers/pci/host/pci-dra7xx.c b/drivers/pci/host/pci-dra7xx.c
+index 8c36880..923607b 100644
+--- a/drivers/pci/host/pci-dra7xx.c
++++ b/drivers/pci/host/pci-dra7xx.c
+@@ -302,7 +302,8 @@ static int __init dra7xx_add_pcie_port(struct dra7xx_pcie *dra7xx,
+ }
+
+ ret = devm_request_irq(&pdev->dev, pp->irq,
+- dra7xx_pcie_msi_irq_handler, IRQF_SHARED,
++ dra7xx_pcie_msi_irq_handler,
++ IRQF_SHARED | IRQF_NO_THREAD,
+ "dra7-pcie-msi", pp);
+ if (ret) {
+ dev_err(&pdev->dev, "failed to request irq\n");
+diff --git a/drivers/pci/host/pci-exynos.c b/drivers/pci/host/pci-exynos.c
+index 01095e1..d997d22 100644
+--- a/drivers/pci/host/pci-exynos.c
++++ b/drivers/pci/host/pci-exynos.c
+@@ -522,7 +522,8 @@ static int __init exynos_add_pcie_port(struct pcie_port *pp,
+
+ ret = devm_request_irq(&pdev->dev, pp->msi_irq,
+ exynos_pcie_msi_irq_handler,
+- IRQF_SHARED, "exynos-pcie", pp);
++ IRQF_SHARED | IRQF_NO_THREAD,
++ "exynos-pcie", pp);
+ if (ret) {
+ dev_err(&pdev->dev, "failed to request msi irq\n");
+ return ret;
+diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/host/pci-imx6.c
+index 22e8224..9ce7cd1 100644
+--- a/drivers/pci/host/pci-imx6.c
++++ b/drivers/pci/host/pci-imx6.c
+@@ -537,7 +537,8 @@ static int __init imx6_add_pcie_port(struct pcie_port *pp,
+
+ ret = devm_request_irq(&pdev->dev, pp->msi_irq,
+ imx6_pcie_msi_handler,
+- IRQF_SHARED, "mx6-pcie-msi", pp);
++ IRQF_SHARED | IRQF_NO_THREAD,
++ "mx6-pcie-msi", pp);
+ if (ret) {
+ dev_err(&pdev->dev, "failed to request MSI irq\n");
+ return ret;
+diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c
+index 3018ae5..3032311 100644
+--- a/drivers/pci/host/pci-tegra.c
++++ b/drivers/pci/host/pci-tegra.c
+@@ -1288,7 +1288,7 @@ static int tegra_pcie_enable_msi(struct tegra_pcie *pcie)
+
+ msi->irq = err;
+
+- err = request_irq(msi->irq, tegra_pcie_msi_irq, 0,
++ err = request_irq(msi->irq, tegra_pcie_msi_irq, IRQF_NO_THREAD,
+ tegra_msi_irq_chip.name, pcie);
+ if (err < 0) {
+ dev_err(&pdev->dev, "failed to request IRQ: %d\n", err);
+diff --git a/drivers/pci/host/pcie-rcar.c b/drivers/pci/host/pcie-rcar.c
+index f4fa6c5..414c336 100644
+--- a/drivers/pci/host/pcie-rcar.c
++++ b/drivers/pci/host/pcie-rcar.c
+@@ -720,14 +720,16 @@ static int rcar_pcie_enable_msi(struct rcar_pcie *pcie)
+
+ /* Two irqs are for MSI, but they are also used for non-MSI irqs */
+ err = devm_request_irq(&pdev->dev, msi->irq1, rcar_pcie_msi_irq,
+- IRQF_SHARED, rcar_msi_irq_chip.name, pcie);
++ IRQF_SHARED | IRQF_NO_THREAD,
++ rcar_msi_irq_chip.name, pcie);
+ if (err < 0) {
+ dev_err(&pdev->dev, "failed to request IRQ: %d\n", err);
+ goto err;
+ }
+
+ err = devm_request_irq(&pdev->dev, msi->irq2, rcar_pcie_msi_irq,
+- IRQF_SHARED, rcar_msi_irq_chip.name, pcie);
++ IRQF_SHARED | IRQF_NO_THREAD,
++ rcar_msi_irq_chip.name, pcie);
+ if (err < 0) {
+ dev_err(&pdev->dev, "failed to request IRQ: %d\n", err);
+ goto err;
+diff --git a/drivers/pci/host/pcie-spear13xx.c b/drivers/pci/host/pcie-spear13xx.c
+index b95b756..a6cd823 100644
+--- a/drivers/pci/host/pcie-spear13xx.c
++++ b/drivers/pci/host/pcie-spear13xx.c
+@@ -279,7 +279,8 @@ static int spear13xx_add_pcie_port(struct pcie_port *pp,
+ return -ENODEV;
+ }
+ ret = devm_request_irq(dev, pp->irq, spear13xx_pcie_irq_handler,
+- IRQF_SHARED, "spear1340-pcie", pp);
++ IRQF_SHARED | IRQF_NO_THREAD,
++ "spear1340-pcie", pp);
+ if (ret) {
+ dev_err(dev, "failed to request irq %d\n", pp->irq);
+ return ret;
+diff --git a/drivers/pci/host/pcie-xilinx.c b/drivers/pci/host/pcie-xilinx.c
+index 3c7a0d5..4cfa463 100644
+--- a/drivers/pci/host/pcie-xilinx.c
++++ b/drivers/pci/host/pcie-xilinx.c
+@@ -781,7 +781,8 @@ static int xilinx_pcie_parse_dt(struct xilinx_pcie_port *port)
+
+ port->irq = irq_of_parse_and_map(node, 0);
+ err = devm_request_irq(dev, port->irq, xilinx_pcie_intr_handler,
+- IRQF_SHARED, "xilinx-pcie", port);
++ IRQF_SHARED | IRQF_NO_THREAD,
++ "xilinx-pcie", port);
+ if (err) {
+ dev_err(dev, "unable to request irq %d\n", port->irq);
+ return err;
+diff --git a/drivers/tty/n_tty.c b/drivers/tty/n_tty.c
+index e49c2bce..cf000b3 100644
+--- a/drivers/tty/n_tty.c
++++ b/drivers/tty/n_tty.c
+@@ -258,16 +258,13 @@ static void n_tty_check_throttle(struct tty_struct *tty)
+
+ static void n_tty_check_unthrottle(struct tty_struct *tty)
+ {
+- if (tty->driver->type == TTY_DRIVER_TYPE_PTY &&
+- tty->link->ldisc->ops->write_wakeup == n_tty_write_wakeup) {
++ if (tty->driver->type == TTY_DRIVER_TYPE_PTY) {
+ if (chars_in_buffer(tty) > TTY_THRESHOLD_UNTHROTTLE)
+ return;
+ if (!tty->count)
+ return;
+ n_tty_kick_worker(tty);
+- n_tty_write_wakeup(tty->link);
+- if (waitqueue_active(&tty->link->write_wait))
+- wake_up_interruptible_poll(&tty->link->write_wait, POLLOUT);
++ tty_wakeup(tty->link);
+ return;
+ }
+
+diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
+index bcc8e1e..7cef543 100644
+--- a/drivers/tty/tty_io.c
++++ b/drivers/tty/tty_io.c
+@@ -1462,13 +1462,13 @@ static int tty_reopen(struct tty_struct *tty)
+ {
+ struct tty_driver *driver = tty->driver;
+
+- if (!tty->count)
+- return -EIO;
+-
+ if (driver->type == TTY_DRIVER_TYPE_PTY &&
+ driver->subtype == PTY_TYPE_MASTER)
+ return -EIO;
+
++ if (!tty->count)
++ return -EAGAIN;
++
+ if (test_bit(TTY_EXCLUSIVE, &tty->flags) && !capable(CAP_SYS_ADMIN))
+ return -EBUSY;
+
+@@ -2069,7 +2069,12 @@ retry_open:
+
+ if (tty) {
+ mutex_unlock(&tty_mutex);
+- tty_lock(tty);
++ retval = tty_lock_interruptible(tty);
++ if (retval) {
++ if (retval == -EINTR)
++ retval = -ERESTARTSYS;
++ goto err_unref;
++ }
+ /* safe to drop the kref from tty_driver_lookup_tty() */
+ tty_kref_put(tty);
+ retval = tty_reopen(tty);
+@@ -2087,7 +2092,11 @@ retry_open:
+
+ if (IS_ERR(tty)) {
+ retval = PTR_ERR(tty);
+- goto err_file;
++ if (retval != -EAGAIN || signal_pending(current))
++ goto err_file;
++ tty_free_file(filp);
++ schedule();
++ goto retry_open;
+ }
+
+ tty_add_file(tty, filp);
+@@ -2156,6 +2165,7 @@ retry_open:
+ return 0;
+ err_unlock:
+ mutex_unlock(&tty_mutex);
++err_unref:
+ /* after locks to avoid deadlock */
+ if (!IS_ERR_OR_NULL(driver))
+ tty_driver_kref_put(driver);
+@@ -2653,6 +2663,28 @@ static int tiocsetd(struct tty_struct *tty, int __user *p)
+ }
+
+ /**
++ * tiocgetd - get line discipline
++ * @tty: tty device
++ * @p: pointer to user data
++ *
++ * Retrieves the line discipline id directly from the ldisc.
++ *
++ * Locking: waits for ldisc reference (in case the line discipline
++ * is changing or the tty is being hungup)
++ */
++
++static int tiocgetd(struct tty_struct *tty, int __user *p)
++{
++ struct tty_ldisc *ld;
++ int ret;
++
++ ld = tty_ldisc_ref_wait(tty);
++ ret = put_user(ld->ops->num, p);
++ tty_ldisc_deref(ld);
++ return ret;
++}
++
++/**
+ * send_break - performed time break
+ * @tty: device to break on
+ * @duration: timeout in mS
+@@ -2878,7 +2910,7 @@ long tty_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
+ case TIOCGSID:
+ return tiocgsid(tty, real_tty, p);
+ case TIOCGETD:
+- return put_user(tty->ldisc->ops->num, (int __user *)p);
++ return tiocgetd(tty, p);
+ case TIOCSETD:
+ return tiocsetd(tty, p);
+ case TIOCVHANGUP:
+diff --git a/drivers/tty/tty_mutex.c b/drivers/tty/tty_mutex.c
+index 0efcf71..d09293b 100644
+--- a/drivers/tty/tty_mutex.c
++++ b/drivers/tty/tty_mutex.c
+@@ -22,6 +22,14 @@ void __lockfunc tty_lock(struct tty_struct *tty)
+ }
+ EXPORT_SYMBOL(tty_lock);
+
++int tty_lock_interruptible(struct tty_struct *tty)
++{
++ if (WARN(tty->magic != TTY_MAGIC, "L Bad %p\n", tty))
++ return -EIO;
++ tty_kref_get(tty);
++ return mutex_lock_interruptible(&tty->legacy_mutex);
++}
++
+ void __lockfunc tty_unlock(struct tty_struct *tty)
+ {
+ if (tty->magic != TTY_MAGIC) {
+diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
+index 26ca4f9..e4c70dc 100644
+--- a/drivers/usb/class/cdc-acm.c
++++ b/drivers/usb/class/cdc-acm.c
+@@ -428,7 +428,8 @@ static void acm_read_bulk_callback(struct urb *urb)
+ set_bit(rb->index, &acm->read_urbs_free);
+ dev_dbg(&acm->data->dev, "%s - non-zero urb status: %d\n",
+ __func__, status);
+- return;
++ if ((status != -ENOENT) || (urb->actual_length == 0))
++ return;
+ }
+
+ usb_mark_last_busy(acm->dev);
+@@ -1404,6 +1405,8 @@ made_compressed_probe:
+ usb_sndbulkpipe(usb_dev, epwrite->bEndpointAddress),
+ NULL, acm->writesize, acm_write_bulk, snd);
+ snd->urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
++ if (quirks & SEND_ZERO_PACKET)
++ snd->urb->transfer_flags |= URB_ZERO_PACKET;
+ snd->instance = acm;
+ }
+
+@@ -1861,6 +1864,10 @@ static const struct usb_device_id acm_ids[] = {
+ { USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ACM,
+ USB_CDC_ACM_PROTO_AT_CDMA) },
+
++ { USB_DEVICE(0x1519, 0x0452), /* Intel 7260 modem */
++ .driver_info = SEND_ZERO_PACKET,
++ },
++
+ { }
+ };
+
+diff --git a/drivers/usb/class/cdc-acm.h b/drivers/usb/class/cdc-acm.h
+index dd9af38..ccfaba9 100644
+--- a/drivers/usb/class/cdc-acm.h
++++ b/drivers/usb/class/cdc-acm.h
+@@ -134,3 +134,4 @@ struct acm {
+ #define IGNORE_DEVICE BIT(5)
+ #define QUIRK_CONTROL_LINE_STATE BIT(6)
+ #define CLEAR_HALT_CONDITIONS BIT(7)
++#define SEND_ZERO_PACKET BIT(8)
+diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
+index 8683436..1560f3f 100644
+--- a/drivers/usb/core/hub.c
++++ b/drivers/usb/core/hub.c
+@@ -5386,7 +5386,6 @@ static int usb_reset_and_verify_device(struct usb_device *udev)
+ }
+
+ bos = udev->bos;
+- udev->bos = NULL;
+
+ for (i = 0; i < SET_CONFIG_TRIES; ++i) {
+
+@@ -5479,8 +5478,11 @@ done:
+ usb_set_usb2_hardware_lpm(udev, 1);
+ usb_unlocked_enable_lpm(udev);
+ usb_enable_ltm(udev);
+- usb_release_bos_descriptor(udev);
+- udev->bos = bos;
++ /* release the new BOS descriptor allocated by hub_port_init() */
++ if (udev->bos != bos) {
++ usb_release_bos_descriptor(udev);
++ udev->bos = bos;
++ }
+ return 0;
+
+ re_enumerate:
+diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
+index c621090..c2d6520 100644
+--- a/drivers/usb/host/xhci-pci.c
++++ b/drivers/usb/host/xhci-pci.c
+@@ -28,7 +28,9 @@
+ #include "xhci.h"
+ #include "xhci-trace.h"
+
+-#define PORT2_SSIC_CONFIG_REG2 0x883c
++#define SSIC_PORT_NUM 2
++#define SSIC_PORT_CFG2 0x880c
++#define SSIC_PORT_CFG2_OFFSET 0x30
+ #define PROG_DONE (1 << 30)
+ #define SSIC_PORT_UNUSED (1 << 31)
+
+@@ -45,6 +47,7 @@
+ #define PCI_DEVICE_ID_INTEL_CHERRYVIEW_XHCI 0x22b5
+ #define PCI_DEVICE_ID_INTEL_SUNRISEPOINT_H_XHCI 0xa12f
+ #define PCI_DEVICE_ID_INTEL_SUNRISEPOINT_LP_XHCI 0x9d2f
++#define PCI_DEVICE_ID_INTEL_BROXTON_M_XHCI 0x0aa8
+
+ static const char hcd_name[] = "xhci_hcd";
+
+@@ -152,7 +155,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
+ if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
+ (pdev->device == PCI_DEVICE_ID_INTEL_SUNRISEPOINT_LP_XHCI ||
+ pdev->device == PCI_DEVICE_ID_INTEL_SUNRISEPOINT_H_XHCI ||
+- pdev->device == PCI_DEVICE_ID_INTEL_CHERRYVIEW_XHCI)) {
++ pdev->device == PCI_DEVICE_ID_INTEL_CHERRYVIEW_XHCI ||
++ pdev->device == PCI_DEVICE_ID_INTEL_BROXTON_M_XHCI)) {
+ xhci->quirks |= XHCI_PME_STUCK_QUIRK;
+ }
+ if (pdev->vendor == PCI_VENDOR_ID_ETRON &&
+@@ -322,28 +326,36 @@ static void xhci_pme_quirk(struct usb_hcd *hcd, bool suspend)
+ struct pci_dev *pdev = to_pci_dev(hcd->self.controller);
+ u32 val;
+ void __iomem *reg;
++ int i;
+
+ if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
+ pdev->device == PCI_DEVICE_ID_INTEL_CHERRYVIEW_XHCI) {
+
+- reg = (void __iomem *) xhci->cap_regs + PORT2_SSIC_CONFIG_REG2;
+-
+- /* Notify SSIC that SSIC profile programming is not done */
+- val = readl(reg) & ~PROG_DONE;
+- writel(val, reg);
+-
+- /* Mark SSIC port as unused(suspend) or used(resume) */
+- val = readl(reg);
+- if (suspend)
+- val |= SSIC_PORT_UNUSED;
+- else
+- val &= ~SSIC_PORT_UNUSED;
+- writel(val, reg);
+-
+- /* Notify SSIC that SSIC profile programming is done */
+- val = readl(reg) | PROG_DONE;
+- writel(val, reg);
+- readl(reg);
++ for (i = 0; i < SSIC_PORT_NUM; i++) {
++ reg = (void __iomem *) xhci->cap_regs +
++ SSIC_PORT_CFG2 +
++ i * SSIC_PORT_CFG2_OFFSET;
++
++ /*
++ * Notify SSIC that SSIC profile programming
++ * is not done.
++ */
++ val = readl(reg) & ~PROG_DONE;
++ writel(val, reg);
++
++ /* Mark SSIC port as unused(suspend) or used(resume) */
++ val = readl(reg);
++ if (suspend)
++ val |= SSIC_PORT_UNUSED;
++ else
++ val &= ~SSIC_PORT_UNUSED;
++ writel(val, reg);
++
++ /* Notify SSIC that SSIC profile programming is done */
++ val = readl(reg) | PROG_DONE;
++ writel(val, reg);
++ readl(reg);
++ }
+ }
+
+ reg = (void __iomem *) xhci->cap_regs + 0x80a4;
+diff --git a/drivers/usb/phy/phy-msm-usb.c b/drivers/usb/phy/phy-msm-usb.c
+index 0d19a6d..970a30e 100644
+--- a/drivers/usb/phy/phy-msm-usb.c
++++ b/drivers/usb/phy/phy-msm-usb.c
+@@ -1599,6 +1599,8 @@ static int msm_otg_read_dt(struct platform_device *pdev, struct msm_otg *motg)
+ &motg->id.nb);
+ if (ret < 0) {
+ dev_err(&pdev->dev, "register ID notifier failed\n");
++ extcon_unregister_notifier(motg->vbus.extcon,
++ EXTCON_USB, &motg->vbus.nb);
+ return ret;
+ }
+
+@@ -1660,15 +1662,6 @@ static int msm_otg_probe(struct platform_device *pdev)
+ if (!motg)
+ return -ENOMEM;
+
+- pdata = dev_get_platdata(&pdev->dev);
+- if (!pdata) {
+- if (!np)
+- return -ENXIO;
+- ret = msm_otg_read_dt(pdev, motg);
+- if (ret)
+- return ret;
+- }
+-
+ motg->phy.otg = devm_kzalloc(&pdev->dev, sizeof(struct usb_otg),
+ GFP_KERNEL);
+ if (!motg->phy.otg)
+@@ -1710,6 +1703,15 @@ static int msm_otg_probe(struct platform_device *pdev)
+ if (!motg->regs)
+ return -ENOMEM;
+
++ pdata = dev_get_platdata(&pdev->dev);
++ if (!pdata) {
++ if (!np)
++ return -ENXIO;
++ ret = msm_otg_read_dt(pdev, motg);
++ if (ret)
++ return ret;
++ }
++
+ /*
+ * NOTE: The PHYs can be multiplexed between the chipidea controller
+ * and the dwc3 controller, using a single bit. It is important that
+@@ -1717,8 +1719,10 @@ static int msm_otg_probe(struct platform_device *pdev)
+ */
+ if (motg->phy_number) {
+ phy_select = devm_ioremap_nocache(&pdev->dev, USB2_PHY_SEL, 4);
+- if (!phy_select)
+- return -ENOMEM;
++ if (!phy_select) {
++ ret = -ENOMEM;
++ goto unregister_extcon;
++ }
+ /* Enable second PHY with the OTG port */
+ writel(0x1, phy_select);
+ }
+@@ -1728,7 +1732,8 @@ static int msm_otg_probe(struct platform_device *pdev)
+ motg->irq = platform_get_irq(pdev, 0);
+ if (motg->irq < 0) {
+ dev_err(&pdev->dev, "platform_get_irq failed\n");
+- return motg->irq;
++ ret = motg->irq;
++ goto unregister_extcon;
+ }
+
+ regs[0].supply = "vddcx";
+@@ -1737,7 +1742,7 @@ static int msm_otg_probe(struct platform_device *pdev)
+
+ ret = devm_regulator_bulk_get(motg->phy.dev, ARRAY_SIZE(regs), regs);
+ if (ret)
+- return ret;
++ goto unregister_extcon;
+
+ motg->vddcx = regs[0].consumer;
+ motg->v3p3 = regs[1].consumer;
+@@ -1834,6 +1839,12 @@ disable_clks:
+ clk_disable_unprepare(motg->clk);
+ if (!IS_ERR(motg->core_clk))
+ clk_disable_unprepare(motg->core_clk);
++unregister_extcon:
++ extcon_unregister_notifier(motg->id.extcon,
++ EXTCON_USB_HOST, &motg->id.nb);
++ extcon_unregister_notifier(motg->vbus.extcon,
++ EXTCON_USB, &motg->vbus.nb);
++
+ return ret;
+ }
+
+diff --git a/drivers/usb/serial/cp210x.c b/drivers/usb/serial/cp210x.c
+index 59b2126..1dd9919 100644
+--- a/drivers/usb/serial/cp210x.c
++++ b/drivers/usb/serial/cp210x.c
+@@ -98,6 +98,7 @@ static const struct usb_device_id id_table[] = {
+ { USB_DEVICE(0x10C4, 0x81AC) }, /* MSD Dash Hawk */
+ { USB_DEVICE(0x10C4, 0x81AD) }, /* INSYS USB Modem */
+ { USB_DEVICE(0x10C4, 0x81C8) }, /* Lipowsky Industrie Elektronik GmbH, Baby-JTAG */
++ { USB_DEVICE(0x10C4, 0x81D7) }, /* IAI Corp. RCB-CV-USB USB to RS485 Adaptor */
+ { USB_DEVICE(0x10C4, 0x81E2) }, /* Lipowsky Industrie Elektronik GmbH, Baby-LIN */
+ { USB_DEVICE(0x10C4, 0x81E7) }, /* Aerocomm Radio */
+ { USB_DEVICE(0x10C4, 0x81E8) }, /* Zephyr Bioharness */
+diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
+index a5a0376..8c660ae 100644
+--- a/drivers/usb/serial/ftdi_sio.c
++++ b/drivers/usb/serial/ftdi_sio.c
+@@ -824,6 +824,7 @@ static const struct usb_device_id id_table_combined[] = {
+ { USB_DEVICE(FTDI_VID, FTDI_TURTELIZER_PID),
+ .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
+ { USB_DEVICE(RATOC_VENDOR_ID, RATOC_PRODUCT_ID_USB60F) },
++ { USB_DEVICE(RATOC_VENDOR_ID, RATOC_PRODUCT_ID_SCU18) },
+ { USB_DEVICE(FTDI_VID, FTDI_REU_TINY_PID) },
+
+ /* Papouch devices based on FTDI chip */
+diff --git a/drivers/usb/serial/ftdi_sio_ids.h b/drivers/usb/serial/ftdi_sio_ids.h
+index 67c6d44..a84df25 100644
+--- a/drivers/usb/serial/ftdi_sio_ids.h
++++ b/drivers/usb/serial/ftdi_sio_ids.h
+@@ -615,6 +615,7 @@
+ */
+ #define RATOC_VENDOR_ID 0x0584
+ #define RATOC_PRODUCT_ID_USB60F 0xb020
++#define RATOC_PRODUCT_ID_SCU18 0xb03a
+
+ /*
+ * Infineon Technologies
+diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
+index f228060..db86e51 100644
+--- a/drivers/usb/serial/option.c
++++ b/drivers/usb/serial/option.c
+@@ -268,6 +268,8 @@ static void option_instat_callback(struct urb *urb);
+ #define TELIT_PRODUCT_CC864_SINGLE 0x1006
+ #define TELIT_PRODUCT_DE910_DUAL 0x1010
+ #define TELIT_PRODUCT_UE910_V2 0x1012
++#define TELIT_PRODUCT_LE922_USBCFG0 0x1042
++#define TELIT_PRODUCT_LE922_USBCFG3 0x1043
+ #define TELIT_PRODUCT_LE920 0x1200
+ #define TELIT_PRODUCT_LE910 0x1201
+
+@@ -615,6 +617,16 @@ static const struct option_blacklist_info telit_le920_blacklist = {
+ .reserved = BIT(1) | BIT(5),
+ };
+
++static const struct option_blacklist_info telit_le922_blacklist_usbcfg0 = {
++ .sendsetup = BIT(2),
++ .reserved = BIT(0) | BIT(1) | BIT(3),
++};
++
++static const struct option_blacklist_info telit_le922_blacklist_usbcfg3 = {
++ .sendsetup = BIT(0),
++ .reserved = BIT(1) | BIT(2) | BIT(3),
++};
++
+ static const struct usb_device_id option_ids[] = {
+ { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) },
+ { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) },
+@@ -1160,6 +1172,10 @@ static const struct usb_device_id option_ids[] = {
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_CC864_SINGLE) },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_DE910_DUAL) },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_UE910_V2) },
++ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE922_USBCFG0),
++ .driver_info = (kernel_ulong_t)&telit_le922_blacklist_usbcfg0 },
++ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE922_USBCFG3),
++ .driver_info = (kernel_ulong_t)&telit_le922_blacklist_usbcfg3 },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE910),
+ .driver_info = (kernel_ulong_t)&telit_le910_blacklist },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920),
+@@ -1679,7 +1695,7 @@ static const struct usb_device_id option_ids[] = {
+ { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_EU3_P) },
+ { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_PH8),
+ .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
+- { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_AHXX) },
++ { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_AHXX, 0xff) },
+ { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_PLXX),
+ .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
+ { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_HC28_MDM) },
+diff --git a/drivers/usb/serial/visor.c b/drivers/usb/serial/visor.c
+index 60afb39..337a0be 100644
+--- a/drivers/usb/serial/visor.c
++++ b/drivers/usb/serial/visor.c
+@@ -544,6 +544,11 @@ static int treo_attach(struct usb_serial *serial)
+ (serial->num_interrupt_in == 0))
+ return 0;
+
++ if (serial->num_bulk_in < 2 || serial->num_interrupt_in < 2) {
++ dev_err(&serial->interface->dev, "missing endpoints\n");
++ return -ENODEV;
++ }
++
+ /*
+ * It appears that Treos and Kyoceras want to use the
+ * 1st bulk in endpoint to communicate with the 2nd bulk out endpoint,
+@@ -597,8 +602,10 @@ static int clie_5_attach(struct usb_serial *serial)
+ */
+
+ /* some sanity check */
+- if (serial->num_ports < 2)
+- return -1;
++ if (serial->num_bulk_out < 2) {
++ dev_err(&serial->interface->dev, "missing bulk out endpoints\n");
++ return -ENODEV;
++ }
+
+ /* port 0 now uses the modified endpoint Address */
+ port = serial->port[0];
+diff --git a/fs/ext4/crypto_key.c b/fs/ext4/crypto_key.c
+index c5882b3..9a16d1e 100644
+--- a/fs/ext4/crypto_key.c
++++ b/fs/ext4/crypto_key.c
+@@ -213,9 +213,11 @@ retry:
+ res = -ENOKEY;
+ goto out;
+ }
++ down_read(&keyring_key->sem);
+ ukp = user_key_payload(keyring_key);
+ if (ukp->datalen != sizeof(struct ext4_encryption_key)) {
+ res = -EINVAL;
++ up_read(&keyring_key->sem);
+ goto out;
+ }
+ master_key = (struct ext4_encryption_key *)ukp->data;
+@@ -226,10 +228,12 @@ retry:
+ "ext4: key size incorrect: %d\n",
+ master_key->size);
+ res = -ENOKEY;
++ up_read(&keyring_key->sem);
+ goto out;
+ }
+ res = ext4_derive_key_aes(ctx.nonce, master_key->raw,
+ raw_key);
++ up_read(&keyring_key->sem);
+ if (res)
+ goto out;
+ got_key:
+diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
+index 8981803..343b0f1 100644
+--- a/fs/nfs/nfs4proc.c
++++ b/fs/nfs/nfs4proc.c
+@@ -8054,7 +8054,6 @@ static void nfs4_layoutreturn_release(void *calldata)
+ pnfs_set_layout_stateid(lo, &lrp->res.stateid, true);
+ pnfs_mark_matching_lsegs_invalid(lo, &freeme, &lrp->args.range);
+ pnfs_clear_layoutreturn_waitbit(lo);
+- lo->plh_block_lgets--;
+ spin_unlock(&lo->plh_inode->i_lock);
+ pnfs_free_lseg_list(&freeme);
+ pnfs_put_layout_hdr(lrp->args.layout);
+diff --git a/fs/ocfs2/dlm/dlmmaster.c b/fs/ocfs2/dlm/dlmmaster.c
+index 84f2f80..4e2162b 100644
+--- a/fs/ocfs2/dlm/dlmmaster.c
++++ b/fs/ocfs2/dlm/dlmmaster.c
+@@ -2519,6 +2519,11 @@ static int dlm_migrate_lockres(struct dlm_ctxt *dlm,
+ spin_lock(&dlm->master_lock);
+ ret = dlm_add_migration_mle(dlm, res, mle, &oldmle, name,
+ namelen, target, dlm->node_num);
++ /* get an extra reference on the mle.
++ * otherwise the assert_master from the new
++ * master will destroy this.
++ */
++ dlm_get_mle_inuse(mle);
+ spin_unlock(&dlm->master_lock);
+ spin_unlock(&dlm->spinlock);
+
+@@ -2554,6 +2559,7 @@ fail:
+ if (mle_added) {
+ dlm_mle_detach_hb_events(dlm, mle);
+ dlm_put_mle(mle);
++ dlm_put_mle_inuse(mle);
+ } else if (mle) {
+ kmem_cache_free(dlm_mle_cache, mle);
+ mle = NULL;
+@@ -2571,17 +2577,6 @@ fail:
+ * ensure that all assert_master work is flushed. */
+ flush_workqueue(dlm->dlm_worker);
+
+- /* get an extra reference on the mle.
+- * otherwise the assert_master from the new
+- * master will destroy this.
+- * also, make sure that all callers of dlm_get_mle
+- * take both dlm->spinlock and dlm->master_lock */
+- spin_lock(&dlm->spinlock);
+- spin_lock(&dlm->master_lock);
+- dlm_get_mle_inuse(mle);
+- spin_unlock(&dlm->master_lock);
+- spin_unlock(&dlm->spinlock);
+-
+ /* notify new node and send all lock state */
+ /* call send_one_lockres with migration flag.
+ * this serves as notice to the target node that a
+@@ -3312,6 +3307,15 @@ top:
+ mle->new_master != dead_node)
+ continue;
+
++ if (mle->new_master == dead_node && mle->inuse) {
++ mlog(ML_NOTICE, "%s: target %u died during "
++ "migration from %u, the MLE is "
++ "still keep used, ignore it!\n",
++ dlm->name, dead_node,
++ mle->master);
++ continue;
++ }
++
+ /* If we have reached this point, this mle needs to be
+ * removed from the list and freed. */
+ dlm_clean_migration_mle(dlm, mle);
+diff --git a/fs/ocfs2/dlm/dlmrecovery.c b/fs/ocfs2/dlm/dlmrecovery.c
+index 9e4f862..42f0cae 100644
+--- a/fs/ocfs2/dlm/dlmrecovery.c
++++ b/fs/ocfs2/dlm/dlmrecovery.c
+@@ -2360,6 +2360,8 @@ static void dlm_do_local_recovery_cleanup(struct dlm_ctxt *dlm, u8 dead_node)
+ break;
+ }
+ }
++ dlm_lockres_clear_refmap_bit(dlm, res,
++ dead_node);
+ spin_unlock(&res->spinlock);
+ continue;
+ }
+diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c
+index 20276e3..b002acf 100644
+--- a/fs/ocfs2/dlmglue.c
++++ b/fs/ocfs2/dlmglue.c
+@@ -1390,6 +1390,7 @@ static int __ocfs2_cluster_lock(struct ocfs2_super *osb,
+ unsigned int gen;
+ int noqueue_attempted = 0;
+ int dlm_locked = 0;
++ int kick_dc = 0;
+
+ if (!(lockres->l_flags & OCFS2_LOCK_INITIALIZED)) {
+ mlog_errno(-EINVAL);
+@@ -1524,7 +1525,12 @@ update_holders:
+ unlock:
+ lockres_clear_flags(lockres, OCFS2_LOCK_UPCONVERT_FINISHING);
+
++ /* ocfs2_unblock_lock reques on seeing OCFS2_LOCK_UPCONVERT_FINISHING */
++ kick_dc = (lockres->l_flags & OCFS2_LOCK_BLOCKED);
++
+ spin_unlock_irqrestore(&lockres->l_lock, flags);
++ if (kick_dc)
++ ocfs2_wake_downconvert_thread(osb);
+ out:
+ /*
+ * This is helping work around a lock inversion between the page lock
+diff --git a/include/crypto/hash.h b/include/crypto/hash.h
+index 3d69c93..6361892 100644
+--- a/include/crypto/hash.h
++++ b/include/crypto/hash.h
+@@ -204,6 +204,7 @@ struct crypto_ahash {
+ unsigned int keylen);
+
+ unsigned int reqsize;
++ bool has_setkey;
+ struct crypto_tfm base;
+ };
+
+@@ -375,6 +376,11 @@ static inline void *ahash_request_ctx(struct ahash_request *req)
+ int crypto_ahash_setkey(struct crypto_ahash *tfm, const u8 *key,
+ unsigned int keylen);
+
++static inline bool crypto_ahash_has_setkey(struct crypto_ahash *tfm)
++{
++ return tfm->has_setkey;
++}
++
+ /**
+ * crypto_ahash_finup() - update and finalize message digest
+ * @req: reference to the ahash_request handle that holds all information
+diff --git a/include/crypto/if_alg.h b/include/crypto/if_alg.h
+index 018afb2..a2bfd78 100644
+--- a/include/crypto/if_alg.h
++++ b/include/crypto/if_alg.h
+@@ -30,6 +30,9 @@ struct alg_sock {
+
+ struct sock *parent;
+
++ unsigned int refcnt;
++ unsigned int nokey_refcnt;
++
+ const struct af_alg_type *type;
+ void *private;
+ };
+@@ -50,9 +53,11 @@ struct af_alg_type {
+ void (*release)(void *private);
+ int (*setkey)(void *private, const u8 *key, unsigned int keylen);
+ int (*accept)(void *private, struct sock *sk);
++ int (*accept_nokey)(void *private, struct sock *sk);
+ int (*setauthsize)(void *private, unsigned int authsize);
+
+ struct proto_ops *ops;
++ struct proto_ops *ops_nokey;
+ struct module *owner;
+ char name[14];
+ };
+@@ -67,6 +72,7 @@ int af_alg_register_type(const struct af_alg_type *type);
+ int af_alg_unregister_type(const struct af_alg_type *type);
+
+ int af_alg_release(struct socket *sock);
++void af_alg_release_parent(struct sock *sk);
+ int af_alg_accept(struct sock *sk, struct socket *newsock);
+
+ int af_alg_make_sg(struct af_alg_sgl *sgl, struct iov_iter *iter, int len);
+@@ -83,11 +89,6 @@ static inline struct alg_sock *alg_sk(struct sock *sk)
+ return (struct alg_sock *)sk;
+ }
+
+-static inline void af_alg_release_parent(struct sock *sk)
+-{
+- sock_put(alg_sk(sk)->parent);
+-}
+-
+ static inline void af_alg_init_completion(struct af_alg_completion *completion)
+ {
+ init_completion(&completion->completion);
+diff --git a/include/crypto/skcipher.h b/include/crypto/skcipher.h
+index d8dd41f..fd8742a 100644
+--- a/include/crypto/skcipher.h
++++ b/include/crypto/skcipher.h
+@@ -61,6 +61,8 @@ struct crypto_skcipher {
+ unsigned int ivsize;
+ unsigned int reqsize;
+
++ bool has_setkey;
++
+ struct crypto_tfm base;
+ };
+
+@@ -305,6 +307,11 @@ static inline int crypto_skcipher_setkey(struct crypto_skcipher *tfm,
+ return tfm->setkey(tfm, key, keylen);
+ }
+
++static inline bool crypto_skcipher_has_setkey(struct crypto_skcipher *tfm)
++{
++ return tfm->has_setkey;
++}
++
+ /**
+ * crypto_skcipher_reqtfm() - obtain cipher handle from request
+ * @req: skcipher_request out of which the cipher handle is to be obtained
+diff --git a/include/linux/console.h b/include/linux/console.h
+index bd19434..ea731af 100644
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -150,6 +150,7 @@ extern int console_trylock(void);
+ extern void console_unlock(void);
+ extern void console_conditional_schedule(void);
+ extern void console_unblank(void);
++extern void console_flush_on_panic(void);
+ extern struct tty_driver *console_device(int *);
+ extern void console_stop(struct console *);
+ extern void console_start(struct console *);
+diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h
+index 76dd4f0..2ead22d 100644
+--- a/include/linux/hrtimer.h
++++ b/include/linux/hrtimer.h
+@@ -87,7 +87,8 @@ enum hrtimer_restart {
+ * @function: timer expiry callback function
+ * @base: pointer to the timer base (per cpu and per clock)
+ * @state: state information (See bit values above)
+- * @start_pid: timer statistics field to store the pid of the task which
++ * @is_rel: Set if the timer was armed relative
++ * @start_pid: timer statistics field to store the pid of the task which
+ * started the timer
+ * @start_site: timer statistics field to store the site where the timer
+ * was started
+@@ -101,7 +102,8 @@ struct hrtimer {
+ ktime_t _softexpires;
+ enum hrtimer_restart (*function)(struct hrtimer *);
+ struct hrtimer_clock_base *base;
+- unsigned long state;
++ u8 state;
++ u8 is_rel;
+ #ifdef CONFIG_TIMER_STATS
+ int start_pid;
+ void *start_site;
+@@ -321,6 +323,27 @@ static inline void clock_was_set_delayed(void) { }
+
+ #endif
+
++static inline ktime_t
++__hrtimer_expires_remaining_adjusted(const struct hrtimer *timer, ktime_t now)
++{
++ ktime_t rem = ktime_sub(timer->node.expires, now);
++
++ /*
++ * Adjust relative timers for the extra we added in
++ * hrtimer_start_range_ns() to prevent short timeouts.
++ */
++ if (IS_ENABLED(CONFIG_TIME_LOW_RES) && timer->is_rel)
++ rem.tv64 -= hrtimer_resolution;
++ return rem;
++}
++
++static inline ktime_t
++hrtimer_expires_remaining_adjusted(const struct hrtimer *timer)
++{
++ return __hrtimer_expires_remaining_adjusted(timer,
++ timer->base->get_time());
++}
++
+ extern void clock_was_set(void);
+ #ifdef CONFIG_TIMERFD
+ extern void timerfd_clock_was_set(void);
+@@ -390,7 +413,12 @@ static inline void hrtimer_restart(struct hrtimer *timer)
+ }
+
+ /* Query timers: */
+-extern ktime_t hrtimer_get_remaining(const struct hrtimer *timer);
++extern ktime_t __hrtimer_get_remaining(const struct hrtimer *timer, bool adjust);
++
++static inline ktime_t hrtimer_get_remaining(const struct hrtimer *timer)
++{
++ return __hrtimer_get_remaining(timer, false);
++}
+
+ extern u64 hrtimer_get_next_event(void);
+
+diff --git a/include/linux/tty.h b/include/linux/tty.h
+index 5e31f1b..6b6e811 100644
+--- a/include/linux/tty.h
++++ b/include/linux/tty.h
+@@ -654,6 +654,7 @@ extern long vt_compat_ioctl(struct tty_struct *tty,
+ /* tty_mutex.c */
+ /* functions for preparation of BKL removal */
+ extern void __lockfunc tty_lock(struct tty_struct *tty);
++extern int tty_lock_interruptible(struct tty_struct *tty);
+ extern void __lockfunc tty_unlock(struct tty_struct *tty);
+ extern void __lockfunc tty_lock_slave(struct tty_struct *tty);
+ extern void __lockfunc tty_unlock_slave(struct tty_struct *tty);
+diff --git a/include/sound/rawmidi.h b/include/sound/rawmidi.h
+index f6cbef7..3b91ad5 100644
+--- a/include/sound/rawmidi.h
++++ b/include/sound/rawmidi.h
+@@ -167,6 +167,10 @@ int snd_rawmidi_transmit_peek(struct snd_rawmidi_substream *substream,
+ int snd_rawmidi_transmit_ack(struct snd_rawmidi_substream *substream, int count);
+ int snd_rawmidi_transmit(struct snd_rawmidi_substream *substream,
+ unsigned char *buffer, int count);
++int __snd_rawmidi_transmit_peek(struct snd_rawmidi_substream *substream,
++ unsigned char *buffer, int count);
++int __snd_rawmidi_transmit_ack(struct snd_rawmidi_substream *substream,
++ int count);
+
+ /* main midi functions */
+
+diff --git a/kernel/panic.c b/kernel/panic.c
+index 4b150bc..41e2b54 100644
+--- a/kernel/panic.c
++++ b/kernel/panic.c
+@@ -157,8 +157,7 @@ void panic(const char *fmt, ...)
+ * panic() is not being callled from OOPS.
+ */
+ debug_locks_off();
+- console_trylock();
+- console_unlock();
++ console_flush_on_panic();
+
+ if (!panic_blink)
+ panic_blink = no_blink;
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 2ce8826..c048e34 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -2233,13 +2233,24 @@ void console_unlock(void)
+ static u64 seen_seq;
+ unsigned long flags;
+ bool wake_klogd = false;
+- bool retry;
++ bool do_cond_resched, retry;
+
+ if (console_suspended) {
+ up_console_sem();
+ return;
+ }
+
++ /*
++ * Console drivers are called under logbuf_lock, so
++ * @console_may_schedule should be cleared before; however, we may
++ * end up dumping a lot of lines, for example, if called from
++ * console registration path, and should invoke cond_resched()
++ * between lines if allowable. Not doing so can cause a very long
++ * scheduling stall on a slow console leading to RCU stall and
++ * softlockup warnings which exacerbate the issue with more
++ * messages practically incapacitating the system.
++ */
++ do_cond_resched = console_may_schedule;
+ console_may_schedule = 0;
+
+ /* flush buffered message fragment immediately to console */
+@@ -2311,6 +2322,9 @@ skip:
+ call_console_drivers(level, ext_text, ext_len, text, len);
+ start_critical_timings();
+ local_irq_restore(flags);
++
++ if (do_cond_resched)
++ cond_resched();
+ }
+ console_locked = 0;
+
+@@ -2378,6 +2392,25 @@ void console_unblank(void)
+ console_unlock();
+ }
+
++/**
++ * console_flush_on_panic - flush console content on panic
++ *
++ * Immediately output all pending messages no matter what.
++ */
++void console_flush_on_panic(void)
++{
++ /*
++ * If someone else is holding the console lock, trylock will fail
++ * and may_schedule may be set. Ignore and proceed to unlock so
++ * that messages are flushed out. As this can be called from any
++ * context and we don't want to get preempted while flushing,
++ * ensure may_schedule is cleared.
++ */
++ console_trylock();
++ console_may_schedule = 0;
++ console_unlock();
++}
++
+ /*
+ * Return the console tty driver structure and its associated index
+ */
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 732e993..eb70592 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -6738,7 +6738,7 @@ static void sched_init_numa(void)
+
+ sched_domains_numa_masks[i][j] = mask;
+
+- for (k = 0; k < nr_node_ids; k++) {
++ for_each_node(k) {
+ if (node_distance(j, k) > sched_domains_numa_distance[i])
+ continue;
+
+diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
+index 435b885..fa909f9 100644
+--- a/kernel/time/hrtimer.c
++++ b/kernel/time/hrtimer.c
+@@ -897,10 +897,10 @@ static int enqueue_hrtimer(struct hrtimer *timer,
+ */
+ static void __remove_hrtimer(struct hrtimer *timer,
+ struct hrtimer_clock_base *base,
+- unsigned long newstate, int reprogram)
++ u8 newstate, int reprogram)
+ {
+ struct hrtimer_cpu_base *cpu_base = base->cpu_base;
+- unsigned int state = timer->state;
++ u8 state = timer->state;
+
+ timer->state = newstate;
+ if (!(state & HRTIMER_STATE_ENQUEUED))
+@@ -930,7 +930,7 @@ static inline int
+ remove_hrtimer(struct hrtimer *timer, struct hrtimer_clock_base *base, bool restart)
+ {
+ if (hrtimer_is_queued(timer)) {
+- unsigned long state = timer->state;
++ u8 state = timer->state;
+ int reprogram;
+
+ /*
+@@ -954,6 +954,22 @@ remove_hrtimer(struct hrtimer *timer, struct hrtimer_clock_base *base, bool rest
+ return 0;
+ }
+
++static inline ktime_t hrtimer_update_lowres(struct hrtimer *timer, ktime_t tim,
++ const enum hrtimer_mode mode)
++{
++#ifdef CONFIG_TIME_LOW_RES
++ /*
++ * CONFIG_TIME_LOW_RES indicates that the system has no way to return
++ * granular time values. For relative timers we add hrtimer_resolution
++ * (i.e. one jiffie) to prevent short timeouts.
++ */
++ timer->is_rel = mode & HRTIMER_MODE_REL;
++ if (timer->is_rel)
++ tim = ktime_add_safe(tim, ktime_set(0, hrtimer_resolution));
++#endif
++ return tim;
++}
++
+ /**
+ * hrtimer_start_range_ns - (re)start an hrtimer on the current CPU
+ * @timer: the timer to be added
+@@ -974,19 +990,10 @@ void hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
+ /* Remove an active timer from the queue: */
+ remove_hrtimer(timer, base, true);
+
+- if (mode & HRTIMER_MODE_REL) {
++ if (mode & HRTIMER_MODE_REL)
+ tim = ktime_add_safe(tim, base->get_time());
+- /*
+- * CONFIG_TIME_LOW_RES is a temporary way for architectures
+- * to signal that they simply return xtime in
+- * do_gettimeoffset(). In this case we want to round up by
+- * resolution when starting a relative timer, to avoid short
+- * timeouts. This will go away with the GTOD framework.
+- */
+-#ifdef CONFIG_TIME_LOW_RES
+- tim = ktime_add_safe(tim, ktime_set(0, hrtimer_resolution));
+-#endif
+- }
++
++ tim = hrtimer_update_lowres(timer, tim, mode);
+
+ hrtimer_set_expires_range_ns(timer, tim, delta_ns);
+
+@@ -1074,19 +1081,23 @@ EXPORT_SYMBOL_GPL(hrtimer_cancel);
+ /**
+ * hrtimer_get_remaining - get remaining time for the timer
+ * @timer: the timer to read
++ * @adjust: adjust relative timers when CONFIG_TIME_LOW_RES=y
+ */
+-ktime_t hrtimer_get_remaining(const struct hrtimer *timer)
++ktime_t __hrtimer_get_remaining(const struct hrtimer *timer, bool adjust)
+ {
+ unsigned long flags;
+ ktime_t rem;
+
+ lock_hrtimer_base(timer, &flags);
+- rem = hrtimer_expires_remaining(timer);
++ if (IS_ENABLED(CONFIG_TIME_LOW_RES) && adjust)
++ rem = hrtimer_expires_remaining_adjusted(timer);
++ else
++ rem = hrtimer_expires_remaining(timer);
+ unlock_hrtimer_base(timer, &flags);
+
+ return rem;
+ }
+-EXPORT_SYMBOL_GPL(hrtimer_get_remaining);
++EXPORT_SYMBOL_GPL(__hrtimer_get_remaining);
+
+ #ifdef CONFIG_NO_HZ_COMMON
+ /**
+@@ -1220,6 +1231,14 @@ static void __run_hrtimer(struct hrtimer_cpu_base *cpu_base,
+ fn = timer->function;
+
+ /*
++ * Clear the 'is relative' flag for the TIME_LOW_RES case. If the
++ * timer is restarted with a period then it becomes an absolute
++ * timer. If its not restarted it does not matter.
++ */
++ if (IS_ENABLED(CONFIG_TIME_LOW_RES))
++ timer->is_rel = false;
++
++ /*
+ * Because we run timers from hardirq context, there is no chance
+ * they get migrated to another cpu, therefore its safe to unlock
+ * the timer base.
+diff --git a/kernel/time/timer_list.c b/kernel/time/timer_list.c
+index f75e35b..ba7d8b2 100644
+--- a/kernel/time/timer_list.c
++++ b/kernel/time/timer_list.c
+@@ -69,7 +69,7 @@ print_timer(struct seq_file *m, struct hrtimer *taddr, struct hrtimer *timer,
+ print_name_offset(m, taddr);
+ SEQ_printf(m, ", ");
+ print_name_offset(m, timer->function);
+- SEQ_printf(m, ", S:%02lx", timer->state);
++ SEQ_printf(m, ", S:%02x", timer->state);
+ #ifdef CONFIG_TIMER_STATS
+ SEQ_printf(m, ", ");
+ print_name_offset(m, timer->start_site);
+diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
+index 87fb980..d929340 100644
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -1751,7 +1751,7 @@ void trace_buffer_unlock_commit_regs(struct trace_array *tr,
+ {
+ __buffer_unlock_commit(buffer, event);
+
+- ftrace_trace_stack(tr, buffer, flags, 6, pc, regs);
++ ftrace_trace_stack(tr, buffer, flags, 0, pc, regs);
+ ftrace_trace_userstack(buffer, flags, pc);
+ }
+ EXPORT_SYMBOL_GPL(trace_buffer_unlock_commit_regs);
+diff --git a/kernel/trace/trace_stack.c b/kernel/trace/trace_stack.c
+index dda9e67..202df6c 100644
+--- a/kernel/trace/trace_stack.c
++++ b/kernel/trace/trace_stack.c
+@@ -126,6 +126,13 @@ check_stack(unsigned long ip, unsigned long *stack)
+ }
+
+ /*
++ * Some archs may not have the passed in ip in the dump.
++ * If that happens, we need to show everything.
++ */
++ if (i == stack_trace_max.nr_entries)
++ i = 0;
++
++ /*
+ * Now find where in the stack these are.
+ */
+ x = 0;
+diff --git a/lib/libcrc32c.c b/lib/libcrc32c.c
+index 6a08ce7..acf9da4 100644
+--- a/lib/libcrc32c.c
++++ b/lib/libcrc32c.c
+@@ -74,3 +74,4 @@ module_exit(libcrc32c_mod_fini);
+ MODULE_AUTHOR("Clay Haapala <chaapala@cisco.com>");
+ MODULE_DESCRIPTION("CRC32c (Castagnoli) calculations");
+ MODULE_LICENSE("GPL");
++MODULE_SOFTDEP("pre: crc32c");
+diff --git a/mm/backing-dev.c b/mm/backing-dev.c
+index 7340353..cbe6f0b 100644
+--- a/mm/backing-dev.c
++++ b/mm/backing-dev.c
+@@ -989,7 +989,7 @@ long wait_iff_congested(struct zone *zone, int sync, long timeout)
+ * here rather than calling cond_resched().
+ */
+ if (current->flags & PF_WQ_WORKER)
+- schedule_timeout(1);
++ schedule_timeout_uninterruptible(1);
+ else
+ cond_resched();
+
+diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
+index 9f15bdd..fc08399 100644
+--- a/mm/zsmalloc.c
++++ b/mm/zsmalloc.c
+@@ -309,7 +309,12 @@ static void free_handle(struct zs_pool *pool, unsigned long handle)
+
+ static void record_obj(unsigned long handle, unsigned long obj)
+ {
+- *(unsigned long *)handle = obj;
++ /*
++ * lsb of @obj represents handle lock while other bits
++ * represent object value the handle is pointing so
++ * updating shouldn't do store tearing.
++ */
++ WRITE_ONCE(*(unsigned long *)handle, obj);
+ }
+
+ /* zpool driver */
+@@ -1635,6 +1640,13 @@ static int migrate_zspage(struct zs_pool *pool, struct size_class *class,
+ free_obj = obj_malloc(d_page, class, handle);
+ zs_object_copy(free_obj, used_obj, class);
+ index++;
++ /*
++ * record_obj updates handle's value to free_obj and it will
++ * invalidate lock bit(ie, HANDLE_PIN_BIT) of handle, which
++ * breaks synchronization using pin_tag(e,g, zs_free) so
++ * let's keep the lock bit.
++ */
++ free_obj |= BIT(HANDLE_PIN_BIT);
+ record_obj(handle, free_obj);
+ unpin_tag(handle);
+ obj_free(pool, class, used_obj);
+diff --git a/security/integrity/evm/evm_main.c b/security/integrity/evm/evm_main.c
+index 1334e02..3d145a3 100644
+--- a/security/integrity/evm/evm_main.c
++++ b/security/integrity/evm/evm_main.c
+@@ -23,6 +23,7 @@
+ #include <linux/integrity.h>
+ #include <linux/evm.h>
+ #include <crypto/hash.h>
++#include <crypto/algapi.h>
+ #include "evm.h"
+
+ int evm_initialized;
+@@ -148,7 +149,7 @@ static enum integrity_status evm_verify_hmac(struct dentry *dentry,
+ xattr_value_len, calc.digest);
+ if (rc)
+ break;
+- rc = memcmp(xattr_data->digest, calc.digest,
++ rc = crypto_memneq(xattr_data->digest, calc.digest,
+ sizeof(calc.digest));
+ if (rc)
+ rc = -EINVAL;
+diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c
+index b123c42..b554d7f 100644
+--- a/sound/core/compress_offload.c
++++ b/sound/core/compress_offload.c
+@@ -44,6 +44,13 @@
+ #include <sound/compress_offload.h>
+ #include <sound/compress_driver.h>
+
++/* struct snd_compr_codec_caps overflows the ioctl bit size for some
++ * architectures, so we need to disable the relevant ioctls.
++ */
++#if _IOC_SIZEBITS < 14
++#define COMPR_CODEC_CAPS_OVERFLOW
++#endif
++
+ /* TODO:
+ * - add substream support for multiple devices in case of
+ * SND_DYNAMIC_MINORS is not used
+@@ -438,6 +445,7 @@ out:
+ return retval;
+ }
+
++#ifndef COMPR_CODEC_CAPS_OVERFLOW
+ static int
+ snd_compr_get_codec_caps(struct snd_compr_stream *stream, unsigned long arg)
+ {
+@@ -461,6 +469,7 @@ out:
+ kfree(caps);
+ return retval;
+ }
++#endif /* !COMPR_CODEC_CAPS_OVERFLOW */
+
+ /* revisit this with snd_pcm_preallocate_xxx */
+ static int snd_compr_allocate_buffer(struct snd_compr_stream *stream,
+@@ -799,9 +808,11 @@ static long snd_compr_ioctl(struct file *f, unsigned int cmd, unsigned long arg)
+ case _IOC_NR(SNDRV_COMPRESS_GET_CAPS):
+ retval = snd_compr_get_caps(stream, arg);
+ break;
++#ifndef COMPR_CODEC_CAPS_OVERFLOW
+ case _IOC_NR(SNDRV_COMPRESS_GET_CODEC_CAPS):
+ retval = snd_compr_get_codec_caps(stream, arg);
+ break;
++#endif
+ case _IOC_NR(SNDRV_COMPRESS_SET_PARAMS):
+ retval = snd_compr_set_params(stream, arg);
+ break;
+diff --git a/sound/core/oss/pcm_oss.c b/sound/core/oss/pcm_oss.c
+index 58550cc..33e72c8 100644
+--- a/sound/core/oss/pcm_oss.c
++++ b/sound/core/oss/pcm_oss.c
+@@ -834,7 +834,8 @@ static int choose_rate(struct snd_pcm_substream *substream,
+ return snd_pcm_hw_param_near(substream, params, SNDRV_PCM_HW_PARAM_RATE, best_rate, NULL);
+ }
+
+-static int snd_pcm_oss_change_params(struct snd_pcm_substream *substream)
++static int snd_pcm_oss_change_params(struct snd_pcm_substream *substream,
++ bool trylock)
+ {
+ struct snd_pcm_runtime *runtime = substream->runtime;
+ struct snd_pcm_hw_params *params, *sparams;
+@@ -848,7 +849,10 @@ static int snd_pcm_oss_change_params(struct snd_pcm_substream *substream)
+ struct snd_mask sformat_mask;
+ struct snd_mask mask;
+
+- if (mutex_lock_interruptible(&runtime->oss.params_lock))
++ if (trylock) {
++ if (!(mutex_trylock(&runtime->oss.params_lock)))
++ return -EAGAIN;
++ } else if (mutex_lock_interruptible(&runtime->oss.params_lock))
+ return -EINTR;
+ sw_params = kmalloc(sizeof(*sw_params), GFP_KERNEL);
+ params = kmalloc(sizeof(*params), GFP_KERNEL);
+@@ -1092,7 +1096,7 @@ static int snd_pcm_oss_get_active_substream(struct snd_pcm_oss_file *pcm_oss_fil
+ if (asubstream == NULL)
+ asubstream = substream;
+ if (substream->runtime->oss.params) {
+- err = snd_pcm_oss_change_params(substream);
++ err = snd_pcm_oss_change_params(substream, false);
+ if (err < 0)
+ return err;
+ }
+@@ -1132,7 +1136,7 @@ static int snd_pcm_oss_make_ready(struct snd_pcm_substream *substream)
+ return 0;
+ runtime = substream->runtime;
+ if (runtime->oss.params) {
+- err = snd_pcm_oss_change_params(substream);
++ err = snd_pcm_oss_change_params(substream, false);
+ if (err < 0)
+ return err;
+ }
+@@ -2163,7 +2167,7 @@ static int snd_pcm_oss_get_space(struct snd_pcm_oss_file *pcm_oss_file, int stre
+ runtime = substream->runtime;
+
+ if (runtime->oss.params &&
+- (err = snd_pcm_oss_change_params(substream)) < 0)
++ (err = snd_pcm_oss_change_params(substream, false)) < 0)
+ return err;
+
+ info.fragsize = runtime->oss.period_bytes;
+@@ -2800,7 +2804,12 @@ static int snd_pcm_oss_mmap(struct file *file, struct vm_area_struct *area)
+ return -EIO;
+
+ if (runtime->oss.params) {
+- if ((err = snd_pcm_oss_change_params(substream)) < 0)
++ /* use mutex_trylock() for params_lock for avoiding a deadlock
++ * between mmap_sem and params_lock taken by
++ * copy_from/to_user() in snd_pcm_oss_write/read()
++ */
++ err = snd_pcm_oss_change_params(substream, true);
++ if (err < 0)
+ return err;
+ }
+ #ifdef CONFIG_SND_PCM_OSS_PLUGINS
+diff --git a/sound/core/rawmidi.c b/sound/core/rawmidi.c
+index a775984..795437b 100644
+--- a/sound/core/rawmidi.c
++++ b/sound/core/rawmidi.c
+@@ -942,31 +942,36 @@ static long snd_rawmidi_kernel_read1(struct snd_rawmidi_substream *substream,
+ unsigned long flags;
+ long result = 0, count1;
+ struct snd_rawmidi_runtime *runtime = substream->runtime;
++ unsigned long appl_ptr;
+
++ spin_lock_irqsave(&runtime->lock, flags);
+ while (count > 0 && runtime->avail) {
+ count1 = runtime->buffer_size - runtime->appl_ptr;
+ if (count1 > count)
+ count1 = count;
+- spin_lock_irqsave(&runtime->lock, flags);
+ if (count1 > (int)runtime->avail)
+ count1 = runtime->avail;
++
++ /* update runtime->appl_ptr before unlocking for userbuf */
++ appl_ptr = runtime->appl_ptr;
++ runtime->appl_ptr += count1;
++ runtime->appl_ptr %= runtime->buffer_size;
++ runtime->avail -= count1;
++
+ if (kernelbuf)
+- memcpy(kernelbuf + result, runtime->buffer + runtime->appl_ptr, count1);
++ memcpy(kernelbuf + result, runtime->buffer + appl_ptr, count1);
+ if (userbuf) {
+ spin_unlock_irqrestore(&runtime->lock, flags);
+ if (copy_to_user(userbuf + result,
+- runtime->buffer + runtime->appl_ptr, count1)) {
++ runtime->buffer + appl_ptr, count1)) {
+ return result > 0 ? result : -EFAULT;
+ }
+ spin_lock_irqsave(&runtime->lock, flags);
+ }
+- runtime->appl_ptr += count1;
+- runtime->appl_ptr %= runtime->buffer_size;
+- runtime->avail -= count1;
+- spin_unlock_irqrestore(&runtime->lock, flags);
+ result += count1;
+ count -= count1;
+ }
++ spin_unlock_irqrestore(&runtime->lock, flags);
+ return result;
+ }
+
+@@ -1055,23 +1060,16 @@ int snd_rawmidi_transmit_empty(struct snd_rawmidi_substream *substream)
+ EXPORT_SYMBOL(snd_rawmidi_transmit_empty);
+
+ /**
+- * snd_rawmidi_transmit_peek - copy data from the internal buffer
++ * __snd_rawmidi_transmit_peek - copy data from the internal buffer
+ * @substream: the rawmidi substream
+ * @buffer: the buffer pointer
+ * @count: data size to transfer
+ *
+- * Copies data from the internal output buffer to the given buffer.
+- *
+- * Call this in the interrupt handler when the midi output is ready,
+- * and call snd_rawmidi_transmit_ack() after the transmission is
+- * finished.
+- *
+- * Return: The size of copied data, or a negative error code on failure.
++ * This is a variant of snd_rawmidi_transmit_peek() without spinlock.
+ */
+-int snd_rawmidi_transmit_peek(struct snd_rawmidi_substream *substream,
++int __snd_rawmidi_transmit_peek(struct snd_rawmidi_substream *substream,
+ unsigned char *buffer, int count)
+ {
+- unsigned long flags;
+ int result, count1;
+ struct snd_rawmidi_runtime *runtime = substream->runtime;
+
+@@ -1081,7 +1079,6 @@ int snd_rawmidi_transmit_peek(struct snd_rawmidi_substream *substream,
+ return -EINVAL;
+ }
+ result = 0;
+- spin_lock_irqsave(&runtime->lock, flags);
+ if (runtime->avail >= runtime->buffer_size) {
+ /* warning: lowlevel layer MUST trigger down the hardware */
+ goto __skip;
+@@ -1106,25 +1103,47 @@ int snd_rawmidi_transmit_peek(struct snd_rawmidi_substream *substream,
+ }
+ }
+ __skip:
++ return result;
++}
++EXPORT_SYMBOL(__snd_rawmidi_transmit_peek);
++
++/**
++ * snd_rawmidi_transmit_peek - copy data from the internal buffer
++ * @substream: the rawmidi substream
++ * @buffer: the buffer pointer
++ * @count: data size to transfer
++ *
++ * Copies data from the internal output buffer to the given buffer.
++ *
++ * Call this in the interrupt handler when the midi output is ready,
++ * and call snd_rawmidi_transmit_ack() after the transmission is
++ * finished.
++ *
++ * Return: The size of copied data, or a negative error code on failure.
++ */
++int snd_rawmidi_transmit_peek(struct snd_rawmidi_substream *substream,
++ unsigned char *buffer, int count)
++{
++ struct snd_rawmidi_runtime *runtime = substream->runtime;
++ int result;
++ unsigned long flags;
++
++ spin_lock_irqsave(&runtime->lock, flags);
++ result = __snd_rawmidi_transmit_peek(substream, buffer, count);
+ spin_unlock_irqrestore(&runtime->lock, flags);
+ return result;
+ }
+ EXPORT_SYMBOL(snd_rawmidi_transmit_peek);
+
+ /**
+- * snd_rawmidi_transmit_ack - acknowledge the transmission
++ * __snd_rawmidi_transmit_ack - acknowledge the transmission
+ * @substream: the rawmidi substream
+ * @count: the transferred count
+ *
+- * Advances the hardware pointer for the internal output buffer with
+- * the given size and updates the condition.
+- * Call after the transmission is finished.
+- *
+- * Return: The advanced size if successful, or a negative error code on failure.
++ * This is a variant of __snd_rawmidi_transmit_ack() without spinlock.
+ */
+-int snd_rawmidi_transmit_ack(struct snd_rawmidi_substream *substream, int count)
++int __snd_rawmidi_transmit_ack(struct snd_rawmidi_substream *substream, int count)
+ {
+- unsigned long flags;
+ struct snd_rawmidi_runtime *runtime = substream->runtime;
+
+ if (runtime->buffer == NULL) {
+@@ -1132,7 +1151,6 @@ int snd_rawmidi_transmit_ack(struct snd_rawmidi_substream *substream, int count)
+ "snd_rawmidi_transmit_ack: output is not active!!!\n");
+ return -EINVAL;
+ }
+- spin_lock_irqsave(&runtime->lock, flags);
+ snd_BUG_ON(runtime->avail + count > runtime->buffer_size);
+ runtime->hw_ptr += count;
+ runtime->hw_ptr %= runtime->buffer_size;
+@@ -1142,9 +1160,32 @@ int snd_rawmidi_transmit_ack(struct snd_rawmidi_substream *substream, int count)
+ if (runtime->drain || snd_rawmidi_ready(substream))
+ wake_up(&runtime->sleep);
+ }
+- spin_unlock_irqrestore(&runtime->lock, flags);
+ return count;
+ }
++EXPORT_SYMBOL(__snd_rawmidi_transmit_ack);
++
++/**
++ * snd_rawmidi_transmit_ack - acknowledge the transmission
++ * @substream: the rawmidi substream
++ * @count: the transferred count
++ *
++ * Advances the hardware pointer for the internal output buffer with
++ * the given size and updates the condition.
++ * Call after the transmission is finished.
++ *
++ * Return: The advanced size if successful, or a negative error code on failure.
++ */
++int snd_rawmidi_transmit_ack(struct snd_rawmidi_substream *substream, int count)
++{
++ struct snd_rawmidi_runtime *runtime = substream->runtime;
++ int result;
++ unsigned long flags;
++
++ spin_lock_irqsave(&runtime->lock, flags);
++ result = __snd_rawmidi_transmit_ack(substream, count);
++ spin_unlock_irqrestore(&runtime->lock, flags);
++ return result;
++}
+ EXPORT_SYMBOL(snd_rawmidi_transmit_ack);
+
+ /**
+@@ -1160,12 +1201,22 @@ EXPORT_SYMBOL(snd_rawmidi_transmit_ack);
+ int snd_rawmidi_transmit(struct snd_rawmidi_substream *substream,
+ unsigned char *buffer, int count)
+ {
++ struct snd_rawmidi_runtime *runtime = substream->runtime;
++ int result;
++ unsigned long flags;
++
++ spin_lock_irqsave(&runtime->lock, flags);
+ if (!substream->opened)
+- return -EBADFD;
+- count = snd_rawmidi_transmit_peek(substream, buffer, count);
+- if (count < 0)
+- return count;
+- return snd_rawmidi_transmit_ack(substream, count);
++ result = -EBADFD;
++ else {
++ count = __snd_rawmidi_transmit_peek(substream, buffer, count);
++ if (count <= 0)
++ result = count;
++ else
++ result = __snd_rawmidi_transmit_ack(substream, count);
++ }
++ spin_unlock_irqrestore(&runtime->lock, flags);
++ return result;
+ }
+ EXPORT_SYMBOL(snd_rawmidi_transmit);
+
+@@ -1177,8 +1228,9 @@ static long snd_rawmidi_kernel_write1(struct snd_rawmidi_substream *substream,
+ unsigned long flags;
+ long count1, result;
+ struct snd_rawmidi_runtime *runtime = substream->runtime;
++ unsigned long appl_ptr;
+
+- if (snd_BUG_ON(!kernelbuf && !userbuf))
++ if (!kernelbuf && !userbuf)
+ return -EINVAL;
+ if (snd_BUG_ON(!runtime->buffer))
+ return -EINVAL;
+@@ -1197,12 +1249,19 @@ static long snd_rawmidi_kernel_write1(struct snd_rawmidi_substream *substream,
+ count1 = count;
+ if (count1 > (long)runtime->avail)
+ count1 = runtime->avail;
++
++ /* update runtime->appl_ptr before unlocking for userbuf */
++ appl_ptr = runtime->appl_ptr;
++ runtime->appl_ptr += count1;
++ runtime->appl_ptr %= runtime->buffer_size;
++ runtime->avail -= count1;
++
+ if (kernelbuf)
+- memcpy(runtime->buffer + runtime->appl_ptr,
++ memcpy(runtime->buffer + appl_ptr,
+ kernelbuf + result, count1);
+ else if (userbuf) {
+ spin_unlock_irqrestore(&runtime->lock, flags);
+- if (copy_from_user(runtime->buffer + runtime->appl_ptr,
++ if (copy_from_user(runtime->buffer + appl_ptr,
+ userbuf + result, count1)) {
+ spin_lock_irqsave(&runtime->lock, flags);
+ result = result > 0 ? result : -EFAULT;
+@@ -1210,9 +1269,6 @@ static long snd_rawmidi_kernel_write1(struct snd_rawmidi_substream *substream,
+ }
+ spin_lock_irqsave(&runtime->lock, flags);
+ }
+- runtime->appl_ptr += count1;
+- runtime->appl_ptr %= runtime->buffer_size;
+- runtime->avail -= count1;
+ result += count1;
+ count -= count1;
+ }
+diff --git a/sound/core/seq/oss/seq_oss_init.c b/sound/core/seq/oss/seq_oss_init.c
+index b1221b2..6779e82b 100644
+--- a/sound/core/seq/oss/seq_oss_init.c
++++ b/sound/core/seq/oss/seq_oss_init.c
+@@ -202,7 +202,7 @@ snd_seq_oss_open(struct file *file, int level)
+
+ dp->index = i;
+ if (i >= SNDRV_SEQ_OSS_MAX_CLIENTS) {
+- pr_err("ALSA: seq_oss: too many applications\n");
++ pr_debug("ALSA: seq_oss: too many applications\n");
+ rc = -ENOMEM;
+ goto _error;
+ }
+diff --git a/sound/core/seq/oss/seq_oss_synth.c b/sound/core/seq/oss/seq_oss_synth.c
+index 0f3b381..b16dbef 100644
+--- a/sound/core/seq/oss/seq_oss_synth.c
++++ b/sound/core/seq/oss/seq_oss_synth.c
+@@ -308,7 +308,7 @@ snd_seq_oss_synth_cleanup(struct seq_oss_devinfo *dp)
+ struct seq_oss_synth *rec;
+ struct seq_oss_synthinfo *info;
+
+- if (snd_BUG_ON(dp->max_synthdev >= SNDRV_SEQ_OSS_MAX_SYNTH_DEVS))
++ if (snd_BUG_ON(dp->max_synthdev > SNDRV_SEQ_OSS_MAX_SYNTH_DEVS))
+ return;
+ for (i = 0; i < dp->max_synthdev; i++) {
+ info = &dp->synths[i];
+diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c
+index 13cfa81..58e79e0 100644
+--- a/sound/core/seq/seq_clientmgr.c
++++ b/sound/core/seq/seq_clientmgr.c
+@@ -678,6 +678,9 @@ static int deliver_to_subscribers(struct snd_seq_client *client,
+ else
+ down_read(&grp->list_mutex);
+ list_for_each_entry(subs, &grp->list_head, src_list) {
++ /* both ports ready? */
++ if (atomic_read(&subs->ref_count) != 2)
++ continue;
+ event->dest = subs->info.dest;
+ if (subs->info.flags & SNDRV_SEQ_PORT_SUBS_TIMESTAMP)
+ /* convert time according to flag with subscription */
+diff --git a/sound/core/seq/seq_ports.c b/sound/core/seq/seq_ports.c
+index 55170a2..921fb2b 100644
+--- a/sound/core/seq/seq_ports.c
++++ b/sound/core/seq/seq_ports.c
+@@ -173,10 +173,6 @@ struct snd_seq_client_port *snd_seq_create_port(struct snd_seq_client *client,
+ }
+
+ /* */
+-enum group_type {
+- SRC_LIST, DEST_LIST
+-};
+-
+ static int subscribe_port(struct snd_seq_client *client,
+ struct snd_seq_client_port *port,
+ struct snd_seq_port_subs_info *grp,
+@@ -203,6 +199,20 @@ static struct snd_seq_client_port *get_client_port(struct snd_seq_addr *addr,
+ return NULL;
+ }
+
++static void delete_and_unsubscribe_port(struct snd_seq_client *client,
++ struct snd_seq_client_port *port,
++ struct snd_seq_subscribers *subs,
++ bool is_src, bool ack);
++
++static inline struct snd_seq_subscribers *
++get_subscriber(struct list_head *p, bool is_src)
++{
++ if (is_src)
++ return list_entry(p, struct snd_seq_subscribers, src_list);
++ else
++ return list_entry(p, struct snd_seq_subscribers, dest_list);
++}
++
+ /*
+ * remove all subscribers on the list
+ * this is called from port_delete, for each src and dest list.
+@@ -210,7 +220,7 @@ static struct snd_seq_client_port *get_client_port(struct snd_seq_addr *addr,
+ static void clear_subscriber_list(struct snd_seq_client *client,
+ struct snd_seq_client_port *port,
+ struct snd_seq_port_subs_info *grp,
+- int grptype)
++ int is_src)
+ {
+ struct list_head *p, *n;
+
+@@ -219,15 +229,13 @@ static void clear_subscriber_list(struct snd_seq_client *client,
+ struct snd_seq_client *c;
+ struct snd_seq_client_port *aport;
+
+- if (grptype == SRC_LIST) {
+- subs = list_entry(p, struct snd_seq_subscribers, src_list);
++ subs = get_subscriber(p, is_src);
++ if (is_src)
+ aport = get_client_port(&subs->info.dest, &c);
+- } else {
+- subs = list_entry(p, struct snd_seq_subscribers, dest_list);
++ else
+ aport = get_client_port(&subs->info.sender, &c);
+- }
+- list_del(p);
+- unsubscribe_port(client, port, grp, &subs->info, 0);
++ delete_and_unsubscribe_port(client, port, subs, is_src, false);
++
+ if (!aport) {
+ /* looks like the connected port is being deleted.
+ * we decrease the counter, and when both ports are deleted
+@@ -235,21 +243,14 @@ static void clear_subscriber_list(struct snd_seq_client *client,
+ */
+ if (atomic_dec_and_test(&subs->ref_count))
+ kfree(subs);
+- } else {
+- /* ok we got the connected port */
+- struct snd_seq_port_subs_info *agrp;
+- agrp = (grptype == SRC_LIST) ? &aport->c_dest : &aport->c_src;
+- down_write(&agrp->list_mutex);
+- if (grptype == SRC_LIST)
+- list_del(&subs->dest_list);
+- else
+- list_del(&subs->src_list);
+- up_write(&agrp->list_mutex);
+- unsubscribe_port(c, aport, agrp, &subs->info, 1);
+- kfree(subs);
+- snd_seq_port_unlock(aport);
+- snd_seq_client_unlock(c);
++ continue;
+ }
++
++ /* ok we got the connected port */
++ delete_and_unsubscribe_port(c, aport, subs, !is_src, true);
++ kfree(subs);
++ snd_seq_port_unlock(aport);
++ snd_seq_client_unlock(c);
+ }
+ }
+
+@@ -262,8 +263,8 @@ static int port_delete(struct snd_seq_client *client,
+ snd_use_lock_sync(&port->use_lock);
+
+ /* clear subscribers info */
+- clear_subscriber_list(client, port, &port->c_src, SRC_LIST);
+- clear_subscriber_list(client, port, &port->c_dest, DEST_LIST);
++ clear_subscriber_list(client, port, &port->c_src, true);
++ clear_subscriber_list(client, port, &port->c_dest, false);
+
+ if (port->private_free)
+ port->private_free(port->private_data);
+@@ -479,85 +480,120 @@ static int match_subs_info(struct snd_seq_port_subscribe *r,
+ return 0;
+ }
+
+-
+-/* connect two ports */
+-int snd_seq_port_connect(struct snd_seq_client *connector,
+- struct snd_seq_client *src_client,
+- struct snd_seq_client_port *src_port,
+- struct snd_seq_client *dest_client,
+- struct snd_seq_client_port *dest_port,
+- struct snd_seq_port_subscribe *info)
++static int check_and_subscribe_port(struct snd_seq_client *client,
++ struct snd_seq_client_port *port,
++ struct snd_seq_subscribers *subs,
++ bool is_src, bool exclusive, bool ack)
+ {
+- struct snd_seq_port_subs_info *src = &src_port->c_src;
+- struct snd_seq_port_subs_info *dest = &dest_port->c_dest;
+- struct snd_seq_subscribers *subs, *s;
+- int err, src_called = 0;
+- unsigned long flags;
+- int exclusive;
++ struct snd_seq_port_subs_info *grp;
++ struct list_head *p;
++ struct snd_seq_subscribers *s;
++ int err;
+
+- subs = kzalloc(sizeof(*subs), GFP_KERNEL);
+- if (! subs)
+- return -ENOMEM;
+-
+- subs->info = *info;
+- atomic_set(&subs->ref_count, 2);
+-
+- down_write(&src->list_mutex);
+- down_write_nested(&dest->list_mutex, SINGLE_DEPTH_NESTING);
+-
+- exclusive = info->flags & SNDRV_SEQ_PORT_SUBS_EXCLUSIVE ? 1 : 0;
++ grp = is_src ? &port->c_src : &port->c_dest;
+ err = -EBUSY;
++ down_write(&grp->list_mutex);
+ if (exclusive) {
+- if (! list_empty(&src->list_head) || ! list_empty(&dest->list_head))
++ if (!list_empty(&grp->list_head))
+ goto __error;
+ } else {
+- if (src->exclusive || dest->exclusive)
++ if (grp->exclusive)
+ goto __error;
+ /* check whether already exists */
+- list_for_each_entry(s, &src->list_head, src_list) {
+- if (match_subs_info(info, &s->info))
+- goto __error;
+- }
+- list_for_each_entry(s, &dest->list_head, dest_list) {
+- if (match_subs_info(info, &s->info))
++ list_for_each(p, &grp->list_head) {
++ s = get_subscriber(p, is_src);
++ if (match_subs_info(&subs->info, &s->info))
+ goto __error;
+ }
+ }
+
+- if ((err = subscribe_port(src_client, src_port, src, info,
+- connector->number != src_client->number)) < 0)
+- goto __error;
+- src_called = 1;
+-
+- if ((err = subscribe_port(dest_client, dest_port, dest, info,
+- connector->number != dest_client->number)) < 0)
++ err = subscribe_port(client, port, grp, &subs->info, ack);
++ if (err < 0) {
++ grp->exclusive = 0;
+ goto __error;
++ }
+
+ /* add to list */
+- write_lock_irqsave(&src->list_lock, flags);
+- // write_lock(&dest->list_lock); // no other lock yet
+- list_add_tail(&subs->src_list, &src->list_head);
+- list_add_tail(&subs->dest_list, &dest->list_head);
+- // write_unlock(&dest->list_lock); // no other lock yet
+- write_unlock_irqrestore(&src->list_lock, flags);
++ write_lock_irq(&grp->list_lock);
++ if (is_src)
++ list_add_tail(&subs->src_list, &grp->list_head);
++ else
++ list_add_tail(&subs->dest_list, &grp->list_head);
++ grp->exclusive = exclusive;
++ atomic_inc(&subs->ref_count);
++ write_unlock_irq(&grp->list_lock);
++ err = 0;
++
++ __error:
++ up_write(&grp->list_mutex);
++ return err;
++}
+
+- src->exclusive = dest->exclusive = exclusive;
++static void delete_and_unsubscribe_port(struct snd_seq_client *client,
++ struct snd_seq_client_port *port,
++ struct snd_seq_subscribers *subs,
++ bool is_src, bool ack)
++{
++ struct snd_seq_port_subs_info *grp;
++
++ grp = is_src ? &port->c_src : &port->c_dest;
++ down_write(&grp->list_mutex);
++ write_lock_irq(&grp->list_lock);
++ if (is_src)
++ list_del(&subs->src_list);
++ else
++ list_del(&subs->dest_list);
++ grp->exclusive = 0;
++ write_unlock_irq(&grp->list_lock);
++ up_write(&grp->list_mutex);
++
++ unsubscribe_port(client, port, grp, &subs->info, ack);
++}
++
++/* connect two ports */
++int snd_seq_port_connect(struct snd_seq_client *connector,
++ struct snd_seq_client *src_client,
++ struct snd_seq_client_port *src_port,
++ struct snd_seq_client *dest_client,
++ struct snd_seq_client_port *dest_port,
++ struct snd_seq_port_subscribe *info)
++{
++ struct snd_seq_subscribers *subs;
++ bool exclusive;
++ int err;
++
++ subs = kzalloc(sizeof(*subs), GFP_KERNEL);
++ if (!subs)
++ return -ENOMEM;
++
++ subs->info = *info;
++ atomic_set(&subs->ref_count, 0);
++ INIT_LIST_HEAD(&subs->src_list);
++ INIT_LIST_HEAD(&subs->dest_list);
++
++ exclusive = !!(info->flags & SNDRV_SEQ_PORT_SUBS_EXCLUSIVE);
++
++ err = check_and_subscribe_port(src_client, src_port, subs, true,
++ exclusive,
++ connector->number != src_client->number);
++ if (err < 0)
++ goto error;
++ err = check_and_subscribe_port(dest_client, dest_port, subs, false,
++ exclusive,
++ connector->number != dest_client->number);
++ if (err < 0)
++ goto error_dest;
+
+- up_write(&dest->list_mutex);
+- up_write(&src->list_mutex);
+ return 0;
+
+- __error:
+- if (src_called)
+- unsubscribe_port(src_client, src_port, src, info,
+- connector->number != src_client->number);
++ error_dest:
++ delete_and_unsubscribe_port(src_client, src_port, subs, true,
++ connector->number != src_client->number);
++ error:
+ kfree(subs);
+- up_write(&dest->list_mutex);
+- up_write(&src->list_mutex);
+ return err;
+ }
+
+-
+ /* remove the connection */
+ int snd_seq_port_disconnect(struct snd_seq_client *connector,
+ struct snd_seq_client *src_client,
+@@ -567,37 +603,28 @@ int snd_seq_port_disconnect(struct snd_seq_client *connector,
+ struct snd_seq_port_subscribe *info)
+ {
+ struct snd_seq_port_subs_info *src = &src_port->c_src;
+- struct snd_seq_port_subs_info *dest = &dest_port->c_dest;
+ struct snd_seq_subscribers *subs;
+ int err = -ENOENT;
+- unsigned long flags;
+
+ down_write(&src->list_mutex);
+- down_write_nested(&dest->list_mutex, SINGLE_DEPTH_NESTING);
+-
+ /* look for the connection */
+ list_for_each_entry(subs, &src->list_head, src_list) {
+ if (match_subs_info(info, &subs->info)) {
+- write_lock_irqsave(&src->list_lock, flags);
+- // write_lock(&dest->list_lock); // no lock yet
+- list_del(&subs->src_list);
+- list_del(&subs->dest_list);
+- // write_unlock(&dest->list_lock);
+- write_unlock_irqrestore(&src->list_lock, flags);
+- src->exclusive = dest->exclusive = 0;
+- unsubscribe_port(src_client, src_port, src, info,
+- connector->number != src_client->number);
+- unsubscribe_port(dest_client, dest_port, dest, info,
+- connector->number != dest_client->number);
+- kfree(subs);
++ atomic_dec(&subs->ref_count); /* mark as not ready */
+ err = 0;
+ break;
+ }
+ }
+-
+- up_write(&dest->list_mutex);
+ up_write(&src->list_mutex);
+- return err;
++ if (err < 0)
++ return err;
++
++ delete_and_unsubscribe_port(src_client, src_port, subs, true,
++ connector->number != src_client->number);
++ delete_and_unsubscribe_port(dest_client, dest_port, subs, false,
++ connector->number != dest_client->number);
++ kfree(subs);
++ return 0;
+ }
+
+
+diff --git a/sound/core/seq/seq_timer.c b/sound/core/seq/seq_timer.c
+index 82b220c..2931049 100644
+--- a/sound/core/seq/seq_timer.c
++++ b/sound/core/seq/seq_timer.c
+@@ -90,6 +90,9 @@ void snd_seq_timer_delete(struct snd_seq_timer **tmr)
+
+ void snd_seq_timer_defaults(struct snd_seq_timer * tmr)
+ {
++ unsigned long flags;
++
++ spin_lock_irqsave(&tmr->lock, flags);
+ /* setup defaults */
+ tmr->ppq = 96; /* 96 PPQ */
+ tmr->tempo = 500000; /* 120 BPM */
+@@ -105,21 +108,25 @@ void snd_seq_timer_defaults(struct snd_seq_timer * tmr)
+ tmr->preferred_resolution = seq_default_timer_resolution;
+
+ tmr->skew = tmr->skew_base = SKEW_BASE;
++ spin_unlock_irqrestore(&tmr->lock, flags);
+ }
+
+-void snd_seq_timer_reset(struct snd_seq_timer * tmr)
++static void seq_timer_reset(struct snd_seq_timer *tmr)
+ {
+- unsigned long flags;
+-
+- spin_lock_irqsave(&tmr->lock, flags);
+-
+ /* reset time & songposition */
+ tmr->cur_time.tv_sec = 0;
+ tmr->cur_time.tv_nsec = 0;
+
+ tmr->tick.cur_tick = 0;
+ tmr->tick.fraction = 0;
++}
++
++void snd_seq_timer_reset(struct snd_seq_timer *tmr)
++{
++ unsigned long flags;
+
++ spin_lock_irqsave(&tmr->lock, flags);
++ seq_timer_reset(tmr);
+ spin_unlock_irqrestore(&tmr->lock, flags);
+ }
+
+@@ -138,8 +145,11 @@ static void snd_seq_timer_interrupt(struct snd_timer_instance *timeri,
+ tmr = q->timer;
+ if (tmr == NULL)
+ return;
+- if (!tmr->running)
++ spin_lock_irqsave(&tmr->lock, flags);
++ if (!tmr->running) {
++ spin_unlock_irqrestore(&tmr->lock, flags);
+ return;
++ }
+
+ resolution *= ticks;
+ if (tmr->skew != tmr->skew_base) {
+@@ -148,8 +158,6 @@ static void snd_seq_timer_interrupt(struct snd_timer_instance *timeri,
+ (((resolution & 0xffff) * tmr->skew) >> 16);
+ }
+
+- spin_lock_irqsave(&tmr->lock, flags);
+-
+ /* update timer */
+ snd_seq_inc_time_nsec(&tmr->cur_time, resolution);
+
+@@ -296,26 +304,30 @@ int snd_seq_timer_open(struct snd_seq_queue *q)
+ t->callback = snd_seq_timer_interrupt;
+ t->callback_data = q;
+ t->flags |= SNDRV_TIMER_IFLG_AUTO;
++ spin_lock_irq(&tmr->lock);
+ tmr->timeri = t;
++ spin_unlock_irq(&tmr->lock);
+ return 0;
+ }
+
+ int snd_seq_timer_close(struct snd_seq_queue *q)
+ {
+ struct snd_seq_timer *tmr;
++ struct snd_timer_instance *t;
+
+ tmr = q->timer;
+ if (snd_BUG_ON(!tmr))
+ return -EINVAL;
+- if (tmr->timeri) {
+- snd_timer_stop(tmr->timeri);
+- snd_timer_close(tmr->timeri);
+- tmr->timeri = NULL;
+- }
++ spin_lock_irq(&tmr->lock);
++ t = tmr->timeri;
++ tmr->timeri = NULL;
++ spin_unlock_irq(&tmr->lock);
++ if (t)
++ snd_timer_close(t);
+ return 0;
+ }
+
+-int snd_seq_timer_stop(struct snd_seq_timer * tmr)
++static int seq_timer_stop(struct snd_seq_timer *tmr)
+ {
+ if (! tmr->timeri)
+ return -EINVAL;
+@@ -326,6 +338,17 @@ int snd_seq_timer_stop(struct snd_seq_timer * tmr)
+ return 0;
+ }
+
++int snd_seq_timer_stop(struct snd_seq_timer *tmr)
++{
++ unsigned long flags;
++ int err;
++
++ spin_lock_irqsave(&tmr->lock, flags);
++ err = seq_timer_stop(tmr);
++ spin_unlock_irqrestore(&tmr->lock, flags);
++ return err;
++}
++
+ static int initialize_timer(struct snd_seq_timer *tmr)
+ {
+ struct snd_timer *t;
+@@ -358,13 +381,13 @@ static int initialize_timer(struct snd_seq_timer *tmr)
+ return 0;
+ }
+
+-int snd_seq_timer_start(struct snd_seq_timer * tmr)
++static int seq_timer_start(struct snd_seq_timer *tmr)
+ {
+ if (! tmr->timeri)
+ return -EINVAL;
+ if (tmr->running)
+- snd_seq_timer_stop(tmr);
+- snd_seq_timer_reset(tmr);
++ seq_timer_stop(tmr);
++ seq_timer_reset(tmr);
+ if (initialize_timer(tmr) < 0)
+ return -EINVAL;
+ snd_timer_start(tmr->timeri, tmr->ticks);
+@@ -373,14 +396,25 @@ int snd_seq_timer_start(struct snd_seq_timer * tmr)
+ return 0;
+ }
+
+-int snd_seq_timer_continue(struct snd_seq_timer * tmr)
++int snd_seq_timer_start(struct snd_seq_timer *tmr)
++{
++ unsigned long flags;
++ int err;
++
++ spin_lock_irqsave(&tmr->lock, flags);
++ err = seq_timer_start(tmr);
++ spin_unlock_irqrestore(&tmr->lock, flags);
++ return err;
++}
++
++static int seq_timer_continue(struct snd_seq_timer *tmr)
+ {
+ if (! tmr->timeri)
+ return -EINVAL;
+ if (tmr->running)
+ return -EBUSY;
+ if (! tmr->initialized) {
+- snd_seq_timer_reset(tmr);
++ seq_timer_reset(tmr);
+ if (initialize_timer(tmr) < 0)
+ return -EINVAL;
+ }
+@@ -390,11 +424,24 @@ int snd_seq_timer_continue(struct snd_seq_timer * tmr)
+ return 0;
+ }
+
++int snd_seq_timer_continue(struct snd_seq_timer *tmr)
++{
++ unsigned long flags;
++ int err;
++
++ spin_lock_irqsave(&tmr->lock, flags);
++ err = seq_timer_continue(tmr);
++ spin_unlock_irqrestore(&tmr->lock, flags);
++ return err;
++}
++
+ /* return current 'real' time. use timeofday() to get better granularity. */
+ snd_seq_real_time_t snd_seq_timer_get_cur_time(struct snd_seq_timer *tmr)
+ {
+ snd_seq_real_time_t cur_time;
++ unsigned long flags;
+
++ spin_lock_irqsave(&tmr->lock, flags);
+ cur_time = tmr->cur_time;
+ if (tmr->running) {
+ struct timeval tm;
+@@ -410,7 +457,7 @@ snd_seq_real_time_t snd_seq_timer_get_cur_time(struct snd_seq_timer *tmr)
+ }
+ snd_seq_sanity_real_time(&cur_time);
+ }
+-
++ spin_unlock_irqrestore(&tmr->lock, flags);
+ return cur_time;
+ }
+
+diff --git a/sound/core/seq/seq_virmidi.c b/sound/core/seq/seq_virmidi.c
+index 56e0f4cd..81134e0 100644
+--- a/sound/core/seq/seq_virmidi.c
++++ b/sound/core/seq/seq_virmidi.c
+@@ -155,21 +155,26 @@ static void snd_virmidi_output_trigger(struct snd_rawmidi_substream *substream,
+ struct snd_virmidi *vmidi = substream->runtime->private_data;
+ int count, res;
+ unsigned char buf[32], *pbuf;
++ unsigned long flags;
+
+ if (up) {
+ vmidi->trigger = 1;
+ if (vmidi->seq_mode == SNDRV_VIRMIDI_SEQ_DISPATCH &&
+ !(vmidi->rdev->flags & SNDRV_VIRMIDI_SUBSCRIBE)) {
+- snd_rawmidi_transmit_ack(substream, substream->runtime->buffer_size - substream->runtime->avail);
+- return; /* ignored */
++ while (snd_rawmidi_transmit(substream, buf,
++ sizeof(buf)) > 0) {
++ /* ignored */
++ }
++ return;
+ }
+ if (vmidi->event.type != SNDRV_SEQ_EVENT_NONE) {
+ if (snd_seq_kernel_client_dispatch(vmidi->client, &vmidi->event, in_atomic(), 0) < 0)
+ return;
+ vmidi->event.type = SNDRV_SEQ_EVENT_NONE;
+ }
++ spin_lock_irqsave(&substream->runtime->lock, flags);
+ while (1) {
+- count = snd_rawmidi_transmit_peek(substream, buf, sizeof(buf));
++ count = __snd_rawmidi_transmit_peek(substream, buf, sizeof(buf));
+ if (count <= 0)
+ break;
+ pbuf = buf;
+@@ -179,16 +184,18 @@ static void snd_virmidi_output_trigger(struct snd_rawmidi_substream *substream,
+ snd_midi_event_reset_encode(vmidi->parser);
+ continue;
+ }
+- snd_rawmidi_transmit_ack(substream, res);
++ __snd_rawmidi_transmit_ack(substream, res);
+ pbuf += res;
+ count -= res;
+ if (vmidi->event.type != SNDRV_SEQ_EVENT_NONE) {
+ if (snd_seq_kernel_client_dispatch(vmidi->client, &vmidi->event, in_atomic(), 0) < 0)
+- return;
++ goto out;
+ vmidi->event.type = SNDRV_SEQ_EVENT_NONE;
+ }
+ }
+ }
++ out:
++ spin_unlock_irqrestore(&substream->runtime->lock, flags);
+ } else {
+ vmidi->trigger = 0;
+ }
+@@ -254,9 +261,13 @@ static int snd_virmidi_output_open(struct snd_rawmidi_substream *substream)
+ */
+ static int snd_virmidi_input_close(struct snd_rawmidi_substream *substream)
+ {
++ struct snd_virmidi_dev *rdev = substream->rmidi->private_data;
+ struct snd_virmidi *vmidi = substream->runtime->private_data;
+- snd_midi_event_free(vmidi->parser);
++
++ write_lock_irq(&rdev->filelist_lock);
+ list_del(&vmidi->list);
++ write_unlock_irq(&rdev->filelist_lock);
++ snd_midi_event_free(vmidi->parser);
+ substream->runtime->private_data = NULL;
+ kfree(vmidi);
+ return 0;
+diff --git a/sound/core/timer.c b/sound/core/timer.c
+index 0a049c4..f24c9fc 100644
+--- a/sound/core/timer.c
++++ b/sound/core/timer.c
+@@ -305,8 +305,7 @@ int snd_timer_open(struct snd_timer_instance **ti,
+ return 0;
+ }
+
+-static int _snd_timer_stop(struct snd_timer_instance *timeri,
+- int keep_flag, int event);
++static int _snd_timer_stop(struct snd_timer_instance *timeri, int event);
+
+ /*
+ * close a timer instance
+@@ -348,7 +347,7 @@ int snd_timer_close(struct snd_timer_instance *timeri)
+ spin_unlock_irq(&timer->lock);
+ mutex_lock(&register_mutex);
+ list_del(&timeri->open_list);
+- if (timer && list_empty(&timer->open_list_head) &&
++ if (list_empty(&timer->open_list_head) &&
+ timer->hw.close)
+ timer->hw.close(timer);
+ /* remove slave links */
+@@ -423,7 +422,7 @@ static void snd_timer_notify1(struct snd_timer_instance *ti, int event)
+ spin_lock_irqsave(&timer->lock, flags);
+ list_for_each_entry(ts, &ti->slave_active_head, active_list)
+ if (ts->ccallback)
+- ts->ccallback(ti, event + 100, &tstamp, resolution);
++ ts->ccallback(ts, event + 100, &tstamp, resolution);
+ spin_unlock_irqrestore(&timer->lock, flags);
+ }
+
+@@ -452,6 +451,10 @@ static int snd_timer_start_slave(struct snd_timer_instance *timeri)
+ unsigned long flags;
+
+ spin_lock_irqsave(&slave_active_lock, flags);
++ if (timeri->flags & SNDRV_TIMER_IFLG_RUNNING) {
++ spin_unlock_irqrestore(&slave_active_lock, flags);
++ return -EBUSY;
++ }
+ timeri->flags |= SNDRV_TIMER_IFLG_RUNNING;
+ if (timeri->master && timeri->timer) {
+ spin_lock(&timeri->timer->lock);
+@@ -476,7 +479,8 @@ int snd_timer_start(struct snd_timer_instance *timeri, unsigned int ticks)
+ return -EINVAL;
+ if (timeri->flags & SNDRV_TIMER_IFLG_SLAVE) {
+ result = snd_timer_start_slave(timeri);
+- snd_timer_notify1(timeri, SNDRV_TIMER_EVENT_START);
++ if (result >= 0)
++ snd_timer_notify1(timeri, SNDRV_TIMER_EVENT_START);
+ return result;
+ }
+ timer = timeri->timer;
+@@ -485,16 +489,22 @@ int snd_timer_start(struct snd_timer_instance *timeri, unsigned int ticks)
+ if (timer->card && timer->card->shutdown)
+ return -ENODEV;
+ spin_lock_irqsave(&timer->lock, flags);
++ if (timeri->flags & (SNDRV_TIMER_IFLG_RUNNING |
++ SNDRV_TIMER_IFLG_START)) {
++ result = -EBUSY;
++ goto unlock;
++ }
+ timeri->ticks = timeri->cticks = ticks;
+ timeri->pticks = 0;
+ result = snd_timer_start1(timer, timeri, ticks);
++ unlock:
+ spin_unlock_irqrestore(&timer->lock, flags);
+- snd_timer_notify1(timeri, SNDRV_TIMER_EVENT_START);
++ if (result >= 0)
++ snd_timer_notify1(timeri, SNDRV_TIMER_EVENT_START);
+ return result;
+ }
+
+-static int _snd_timer_stop(struct snd_timer_instance * timeri,
+- int keep_flag, int event)
++static int _snd_timer_stop(struct snd_timer_instance *timeri, int event)
+ {
+ struct snd_timer *timer;
+ unsigned long flags;
+@@ -503,19 +513,30 @@ static int _snd_timer_stop(struct snd_timer_instance * timeri,
+ return -ENXIO;
+
+ if (timeri->flags & SNDRV_TIMER_IFLG_SLAVE) {
+- if (!keep_flag) {
+- spin_lock_irqsave(&slave_active_lock, flags);
+- timeri->flags &= ~SNDRV_TIMER_IFLG_RUNNING;
+- list_del_init(&timeri->ack_list);
+- list_del_init(&timeri->active_list);
++ spin_lock_irqsave(&slave_active_lock, flags);
++ if (!(timeri->flags & SNDRV_TIMER_IFLG_RUNNING)) {
+ spin_unlock_irqrestore(&slave_active_lock, flags);
++ return -EBUSY;
+ }
++ if (timeri->timer)
++ spin_lock(&timeri->timer->lock);
++ timeri->flags &= ~SNDRV_TIMER_IFLG_RUNNING;
++ list_del_init(&timeri->ack_list);
++ list_del_init(&timeri->active_list);
++ if (timeri->timer)
++ spin_unlock(&timeri->timer->lock);
++ spin_unlock_irqrestore(&slave_active_lock, flags);
+ goto __end;
+ }
+ timer = timeri->timer;
+ if (!timer)
+ return -EINVAL;
+ spin_lock_irqsave(&timer->lock, flags);
++ if (!(timeri->flags & (SNDRV_TIMER_IFLG_RUNNING |
++ SNDRV_TIMER_IFLG_START))) {
++ spin_unlock_irqrestore(&timer->lock, flags);
++ return -EBUSY;
++ }
+ list_del_init(&timeri->ack_list);
+ list_del_init(&timeri->active_list);
+ if (timer->card && timer->card->shutdown) {
+@@ -534,9 +555,7 @@ static int _snd_timer_stop(struct snd_timer_instance * timeri,
+ }
+ }
+ }
+- if (!keep_flag)
+- timeri->flags &=
+- ~(SNDRV_TIMER_IFLG_RUNNING | SNDRV_TIMER_IFLG_START);
++ timeri->flags &= ~(SNDRV_TIMER_IFLG_RUNNING | SNDRV_TIMER_IFLG_START);
+ spin_unlock_irqrestore(&timer->lock, flags);
+ __end:
+ if (event != SNDRV_TIMER_EVENT_RESOLUTION)
+@@ -555,7 +574,7 @@ int snd_timer_stop(struct snd_timer_instance *timeri)
+ unsigned long flags;
+ int err;
+
+- err = _snd_timer_stop(timeri, 0, SNDRV_TIMER_EVENT_STOP);
++ err = _snd_timer_stop(timeri, SNDRV_TIMER_EVENT_STOP);
+ if (err < 0)
+ return err;
+ timer = timeri->timer;
+@@ -587,10 +606,15 @@ int snd_timer_continue(struct snd_timer_instance *timeri)
+ if (timer->card && timer->card->shutdown)
+ return -ENODEV;
+ spin_lock_irqsave(&timer->lock, flags);
++ if (timeri->flags & SNDRV_TIMER_IFLG_RUNNING) {
++ result = -EBUSY;
++ goto unlock;
++ }
+ if (!timeri->cticks)
+ timeri->cticks = 1;
+ timeri->pticks = 0;
+ result = snd_timer_start1(timer, timeri, timer->sticks);
++ unlock:
+ spin_unlock_irqrestore(&timer->lock, flags);
+ snd_timer_notify1(timeri, SNDRV_TIMER_EVENT_CONTINUE);
+ return result;
+@@ -601,7 +625,7 @@ int snd_timer_continue(struct snd_timer_instance *timeri)
+ */
+ int snd_timer_pause(struct snd_timer_instance * timeri)
+ {
+- return _snd_timer_stop(timeri, 0, SNDRV_TIMER_EVENT_PAUSE);
++ return _snd_timer_stop(timeri, SNDRV_TIMER_EVENT_PAUSE);
+ }
+
+ /*
+@@ -724,8 +748,8 @@ void snd_timer_interrupt(struct snd_timer * timer, unsigned long ticks_left)
+ ti->cticks = ti->ticks;
+ } else {
+ ti->flags &= ~SNDRV_TIMER_IFLG_RUNNING;
+- if (--timer->running)
+- list_del_init(&ti->active_list);
++ --timer->running;
++ list_del_init(&ti->active_list);
+ }
+ if ((timer->hw.flags & SNDRV_TIMER_HW_TASKLET) ||
+ (ti->flags & SNDRV_TIMER_IFLG_FAST))
+@@ -1900,6 +1924,7 @@ static ssize_t snd_timer_user_read(struct file *file, char __user *buffer,
+ {
+ struct snd_timer_user *tu;
+ long result = 0, unit;
++ int qhead;
+ int err = 0;
+
+ tu = file->private_data;
+@@ -1911,7 +1936,7 @@ static ssize_t snd_timer_user_read(struct file *file, char __user *buffer,
+
+ if ((file->f_flags & O_NONBLOCK) != 0 || result > 0) {
+ err = -EAGAIN;
+- break;
++ goto _error;
+ }
+
+ set_current_state(TASK_INTERRUPTIBLE);
+@@ -1926,42 +1951,37 @@ static ssize_t snd_timer_user_read(struct file *file, char __user *buffer,
+
+ if (tu->disconnected) {
+ err = -ENODEV;
+- break;
++ goto _error;
+ }
+ if (signal_pending(current)) {
+ err = -ERESTARTSYS;
+- break;
++ goto _error;
+ }
+ }
+
++ qhead = tu->qhead++;
++ tu->qhead %= tu->queue_size;
+ spin_unlock_irq(&tu->qlock);
+- if (err < 0)
+- goto _error;
+
+ if (tu->tread) {
+- if (copy_to_user(buffer, &tu->tqueue[tu->qhead++],
+- sizeof(struct snd_timer_tread))) {
++ if (copy_to_user(buffer, &tu->tqueue[qhead],
++ sizeof(struct snd_timer_tread)))
+ err = -EFAULT;
+- goto _error;
+- }
+ } else {
+- if (copy_to_user(buffer, &tu->queue[tu->qhead++],
+- sizeof(struct snd_timer_read))) {
++ if (copy_to_user(buffer, &tu->queue[qhead],
++ sizeof(struct snd_timer_read)))
+ err = -EFAULT;
+- goto _error;
+- }
+ }
+
+- tu->qhead %= tu->queue_size;
+-
+- result += unit;
+- buffer += unit;
+-
+ spin_lock_irq(&tu->qlock);
+ tu->qused--;
++ if (err < 0)
++ goto _error;
++ result += unit;
++ buffer += unit;
+ }
+- spin_unlock_irq(&tu->qlock);
+ _error:
++ spin_unlock_irq(&tu->qlock);
+ return result > 0 ? result : err;
+ }
+
+diff --git a/sound/drivers/dummy.c b/sound/drivers/dummy.c
+index 016e451..a9f7a75 100644
+--- a/sound/drivers/dummy.c
++++ b/sound/drivers/dummy.c
+@@ -109,6 +109,9 @@ struct dummy_timer_ops {
+ snd_pcm_uframes_t (*pointer)(struct snd_pcm_substream *);
+ };
+
++#define get_dummy_ops(substream) \
++ (*(const struct dummy_timer_ops **)(substream)->runtime->private_data)
++
+ struct dummy_model {
+ const char *name;
+ int (*playback_constraints)(struct snd_pcm_runtime *runtime);
+@@ -137,7 +140,6 @@ struct snd_dummy {
+ int iobox;
+ struct snd_kcontrol *cd_volume_ctl;
+ struct snd_kcontrol *cd_switch_ctl;
+- const struct dummy_timer_ops *timer_ops;
+ };
+
+ /*
+@@ -231,6 +233,8 @@ static struct dummy_model *dummy_models[] = {
+ */
+
+ struct dummy_systimer_pcm {
++ /* ops must be the first item */
++ const struct dummy_timer_ops *timer_ops;
+ spinlock_t lock;
+ struct timer_list timer;
+ unsigned long base_time;
+@@ -366,6 +370,8 @@ static struct dummy_timer_ops dummy_systimer_ops = {
+ */
+
+ struct dummy_hrtimer_pcm {
++ /* ops must be the first item */
++ const struct dummy_timer_ops *timer_ops;
+ ktime_t base_time;
+ ktime_t period_time;
+ atomic_t running;
+@@ -492,31 +498,25 @@ static struct dummy_timer_ops dummy_hrtimer_ops = {
+
+ static int dummy_pcm_trigger(struct snd_pcm_substream *substream, int cmd)
+ {
+- struct snd_dummy *dummy = snd_pcm_substream_chip(substream);
+-
+ switch (cmd) {
+ case SNDRV_PCM_TRIGGER_START:
+ case SNDRV_PCM_TRIGGER_RESUME:
+- return dummy->timer_ops->start(substream);
++ return get_dummy_ops(substream)->start(substream);
+ case SNDRV_PCM_TRIGGER_STOP:
+ case SNDRV_PCM_TRIGGER_SUSPEND:
+- return dummy->timer_ops->stop(substream);
++ return get_dummy_ops(substream)->stop(substream);
+ }
+ return -EINVAL;
+ }
+
+ static int dummy_pcm_prepare(struct snd_pcm_substream *substream)
+ {
+- struct snd_dummy *dummy = snd_pcm_substream_chip(substream);
+-
+- return dummy->timer_ops->prepare(substream);
++ return get_dummy_ops(substream)->prepare(substream);
+ }
+
+ static snd_pcm_uframes_t dummy_pcm_pointer(struct snd_pcm_substream *substream)
+ {
+- struct snd_dummy *dummy = snd_pcm_substream_chip(substream);
+-
+- return dummy->timer_ops->pointer(substream);
++ return get_dummy_ops(substream)->pointer(substream);
+ }
+
+ static struct snd_pcm_hardware dummy_pcm_hardware = {
+@@ -562,17 +562,19 @@ static int dummy_pcm_open(struct snd_pcm_substream *substream)
+ struct snd_dummy *dummy = snd_pcm_substream_chip(substream);
+ struct dummy_model *model = dummy->model;
+ struct snd_pcm_runtime *runtime = substream->runtime;
++ const struct dummy_timer_ops *ops;
+ int err;
+
+- dummy->timer_ops = &dummy_systimer_ops;
++ ops = &dummy_systimer_ops;
+ #ifdef CONFIG_HIGH_RES_TIMERS
+ if (hrtimer)
+- dummy->timer_ops = &dummy_hrtimer_ops;
++ ops = &dummy_hrtimer_ops;
+ #endif
+
+- err = dummy->timer_ops->create(substream);
++ err = ops->create(substream);
+ if (err < 0)
+ return err;
++ get_dummy_ops(substream) = ops;
+
+ runtime->hw = dummy->pcm_hw;
+ if (substream->pcm->device & 1) {
+@@ -594,7 +596,7 @@ static int dummy_pcm_open(struct snd_pcm_substream *substream)
+ err = model->capture_constraints(substream->runtime);
+ }
+ if (err < 0) {
+- dummy->timer_ops->free(substream);
++ get_dummy_ops(substream)->free(substream);
+ return err;
+ }
+ return 0;
+@@ -602,8 +604,7 @@ static int dummy_pcm_open(struct snd_pcm_substream *substream)
+
+ static int dummy_pcm_close(struct snd_pcm_substream *substream)
+ {
+- struct snd_dummy *dummy = snd_pcm_substream_chip(substream);
+- dummy->timer_ops->free(substream);
++ get_dummy_ops(substream)->free(substream);
+ return 0;
+ }
+
+diff --git a/sound/firewire/bebob/bebob_stream.c b/sound/firewire/bebob/bebob_stream.c
+index 926e5dc..5022c9b 100644
+--- a/sound/firewire/bebob/bebob_stream.c
++++ b/sound/firewire/bebob/bebob_stream.c
+@@ -47,14 +47,16 @@ static const unsigned int bridgeco_freq_table[] = {
+ [6] = 0x07,
+ };
+
+-static unsigned int
+-get_formation_index(unsigned int rate)
++static int
++get_formation_index(unsigned int rate, unsigned int *index)
+ {
+ unsigned int i;
+
+ for (i = 0; i < ARRAY_SIZE(snd_bebob_rate_table); i++) {
+- if (snd_bebob_rate_table[i] == rate)
+- return i;
++ if (snd_bebob_rate_table[i] == rate) {
++ *index = i;
++ return 0;
++ }
+ }
+ return -EINVAL;
+ }
+@@ -425,7 +427,9 @@ make_both_connections(struct snd_bebob *bebob, unsigned int rate)
+ goto end;
+
+ /* confirm params for both streams */
+- index = get_formation_index(rate);
++ err = get_formation_index(rate, &index);
++ if (err < 0)
++ goto end;
+ pcm_channels = bebob->tx_stream_formations[index].pcm;
+ midi_channels = bebob->tx_stream_formations[index].midi;
+ err = amdtp_am824_set_parameters(&bebob->tx_stream, rate,
+diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig
+index 0216475..37adcc6 100644
+--- a/sound/isa/Kconfig
++++ b/sound/isa/Kconfig
+@@ -3,6 +3,7 @@
+ config SND_WSS_LIB
+ tristate
+ select SND_PCM
++ select SND_TIMER
+
+ config SND_SB_COMMON
+ tristate
+@@ -42,6 +43,7 @@ config SND_AD1816A
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_PCM
++ select SND_TIMER
+ help
+ Say Y here to include support for Analog Devices SoundPort
+ AD1816A or compatible sound chips.
+@@ -209,6 +211,7 @@ config SND_GUSCLASSIC
+ tristate "Gravis UltraSound Classic"
+ select SND_RAWMIDI
+ select SND_PCM
++ select SND_TIMER
+ help
+ Say Y here to include support for Gravis UltraSound Classic
+ soundcards.
+@@ -221,6 +224,7 @@ config SND_GUSEXTREME
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_PCM
++ select SND_TIMER
+ help
+ Say Y here to include support for Gravis UltraSound Extreme
+ soundcards.
+diff --git a/sound/pci/Kconfig b/sound/pci/Kconfig
+index 656ce39..8f6594a 100644
+--- a/sound/pci/Kconfig
++++ b/sound/pci/Kconfig
+@@ -155,6 +155,7 @@ config SND_AZT3328
+ select SND_PCM
+ select SND_RAWMIDI
+ select SND_AC97_CODEC
++ select SND_TIMER
+ depends on ZONE_DMA
+ help
+ Say Y here to include support for Aztech AZF3328 (PCI168)
+@@ -463,6 +464,7 @@ config SND_EMU10K1
+ select SND_HWDEP
+ select SND_RAWMIDI
+ select SND_AC97_CODEC
++ select SND_TIMER
+ depends on ZONE_DMA
+ help
+ Say Y to include support for Sound Blaster PCI 512, Live!,
+@@ -889,6 +891,7 @@ config SND_YMFPCI
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_AC97_CODEC
++ select SND_TIMER
+ help
+ Say Y here to include support for Yamaha PCI audio chips -
+ YMF724, YMF724F, YMF740, YMF740C, YMF744, YMF754.
+diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c
+index c6e8a65..5c4fa8e 100644
+--- a/sound/pci/hda/hda_generic.c
++++ b/sound/pci/hda/hda_generic.c
+@@ -771,9 +771,6 @@ static void activate_amp(struct hda_codec *codec, hda_nid_t nid, int dir,
+ unsigned int caps;
+ unsigned int mask, val;
+
+- if (!enable && is_active_nid(codec, nid, dir, idx_to_check))
+- return;
+-
+ caps = query_amp_caps(codec, nid, dir);
+ val = get_amp_val_to_activate(codec, nid, dir, caps, enable);
+ mask = get_amp_mask_to_modify(codec, nid, dir, idx_to_check, caps);
+@@ -784,12 +781,22 @@ static void activate_amp(struct hda_codec *codec, hda_nid_t nid, int dir,
+ update_amp(codec, nid, dir, idx, mask, val);
+ }
+
++static void check_and_activate_amp(struct hda_codec *codec, hda_nid_t nid,
++ int dir, int idx, int idx_to_check,
++ bool enable)
++{
++ /* check whether the given amp is still used by others */
++ if (!enable && is_active_nid(codec, nid, dir, idx_to_check))
++ return;
++ activate_amp(codec, nid, dir, idx, idx_to_check, enable);
++}
++
+ static void activate_amp_out(struct hda_codec *codec, struct nid_path *path,
+ int i, bool enable)
+ {
+ hda_nid_t nid = path->path[i];
+ init_amp(codec, nid, HDA_OUTPUT, 0);
+- activate_amp(codec, nid, HDA_OUTPUT, 0, 0, enable);
++ check_and_activate_amp(codec, nid, HDA_OUTPUT, 0, 0, enable);
+ }
+
+ static void activate_amp_in(struct hda_codec *codec, struct nid_path *path,
+@@ -817,9 +824,16 @@ static void activate_amp_in(struct hda_codec *codec, struct nid_path *path,
+ * when aa-mixer is available, we need to enable the path as well
+ */
+ for (n = 0; n < nums; n++) {
+- if (n != idx && (!add_aamix || conn[n] != spec->mixer_merge_nid))
+- continue;
+- activate_amp(codec, nid, HDA_INPUT, n, idx, enable);
++ if (n != idx) {
++ if (conn[n] != spec->mixer_merge_nid)
++ continue;
++ /* when aamix is disabled, force to off */
++ if (!add_aamix) {
++ activate_amp(codec, nid, HDA_INPUT, n, n, false);
++ continue;
++ }
++ }
++ check_and_activate_amp(codec, nid, HDA_INPUT, n, idx, enable);
+ }
+ }
+
+@@ -1580,6 +1594,12 @@ static bool map_singles(struct hda_codec *codec, int outs,
+ return found;
+ }
+
++static inline bool has_aamix_out_paths(struct hda_gen_spec *spec)
++{
++ return spec->aamix_out_paths[0] || spec->aamix_out_paths[1] ||
++ spec->aamix_out_paths[2];
++}
++
+ /* create a new path including aamix if available, and return its index */
+ static int check_aamix_out_path(struct hda_codec *codec, int path_idx)
+ {
+@@ -2422,25 +2442,51 @@ static void update_aamix_paths(struct hda_codec *codec, bool do_mix,
+ }
+ }
+
++/* re-initialize the output paths; only called from loopback_mixing_put() */
++static void update_output_paths(struct hda_codec *codec, int num_outs,
++ const int *paths)
++{
++ struct hda_gen_spec *spec = codec->spec;
++ struct nid_path *path;
++ int i;
++
++ for (i = 0; i < num_outs; i++) {
++ path = snd_hda_get_path_from_idx(codec, paths[i]);
++ if (path)
++ snd_hda_activate_path(codec, path, path->active,
++ spec->aamix_mode);
++ }
++}
++
+ static int loopback_mixing_put(struct snd_kcontrol *kcontrol,
+ struct snd_ctl_elem_value *ucontrol)
+ {
+ struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
+ struct hda_gen_spec *spec = codec->spec;
++ const struct auto_pin_cfg *cfg = &spec->autocfg;
+ unsigned int val = ucontrol->value.enumerated.item[0];
+
+ if (val == spec->aamix_mode)
+ return 0;
+ spec->aamix_mode = val;
+- update_aamix_paths(codec, val, spec->out_paths[0],
+- spec->aamix_out_paths[0],
+- spec->autocfg.line_out_type);
+- update_aamix_paths(codec, val, spec->hp_paths[0],
+- spec->aamix_out_paths[1],
+- AUTO_PIN_HP_OUT);
+- update_aamix_paths(codec, val, spec->speaker_paths[0],
+- spec->aamix_out_paths[2],
+- AUTO_PIN_SPEAKER_OUT);
++ if (has_aamix_out_paths(spec)) {
++ update_aamix_paths(codec, val, spec->out_paths[0],
++ spec->aamix_out_paths[0],
++ cfg->line_out_type);
++ update_aamix_paths(codec, val, spec->hp_paths[0],
++ spec->aamix_out_paths[1],
++ AUTO_PIN_HP_OUT);
++ update_aamix_paths(codec, val, spec->speaker_paths[0],
++ spec->aamix_out_paths[2],
++ AUTO_PIN_SPEAKER_OUT);
++ } else {
++ update_output_paths(codec, cfg->line_outs, spec->out_paths);
++ if (cfg->line_out_type != AUTO_PIN_HP_OUT)
++ update_output_paths(codec, cfg->hp_outs, spec->hp_paths);
++ if (cfg->line_out_type != AUTO_PIN_SPEAKER_OUT)
++ update_output_paths(codec, cfg->speaker_outs,
++ spec->speaker_paths);
++ }
+ return 1;
+ }
+
+@@ -2458,12 +2504,13 @@ static int create_loopback_mixing_ctl(struct hda_codec *codec)
+
+ if (!spec->mixer_nid)
+ return 0;
+- if (!(spec->aamix_out_paths[0] || spec->aamix_out_paths[1] ||
+- spec->aamix_out_paths[2]))
+- return 0;
+ if (!snd_hda_gen_add_kctl(spec, NULL, &loopback_mixing_enum))
+ return -ENOMEM;
+ spec->have_aamix_ctl = 1;
++ /* if no explicit aamix path is present (e.g. for Realtek codecs),
++ * enable aamix as default -- just for compatibility
++ */
++ spec->aamix_mode = !has_aamix_out_paths(spec);
+ return 0;
+ }
+
+@@ -3998,9 +4045,9 @@ static void pin_power_callback(struct hda_codec *codec,
+ struct hda_jack_callback *jack,
+ bool on)
+ {
+- if (jack && jack->tbl->nid)
++ if (jack && jack->nid)
+ sync_power_state_change(codec,
+- set_pin_power_jack(codec, jack->tbl->nid, on));
++ set_pin_power_jack(codec, jack->nid, on));
+ }
+
+ /* callback only doing power up -- called at first */
+@@ -5664,6 +5711,8 @@ static void init_aamix_paths(struct hda_codec *codec)
+
+ if (!spec->have_aamix_ctl)
+ return;
++ if (!has_aamix_out_paths(spec))
++ return;
+ update_aamix_paths(codec, spec->aamix_mode, spec->out_paths[0],
+ spec->aamix_out_paths[0],
+ spec->autocfg.line_out_type);
+diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
+index 614baff..02a86ba 100644
+--- a/sound/pci/hda/hda_intel.c
++++ b/sound/pci/hda/hda_intel.c
+@@ -90,6 +90,8 @@ enum {
+ #define NVIDIA_HDA_ENABLE_COHBIT 0x01
+
+ /* Defines for Intel SCH HDA snoop control */
++#define INTEL_HDA_CGCTL 0x48
++#define INTEL_HDA_CGCTL_MISCBDCGE (0x1 << 6)
+ #define INTEL_SCH_HDA_DEVC 0x78
+ #define INTEL_SCH_HDA_DEVC_NOSNOOP (0x1<<11)
+
+@@ -528,10 +530,21 @@ static void hda_intel_init_chip(struct azx *chip, bool full_reset)
+ {
+ struct hdac_bus *bus = azx_bus(chip);
+ struct pci_dev *pci = chip->pci;
++ u32 val;
+
+ if (chip->driver_caps & AZX_DCAPS_I915_POWERWELL)
+ snd_hdac_set_codec_wakeup(bus, true);
++ if (IS_BROXTON(pci)) {
++ pci_read_config_dword(pci, INTEL_HDA_CGCTL, &val);
++ val = val & ~INTEL_HDA_CGCTL_MISCBDCGE;
++ pci_write_config_dword(pci, INTEL_HDA_CGCTL, val);
++ }
+ azx_init_chip(chip, full_reset);
++ if (IS_BROXTON(pci)) {
++ pci_read_config_dword(pci, INTEL_HDA_CGCTL, &val);
++ val = val | INTEL_HDA_CGCTL_MISCBDCGE;
++ pci_write_config_dword(pci, INTEL_HDA_CGCTL, val);
++ }
+ if (chip->driver_caps & AZX_DCAPS_I915_POWERWELL)
+ snd_hdac_set_codec_wakeup(bus, false);
+
+diff --git a/sound/pci/hda/hda_jack.c b/sound/pci/hda/hda_jack.c
+index c945e25..a33234e 100644
+--- a/sound/pci/hda/hda_jack.c
++++ b/sound/pci/hda/hda_jack.c
+@@ -259,7 +259,7 @@ snd_hda_jack_detect_enable_callback(struct hda_codec *codec, hda_nid_t nid,
+ if (!callback)
+ return ERR_PTR(-ENOMEM);
+ callback->func = func;
+- callback->tbl = jack;
++ callback->nid = jack->nid;
+ callback->next = jack->callback;
+ jack->callback = callback;
+ }
+diff --git a/sound/pci/hda/hda_jack.h b/sound/pci/hda/hda_jack.h
+index 858708a..e9814c0 100644
+--- a/sound/pci/hda/hda_jack.h
++++ b/sound/pci/hda/hda_jack.h
+@@ -21,7 +21,7 @@ struct hda_jack_callback;
+ typedef void (*hda_jack_callback_fn) (struct hda_codec *, struct hda_jack_callback *);
+
+ struct hda_jack_callback {
+- struct hda_jack_tbl *tbl;
++ hda_nid_t nid;
+ hda_jack_callback_fn func;
+ unsigned int private_data; /* arbitrary data */
+ struct hda_jack_callback *next;
+diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c
+index 4ef2259..9ceb2bc 100644
+--- a/sound/pci/hda/patch_ca0132.c
++++ b/sound/pci/hda/patch_ca0132.c
+@@ -4427,13 +4427,16 @@ static void ca0132_process_dsp_response(struct hda_codec *codec,
+ static void hp_callback(struct hda_codec *codec, struct hda_jack_callback *cb)
+ {
+ struct ca0132_spec *spec = codec->spec;
++ struct hda_jack_tbl *tbl;
+
+ /* Delay enabling the HP amp, to let the mic-detection
+ * state machine run.
+ */
+ cancel_delayed_work_sync(&spec->unsol_hp_work);
+ schedule_delayed_work(&spec->unsol_hp_work, msecs_to_jiffies(500));
+- cb->tbl->block_report = 1;
++ tbl = snd_hda_jack_tbl_get(codec, cb->nid);
++ if (tbl)
++ tbl->block_report = 1;
+ }
+
+ static void amic_callback(struct hda_codec *codec, struct hda_jack_callback *cb)
+diff --git a/sound/pci/hda/patch_cirrus.c b/sound/pci/hda/patch_cirrus.c
+index a12ae8a..c1c855a 100644
+--- a/sound/pci/hda/patch_cirrus.c
++++ b/sound/pci/hda/patch_cirrus.c
+@@ -614,6 +614,7 @@ enum {
+ CS4208_MAC_AUTO,
+ CS4208_MBA6,
+ CS4208_MBP11,
++ CS4208_MACMINI,
+ CS4208_GPIO0,
+ };
+
+@@ -621,6 +622,7 @@ static const struct hda_model_fixup cs4208_models[] = {
+ { .id = CS4208_GPIO0, .name = "gpio0" },
+ { .id = CS4208_MBA6, .name = "mba6" },
+ { .id = CS4208_MBP11, .name = "mbp11" },
++ { .id = CS4208_MACMINI, .name = "macmini" },
+ {}
+ };
+
+@@ -632,6 +634,7 @@ static const struct snd_pci_quirk cs4208_fixup_tbl[] = {
+ /* codec SSID matching */
+ static const struct snd_pci_quirk cs4208_mac_fixup_tbl[] = {
+ SND_PCI_QUIRK(0x106b, 0x5e00, "MacBookPro 11,2", CS4208_MBP11),
++ SND_PCI_QUIRK(0x106b, 0x6c00, "MacMini 7,1", CS4208_MACMINI),
+ SND_PCI_QUIRK(0x106b, 0x7100, "MacBookAir 6,1", CS4208_MBA6),
+ SND_PCI_QUIRK(0x106b, 0x7200, "MacBookAir 6,2", CS4208_MBA6),
+ SND_PCI_QUIRK(0x106b, 0x7b00, "MacBookPro 12,1", CS4208_MBP11),
+@@ -666,6 +669,24 @@ static void cs4208_fixup_mac(struct hda_codec *codec,
+ snd_hda_apply_fixup(codec, action);
+ }
+
++/* MacMini 7,1 has the inverted jack detection */
++static void cs4208_fixup_macmini(struct hda_codec *codec,
++ const struct hda_fixup *fix, int action)
++{
++ static const struct hda_pintbl pincfgs[] = {
++ { 0x18, 0x00ab9150 }, /* mic (audio-in) jack: disable detect */
++ { 0x21, 0x004be140 }, /* SPDIF: disable detect */
++ { }
++ };
++
++ if (action == HDA_FIXUP_ACT_PRE_PROBE) {
++ /* HP pin (0x10) has an inverted detection */
++ codec->inv_jack_detect = 1;
++ /* disable the bogus Mic and SPDIF jack detections */
++ snd_hda_apply_pincfgs(codec, pincfgs);
++ }
++}
++
+ static int cs4208_spdif_sw_put(struct snd_kcontrol *kcontrol,
+ struct snd_ctl_elem_value *ucontrol)
+ {
+@@ -709,6 +730,12 @@ static const struct hda_fixup cs4208_fixups[] = {
+ .chained = true,
+ .chain_id = CS4208_GPIO0,
+ },
++ [CS4208_MACMINI] = {
++ .type = HDA_FIXUP_FUNC,
++ .v.func = cs4208_fixup_macmini,
++ .chained = true,
++ .chain_id = CS4208_GPIO0,
++ },
+ [CS4208_GPIO0] = {
+ .type = HDA_FIXUP_FUNC,
+ .v.func = cs4208_fixup_gpio0,
+diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
+index 4b6fb66..70c9456 100644
+--- a/sound/pci/hda/patch_hdmi.c
++++ b/sound/pci/hda/patch_hdmi.c
+@@ -438,7 +438,8 @@ static int hdmi_eld_ctl_get(struct snd_kcontrol *kcontrol,
+ eld = &per_pin->sink_eld;
+
+ mutex_lock(&per_pin->lock);
+- if (eld->eld_size > ARRAY_SIZE(ucontrol->value.bytes.data)) {
++ if (eld->eld_size > ARRAY_SIZE(ucontrol->value.bytes.data) ||
++ eld->eld_size > ELD_MAX_SIZE) {
+ mutex_unlock(&per_pin->lock);
+ snd_BUG();
+ return -EINVAL;
+@@ -1183,7 +1184,7 @@ static void check_presence_and_report(struct hda_codec *codec, hda_nid_t nid)
+ static void jack_callback(struct hda_codec *codec,
+ struct hda_jack_callback *jack)
+ {
+- check_presence_and_report(codec, jack->tbl->nid);
++ check_presence_and_report(codec, jack->nid);
+ }
+
+ static void hdmi_intrinsic_event(struct hda_codec *codec, unsigned int res)
+diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
+index 3375324..efd4980 100644
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -282,7 +282,7 @@ static void alc_update_knob_master(struct hda_codec *codec,
+ uctl = kzalloc(sizeof(*uctl), GFP_KERNEL);
+ if (!uctl)
+ return;
+- val = snd_hda_codec_read(codec, jack->tbl->nid, 0,
++ val = snd_hda_codec_read(codec, jack->nid, 0,
+ AC_VERB_GET_VOLUME_KNOB_CONTROL, 0);
+ val &= HDA_AMP_VOLMASK;
+ uctl->value.integer.value[0] = val;
+@@ -327,6 +327,7 @@ static void alc_fill_eapd_coef(struct hda_codec *codec)
+ case 0x10ec0292:
+ alc_update_coef_idx(codec, 0x4, 1<<15, 0);
+ break;
++ case 0x10ec0225:
+ case 0x10ec0233:
+ case 0x10ec0255:
+ case 0x10ec0256:
+@@ -900,6 +901,7 @@ static struct alc_codec_rename_pci_table rename_pci_tbl[] = {
+ { 0x10ec0899, 0x1028, 0, "ALC3861" },
+ { 0x10ec0298, 0x1028, 0, "ALC3266" },
+ { 0x10ec0256, 0x1028, 0, "ALC3246" },
++ { 0x10ec0225, 0x1028, 0, "ALC3253" },
+ { 0x10ec0670, 0x1025, 0, "ALC669X" },
+ { 0x10ec0676, 0x1025, 0, "ALC679X" },
+ { 0x10ec0282, 0x1043, 0, "ALC3229" },
+@@ -1785,7 +1787,6 @@ enum {
+ ALC882_FIXUP_NO_PRIMARY_HP,
+ ALC887_FIXUP_ASUS_BASS,
+ ALC887_FIXUP_BASS_CHMAP,
+- ALC882_FIXUP_DISABLE_AAMIX,
+ };
+
+ static void alc889_fixup_coef(struct hda_codec *codec,
+@@ -1947,8 +1948,6 @@ static void alc882_fixup_no_primary_hp(struct hda_codec *codec,
+
+ static void alc_fixup_bass_chmap(struct hda_codec *codec,
+ const struct hda_fixup *fix, int action);
+-static void alc_fixup_disable_aamix(struct hda_codec *codec,
+- const struct hda_fixup *fix, int action);
+
+ static const struct hda_fixup alc882_fixups[] = {
+ [ALC882_FIXUP_ABIT_AW9D_MAX] = {
+@@ -2186,10 +2185,6 @@ static const struct hda_fixup alc882_fixups[] = {
+ .type = HDA_FIXUP_FUNC,
+ .v.func = alc_fixup_bass_chmap,
+ },
+- [ALC882_FIXUP_DISABLE_AAMIX] = {
+- .type = HDA_FIXUP_FUNC,
+- .v.func = alc_fixup_disable_aamix,
+- },
+ };
+
+ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
+@@ -2228,6 +2223,7 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
+ SND_PCI_QUIRK(0x104d, 0x9047, "Sony Vaio TT", ALC889_FIXUP_VAIO_TT),
+ SND_PCI_QUIRK(0x104d, 0x905a, "Sony Vaio Z", ALC882_FIXUP_NO_PRIMARY_HP),
+ SND_PCI_QUIRK(0x104d, 0x9043, "Sony Vaio VGC-LN51JGB", ALC882_FIXUP_NO_PRIMARY_HP),
++ SND_PCI_QUIRK(0x104d, 0x9044, "Sony VAIO AiO", ALC882_FIXUP_NO_PRIMARY_HP),
+
+ /* All Apple entries are in codec SSIDs */
+ SND_PCI_QUIRK(0x106b, 0x00a0, "MacBookPro 3,1", ALC889_FIXUP_MBP_VREF),
+@@ -2257,7 +2253,6 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
+ SND_PCI_QUIRK(0x1462, 0x7350, "MSI-7350", ALC889_FIXUP_CD),
+ SND_PCI_QUIRK_VENDOR(0x1462, "MSI", ALC882_FIXUP_GPIO3),
+ SND_PCI_QUIRK(0x1458, 0xa002, "Gigabyte EP45-DS3/Z87X-UD3H", ALC889_FIXUP_FRONT_HP_NO_PRESENCE),
+- SND_PCI_QUIRK(0x1458, 0xa182, "Gigabyte Z170X-UD3", ALC882_FIXUP_DISABLE_AAMIX),
+ SND_PCI_QUIRK(0x147b, 0x107a, "Abit AW9D-MAX", ALC882_FIXUP_ABIT_AW9D_MAX),
+ SND_PCI_QUIRK_VENDOR(0x1558, "Clevo laptop", ALC882_FIXUP_EAPD),
+ SND_PCI_QUIRK(0x161f, 0x2054, "Medion laptop", ALC883_FIXUP_EAPD),
+@@ -2651,6 +2646,7 @@ enum {
+ ALC269_TYPE_ALC298,
+ ALC269_TYPE_ALC255,
+ ALC269_TYPE_ALC256,
++ ALC269_TYPE_ALC225,
+ };
+
+ /*
+@@ -2680,6 +2676,7 @@ static int alc269_parse_auto_config(struct hda_codec *codec)
+ case ALC269_TYPE_ALC298:
+ case ALC269_TYPE_ALC255:
+ case ALC269_TYPE_ALC256:
++ case ALC269_TYPE_ALC225:
+ ssids = alc269_ssids;
+ break;
+ default:
+@@ -3658,6 +3655,16 @@ static void alc_headset_mode_unplugged(struct hda_codec *codec)
+ WRITE_COEF(0xb7, 0x802b),
+ {}
+ };
++ static struct coef_fw coef0225[] = {
++ UPDATE_COEF(0x4a, 1<<8, 0),
++ UPDATE_COEFEX(0x57, 0x05, 1<<14, 0),
++ UPDATE_COEF(0x63, 3<<14, 3<<14),
++ UPDATE_COEF(0x4a, 3<<4, 2<<4),
++ UPDATE_COEF(0x4a, 3<<10, 3<<10),
++ UPDATE_COEF(0x45, 0x3f<<10, 0x34<<10),
++ UPDATE_COEF(0x4a, 3<<10, 0),
++ {}
++ };
+
+ switch (codec->core.vendor_id) {
+ case 0x10ec0255:
+@@ -3682,6 +3689,9 @@ static void alc_headset_mode_unplugged(struct hda_codec *codec)
+ case 0x10ec0668:
+ alc_process_coef_fw(codec, coef0668);
+ break;
++ case 0x10ec0225:
++ alc_process_coef_fw(codec, coef0225);
++ break;
+ }
+ codec_dbg(codec, "Headset jack set to unplugged mode.\n");
+ }
+@@ -3727,6 +3737,13 @@ static void alc_headset_mode_mic_in(struct hda_codec *codec, hda_nid_t hp_pin,
+ UPDATE_COEF(0xc3, 0, 1<<12),
+ {}
+ };
++ static struct coef_fw coef0225[] = {
++ UPDATE_COEFEX(0x57, 0x05, 1<<14, 1<<14),
++ UPDATE_COEF(0x4a, 3<<4, 2<<4),
++ UPDATE_COEF(0x63, 3<<14, 0),
++ {}
++ };
++
+
+ switch (codec->core.vendor_id) {
+ case 0x10ec0255:
+@@ -3772,6 +3789,12 @@ static void alc_headset_mode_mic_in(struct hda_codec *codec, hda_nid_t hp_pin,
+ alc_process_coef_fw(codec, coef0688);
+ snd_hda_set_pin_ctl_cache(codec, mic_pin, PIN_VREF50);
+ break;
++ case 0x10ec0225:
++ alc_update_coef_idx(codec, 0x45, 0x3f<<10, 0x31<<10);
++ snd_hda_set_pin_ctl_cache(codec, hp_pin, 0);
++ alc_process_coef_fw(codec, coef0225);
++ snd_hda_set_pin_ctl_cache(codec, mic_pin, PIN_VREF50);
++ break;
+ }
+ codec_dbg(codec, "Headset jack set to mic-in mode.\n");
+ }
+@@ -3884,6 +3907,13 @@ static void alc_headset_mode_ctia(struct hda_codec *codec)
+ WRITE_COEF(0xc3, 0x0000),
+ {}
+ };
++ static struct coef_fw coef0225[] = {
++ UPDATE_COEF(0x45, 0x3f<<10, 0x35<<10),
++ UPDATE_COEF(0x49, 1<<8, 1<<8),
++ UPDATE_COEF(0x4a, 7<<6, 7<<6),
++ UPDATE_COEF(0x4a, 3<<4, 3<<4),
++ {}
++ };
+
+ switch (codec->core.vendor_id) {
+ case 0x10ec0255:
+@@ -3912,6 +3942,9 @@ static void alc_headset_mode_ctia(struct hda_codec *codec)
+ case 0x10ec0668:
+ alc_process_coef_fw(codec, coef0688);
+ break;
++ case 0x10ec0225:
++ alc_process_coef_fw(codec, coef0225);
++ break;
+ }
+ codec_dbg(codec, "Headset jack set to iPhone-style headset mode.\n");
+ }
+@@ -3955,6 +3988,13 @@ static void alc_headset_mode_omtp(struct hda_codec *codec)
+ WRITE_COEF(0xc3, 0x0000),
+ {}
+ };
++ static struct coef_fw coef0225[] = {
++ UPDATE_COEF(0x45, 0x3f<<10, 0x39<<10),
++ UPDATE_COEF(0x49, 1<<8, 1<<8),
++ UPDATE_COEF(0x4a, 7<<6, 7<<6),
++ UPDATE_COEF(0x4a, 3<<4, 3<<4),
++ {}
++ };
+
+ switch (codec->core.vendor_id) {
+ case 0x10ec0255:
+@@ -3983,6 +4023,9 @@ static void alc_headset_mode_omtp(struct hda_codec *codec)
+ case 0x10ec0668:
+ alc_process_coef_fw(codec, coef0688);
+ break;
++ case 0x10ec0225:
++ alc_process_coef_fw(codec, coef0225);
++ break;
+ }
+ codec_dbg(codec, "Headset jack set to Nokia-style headset mode.\n");
+ }
+@@ -4014,6 +4057,11 @@ static void alc_determine_headset_type(struct hda_codec *codec)
+ WRITE_COEF(0xc3, 0x0c00),
+ {}
+ };
++ static struct coef_fw coef0225[] = {
++ UPDATE_COEF(0x45, 0x3f<<10, 0x34<<10),
++ UPDATE_COEF(0x49, 1<<8, 1<<8),
++ {}
++ };
+
+ switch (codec->core.vendor_id) {
+ case 0x10ec0255:
+@@ -4058,6 +4106,12 @@ static void alc_determine_headset_type(struct hda_codec *codec)
+ val = alc_read_coef_idx(codec, 0xbe);
+ is_ctia = (val & 0x1c02) == 0x1c02;
+ break;
++ case 0x10ec0225:
++ alc_process_coef_fw(codec, coef0225);
++ msleep(800);
++ val = alc_read_coef_idx(codec, 0x46);
++ is_ctia = (val & 0x00f0) == 0x00f0;
++ break;
+ }
+
+ codec_dbg(codec, "Headset jack detected iPhone-style headset: %s\n",
+@@ -5560,6 +5614,9 @@ static const struct hda_model_fixup alc269_fixup_models[] = {
+ {.id = ALC292_FIXUP_TPT440, .name = "tpt440"},
+ {}
+ };
++#define ALC225_STANDARD_PINS \
++ {0x12, 0xb7a60130}, \
++ {0x21, 0x04211020}
+
+ #define ALC256_STANDARD_PINS \
+ {0x12, 0x90a60140}, \
+@@ -5581,6 +5638,12 @@ static const struct hda_model_fixup alc269_fixup_models[] = {
+ {0x21, 0x03211020}
+
+ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
++ SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
++ ALC225_STANDARD_PINS,
++ {0x14, 0x901701a0}),
++ SND_HDA_PIN_QUIRK(0x10ec0225, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
++ ALC225_STANDARD_PINS,
++ {0x14, 0x901701b0}),
+ SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE,
+ {0x14, 0x90170110},
+ {0x21, 0x02211020}),
+@@ -5906,6 +5969,9 @@ static int patch_alc269(struct hda_codec *codec)
+ spec->gen.mixer_nid = 0; /* ALC256 does not have any loopback mixer path */
+ alc_update_coef_idx(codec, 0x36, 1 << 13, 1 << 5); /* Switch pcbeep path to Line in path*/
+ break;
++ case 0x10ec0225:
++ spec->codec_variant = ALC269_TYPE_ALC225;
++ break;
+ }
+
+ if (snd_hda_codec_read(codec, 0x51, 0, AC_VERB_PARAMETERS, 0) == 0x10ec5505) {
+@@ -6796,6 +6862,7 @@ static int patch_alc680(struct hda_codec *codec)
+ */
+ static const struct hda_device_id snd_hda_id_realtek[] = {
+ HDA_CODEC_ENTRY(0x10ec0221, "ALC221", patch_alc269),
++ HDA_CODEC_ENTRY(0x10ec0225, "ALC225", patch_alc269),
+ HDA_CODEC_ENTRY(0x10ec0231, "ALC231", patch_alc269),
+ HDA_CODEC_ENTRY(0x10ec0233, "ALC233", patch_alc269),
+ HDA_CODEC_ENTRY(0x10ec0235, "ALC233", patch_alc269),
+diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
+index 2c7c5eb..37b70f8 100644
+--- a/sound/pci/hda/patch_sigmatel.c
++++ b/sound/pci/hda/patch_sigmatel.c
+@@ -493,9 +493,9 @@ static void jack_update_power(struct hda_codec *codec,
+ if (!spec->num_pwrs)
+ return;
+
+- if (jack && jack->tbl->nid) {
+- stac_toggle_power_map(codec, jack->tbl->nid,
+- snd_hda_jack_detect(codec, jack->tbl->nid),
++ if (jack && jack->nid) {
++ stac_toggle_power_map(codec, jack->nid,
++ snd_hda_jack_detect(codec, jack->nid),
+ true);
+ return;
+ }
+diff --git a/sound/soc/codecs/rt5645.c b/sound/soc/codecs/rt5645.c
+index 3e3c7f6..b74840b 100644
+--- a/sound/soc/codecs/rt5645.c
++++ b/sound/soc/codecs/rt5645.c
+@@ -621,7 +621,7 @@ static const struct snd_kcontrol_new rt5645_snd_controls[] = {
+
+ /* IN1/IN2 Control */
+ SOC_SINGLE_TLV("IN1 Boost", RT5645_IN1_CTRL1,
+- RT5645_BST_SFT1, 8, 0, bst_tlv),
++ RT5645_BST_SFT1, 12, 0, bst_tlv),
+ SOC_SINGLE_TLV("IN2 Boost", RT5645_IN2_CTRL,
+ RT5645_BST_SFT2, 8, 0, bst_tlv),
+
+diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
+index c86dc96..65b936e 100644
+--- a/sound/soc/soc-pcm.c
++++ b/sound/soc/soc-pcm.c
+@@ -1743,7 +1743,8 @@ int dpcm_be_dai_hw_free(struct snd_soc_pcm_runtime *fe, int stream)
+ (be->dpcm[stream].state != SND_SOC_DPCM_STATE_PREPARE) &&
+ (be->dpcm[stream].state != SND_SOC_DPCM_STATE_HW_FREE) &&
+ (be->dpcm[stream].state != SND_SOC_DPCM_STATE_PAUSED) &&
+- (be->dpcm[stream].state != SND_SOC_DPCM_STATE_STOP))
++ (be->dpcm[stream].state != SND_SOC_DPCM_STATE_STOP) &&
++ (be->dpcm[stream].state != SND_SOC_DPCM_STATE_SUSPEND))
+ continue;
+
+ dev_dbg(be->dev, "ASoC: hw_free BE %s\n",
+diff --git a/sound/sparc/Kconfig b/sound/sparc/Kconfig
+index d75deba..dfcd386 100644
+--- a/sound/sparc/Kconfig
++++ b/sound/sparc/Kconfig
+@@ -22,6 +22,7 @@ config SND_SUN_AMD7930
+ config SND_SUN_CS4231
+ tristate "Sun CS4231"
+ select SND_PCM
++ select SND_TIMER
+ help
+ Say Y here to include support for CS4231 sound device on Sun.
+
+diff --git a/sound/usb/midi.c b/sound/usb/midi.c
+index 5b4c58c..b21b766 100644
+--- a/sound/usb/midi.c
++++ b/sound/usb/midi.c
+@@ -2454,7 +2454,6 @@ int snd_usbmidi_create(struct snd_card *card,
+ else
+ err = snd_usbmidi_create_endpoints(umidi, endpoints);
+ if (err < 0) {
+- snd_usbmidi_free(umidi);
+ return err;
+ }
+
+diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
+index 23ea6d8..4f6ce1c 100644
+--- a/sound/usb/quirks.c
++++ b/sound/usb/quirks.c
+@@ -1121,6 +1121,7 @@ bool snd_usb_get_sample_rate_quirk(struct snd_usb_audio *chip)
+ switch (chip->usb_id) {
+ case USB_ID(0x045E, 0x075D): /* MS Lifecam Cinema */
+ case USB_ID(0x045E, 0x076D): /* MS Lifecam HD-5000 */
++ case USB_ID(0x045E, 0x076F): /* MS Lifecam HD-6000 */
+ case USB_ID(0x045E, 0x0772): /* MS Lifecam Studio */
+ case USB_ID(0x045E, 0x0779): /* MS Lifecam HD-3000 */
+ case USB_ID(0x04D8, 0xFEEA): /* Benchmark DAC1 Pre */
+@@ -1205,8 +1206,12 @@ void snd_usb_set_interface_quirk(struct usb_device *dev)
+ * "Playback Design" products need a 50ms delay after setting the
+ * USB interface.
+ */
+- if (le16_to_cpu(dev->descriptor.idVendor) == 0x23ba)
++ switch (le16_to_cpu(dev->descriptor.idVendor)) {
++ case 0x23ba: /* Playback Design */
++ case 0x0644: /* TEAC Corp. */
+ mdelay(50);
++ break;
++ }
+ }
+
+ void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe,
+@@ -1221,6 +1226,14 @@ void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe,
+ (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS)
+ mdelay(20);
+
++ /*
++ * "TEAC Corp." products need a 20ms delay after each
++ * class compliant request
++ */
++ if ((le16_to_cpu(dev->descriptor.idVendor) == 0x0644) &&
++ (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS)
++ mdelay(20);
++
+ /* Marantz/Denon devices with USB DAC functionality need a delay
+ * after each class compliant request
+ */
+@@ -1269,7 +1282,7 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
+ case USB_ID(0x20b1, 0x3008): /* iFi Audio micro/nano iDSD */
+ case USB_ID(0x20b1, 0x2008): /* Matrix Audio X-Sabre */
+ case USB_ID(0x20b1, 0x300a): /* Matrix Audio Mini-i Pro */
+- case USB_ID(0x22d8, 0x0416): /* OPPO HA-1*/
++ case USB_ID(0x22d9, 0x0416): /* OPPO HA-1 */
+ if (fp->altsetting == 2)
+ return SNDRV_PCM_FMTBIT_DSD_U32_BE;
+ break;
+@@ -1278,6 +1291,7 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
+ case USB_ID(0x20b1, 0x2009): /* DIYINHK DSD DXD 384kHz USB to I2S/DSD */
+ case USB_ID(0x20b1, 0x2023): /* JLsounds I2SoverUSB */
+ case USB_ID(0x20b1, 0x3023): /* Aune X1S 32BIT/384 DSD DAC */
++ case USB_ID(0x2616, 0x0106): /* PS Audio NuWave DAC */
+ if (fp->altsetting == 3)
+ return SNDRV_PCM_FMTBIT_DSD_U32_BE;
+ break;
diff --git a/4.3.5/4420_grsecurity-3.1-4.3.5-201602070910.patch b/4.4.2/4420_grsecurity-3.1-4.4.2-201602182048.patch
index e639b69..0157b77 100644
--- a/4.3.5/4420_grsecurity-3.1-4.3.5-201602070910.patch
+++ b/4.4.2/4420_grsecurity-3.1-4.4.2-201602182048.patch
@@ -1,5 +1,5 @@
diff --git a/Documentation/dontdiff b/Documentation/dontdiff
-index 9de9813..1462492 100644
+index 8ea834f..1462492 100644
--- a/Documentation/dontdiff
+++ b/Documentation/dontdiff
@@ -3,9 +3,11 @@
@@ -135,11 +135,9 @@ index 9de9813..1462492 100644
logo_*.c
logo_*_clut224.c
logo_*_mono.c
-@@ -165,14 +185,15 @@ mach-types.h
- machtypes.h
+@@ -166,12 +186,14 @@ machtypes.h
map
map_hugetlb
--media
mconf
+mdp
miboot*
@@ -152,7 +150,7 @@ index 9de9813..1462492 100644
mkprep
mkregtable
mktables
-@@ -188,6 +209,8 @@ oui.c*
+@@ -187,6 +209,8 @@ oui.c*
page-types
parse.c
parse.h
@@ -161,7 +159,7 @@ index 9de9813..1462492 100644
patches*
pca200e.bin
pca200e_ecd.bin2
-@@ -197,6 +220,7 @@ perf-archive
+@@ -196,6 +220,7 @@ perf-archive
piggyback
piggy.gzip
piggy.S
@@ -169,7 +167,7 @@ index 9de9813..1462492 100644
pnmtologo
ppc_defs.h*
pss_boot.h
-@@ -206,7 +230,12 @@ r200_reg_safe.h
+@@ -205,7 +230,12 @@ r200_reg_safe.h
r300_reg_safe.h
r420_reg_safe.h
r600_reg_safe.h
@@ -182,7 +180,7 @@ index 9de9813..1462492 100644
relocs
rlim_names.h
rn50_reg_safe.h
-@@ -216,8 +245,12 @@ series
+@@ -215,8 +245,12 @@ series
setup
setup.bin
setup.elf
@@ -195,7 +193,7 @@ index 9de9813..1462492 100644
split-include
syscalltab.h
tables.c
-@@ -227,6 +260,7 @@ tftpboot.img
+@@ -226,6 +260,7 @@ tftpboot.img
timeconst.h
times.h*
trix_boot.h
@@ -203,7 +201,7 @@ index 9de9813..1462492 100644
utsrelease.h*
vdso-syms.lds
vdso.lds
-@@ -238,13 +272,17 @@ vdso32.lds
+@@ -237,13 +272,17 @@ vdso32.lds
vdso32.so.dbg
vdso64.lds
vdso64.so.dbg
@@ -221,7 +219,7 @@ index 9de9813..1462492 100644
vmlinuz
voffset.h
vsyscall.lds
-@@ -252,9 +290,12 @@ vsyscall_32.lds
+@@ -251,9 +290,12 @@ vsyscall_32.lds
wanxlfw.inc
uImage
unifdef
@@ -313,24 +311,23 @@ index 13f888a..250729b 100644
A typical pattern in a Kbuild file looks like this:
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
-index 22a4b68..0ec4c2a 100644
+index 742f69d..541f1c4 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
-@@ -1246,6 +1246,13 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
- Format: <unsigned int> such that (rxsize & ~0x1fffc0) == 0.
- Default: 1024
-
+@@ -1282,6 +1282,12 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+ [KNL] Should the hard-lockup detector generate
+ backtraces on all cpus.
+ Format: <integer>
+ grsec_proc_gid= [GRKERNSEC_PROC_USERGROUP] Chooses GID to
+ ignore grsecurity's /proc restrictions
+
+ grsec_sysfs_restrict= Format: 0 | 1
+ Default: 1
+ Disables GRKERNSEC_SYSFS_RESTRICT if enabled in config
-+
+
hashdist= [KNL,NUMA] Large hashes allocated during boot
are distributed across NUMA nodes. Defaults on
- for 64-bit NUMA, off otherwise.
-@@ -2379,6 +2386,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+@@ -2418,6 +2424,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
noexec=on: enable non-executable mappings (default)
noexec=off: disable non-executable mappings
@@ -341,7 +338,7 @@ index 22a4b68..0ec4c2a 100644
nosmap [X86]
Disable SMAP (Supervisor Mode Access Prevention)
even if it is supported by processor.
-@@ -2677,6 +2688,35 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+@@ -2716,6 +2726,35 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
the specified number of seconds. This is to be used if
your oopses keep scrolling off the screen.
@@ -419,10 +416,10 @@ index 88152f2..302b5ed 100644
A long-standing class of security issues is the hardlink-based
diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt
-index 6fccb69..60c7c7a 100644
+index af70d15..ccd3786 100644
--- a/Documentation/sysctl/kernel.txt
+++ b/Documentation/sysctl/kernel.txt
-@@ -41,6 +41,7 @@ show up in /proc/sys/kernel:
+@@ -42,6 +42,7 @@ show up in /proc/sys/kernel:
- kptr_restrict
- kstack_depth_to_print [ X86 only ]
- l2cr [ PPC only ]
@@ -430,7 +427,7 @@ index 6fccb69..60c7c7a 100644
- modprobe ==> Documentation/debugging-modules.txt
- modules_disabled
- msg_next_id [ sysv ipc ]
-@@ -391,6 +392,20 @@ This flag controls the L2 cache of G3 processor boards. If
+@@ -403,6 +404,20 @@ This flag controls the L2 cache of G3 processor boards. If
==============================================================
@@ -452,7 +449,7 @@ index 6fccb69..60c7c7a 100644
A toggle value indicating if modules are allowed to be loaded
diff --git a/Makefile b/Makefile
-index efc7a76..aa435e3 100644
+index e7a2958..730b429 100644
--- a/Makefile
+++ b/Makefile
@@ -298,7 +298,9 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
@@ -477,93 +474,16 @@ index efc7a76..aa435e3 100644
$(Q)$(MAKE) $(build)=scripts/basic
$(Q)rm -f .tmp_quiet_recordmcount
-@@ -615,6 +617,85 @@ endif
+@@ -616,6 +618,8 @@ endif
# Tell gcc to never replace conditional load with a non-conditional one
KBUILD_CFLAGS += $(call cc-option,--param=allow-store-data-races=0)
-+ifndef DISABLE_PAX_PLUGINS
-+ifeq ($(call cc-ifversion, -ge, 0408, y), y)
-+PLUGINCC := $(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-plugin.sh "$(HOSTCXX)" "$(HOSTCXX)" "$(CC)")
-+else
-+PLUGINCC := $(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-plugin.sh "$(HOSTCC)" "$(HOSTCXX)" "$(CC)")
-+endif
-+ifneq ($(PLUGINCC),)
-+ifdef CONFIG_PAX_CONSTIFY_PLUGIN
-+CONSTIFY_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/constify_plugin.so -DCONSTIFY_PLUGIN
-+endif
-+ifdef CONFIG_PAX_MEMORY_STACKLEAK
-+STACKLEAK_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/stackleak_plugin.so -DSTACKLEAK_PLUGIN
-+STACKLEAK_PLUGIN_CFLAGS += -fplugin-arg-stackleak_plugin-track-lowest-sp=100
-+endif
-+ifdef CONFIG_KALLOCSTAT_PLUGIN
-+KALLOCSTAT_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/kallocstat_plugin.so
-+endif
-+ifdef CONFIG_PAX_KERNEXEC_PLUGIN
-+KERNEXEC_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/kernexec_plugin.so
-+KERNEXEC_PLUGIN_CFLAGS += -fplugin-arg-kernexec_plugin-method=$(CONFIG_PAX_KERNEXEC_PLUGIN_METHOD) -DKERNEXEC_PLUGIN
-+KERNEXEC_PLUGIN_AFLAGS := -DKERNEXEC_PLUGIN
-+endif
-+ifdef CONFIG_GRKERNSEC_RANDSTRUCT
-+RANDSTRUCT_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/randomize_layout_plugin.so -DRANDSTRUCT_PLUGIN
-+ifdef CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE
-+RANDSTRUCT_PLUGIN_CFLAGS += -fplugin-arg-randomize_layout_plugin-performance-mode
-+endif
-+endif
-+ifdef CONFIG_CHECKER_PLUGIN
-+ifeq ($(call cc-ifversion, -ge, 0406, y), y)
-+CHECKER_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/checker_plugin.so -DCHECKER_PLUGIN
-+ifdef CONFIG_CHECKER_PLUGIN_USER
-+CHECKER_PLUGIN_CFLAGS += -fplugin-arg-checker_plugin-user -DCHECKER_PLUGIN_USER
-+endif
-+ifdef CONFIG_CHECKER_PLUGIN_CONTEXT
-+CHECKER_PLUGIN_CFLAGS += -fplugin-arg-checker_plugin-context -DCHECKER_PLUGIN_CONTEXT
-+endif
-+endif
-+endif
-+COLORIZE_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/colorize_plugin.so
-+ifdef CONFIG_PAX_SIZE_OVERFLOW
-+SIZE_OVERFLOW_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/size_overflow_plugin/size_overflow_plugin.so -DSIZE_OVERFLOW_PLUGIN
-+endif
-+ifdef CONFIG_PAX_LATENT_ENTROPY
-+LATENT_ENTROPY_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/latent_entropy_plugin.so -DLATENT_ENTROPY_PLUGIN
-+endif
-+ifdef CONFIG_PAX_MEMORY_STRUCTLEAK
-+STRUCTLEAK_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/structleak_plugin.so -DSTRUCTLEAK_PLUGIN
-+endif
-+INITIFY_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/initify_plugin.so -DINITIFY_PLUGIN
-+GCC_PLUGINS_CFLAGS := $(CONSTIFY_PLUGIN_CFLAGS) $(STACKLEAK_PLUGIN_CFLAGS) $(KALLOCSTAT_PLUGIN_CFLAGS)
-+GCC_PLUGINS_CFLAGS += $(KERNEXEC_PLUGIN_CFLAGS) $(CHECKER_PLUGIN_CFLAGS) $(COLORIZE_PLUGIN_CFLAGS)
-+GCC_PLUGINS_CFLAGS += $(SIZE_OVERFLOW_PLUGIN_CFLAGS) $(LATENT_ENTROPY_PLUGIN_CFLAGS) $(STRUCTLEAK_PLUGIN_CFLAGS)
-+GCC_PLUGINS_CFLAGS += $(INITIFY_PLUGIN_CFLAGS)
-+GCC_PLUGINS_CFLAGS += $(RANDSTRUCT_PLUGIN_CFLAGS)
-+GCC_PLUGINS_AFLAGS := $(KERNEXEC_PLUGIN_AFLAGS)
-+export PLUGINCC GCC_PLUGINS_CFLAGS GCC_PLUGINS_AFLAGS CONSTIFY_PLUGIN LATENT_ENTROPY_PLUGIN_CFLAGS
-+ifeq ($(KBUILD_EXTMOD),)
-+gcc-plugins:
-+ $(Q)$(MAKE) $(build)=tools/gcc
-+else
-+gcc-plugins: ;
-+endif
-+else
-+gcc-plugins:
-+ifeq ($(call cc-ifversion, -ge, 0405, y), y)
-+ifeq ($(call cc-ifversion, -ge, 0408, y), y)
-+ $(CONFIG_SHELL) -x $(srctree)/scripts/gcc-plugin.sh "$(HOSTCXX)" "$(HOSTCXX)" "$(CC)"
-+else
-+ $(CONFIG_SHELL) -x $(srctree)/scripts/gcc-plugin.sh "$(HOSTCC)" "$(HOSTCXX)" "$(CC)"
-+endif
-+ $(error Your gcc installation does not support plugins. If the necessary headers for plugin support are missing, they should be installed. On Debian, apt-get install gcc-<ver>-plugin-dev. If you choose to ignore this error and lessen the improvements provided by this patch, re-run make with the DISABLE_PAX_PLUGINS=y argument.))
-+else
-+ $(Q)echo "warning, your gcc version does not support plugins, you should upgrade it to gcc 4.5 at least"
-+endif
-+ $(Q)echo "PAX_MEMORY_STACKLEAK, constification, PAX_LATENT_ENTROPY and other features will be less secure. PAX_SIZE_OVERFLOW will not be active."
-+endif
-+endif
++include scripts/Makefile.gcc-plugins
+
ifdef CONFIG_READABLE_ASM
# Disable optimizations that make assembler listings hard to read.
# reorder blocks reorders the control in the function
-@@ -707,7 +788,7 @@ KBUILD_CFLAGS += $(call cc-option, -gsplit-dwarf, -g)
+@@ -708,7 +712,7 @@ KBUILD_CFLAGS += $(call cc-option, -gsplit-dwarf, -g)
else
KBUILD_CFLAGS += -g
endif
@@ -572,7 +492,7 @@ index efc7a76..aa435e3 100644
endif
ifdef CONFIG_DEBUG_INFO_DWARF4
KBUILD_CFLAGS += $(call cc-option, -gdwarf-4,)
-@@ -878,7 +959,7 @@ export mod_sign_cmd
+@@ -879,7 +883,7 @@ export mod_sign_cmd
ifeq ($(KBUILD_EXTMOD),)
@@ -581,7 +501,7 @@ index efc7a76..aa435e3 100644
vmlinux-dirs := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \
$(core-y) $(core-m) $(drivers-y) $(drivers-m) \
-@@ -928,6 +1009,8 @@ endif
+@@ -930,6 +934,8 @@ endif
# The actual objects are generated when descending,
# make sure no implicit rule kicks in
@@ -590,7 +510,7 @@ index efc7a76..aa435e3 100644
$(sort $(vmlinux-deps)): $(vmlinux-dirs) ;
# Handle descending into subdirectories listed in $(vmlinux-dirs)
-@@ -937,7 +1020,7 @@ $(sort $(vmlinux-deps)): $(vmlinux-dirs) ;
+@@ -939,7 +945,7 @@ $(sort $(vmlinux-deps)): $(vmlinux-dirs) ;
# Error messages still appears in the original language
PHONY += $(vmlinux-dirs)
@@ -599,7 +519,7 @@ index efc7a76..aa435e3 100644
$(Q)$(MAKE) $(build)=$@
define filechk_kernel.release
-@@ -980,10 +1063,13 @@ prepare1: prepare2 $(version_h) include/generated/utsrelease.h \
+@@ -982,10 +988,13 @@ prepare1: prepare2 $(version_h) include/generated/utsrelease.h \
archprepare: archheaders archscripts prepare1 scripts_basic
@@ -613,7 +533,7 @@ index efc7a76..aa435e3 100644
prepare: prepare0
# Generate some files
-@@ -1091,6 +1177,8 @@ all: modules
+@@ -1096,6 +1105,8 @@ all: modules
# using awk while concatenating to the final file.
PHONY += modules
@@ -622,7 +542,7 @@ index efc7a76..aa435e3 100644
modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin
$(Q)$(AWK) '!x[$$0]++' $(vmlinux-dirs:%=$(objtree)/%/modules.order) > $(objtree)/modules.order
@$(kecho) ' Building modules, stage 2.';
-@@ -1106,7 +1194,7 @@ modules.builtin: $(vmlinux-dirs:%=%/modules.builtin)
+@@ -1111,7 +1122,7 @@ modules.builtin: $(vmlinux-dirs:%=%/modules.builtin)
# Target to prepare building external modules
PHONY += modules_prepare
@@ -631,7 +551,7 @@ index efc7a76..aa435e3 100644
# Target to install modules
PHONY += modules_install
-@@ -1172,7 +1260,10 @@ MRPROPER_FILES += .config .config.old .version .old_version \
+@@ -1177,7 +1188,11 @@ MRPROPER_FILES += .config .config.old .version .old_version \
Module.symvers tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS \
signing_key.pem signing_key.priv signing_key.x509 \
x509.genkey extra_certificates signing_key.x509.keyid \
@@ -639,11 +559,12 @@ index efc7a76..aa435e3 100644
+ signing_key.x509.signer vmlinux-gdb.py \
+ tools/gcc/size_overflow_plugin/size_overflow_hash_aux.h \
+ tools/gcc/size_overflow_plugin/size_overflow_hash.h \
++ tools/gcc/size_overflow_plugin/disable_size_overflow_hash.h \
+ tools/gcc/randomize_layout_seed.h
# clean - Delete most, but leave enough to build external modules
#
-@@ -1211,7 +1302,7 @@ distclean: mrproper
+@@ -1216,7 +1231,7 @@ distclean: mrproper
@find $(srctree) $(RCS_FIND_IGNORE) \
\( -name '*.orig' -o -name '*.rej' -o -name '*~' \
-o -name '*.bak' -o -name '#*#' -o -name '.*.orig' \
@@ -652,7 +573,7 @@ index efc7a76..aa435e3 100644
-type f -print | xargs rm -f
-@@ -1377,6 +1468,8 @@ PHONY += $(module-dirs) modules
+@@ -1383,6 +1398,8 @@ PHONY += $(module-dirs) modules
$(module-dirs): crmodverdir $(objtree)/Module.symvers
$(Q)$(MAKE) $(build)=$(patsubst _module_%,%,$@)
@@ -661,7 +582,7 @@ index efc7a76..aa435e3 100644
modules: $(module-dirs)
@$(kecho) ' Building modules, stage 2.';
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
-@@ -1518,17 +1611,21 @@ else
+@@ -1524,17 +1541,21 @@ else
target-dir = $(if $(KBUILD_EXTMOD),$(dir $<),$(dir $@))
endif
@@ -687,7 +608,7 @@ index efc7a76..aa435e3 100644
$(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
%.symtypes: %.c prepare scripts FORCE
$(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
-@@ -1540,11 +1637,15 @@ endif
+@@ -1546,11 +1567,15 @@ endif
$(build)=$(build-dir)
# Make sure the latest headers are built for Documentation
Documentation/: headers_install
@@ -706,7 +627,7 @@ index efc7a76..aa435e3 100644
$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) \
$(build)=$(build-dir) $(@:.ko=.o)
diff --git a/arch/alpha/include/asm/atomic.h b/arch/alpha/include/asm/atomic.h
-index e8c9560..b585f83 100644
+index 572b228..e03acdd 100644
--- a/arch/alpha/include/asm/atomic.h
+++ b/arch/alpha/include/asm/atomic.h
@@ -251,4 +251,14 @@ static inline long atomic64_dec_if_positive(atomic64_t *v)
@@ -1036,10 +957,10 @@ index 4a905bd..0a4da53 100644
/* Allow reads even for write-only mappings */
if (!(vma->vm_flags & (VM_READ | VM_WRITE)))
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
-index 78c0621..94cd626 100644
+index 6312f60..bd07545 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
-@@ -487,6 +487,7 @@ config ARC_DBG_TLB_MISS_COUNT
+@@ -528,6 +528,7 @@ config ARC_DBG_TLB_MISS_COUNT
bool "Profile TLB Misses"
default n
select DEBUG_FS
@@ -1048,10 +969,10 @@ index 78c0621..94cd626 100644
Counts number of I and D TLB Misses and exports them via Debugfs
The counters can be cleared via Debugfs as well
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
-index 639411f..d4b3233 100644
+index 34e1569..b48ad87 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -1708,6 +1708,7 @@ config HIGHPTE
+@@ -1690,6 +1690,7 @@ config HIGHPTE
config CPU_SW_DOMAIN_PAN
bool "Enable use of CPU domains to implement privileged no-access"
depends on MMU && !ARM_LPAE
@@ -1059,7 +980,7 @@ index 639411f..d4b3233 100644
default y
help
Increase kernel security by ensuring that normal kernel accesses
-@@ -1785,7 +1786,7 @@ config ALIGNMENT_TRAP
+@@ -1766,7 +1767,7 @@ config ALIGNMENT_TRAP
config UACCESS_WITH_MEMCPY
bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user()"
@@ -1068,7 +989,7 @@ index 639411f..d4b3233 100644
default y if CPU_FEROCEON
help
Implement faster copy_to_user and clear_user methods for CPU
-@@ -2022,6 +2023,7 @@ config KEXEC
+@@ -2001,6 +2002,7 @@ config KEXEC
depends on (!SMP || PM_SLEEP_SMP)
depends on !CPU_V7M
select KEXEC_CORE
@@ -1077,7 +998,7 @@ index 639411f..d4b3233 100644
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
-index 0cfd7f947..63ed4c0 100644
+index 259c0ca..48eaaa1 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -7,6 +7,7 @@ config ARM_PTDUMP
@@ -1089,7 +1010,7 @@ index 0cfd7f947..63ed4c0 100644
Say Y here if you want to show the kernel pagetable layout in a
debugfs file. This information is only useful for kernel developers
diff --git a/arch/arm/include/asm/atomic.h b/arch/arm/include/asm/atomic.h
-index fe3ef39..60e6ae2 100644
+index 9e10c45..24a14ce 100644
--- a/arch/arm/include/asm/atomic.h
+++ b/arch/arm/include/asm/atomic.h
@@ -18,17 +18,41 @@
@@ -1121,15 +1042,15 @@ index fe3ef39..60e6ae2 100644
* strex/ldrex monitor on some implementations. The reason we can use it for
* atomic_set() is the clrex or dummy strex done on every exception return.
*/
- #define atomic_read(v) ACCESS_ONCE((v)->counter)
+ #define atomic_read(v) READ_ONCE((v)->counter)
+static inline int atomic_read_unchecked(const atomic_unchecked_t *v)
+{
-+ return ACCESS_ONCE(v->counter);
++ return READ_ONCE(v->counter);
+}
- #define atomic_set(v,i) (((v)->counter) = (i))
+ #define atomic_set(v,i) WRITE_ONCE(((v)->counter), (i))
+static inline void atomic_set_unchecked(atomic_unchecked_t *v, int i)
+{
-+ v->counter = i;
++ WRITE_ONCE(v->counter, i);
+}
#if __LINUX_ARM_ARCH__ >= 6
@@ -1354,12 +1275,12 @@ index fe3ef39..60e6ae2 100644
+ return atomic_add_return_unchecked(1, v) == 0;
+}
#define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0)
- #define atomic_inc_return(v) (atomic_add_return(1, v))
-+static inline int atomic_inc_return_unchecked(atomic_unchecked_t *v)
+ #define atomic_inc_return_relaxed(v) (atomic_add_return_relaxed(1, v))
++static inline int atomic_inc_return_unchecked_relaxed(atomic_unchecked_t *v)
+{
-+ return atomic_add_return_unchecked(1, v);
++ return atomic_add_return_unchecked_relaxed(1, v);
+}
- #define atomic_dec_return(v) (atomic_sub_return(1, v))
+ #define atomic_dec_return_relaxed(v) (atomic_sub_return_relaxed(1, v))
#define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0)
@@ -221,6 +342,14 @@ typedef struct {
@@ -1656,13 +1577,13 @@ index fe3ef39..60e6ae2 100644
#define atomic64_add_negative(a, v) (atomic64_add_return((a), (v)) < 0)
#define atomic64_inc(v) atomic64_add(1LL, (v))
+#define atomic64_inc_unchecked(v) atomic64_add_unchecked(1LL, (v))
- #define atomic64_inc_return(v) atomic64_add_return(1LL, (v))
-+#define atomic64_inc_return_unchecked(v) atomic64_add_return_unchecked(1LL, (v))
+ #define atomic64_inc_return_relaxed(v) atomic64_add_return_relaxed(1LL, (v))
++#define atomic64_inc_return_unchecked_relaxed(v) atomic64_add_return_unchecked_relaxed(1LL, (v))
#define atomic64_inc_and_test(v) (atomic64_inc_return(v) == 0)
#define atomic64_sub_and_test(a, v) (atomic64_sub_return((a), (v)) == 0)
#define atomic64_dec(v) atomic64_sub(1LL, (v))
+#define atomic64_dec_unchecked(v) atomic64_sub_unchecked(1LL, (v))
- #define atomic64_dec_return(v) atomic64_sub_return(1LL, (v))
+ #define atomic64_dec_return_relaxed(v) atomic64_sub_return_relaxed(1LL, (v))
#define atomic64_dec_and_test(v) (atomic64_dec_return((v)) == 0)
#define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1LL, 0LL)
diff --git a/arch/arm/include/asm/cache.h b/arch/arm/include/asm/cache.h
@@ -1727,10 +1648,10 @@ index 5233151..87a71fa 100644
/*
* Fold a partial checksum without adding pseudo headers
diff --git a/arch/arm/include/asm/cmpxchg.h b/arch/arm/include/asm/cmpxchg.h
-index 916a274..f988f55 100644
+index 97882f9..0cc6ef1 100644
--- a/arch/arm/include/asm/cmpxchg.h
+++ b/arch/arm/include/asm/cmpxchg.h
-@@ -105,6 +105,10 @@ static inline unsigned long __xchg(unsigned long x, volatile void *ptr, int size
+@@ -117,6 +117,10 @@ static inline unsigned long __xchg(unsigned long x, volatile void *ptr, int size
(__typeof__(*(ptr)))__xchg((unsigned long)(x), (ptr), \
sizeof(*(ptr))); \
})
@@ -2092,7 +2013,7 @@ index a745a2a..481350a 100644
#define L_PTE_DIRTY_HIGH (1 << (55 - 32))
diff --git a/arch/arm/include/asm/pgtable.h b/arch/arm/include/asm/pgtable.h
-index f403541..b10df68 100644
+index 348caab..306b62d 100644
--- a/arch/arm/include/asm/pgtable.h
+++ b/arch/arm/include/asm/pgtable.h
@@ -33,6 +33,9 @@
@@ -2185,7 +2106,7 @@ index f403541..b10df68 100644
return pte;
}
diff --git a/arch/arm/include/asm/smp.h b/arch/arm/include/asm/smp.h
-index ef35665..d69146d 100644
+index 3d6dc8b..1262ad3 100644
--- a/arch/arm/include/asm/smp.h
+++ b/arch/arm/include/asm/smp.h
@@ -108,7 +108,7 @@ struct smp_operations {
@@ -2258,7 +2179,7 @@ index 5f833f7..76e6644 100644
}
diff --git a/arch/arm/include/asm/uaccess.h b/arch/arm/include/asm/uaccess.h
-index 8cc85a4..28c2880 100644
+index 35c9db8..400e490 100644
--- a/arch/arm/include/asm/uaccess.h
+++ b/arch/arm/include/asm/uaccess.h
@@ -18,6 +18,7 @@
@@ -2383,7 +2304,7 @@ index 8cc85a4..28c2880 100644
#define access_ok(type, addr, size) (__range_ok(addr, size) == 0)
#define user_addr_max() \
-@@ -490,35 +522,41 @@ do { \
+@@ -490,39 +522,46 @@ do { \
#ifdef CONFIG_MMU
@@ -2415,6 +2336,7 @@ index 8cc85a4..28c2880 100644
static inline unsigned long __must_check
__copy_to_user(void __user *to, const void *from, unsigned long n)
{
+ #ifndef CONFIG_UACCESS_WITH_MEMCPY
- unsigned int __ua_flags = uaccess_save_and_enable();
+ unsigned int __ua_flags;
+
@@ -2423,6 +2345,10 @@ index 8cc85a4..28c2880 100644
n = arm_copy_to_user(to, from, n);
uaccess_restore(__ua_flags);
return n;
+ #else
++ check_object_size(from, n, true);
+ return arm_copy_to_user(to, from, n);
+ #endif
}
-extern unsigned long __must_check
@@ -2433,7 +2359,7 @@ index 8cc85a4..28c2880 100644
__clear_user_std(void __user *addr, unsigned long n);
static inline unsigned long __must_check
-@@ -538,6 +576,9 @@ __clear_user(void __user *addr, unsigned long n)
+@@ -542,6 +581,9 @@ __clear_user(void __user *addr, unsigned long n)
static inline unsigned long __must_check copy_from_user(void *to, const void __user *from, unsigned long n)
{
@@ -2443,7 +2369,7 @@ index 8cc85a4..28c2880 100644
if (access_ok(VERIFY_READ, from, n))
n = __copy_from_user(to, from, n);
else /* security hole - plug it */
-@@ -547,6 +588,9 @@ static inline unsigned long __must_check copy_from_user(void *to, const void __u
+@@ -551,6 +593,9 @@ static inline unsigned long __must_check copy_from_user(void *to, const void __u
static inline unsigned long __must_check copy_to_user(void __user *to, const void *from, unsigned long n)
{
@@ -2493,7 +2419,7 @@ index 318da33..373689f 100644
/**
* arm_cpuidle_simple_enter() - a wrapper to cpu_do_idle()
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S
-index 3e1c26e..97a5f9e 100644
+index 3ce377f..e4cad12 100644
--- a/arch/arm/kernel/entry-armv.S
+++ b/arch/arm/kernel/entry-armv.S
@@ -50,6 +50,87 @@
@@ -2633,7 +2559,7 @@ index 3e1c26e..97a5f9e 100644
sub sp, sp, #S_FRAME_SIZE
ARM( stmib sp, {r1 - r12} )
THUMB( stmia sp, {r0 - r12} )
-@@ -490,7 +586,9 @@ __und_usr:
+@@ -489,7 +585,9 @@ __und_usr:
tst r3, #PSR_T_BIT @ Thumb mode?
bne __und_usr_thumb
sub r4, r2, #4 @ ARM instr at LR - 4
@@ -2643,7 +2569,7 @@ index 3e1c26e..97a5f9e 100644
ARM_BE8(rev r0, r0) @ little endian instruction
uaccess_disable ip
-@@ -526,11 +624,15 @@ __und_usr_thumb:
+@@ -525,11 +623,15 @@ __und_usr_thumb:
*/
.arch armv6t2
#endif
@@ -2659,7 +2585,7 @@ index 3e1c26e..97a5f9e 100644
ARM_BE8(rev16 r0, r0) @ little endian instruction
uaccess_disable ip
add r2, r2, #2 @ r2 is PC + 2, make it PC + 4
-@@ -561,7 +663,8 @@ ENDPROC(__und_usr)
+@@ -560,7 +662,8 @@ ENDPROC(__und_usr)
*/
.pushsection .text.fixup, "ax"
.align 2
@@ -2669,7 +2595,7 @@ index 3e1c26e..97a5f9e 100644
ret r9
.popsection
.pushsection __ex_table,"a"
-@@ -783,7 +886,7 @@ ENTRY(__switch_to)
+@@ -782,7 +885,7 @@ ENTRY(__switch_to)
THUMB( str lr, [ip], #4 )
ldr r4, [r2, #TI_TP_VALUE]
ldr r5, [r2, #TI_TP_VALUE + 4]
@@ -2678,7 +2604,7 @@ index 3e1c26e..97a5f9e 100644
mrc p15, 0, r6, c3, c0, 0 @ Get domain register
str r6, [r1, #TI_CPU_DOMAIN] @ Save old domain register
ldr r6, [r2, #TI_CPU_DOMAIN]
-@@ -794,7 +897,7 @@ ENTRY(__switch_to)
+@@ -793,7 +896,7 @@ ENTRY(__switch_to)
ldr r8, =__stack_chk_guard
ldr r7, [r7, #TSK_STACK_CANARY]
#endif
@@ -2964,10 +2890,10 @@ index 69bda1a..755113a 100644
if (waddr != addr) {
flush_kernel_vmap_range(waddr, twopage ? size / 2 : size);
diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
-index 7a7c4ce..f0de3eb 100644
+index 4adfb46..1cf6cb9 100644
--- a/arch/arm/kernel/process.c
+++ b/arch/arm/kernel/process.c
-@@ -98,8 +98,8 @@ void __show_regs(struct pt_regs *regs)
+@@ -114,8 +114,8 @@ void __show_regs(struct pt_regs *regs)
show_regs_print_info(KERN_DEFAULT);
@@ -2978,7 +2904,7 @@ index 7a7c4ce..f0de3eb 100644
printk("pc : [<%08lx>] lr : [<%08lx>] psr: %08lx\n"
"sp : %08lx ip : %08lx fp : %08lx\n",
regs->ARM_pc, regs->ARM_lr, regs->ARM_cpsr,
-@@ -226,7 +226,7 @@ copy_thread(unsigned long clone_flags, unsigned long stack_start,
+@@ -229,7 +229,7 @@ copy_thread(unsigned long clone_flags, unsigned long stack_start,
memset(&thread->cpu_context, 0, sizeof(struct cpu_context_save));
@@ -2987,7 +2913,7 @@ index 7a7c4ce..f0de3eb 100644
/*
* Copy the initial value of the domain access control register
* from the current thread: thread->addr_limit will have been
-@@ -309,12 +309,6 @@ unsigned long get_wchan(struct task_struct *p)
+@@ -312,12 +312,6 @@ unsigned long get_wchan(struct task_struct *p)
return 0;
}
@@ -3000,7 +2926,7 @@ index 7a7c4ce..f0de3eb 100644
#ifdef CONFIG_MMU
#ifdef CONFIG_KUSER_HELPERS
/*
-@@ -330,7 +324,7 @@ static struct vm_area_struct gate_vma = {
+@@ -333,7 +327,7 @@ static struct vm_area_struct gate_vma = {
static int __init gate_vma_init(void)
{
@@ -3009,7 +2935,7 @@ index 7a7c4ce..f0de3eb 100644
return 0;
}
arch_initcall(gate_vma_init);
-@@ -359,91 +353,13 @@ const char *arch_vma_name(struct vm_area_struct *vma)
+@@ -362,91 +356,13 @@ const char *arch_vma_name(struct vm_area_struct *vma)
return is_gate_vma(vma) ? "[vectors]" : NULL;
}
@@ -3246,7 +3172,7 @@ index 7b8f214..ece8e28 100644
- return page;
-}
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
-index 48185a7..426ae3a 100644
+index b263613..93419ed 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -78,7 +78,7 @@ enum ipi_msg_type {
@@ -3256,105 +3182,8 @@ index 48185a7..426ae3a 100644
-static struct smp_operations smp_ops;
+static struct smp_operations smp_ops __read_only;
- void __init smp_set_ops(struct smp_operations *ops)
+ void __init smp_set_ops(const struct smp_operations *ops)
{
-diff --git a/arch/arm/kernel/sys_oabi-compat.c b/arch/arm/kernel/sys_oabi-compat.c
-index b83f3b7..087acb5 100644
---- a/arch/arm/kernel/sys_oabi-compat.c
-+++ b/arch/arm/kernel/sys_oabi-compat.c
-@@ -193,15 +193,44 @@ struct oabi_flock64 {
- pid_t l_pid;
- } __attribute__ ((packed,aligned(4)));
-
--asmlinkage long sys_oabi_fcntl64(unsigned int fd, unsigned int cmd,
-+static long do_locks(unsigned int fd, unsigned int cmd,
- unsigned long arg)
- {
-- struct oabi_flock64 user;
- struct flock64 kernel;
-- mm_segment_t fs = USER_DS; /* initialized to kill a warning */
-- unsigned long local_arg = arg;
-- int ret;
-+ struct oabi_flock64 user;
-+ mm_segment_t fs;
-+ long ret;
-
-+ if (copy_from_user(&user, (struct oabi_flock64 __user *)arg,
-+ sizeof(user)))
-+ return -EFAULT;
-+ kernel.l_type = user.l_type;
-+ kernel.l_whence = user.l_whence;
-+ kernel.l_start = user.l_start;
-+ kernel.l_len = user.l_len;
-+ kernel.l_pid = user.l_pid;
-+
-+ fs = get_fs();
-+ set_fs(KERNEL_DS);
-+ ret = sys_fcntl64(fd, cmd, (unsigned long)&kernel);
-+ set_fs(fs);
-+
-+ if (!ret && (cmd == F_GETLK64 || cmd == F_OFD_GETLK)) {
-+ user.l_type = kernel.l_type;
-+ user.l_whence = kernel.l_whence;
-+ user.l_start = kernel.l_start;
-+ user.l_len = kernel.l_len;
-+ user.l_pid = kernel.l_pid;
-+ if (copy_to_user((struct oabi_flock64 __user *)arg,
-+ &user, sizeof(user)))
-+ ret = -EFAULT;
-+ }
-+ return ret;
-+}
-+
-+asmlinkage long sys_oabi_fcntl64(unsigned int fd, unsigned int cmd,
-+ unsigned long arg)
-+{
- switch (cmd) {
- case F_OFD_GETLK:
- case F_OFD_SETLK:
-@@ -209,39 +238,11 @@ asmlinkage long sys_oabi_fcntl64(unsigned int fd, unsigned int cmd,
- case F_GETLK64:
- case F_SETLK64:
- case F_SETLKW64:
-- if (copy_from_user(&user, (struct oabi_flock64 __user *)arg,
-- sizeof(user)))
-- return -EFAULT;
-- kernel.l_type = user.l_type;
-- kernel.l_whence = user.l_whence;
-- kernel.l_start = user.l_start;
-- kernel.l_len = user.l_len;
-- kernel.l_pid = user.l_pid;
-- local_arg = (unsigned long)&kernel;
-- fs = get_fs();
-- set_fs(KERNEL_DS);
-- }
--
-- ret = sys_fcntl64(fd, cmd, local_arg);
-+ return do_locks(fd, cmd, arg);
-
-- switch (cmd) {
-- case F_GETLK64:
-- if (!ret) {
-- user.l_type = kernel.l_type;
-- user.l_whence = kernel.l_whence;
-- user.l_start = kernel.l_start;
-- user.l_len = kernel.l_len;
-- user.l_pid = kernel.l_pid;
-- if (copy_to_user((struct oabi_flock64 __user *)arg,
-- &user, sizeof(user)))
-- ret = -EFAULT;
-- }
-- case F_SETLK64:
-- case F_SETLKW64:
-- set_fs(fs);
-+ default:
-+ return sys_fcntl64(fd, cmd, arg);
- }
--
-- return ret;
- }
-
- struct oabi_epoll_event {
diff --git a/arch/arm/kernel/tcm.c b/arch/arm/kernel/tcm.c
index b10e136..cb5edf9 100644
--- a/arch/arm/kernel/tcm.c
@@ -3379,7 +3208,7 @@ index b10e136..cb5edf9 100644
start, end);
itcm_present = true;
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c
-index 969f9d9..8a96d0d 100644
+index bc69838..e5dfdd4 100644
--- a/arch/arm/kernel/traps.c
+++ b/arch/arm/kernel/traps.c
@@ -65,7 +65,7 @@ static void dump_mem(const char *, const char *, unsigned long, unsigned long);
@@ -3442,7 +3271,7 @@ index 8b60fde..8d986dd 100644
# ifdef CONFIG_ARM_KERNMEM_PERMS
. = ALIGN(1<<SECTION_SHIFT);
diff --git a/arch/arm/kvm/arm.c b/arch/arm/kvm/arm.c
-index 78b2869..9255093 100644
+index e06fd29..0d3f8ab 100644
--- a/arch/arm/kvm/arm.c
+++ b/arch/arm/kvm/arm.c
@@ -57,7 +57,7 @@ static unsigned long hyp_default_vectors;
@@ -3454,7 +3283,7 @@ index 78b2869..9255093 100644
static u8 kvm_next_vmid;
static DEFINE_SPINLOCK(kvm_vmid_lock);
-@@ -369,7 +369,7 @@ void force_vm_exit(const cpumask_t *mask)
+@@ -380,7 +380,7 @@ void force_vm_exit(const cpumask_t *mask)
*/
static bool need_new_vmid_gen(struct kvm *kvm)
{
@@ -3463,7 +3292,7 @@ index 78b2869..9255093 100644
}
/**
-@@ -402,7 +402,7 @@ static void update_vttbr(struct kvm *kvm)
+@@ -413,7 +413,7 @@ static void update_vttbr(struct kvm *kvm)
/* First user of a new VMID generation? */
if (unlikely(kvm_next_vmid == 0)) {
@@ -3472,7 +3301,7 @@ index 78b2869..9255093 100644
kvm_next_vmid = 1;
/*
-@@ -419,7 +419,7 @@ static void update_vttbr(struct kvm *kvm)
+@@ -430,7 +430,7 @@ static void update_vttbr(struct kvm *kvm)
kvm_call_hyp(__kvm_flush_vm_context);
}
@@ -3522,7 +3351,7 @@ index 8044591..c9b2609 100644
.const_udelay = __loop_const_udelay,
.udelay = __loop_udelay,
diff --git a/arch/arm/lib/uaccess_with_memcpy.c b/arch/arm/lib/uaccess_with_memcpy.c
-index d72b909..0521929 100644
+index 588bbc2..4f57e0b 100644
--- a/arch/arm/lib/uaccess_with_memcpy.c
+++ b/arch/arm/lib/uaccess_with_memcpy.c
@@ -85,7 +85,7 @@ pin_page_for_write(const void __user *_addr, pte_t **ptep, spinlock_t **ptlp)
@@ -3533,21 +3362,21 @@ index d72b909..0521929 100644
+static unsigned long noinline __size_overflow(3)
__copy_to_user_memcpy(void __user *to, const void *from, unsigned long n)
{
- int atomic;
-@@ -150,7 +150,7 @@ arm_copy_to_user(void __user *to, const void *from, unsigned long n)
- return __copy_to_user_memcpy(to, from, n);
+ unsigned long ua_flags;
+@@ -158,7 +158,7 @@ arm_copy_to_user(void __user *to, const void *from, unsigned long n)
+ return n;
}
-static unsigned long noinline
+static unsigned long noinline __size_overflow(2)
__clear_user_memset(void __user *addr, unsigned long n)
{
- if (unlikely(segment_eq(get_fs(), KERNEL_DS))) {
+ unsigned long ua_flags;
diff --git a/arch/arm/mach-exynos/suspend.c b/arch/arm/mach-exynos/suspend.c
-index e00eb39..0f95491 100644
+index c169cc3..f290a77 100644
--- a/arch/arm/mach-exynos/suspend.c
+++ b/arch/arm/mach-exynos/suspend.c
-@@ -730,8 +730,10 @@ void __init exynos_pm_init(void)
+@@ -734,8 +734,10 @@ void __init exynos_pm_init(void)
tmp |= pm_data->wake_disable_mask;
pmu_raw_writel(tmp, S5P_WAKEUP_MASK);
@@ -3561,10 +3390,10 @@ index e00eb39..0f95491 100644
register_syscore_ops(&exynos_pm_syscore_ops);
suspend_set_ops(&exynos_suspend_ops);
diff --git a/arch/arm/mach-mvebu/coherency.c b/arch/arm/mach-mvebu/coherency.c
-index 44eedf3..13a0528 100644
+index 55348ee..bfcd336 100644
--- a/arch/arm/mach-mvebu/coherency.c
+++ b/arch/arm/mach-mvebu/coherency.c
-@@ -105,7 +105,7 @@ static void __init armada_370_coherency_init(struct device_node *np)
+@@ -163,7 +163,7 @@ exit:
/*
* This ioremap hook is used on Armada 375/38x to ensure that PCIe
@@ -3573,7 +3402,7 @@ index 44eedf3..13a0528 100644
* is needed as a workaround for a deadlock issue between the PCIe
* interface and the cache controller.
*/
-@@ -118,7 +118,7 @@ armada_pcie_wa_ioremap_caller(phys_addr_t phys_addr, size_t size,
+@@ -176,7 +176,7 @@ armada_pcie_wa_ioremap_caller(phys_addr_t phys_addr, size_t size,
mvebu_mbus_get_pcie_mem_aperture(&pcie_mem);
if (pcie_mem.start <= phys_addr && (phys_addr + size) <= pcie_mem.end)
@@ -3618,7 +3447,7 @@ index 65024af..70bf184 100644
.resume = dummy_cpu_resume,
.scu_prepare = dummy_scu_prepare,
diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-smp.c
-index 5305ec7..6d74045 100644
+index 79e1f87..6dd91e3 100644
--- a/arch/arm/mach-omap2/omap-smp.c
+++ b/arch/arm/mach-omap2/omap-smp.c
@@ -19,6 +19,7 @@
@@ -3629,19 +3458,6 @@ index 5305ec7..6d74045 100644
#include <linux/irqchip/arm-gic.h>
#include <asm/smp_scu.h>
-diff --git a/arch/arm/mach-omap2/omap-wakeupgen.c b/arch/arm/mach-omap2/omap-wakeupgen.c
-index e1d2e99..d9b3177 100644
---- a/arch/arm/mach-omap2/omap-wakeupgen.c
-+++ b/arch/arm/mach-omap2/omap-wakeupgen.c
-@@ -330,7 +330,7 @@ static int irq_cpu_hotplug_notify(struct notifier_block *self,
- return NOTIFY_OK;
- }
-
--static struct notifier_block __refdata irq_hotplug_notifier = {
-+static struct notifier_block irq_hotplug_notifier = {
- .notifier_call = irq_cpu_hotplug_notify,
- };
-
diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c
index 72ebc4c..18c4406 100644
--- a/arch/arm/mach-omap2/omap_device.c
@@ -3684,7 +3500,7 @@ index 78c02b3..c94109a 100644
struct omap_device *omap_device_alloc(struct platform_device *pdev,
struct omap_hwmod **ohs, int oh_cnt);
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
-index cc8a987..dab541b 100644
+index 48495ad8..9502fdd 100644
--- a/arch/arm/mach-omap2/omap_hwmod.c
+++ b/arch/arm/mach-omap2/omap_hwmod.c
@@ -200,10 +200,10 @@ struct omap_hwmod_soc_ops {
@@ -3748,7 +3564,7 @@ index ff0a68c..b312aa0 100644
sizeof(struct omap_wd_timer_platform_data));
WARN(IS_ERR(pdev), "Can't build omap_device for %s:%s.\n",
diff --git a/arch/arm/mach-shmobile/platsmp-apmu.c b/arch/arm/mach-shmobile/platsmp-apmu.c
-index 4e54512..ed7c349 100644
+index 911884f..2f3aa90 100644
--- a/arch/arm/mach-shmobile/platsmp-apmu.c
+++ b/arch/arm/mach-shmobile/platsmp-apmu.c
@@ -22,6 +22,7 @@
@@ -3819,10 +3635,10 @@ index f66816c..228b951 100644
#include "common.h"
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
-index df7537f..b931a5f 100644
+index 4121886..d24c0a1 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
-@@ -446,6 +446,7 @@ config CPU_32v5
+@@ -442,6 +442,7 @@ config CPU_32v5
config CPU_32v6
bool
@@ -3830,7 +3646,7 @@ index df7537f..b931a5f 100644
select TLS_REG_EMUL if !CPU_32v6K && !MMU
config CPU_32v6K
-@@ -600,6 +601,7 @@ config CPU_CP15_MPU
+@@ -596,6 +597,7 @@ config CPU_CP15_MPU
config CPU_USE_DOMAINS
bool
@@ -3838,7 +3654,7 @@ index df7537f..b931a5f 100644
help
This option enables or disables the use of domain switching
via the set_fs() function.
-@@ -818,7 +820,7 @@ config NEED_KUSER_HELPERS
+@@ -806,7 +808,7 @@ config NEED_KUSER_HELPERS
config KUSER_HELPERS
bool "Enable kuser helpers in vector page" if !NEED_KUSER_HELPERS
@@ -3847,7 +3663,7 @@ index df7537f..b931a5f 100644
default y
help
Warning: disabling this option may break user programs.
-@@ -832,7 +834,7 @@ config KUSER_HELPERS
+@@ -820,7 +822,7 @@ config KUSER_HELPERS
See Documentation/arm/kernel_user_helpers.txt for details.
However, the fixed address nature of these helpers can be used
@@ -3856,6 +3672,15 @@ index df7537f..b931a5f 100644
exploits.
If all of the binaries and libraries which run on your platform
+@@ -835,7 +837,7 @@ config KUSER_HELPERS
+
+ config VDSO
+ bool "Enable VDSO for acceleration of some system calls"
+- depends on AEABI && MMU && CPU_V7
++ depends on AEABI && MMU && CPU_V7 && !PAX_KERNEXEC && !PAX_MEMORY_UDEREF
+ default y if ARM_ARCH_TIMER
+ select GENERIC_TIME_VSYSCALL
+ help
diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
index 493692d..42a4504 100644
--- a/arch/arm/mm/cache-l2x0.c
@@ -3870,7 +3695,7 @@ index 493692d..42a4504 100644
#define CACHE_LINE_SIZE 32
diff --git a/arch/arm/mm/context.c b/arch/arm/mm/context.c
-index 845769e..4278fd7 100644
+index c8c8b9e..c55cc79 100644
--- a/arch/arm/mm/context.c
+++ b/arch/arm/mm/context.c
@@ -43,7 +43,7 @@
@@ -3882,7 +3707,7 @@ index 845769e..4278fd7 100644
static DECLARE_BITMAP(asid_map, NUM_USER_ASIDS);
static DEFINE_PER_CPU(atomic64_t, active_asids);
-@@ -178,7 +178,7 @@ static u64 new_context(struct mm_struct *mm, unsigned int cpu)
+@@ -193,7 +193,7 @@ static u64 new_context(struct mm_struct *mm, unsigned int cpu)
{
static u32 cur_idx = 1;
u64 asid = atomic64_read(&mm->context.id);
@@ -3890,8 +3715,8 @@ index 845769e..4278fd7 100644
+ u64 generation = atomic64_read_unchecked(&asid_generation);
if (asid != 0) {
- /*
-@@ -208,7 +208,7 @@ static u64 new_context(struct mm_struct *mm, unsigned int cpu)
+ u64 newasid = generation | (asid & ~ASID_MASK);
+@@ -225,7 +225,7 @@ static u64 new_context(struct mm_struct *mm, unsigned int cpu)
*/
asid = find_next_zero_bit(asid_map, NUM_USER_ASIDS, cur_idx);
if (asid == NUM_USER_ASIDS) {
@@ -3900,7 +3725,7 @@ index 845769e..4278fd7 100644
&asid_generation);
flush_context(cpu);
asid = find_next_zero_bit(asid_map, NUM_USER_ASIDS, 1);
-@@ -240,14 +240,14 @@ void check_and_switch_context(struct mm_struct *mm, struct task_struct *tsk)
+@@ -254,14 +254,14 @@ void check_and_switch_context(struct mm_struct *mm, struct task_struct *tsk)
cpu_set_reserved_ttbr0();
asid = atomic64_read(&mm->context.id);
@@ -3918,7 +3743,7 @@ index 845769e..4278fd7 100644
atomic64_set(&mm->context.id, asid);
}
diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c
-index 0d629b8..f13ad33 100644
+index daafcf1..400ddf25 100644
--- a/arch/arm/mm/fault.c
+++ b/arch/arm/mm/fault.c
@@ -25,6 +25,7 @@
@@ -4138,7 +3963,7 @@ index 0d629b8..f13ad33 100644
inf->name, ifsr, addr);
diff --git a/arch/arm/mm/fault.h b/arch/arm/mm/fault.h
-index cf08bdf..772656c 100644
+index 05ec5e0..0b70277 100644
--- a/arch/arm/mm/fault.h
+++ b/arch/arm/mm/fault.h
@@ -3,6 +3,7 @@
@@ -4166,12 +3991,12 @@ index cf08bdf..772656c 100644
+
void do_bad_area(unsigned long addr, unsigned int fsr, struct pt_regs *regs);
unsigned long search_exception_table(unsigned long addr);
-
+ void early_abt_enable(void);
diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c
-index 8a63b4c..6b04370 100644
+index 7f8cd1b..6ac64cd 100644
--- a/arch/arm/mm/init.c
+++ b/arch/arm/mm/init.c
-@@ -710,7 +710,46 @@ void free_tcmmem(void)
+@@ -742,7 +742,46 @@ void free_tcmmem(void)
{
#ifdef CONFIG_HAVE_TCM
extern char __tcm_start, __tcm_end;
@@ -4344,10 +4169,10 @@ index 407dc78..047ce9d 100644
}
}
diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c
-index 7cd1514..0307305 100644
+index 4867f5d..dbfed1e 100644
--- a/arch/arm/mm/mmu.c
+++ b/arch/arm/mm/mmu.c
-@@ -242,7 +242,15 @@ __setup("noalign", noalign_setup);
+@@ -243,7 +243,15 @@ __setup("noalign", noalign_setup);
#define PROT_PTE_S2_DEVICE PROT_PTE_DEVICE
#define PROT_SECT_DEVICE PMD_TYPE_SECT|PMD_SECT_AP_WRITE
@@ -4364,7 +4189,7 @@ index 7cd1514..0307305 100644
[MT_DEVICE] = { /* Strongly ordered / ARMv6 shared device */
.prot_pte = PROT_PTE_DEVICE | L_PTE_MT_DEV_SHARED |
L_PTE_SHARED,
-@@ -271,19 +279,19 @@ static struct mem_type mem_types[] = {
+@@ -272,19 +280,19 @@ static struct mem_type mem_types[] = {
.prot_sect = PROT_SECT_DEVICE,
.domain = DOMAIN_IO,
},
@@ -4389,7 +4214,7 @@ index 7cd1514..0307305 100644
.domain = DOMAIN_KERNEL,
},
#endif
-@@ -299,7 +307,7 @@ static struct mem_type mem_types[] = {
+@@ -300,7 +308,7 @@ static struct mem_type mem_types[] = {
.prot_l1 = PMD_TYPE_TABLE,
.domain = DOMAIN_VECTORS,
},
@@ -4398,7 +4223,7 @@ index 7cd1514..0307305 100644
.prot_pte = L_PTE_PRESENT | L_PTE_YOUNG | L_PTE_DIRTY,
.prot_l1 = PMD_TYPE_TABLE,
.prot_sect = PMD_TYPE_SECT | PMD_SECT_AP_WRITE,
-@@ -312,17 +320,30 @@ static struct mem_type mem_types[] = {
+@@ -313,17 +321,30 @@ static struct mem_type mem_types[] = {
.prot_sect = PMD_TYPE_SECT | PMD_SECT_AP_WRITE,
.domain = DOMAIN_KERNEL,
},
@@ -4432,7 +4257,7 @@ index 7cd1514..0307305 100644
[MT_MEMORY_RW_DTCM] = {
.prot_pte = L_PTE_PRESENT | L_PTE_YOUNG | L_PTE_DIRTY |
L_PTE_XN,
-@@ -330,9 +351,10 @@ static struct mem_type mem_types[] = {
+@@ -331,9 +352,10 @@ static struct mem_type mem_types[] = {
.prot_sect = PMD_TYPE_SECT | PMD_SECT_XN,
.domain = DOMAIN_KERNEL,
},
@@ -4445,7 +4270,7 @@ index 7cd1514..0307305 100644
.domain = DOMAIN_KERNEL,
},
[MT_MEMORY_RW_SO] = {
-@@ -585,9 +607,14 @@ static void __init build_mem_type_table(void)
+@@ -586,9 +608,14 @@ static void __init build_mem_type_table(void)
* Mark cache clean areas and XIP ROM read only
* from SVC mode and no access from userspace.
*/
@@ -4463,7 +4288,7 @@ index 7cd1514..0307305 100644
#endif
/*
-@@ -604,13 +631,17 @@ static void __init build_mem_type_table(void)
+@@ -605,13 +632,17 @@ static void __init build_mem_type_table(void)
mem_types[MT_DEVICE_WC].prot_pte |= L_PTE_SHARED;
mem_types[MT_DEVICE_CACHED].prot_sect |= PMD_SECT_S;
mem_types[MT_DEVICE_CACHED].prot_pte |= L_PTE_SHARED;
@@ -4485,7 +4310,7 @@ index 7cd1514..0307305 100644
}
}
-@@ -621,15 +652,20 @@ static void __init build_mem_type_table(void)
+@@ -622,15 +653,20 @@ static void __init build_mem_type_table(void)
if (cpu_arch >= CPU_ARCH_ARMv6) {
if (cpu_arch >= CPU_ARCH_ARMv7 && (cr & CR_TRE)) {
/* Non-cacheable Normal is XCB = 001 */
@@ -4509,7 +4334,7 @@ index 7cd1514..0307305 100644
}
#ifdef CONFIG_ARM_LPAE
-@@ -650,6 +686,8 @@ static void __init build_mem_type_table(void)
+@@ -651,6 +687,8 @@ static void __init build_mem_type_table(void)
user_pgprot |= PTE_EXT_PXN;
#endif
@@ -4518,7 +4343,7 @@ index 7cd1514..0307305 100644
for (i = 0; i < 16; i++) {
pteval_t v = pgprot_val(protection_map[i]);
protection_map[i] = __pgprot(v | user_pgprot);
-@@ -667,21 +705,24 @@ static void __init build_mem_type_table(void)
+@@ -668,21 +706,24 @@ static void __init build_mem_type_table(void)
mem_types[MT_LOW_VECTORS].prot_l1 |= ecc_mask;
mem_types[MT_HIGH_VECTORS].prot_l1 |= ecc_mask;
@@ -4549,7 +4374,7 @@ index 7cd1514..0307305 100644
break;
}
pr_info("Memory policy: %sData cache %s\n",
-@@ -895,7 +936,7 @@ static void __init create_mapping(struct map_desc *md)
+@@ -896,7 +937,7 @@ static void __init create_mapping(struct map_desc *md)
return;
}
@@ -4558,7 +4383,7 @@ index 7cd1514..0307305 100644
md->virtual >= PAGE_OFFSET && md->virtual < FIXADDR_START &&
(md->virtual < VMALLOC_START || md->virtual >= VMALLOC_END)) {
pr_warn("BUG: mapping for 0x%08llx at 0x%08lx out of vmalloc space\n",
-@@ -1265,18 +1306,15 @@ void __init arm_mm_memblock_reserve(void)
+@@ -1266,18 +1307,15 @@ void __init arm_mm_memblock_reserve(void)
* Any other function or debugging method which may touch any device _will_
* crash the kernel.
*/
@@ -4581,7 +4406,7 @@ index 7cd1514..0307305 100644
/*
* Clear page table except top pmd used by early fixmaps
-@@ -1292,7 +1330,7 @@ static void __init devicemaps_init(const struct machine_desc *mdesc)
+@@ -1293,7 +1331,7 @@ static void __init devicemaps_init(const struct machine_desc *mdesc)
map.pfn = __phys_to_pfn(CONFIG_XIP_PHYS_ADDR & SECTION_MASK);
map.virtual = MODULES_VADDR;
map.length = ((unsigned long)_etext - map.virtual + ~SECTION_MASK) & SECTION_MASK;
@@ -4590,7 +4415,7 @@ index 7cd1514..0307305 100644
create_mapping(&map);
#endif
-@@ -1303,14 +1341,14 @@ static void __init devicemaps_init(const struct machine_desc *mdesc)
+@@ -1304,14 +1342,14 @@ static void __init devicemaps_init(const struct machine_desc *mdesc)
map.pfn = __phys_to_pfn(FLUSH_BASE_PHYS);
map.virtual = FLUSH_BASE;
map.length = SZ_1M;
@@ -4607,7 +4432,7 @@ index 7cd1514..0307305 100644
create_mapping(&map);
#endif
-@@ -1319,7 +1357,7 @@ static void __init devicemaps_init(const struct machine_desc *mdesc)
+@@ -1320,7 +1358,7 @@ static void __init devicemaps_init(const struct machine_desc *mdesc)
* location (0xffff0000). If we aren't using high-vectors, also
* create a mapping at the low-vectors virtual address.
*/
@@ -4616,7 +4441,7 @@ index 7cd1514..0307305 100644
map.virtual = 0xffff0000;
map.length = PAGE_SIZE;
#ifdef CONFIG_KUSER_HELPERS
-@@ -1379,8 +1417,10 @@ static void __init kmap_init(void)
+@@ -1383,8 +1421,10 @@ static void __init kmap_init(void)
static void __init map_lowmem(void)
{
struct memblock_region *reg;
@@ -4627,7 +4452,7 @@ index 7cd1514..0307305 100644
/* Map all the lowmem memory banks. */
for_each_memblock(memory, reg) {
-@@ -1393,11 +1433,48 @@ static void __init map_lowmem(void)
+@@ -1397,11 +1437,48 @@ static void __init map_lowmem(void)
if (start >= end)
break;
@@ -4677,7 +4502,7 @@ index 7cd1514..0307305 100644
create_mapping(&map);
} else if (start >= kernel_x_end) {
-@@ -1421,7 +1498,7 @@ static void __init map_lowmem(void)
+@@ -1425,7 +1502,7 @@ static void __init map_lowmem(void)
map.pfn = __phys_to_pfn(kernel_x_start);
map.virtual = __phys_to_virt(kernel_x_start);
map.length = kernel_x_end - kernel_x_start;
@@ -4686,7 +4511,7 @@ index 7cd1514..0307305 100644
create_mapping(&map);
-@@ -1434,6 +1511,7 @@ static void __init map_lowmem(void)
+@@ -1438,6 +1515,7 @@ static void __init map_lowmem(void)
create_mapping(&map);
}
}
@@ -4695,7 +4520,7 @@ index 7cd1514..0307305 100644
}
diff --git a/arch/arm/net/bpf_jit_32.c b/arch/arm/net/bpf_jit_32.c
-index 4d25fd0..0b8f924 100644
+index 93d0b6d..2db6d99 100644
--- a/arch/arm/net/bpf_jit_32.c
+++ b/arch/arm/net/bpf_jit_32.c
@@ -20,6 +20,7 @@
@@ -4771,7 +4596,7 @@ index 4d25fd0..0b8f924 100644
return (u64)err << 32 | ntohl(ret);
}
-@@ -186,8 +171,10 @@ static void jit_fill_hole(void *area, unsigned int size)
+@@ -191,8 +176,10 @@ static void jit_fill_hole(void *area, unsigned int size)
{
u32 *ptr;
/* We are guaranteed to have aligned memory. */
@@ -4782,7 +4607,7 @@ index 4d25fd0..0b8f924 100644
}
static void build_prologue(struct jit_ctx *ctx)
-@@ -542,6 +529,9 @@ static int build_body(struct jit_ctx *ctx)
+@@ -554,6 +541,9 @@ static int build_body(struct jit_ctx *ctx)
case BPF_LD | BPF_B | BPF_ABS:
load_order = 0;
load:
@@ -4792,7 +4617,7 @@ index 4d25fd0..0b8f924 100644
emit_mov_i(r_off, k, ctx);
load_common:
ctx->seen |= SEEN_DATA | SEEN_CALL;
-@@ -556,18 +546,6 @@ load_common:
+@@ -568,18 +558,6 @@ load_common:
condt = ARM_COND_HI;
}
@@ -4811,16 +4636,6 @@ index 4d25fd0..0b8f924 100644
_emit(condt, ARM_ADD_R(r_scratch, r_off, r_skb_data),
ctx);
-@@ -730,7 +708,8 @@ load_ind:
- case BPF_ALU | BPF_RSH | BPF_K:
- if (unlikely(k > 31))
- return -1;
-- emit(ARM_LSR_I(r_A, r_A, k), ctx);
-+ if (k)
-+ emit(ARM_LSR_I(r_A, r_A, k), ctx);
- break;
- case BPF_ALU | BPF_RSH | BPF_X:
- update_on_xread(ctx);
diff --git a/arch/arm/plat-iop/setup.c b/arch/arm/plat-iop/setup.c
index 5b217f4..c23f40e 100644
--- a/arch/arm/plat-iop/setup.c
@@ -4848,10 +4663,10 @@ index a5bc92d..0bb4730 100644
+ pax_close_kernel();
}
diff --git a/arch/arm64/Kconfig.debug b/arch/arm64/Kconfig.debug
-index d6285ef..b684dac 100644
+index 04fb73b..368beca 100644
--- a/arch/arm64/Kconfig.debug
+++ b/arch/arm64/Kconfig.debug
-@@ -10,6 +10,7 @@ config ARM64_PTDUMP
+@@ -6,6 +6,7 @@ config ARM64_PTDUMP
bool "Export kernel pagetable layout to userspace via debugfs"
depends on DEBUG_KERNEL
select DEBUG_FS
@@ -4860,10 +4675,10 @@ index d6285ef..b684dac 100644
Say Y here if you want to show the kernel pagetable layout in a
debugfs file. This information is only useful for kernel developers
diff --git a/arch/arm64/include/asm/atomic.h b/arch/arm64/include/asm/atomic.h
-index 35a6778..caabbd36 100644
+index f3a3586..832c720 100644
--- a/arch/arm64/include/asm/atomic.h
+++ b/arch/arm64/include/asm/atomic.h
-@@ -91,5 +91,15 @@
+@@ -146,5 +146,15 @@
#define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0)
@@ -4905,10 +4720,10 @@ index 0a456be..7799ff5 100644
default:
BUILD_BUG();
diff --git a/arch/arm64/include/asm/pgalloc.h b/arch/arm64/include/asm/pgalloc.h
-index 7642056..bffc904 100644
+index c150539..45f5724 100644
--- a/arch/arm64/include/asm/pgalloc.h
+++ b/arch/arm64/include/asm/pgalloc.h
-@@ -46,6 +46,11 @@ static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd)
+@@ -47,6 +47,11 @@ static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd)
set_pud(pud, __pud(__pa(pmd) | PMD_TYPE_TABLE));
}
@@ -4933,10 +4748,10 @@ index b2ede967..865eed5 100644
#define user_addr_max get_fs
diff --git a/arch/arm64/mm/dma-mapping.c b/arch/arm64/mm/dma-mapping.c
-index 99224dc..148dfb7 100644
+index 7963aa4..15dd03d 100644
--- a/arch/arm64/mm/dma-mapping.c
+++ b/arch/arm64/mm/dma-mapping.c
-@@ -134,7 +134,7 @@ static void __dma_free_coherent(struct device *dev, size_t size,
+@@ -132,7 +132,7 @@ static void __dma_free_coherent(struct device *dev, size_t size,
phys_to_page(paddr),
size >> PAGE_SHIFT);
if (!freed)
@@ -5109,7 +4924,7 @@ index 7caf25d..ee65ac5 100644
#define __read_mostly __attribute__((__section__(".data..read_mostly")))
diff --git a/arch/frv/include/asm/atomic.h b/arch/frv/include/asm/atomic.h
-index 0da689d..3aad5fb 100644
+index 64f02d4..c1b0839 100644
--- a/arch/frv/include/asm/atomic.h
+++ b/arch/frv/include/asm/atomic.h
@@ -166,6 +166,16 @@ static inline void atomic64_dec(atomic64_t *v)
@@ -5230,7 +5045,7 @@ index 970d0bd..e750b9b 100644
make_nr_irqs_h: FORCE
$(Q)$(MAKE) $(build)=arch/ia64/kernel include/generated/nr-irqs.h
diff --git a/arch/ia64/include/asm/atomic.h b/arch/ia64/include/asm/atomic.h
-index be4beeb..c0ec564 100644
+index 8dfb5f6..d58bd69 100644
--- a/arch/ia64/include/asm/atomic.h
+++ b/arch/ia64/include/asm/atomic.h
@@ -209,4 +209,14 @@ atomic64_add_negative (__s64 i, atomic64_t *v)
@@ -5765,10 +5580,10 @@ index 4efe96a..60e8699 100644
#define SMP_CACHE_BYTES L1_CACHE_BYTES
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
-index e3aa5b0..2ed7912 100644
+index 71683a8..54062ef 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -2598,6 +2598,7 @@ source "kernel/Kconfig.preempt"
+@@ -2641,6 +2641,7 @@ source "kernel/Kconfig.preempt"
config KEXEC
bool "Kexec system call"
select KEXEC_CORE
@@ -5790,7 +5605,7 @@ index 2cd45f5..d0f4900 100644
static dma_addr_t octeon_unity_phys_to_dma(struct device *dev, phys_addr_t paddr)
diff --git a/arch/mips/include/asm/atomic.h b/arch/mips/include/asm/atomic.h
-index 4c42fd9..fc7a48e 100644
+index 835b402..afbd327 100644
--- a/arch/mips/include/asm/atomic.h
+++ b/arch/mips/include/asm/atomic.h
@@ -22,15 +22,39 @@
@@ -5821,15 +5636,15 @@ index 4c42fd9..fc7a48e 100644
*
* Atomically reads the value of @v.
*/
--#define atomic_read(v) ACCESS_ONCE((v)->counter)
+-#define atomic_read(v) READ_ONCE((v)->counter)
+static inline int atomic_read(const atomic_t *v)
+{
-+ return ACCESS_ONCE(v->counter);
++ return READ_ONCE(v->counter);
+}
+
+static inline int atomic_read_unchecked(const atomic_unchecked_t *v)
+{
-+ return ACCESS_ONCE(v->counter);
++ return READ_ONCE(v->counter);
+}
/*
@@ -5838,17 +5653,17 @@ index 4c42fd9..fc7a48e 100644
*
* Atomically sets the value of @v to @i.
*/
--#define atomic_set(v, i) ((v)->counter = (i))
+-#define atomic_set(v, i) WRITE_ONCE((v)->counter, (i))
+static inline void atomic_set(atomic_t *v, int i)
+{
-+ v->counter = i;
++ WRITE_ONCE(v->counter, i);
+}
-#define ATOMIC_OP(op, c_op, asm_op) \
-static __inline__ void atomic_##op(int i, atomic_t * v) \
+static inline void atomic_set_unchecked(atomic_unchecked_t *v, int i)
+{
-+ v->counter = i;
++ WRITE_ONCE(v->counter, i);
+}
+
+#ifdef CONFIG_PAX_REFCOUNT
@@ -6128,15 +5943,15 @@ index 4c42fd9..fc7a48e 100644
* @v: pointer of type atomic64_t
*
*/
--#define atomic64_read(v) ACCESS_ONCE((v)->counter)
+-#define atomic64_read(v) READ_ONCE((v)->counter)
+static inline long atomic64_read(const atomic64_t *v)
+{
-+ return ACCESS_ONCE(v->counter);
++ return READ_ONCE(v->counter);
+}
+
+static inline long atomic64_read_unchecked(const atomic64_unchecked_t *v)
+{
-+ return ACCESS_ONCE(v->counter);
++ return READ_ONCE(v->counter);
+}
/*
@@ -6144,17 +5959,17 @@ index 4c42fd9..fc7a48e 100644
* @v: pointer of type atomic64_t
* @i: required value
*/
--#define atomic64_set(v, i) ((v)->counter = (i))
+-#define atomic64_set(v, i) WRITE_ONCE((v)->counter, (i))
+static inline void atomic64_set(atomic64_t *v, long i)
+{
-+ v->counter = i;
++ WRITE_ONCE(v->counter, i);
+}
-#define ATOMIC64_OP(op, c_op, asm_op) \
-static __inline__ void atomic64_##op(long i, atomic64_t * v) \
+static inline void atomic64_set_unchecked(atomic64_unchecked_t *v, long i)
+{
-+ v->counter = i;
++ WRITE_ONCE(v->counter, i);
+}
+
+#define __ATOMIC64_OP(op, suffix, asm_op, extable) \
@@ -6426,10 +6241,10 @@ index b4db69f..8f3b093 100644
#define SMP_CACHE_SHIFT L1_CACHE_SHIFT
#define SMP_CACHE_BYTES L1_CACHE_BYTES
diff --git a/arch/mips/include/asm/elf.h b/arch/mips/include/asm/elf.h
-index 53b2693..13803b9 100644
+index b01a6ff..aa29db0 100644
--- a/arch/mips/include/asm/elf.h
+++ b/arch/mips/include/asm/elf.h
-@@ -419,6 +419,13 @@ extern const char *__elf_platform;
+@@ -420,6 +420,13 @@ extern const char *__elf_platform;
#define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2)
#endif
@@ -6440,9 +6255,9 @@ index 53b2693..13803b9 100644
+#define PAX_DELTA_STACK_LEN (TASK_IS_32BIT_ADDR ? 27-PAGE_SHIFT : 36-PAGE_SHIFT)
+#endif
+
- #define ARCH_HAS_SETUP_ADDITIONAL_PAGES 1
- struct linux_binprm;
- extern int arch_setup_additional_pages(struct linux_binprm *bprm,
+ #define ARCH_DLINFO \
+ do { \
+ NEW_AUX_ENT(AT_SYSINFO_EHDR, \
diff --git a/arch/mips/include/asm/exec.h b/arch/mips/include/asm/exec.h
index c1f6afa..38cc6e9 100644
--- a/arch/mips/include/asm/exec.h
@@ -6560,7 +6375,7 @@ index 8feaed6..1bd8a64 100644
/**
diff --git a/arch/mips/include/asm/page.h b/arch/mips/include/asm/page.h
-index 89dd7fe..a123c97 100644
+index 2046c02..8183239 100644
--- a/arch/mips/include/asm/page.h
+++ b/arch/mips/include/asm/page.h
@@ -118,7 +118,7 @@ extern void copy_user_highpage(struct page *to, struct page *from,
@@ -6645,7 +6460,7 @@ index e309d8f..20eefec 100644
/*
* We stash processor id into a COP0 register to retrieve it fast
diff --git a/arch/mips/include/asm/uaccess.h b/arch/mips/include/asm/uaccess.h
-index 5305d69..1da2bf5 100644
+index 095ecaf..f1da6ff 100644
--- a/arch/mips/include/asm/uaccess.h
+++ b/arch/mips/include/asm/uaccess.h
@@ -146,6 +146,7 @@ static inline bool eva_kernel_access(void)
@@ -6880,10 +6695,10 @@ index 2242bdd..b284048 100644
}
/* Arrange for an interrupt in a short while */
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
-index fdb392b..c5cf284 100644
+index 886cb19..e73a287 100644
--- a/arch/mips/kernel/traps.c
+++ b/arch/mips/kernel/traps.c
-@@ -692,7 +692,18 @@ asmlinkage void do_ov(struct pt_regs *regs)
+@@ -693,7 +693,18 @@ asmlinkage void do_ov(struct pt_regs *regs)
siginfo_t info;
prev_state = exception_enter();
@@ -7183,7 +6998,7 @@ index 4ce7a01..449202a 100644
#endif /* __ASM_OPENRISC_CACHE_H */
diff --git a/arch/parisc/include/asm/atomic.h b/arch/parisc/include/asm/atomic.h
-index 2536965..5d3e884 100644
+index 1d10999..5907031 100644
--- a/arch/parisc/include/asm/atomic.h
+++ b/arch/parisc/include/asm/atomic.h
@@ -280,6 +280,16 @@ static inline long atomic64_dec_if_positive(atomic64_t *v)
@@ -7204,7 +7019,7 @@ index 2536965..5d3e884 100644
diff --git a/arch/parisc/include/asm/cache.h b/arch/parisc/include/asm/cache.h
-index 47f11c7..3420df2 100644
+index 3d0e17b..602e980 100644
--- a/arch/parisc/include/asm/cache.h
+++ b/arch/parisc/include/asm/cache.h
@@ -5,6 +5,7 @@
@@ -7214,17 +7029,10 @@ index 47f11c7..3420df2 100644
+#include <linux/const.h>
/*
- * PA 2.0 processors have 64-byte cachelines; PA 1.1 processors have
-@@ -15,13 +16,13 @@
- * just ruin performance.
- */
- #ifdef CONFIG_PA20
--#define L1_CACHE_BYTES 64
- #define L1_CACHE_SHIFT 6
- #else
--#define L1_CACHE_BYTES 32
- #define L1_CACHE_SHIFT 5
- #endif
+ * PA 2.0 processors have 64 and 128-byte L2 cachelines; PA 1.1 processors
+@@ -14,6 +15,8 @@
+ #define L1_CACHE_BYTES 16
+ #define L1_CACHE_SHIFT 4
+#define L1_CACHE_BYTES (_AC(1,UL) << L1_CACHE_SHIFT)
+
@@ -7250,7 +7058,7 @@ index 78c9fd3..42fa66a 100644
instruction set this CPU supports. This could be done in user space,
but it's not easy, and we've already done it here. */
diff --git a/arch/parisc/include/asm/pgalloc.h b/arch/parisc/include/asm/pgalloc.h
-index 3edbb9f..08fef28 100644
+index f2fd327..2bb2a26 100644
--- a/arch/parisc/include/asm/pgalloc.h
+++ b/arch/parisc/include/asm/pgalloc.h
@@ -61,6 +61,11 @@ static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd)
@@ -7274,10 +7082,10 @@ index 3edbb9f..08fef28 100644
#endif
diff --git a/arch/parisc/include/asm/pgtable.h b/arch/parisc/include/asm/pgtable.h
-index f93c4a4..cfd5663 100644
+index 291cee2..2ac33db 100644
--- a/arch/parisc/include/asm/pgtable.h
+++ b/arch/parisc/include/asm/pgtable.h
-@@ -231,6 +231,17 @@ static inline void purge_tlb_entries(struct mm_struct *mm, unsigned long addr)
+@@ -236,6 +236,17 @@ static inline void purge_tlb_entries(struct mm_struct *mm, unsigned long addr)
#define PAGE_EXECREAD __pgprot(_PAGE_PRESENT | _PAGE_USER | _PAGE_READ | _PAGE_EXEC |_PAGE_ACCESSED)
#define PAGE_COPY PAGE_EXECREAD
#define PAGE_RWX __pgprot(_PAGE_PRESENT | _PAGE_USER | _PAGE_READ | _PAGE_WRITE | _PAGE_EXEC |_PAGE_ACCESSED)
@@ -7488,7 +7296,7 @@ index 5aba01a..47cdd5a 100644
mm->mmap_base = mm->mmap_legacy_base;
mm->get_unmapped_area = arch_get_unmapped_area;
diff --git a/arch/parisc/kernel/traps.c b/arch/parisc/kernel/traps.c
-index b99b39f..e3915ae 100644
+index 553b098..eedc047 100644
--- a/arch/parisc/kernel/traps.c
+++ b/arch/parisc/kernel/traps.c
@@ -722,9 +722,7 @@ void notrace handle_interruption(int code, struct pt_regs *regs)
@@ -7676,12 +7484,12 @@ index a762864..664087f 100644
/*
* If for any reason at all we couldn't handle the fault, make
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
-index 9a7057e..5691c0b 100644
+index db49e0d..de977a0 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -421,6 +421,7 @@ config KEXEC
bool "kexec system call"
- depends on (PPC_BOOK3S || FSL_BOOKE || (44x && !SMP))
+ depends on (PPC_BOOK3S || FSL_BOOKE || (44x && !SMP)) || PPC_BOOK3E
select KEXEC_CORE
+ depends on !GRKERNSEC_KMEM
help
@@ -8363,10 +8171,10 @@ index 8565c25..2865190 100644
return (vm_flags & VM_SAO) ? __pgprot(_PAGE_SAO) : __pgprot(0);
}
diff --git a/arch/powerpc/include/asm/page.h b/arch/powerpc/include/asm/page.h
-index 71294a6..9e40aca 100644
+index 3140c19..0c43168 100644
--- a/arch/powerpc/include/asm/page.h
+++ b/arch/powerpc/include/asm/page.h
-@@ -227,8 +227,9 @@ extern long long virt_phys_offset;
+@@ -230,8 +230,9 @@ extern long long virt_phys_offset;
* and needs to be executable. This means the whole heap ends
* up being executable.
*/
@@ -8378,7 +8186,7 @@ index 71294a6..9e40aca 100644
#define VM_DATA_DEFAULT_FLAGS64 (VM_READ | VM_WRITE | \
VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
-@@ -256,6 +257,9 @@ extern long long virt_phys_offset;
+@@ -259,6 +260,9 @@ extern long long virt_phys_offset;
#define is_kernel_addr(x) ((x) >= PAGE_OFFSET)
#endif
@@ -8446,7 +8254,7 @@ index 4b0be20..c15a27d 100644
static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd,
pte_t *pte)
diff --git a/arch/powerpc/include/asm/pgtable.h b/arch/powerpc/include/asm/pgtable.h
-index 0717693..6a1f488 100644
+index b64b421..cc8447a 100644
--- a/arch/powerpc/include/asm/pgtable.h
+++ b/arch/powerpc/include/asm/pgtable.h
@@ -2,6 +2,7 @@
@@ -8792,7 +8600,7 @@ index ba33693..d8db875 100644
irq.o align.o signal_32.o pmc.o vdso.o \
process.o systbl.o idle.o \
diff --git a/arch/powerpc/kernel/exceptions-64e.S b/arch/powerpc/kernel/exceptions-64e.S
-index f3bd5e7..50040455 100644
+index 488e631..6cdd928 100644
--- a/arch/powerpc/kernel/exceptions-64e.S
+++ b/arch/powerpc/kernel/exceptions-64e.S
@@ -1010,6 +1010,7 @@ storage_fault_common:
@@ -8893,10 +8701,10 @@ index c94d2e0..992a9ce 100644
sechdrs, module);
#endif
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
-index 646bf4d..36d4d76 100644
+index ef2ad2d..645e131 100644
--- a/arch/powerpc/kernel/process.c
+++ b/arch/powerpc/kernel/process.c
-@@ -1051,8 +1051,8 @@ void show_regs(struct pt_regs * regs)
+@@ -1069,8 +1069,8 @@ void show_regs(struct pt_regs * regs)
* Lookup NIP late so we have the best change of getting the
* above info out without failing
*/
@@ -8907,7 +8715,7 @@ index 646bf4d..36d4d76 100644
#endif
show_stack(current, (unsigned long *) regs->gpr[1]);
if (!user_mode(regs))
-@@ -1568,10 +1568,10 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
+@@ -1586,10 +1586,10 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
newsp = stack[0];
ip = stack[STACK_FRAME_LR_SAVE];
if (!firstframe || ip != lr) {
@@ -8920,7 +8728,7 @@ index 646bf4d..36d4d76 100644
(void *)current->ret_stack[curr_frame].ret);
curr_frame--;
}
-@@ -1591,7 +1591,7 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
+@@ -1609,7 +1609,7 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
struct pt_regs *regs = (struct pt_regs *)
(sp + STACK_FRAME_OVERHEAD);
lr = regs->link;
@@ -8929,7 +8737,7 @@ index 646bf4d..36d4d76 100644
regs->trap, (void *)regs->nip, (void *)lr);
firstframe = 1;
}
-@@ -1627,49 +1627,3 @@ void notrace __ppc64_runlatch_off(void)
+@@ -1645,49 +1645,3 @@ void notrace __ppc64_runlatch_off(void)
mtspr(SPRN_CTRLT, ctrl);
}
#endif /* CONFIG_PPC64 */
@@ -9371,10 +9179,10 @@ index c56878e..073d04e 100644
Say Y here if you want to show the kernel pagetable layout in a
debugfs file. This information is only useful for kernel developers
diff --git a/arch/s390/include/asm/atomic.h b/arch/s390/include/asm/atomic.h
-index 117fa5c..e2f6e51 100644
+index 911064a..dcbb025 100644
--- a/arch/s390/include/asm/atomic.h
+++ b/arch/s390/include/asm/atomic.h
-@@ -324,4 +324,14 @@ static inline long long atomic64_dec_if_positive(atomic64_t *v)
+@@ -322,4 +322,14 @@ static inline long long atomic64_dec_if_positive(atomic64_t *v)
#define atomic64_dec_and_test(_v) (atomic64_sub_return(1, _v) == 0)
#define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0)
@@ -9406,7 +9214,7 @@ index 4d7ccac..d03d0ad 100644
#define __read_mostly __attribute__((__section__(".data..read_mostly")))
diff --git a/arch/s390/include/asm/elf.h b/arch/s390/include/asm/elf.h
-index 3ad48f2..64cc6f3 100644
+index bab6739..f0d5493 100644
--- a/arch/s390/include/asm/elf.h
+++ b/arch/s390/include/asm/elf.h
@@ -163,6 +163,13 @@ extern unsigned int vdso_enabled;
@@ -9551,10 +9359,10 @@ index 0c1a679..e1df357 100644
if (r_type == R_390_GOTPC)
rc = apply_rela_bits(loc, val, 1, 32, 0);
diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c
-index f2dac9f..936c8c2 100644
+index 114ee8b..7d1123f 100644
--- a/arch/s390/kernel/process.c
+++ b/arch/s390/kernel/process.c
-@@ -232,27 +232,3 @@ unsigned long get_wchan(struct task_struct *p)
+@@ -233,23 +233,3 @@ unsigned long get_wchan(struct task_struct *p)
}
return 0;
}
@@ -9568,11 +9376,7 @@ index f2dac9f..936c8c2 100644
-
-static inline unsigned long brk_rnd(void)
-{
-- /* 8MB for 32bit, 1GB for 64bit */
-- if (is_32bit_task())
-- return (get_random_int() & 0x7ffUL) << PAGE_SHIFT;
-- else
-- return (get_random_int() & 0x3ffffUL) << PAGE_SHIFT;
+- return (get_random_int() & BRK_RND_MASK) << PAGE_SHIFT;
-}
-
-unsigned long arch_randomize_brk(struct mm_struct *mm)
@@ -9583,10 +9387,10 @@ index f2dac9f..936c8c2 100644
- return (ret > mm->brk) ? ret : mm->brk;
-}
diff --git a/arch/s390/mm/mmap.c b/arch/s390/mm/mmap.c
-index 6e552af..3e608a1 100644
+index ea01477..ff5ec44 100644
--- a/arch/s390/mm/mmap.c
+++ b/arch/s390/mm/mmap.c
-@@ -239,6 +239,10 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
+@@ -229,6 +229,10 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
{
unsigned long random_factor = 0UL;
@@ -9597,7 +9401,7 @@ index 6e552af..3e608a1 100644
if (current->flags & PF_RANDOMIZE)
random_factor = arch_mmap_rnd();
-@@ -248,9 +252,21 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
+@@ -238,9 +242,21 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
*/
if (mmap_is_legacy()) {
mm->mmap_base = mmap_base_legacy(random_factor);
@@ -9759,32 +9563,32 @@ index 6777177..cb5e44f 100644
addr = vm_unmapped_area(&info);
}
diff --git a/arch/sparc/include/asm/atomic_64.h b/arch/sparc/include/asm/atomic_64.h
-index 917084a..4ff965d 100644
+index f2fbf9e..fea461e 100644
--- a/arch/sparc/include/asm/atomic_64.h
+++ b/arch/sparc/include/asm/atomic_64.h
@@ -15,18 +15,38 @@
#define ATOMIC64_INIT(i) { (i) }
- #define atomic_read(v) ACCESS_ONCE((v)->counter)
+ #define atomic_read(v) READ_ONCE((v)->counter)
+static inline int atomic_read_unchecked(const atomic_unchecked_t *v)
+{
-+ return ACCESS_ONCE(v->counter);
++ return READ_ONCE(v->counter);
+}
- #define atomic64_read(v) ACCESS_ONCE((v)->counter)
+ #define atomic64_read(v) READ_ONCE((v)->counter)
+static inline long atomic64_read_unchecked(const atomic64_unchecked_t *v)
+{
-+ return ACCESS_ONCE(v->counter);
++ return READ_ONCE(v->counter);
+}
- #define atomic_set(v, i) (((v)->counter) = i)
+ #define atomic_set(v, i) WRITE_ONCE(((v)->counter), (i))
+static inline void atomic_set_unchecked(atomic_unchecked_t *v, int i)
+{
-+ v->counter = i;
++ WRITE_ONCE(v->counter, i);
+}
- #define atomic64_set(v, i) (((v)->counter) = i)
+ #define atomic64_set(v, i) WRITE_ONCE(((v)->counter), (i))
+static inline void atomic64_set_unchecked(atomic64_unchecked_t *v, long i)
+{
-+ v->counter = i;
++ WRITE_ONCE(v->counter, i);
+}
-#define ATOMIC_OP(op) \
@@ -9983,10 +9787,10 @@ index a24e41f..47677ff 100644
instruction set this cpu supports. This can NOT be done in userspace
on Sparc. */
diff --git a/arch/sparc/include/asm/elf_64.h b/arch/sparc/include/asm/elf_64.h
-index 370ca1e..d4f4a98 100644
+index 9331083..59c0499 100644
--- a/arch/sparc/include/asm/elf_64.h
+++ b/arch/sparc/include/asm/elf_64.h
-@@ -189,6 +189,13 @@ typedef struct {
+@@ -190,6 +190,13 @@ typedef struct {
#define ELF_ET_DYN_BASE 0x0000010000000000UL
#define COMPAT_ELF_ET_DYN_BASE 0x0000000070000000UL
@@ -11031,7 +10835,7 @@ index d21cd62..00a4a17 100644
}
EXPORT_SYMBOL(die_if_kernel);
diff --git a/arch/sparc/kernel/unaligned_64.c b/arch/sparc/kernel/unaligned_64.c
-index 62098a8..547ab2c 100644
+index d89e97b..b4b583de 100644
--- a/arch/sparc/kernel/unaligned_64.c
+++ b/arch/sparc/kernel/unaligned_64.c
@@ -297,7 +297,7 @@ static void log_unaligned(struct pt_regs *regs)
@@ -12158,10 +11962,10 @@ index 131eaf4..285ea31 100644
pte_t *huge_pte_alloc(struct mm_struct *mm,
diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c
-index 4ac88b7..bac6cb2 100644
+index 3025bd5..4934c29 100644
--- a/arch/sparc/mm/init_64.c
+++ b/arch/sparc/mm/init_64.c
-@@ -187,9 +187,9 @@ unsigned long sparc64_kern_sec_context __read_mostly;
+@@ -189,9 +189,9 @@ unsigned long sparc64_kern_sec_context __read_mostly;
int num_kernel_image_mappings;
#ifdef CONFIG_DEBUG_DCFLUSH
@@ -12173,7 +11977,7 @@ index 4ac88b7..bac6cb2 100644
#endif
#endif
-@@ -197,7 +197,7 @@ inline void flush_dcache_page_impl(struct page *page)
+@@ -199,7 +199,7 @@ inline void flush_dcache_page_impl(struct page *page)
{
BUG_ON(tlb_type == hypervisor);
#ifdef CONFIG_DEBUG_DCFLUSH
@@ -12182,7 +11986,7 @@ index 4ac88b7..bac6cb2 100644
#endif
#ifdef DCACHE_ALIASING_POSSIBLE
-@@ -469,10 +469,10 @@ void mmu_info(struct seq_file *m)
+@@ -471,10 +471,10 @@ void mmu_info(struct seq_file *m)
#ifdef CONFIG_DEBUG_DCFLUSH
seq_printf(m, "DCPageFlushes\t: %d\n",
@@ -12196,10 +12000,10 @@ index 4ac88b7..bac6cb2 100644
#endif /* CONFIG_DEBUG_DCFLUSH */
}
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
-index 106c21b..185bf0f 100644
+index 8ec7a45..b0c6dc1 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
-@@ -206,6 +206,7 @@ source "kernel/Kconfig.hz"
+@@ -205,6 +205,7 @@ source "kernel/Kconfig.hz"
config KEXEC
bool "kexec system call"
select KEXEC_CORE
@@ -12208,7 +12012,7 @@ index 106c21b..185bf0f 100644
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
diff --git a/arch/tile/include/asm/atomic_64.h b/arch/tile/include/asm/atomic_64.h
-index 096a56d..bffafc0 100644
+index 51cabc2..77cceee 100644
--- a/arch/tile/include/asm/atomic_64.h
+++ b/arch/tile/include/asm/atomic_64.h
@@ -145,6 +145,16 @@ static inline void atomic64_xor(long i, atomic64_t *v)
@@ -12356,7 +12160,7 @@ index 2b4274e..754fe06 100644
#ifdef CONFIG_64BIT
#define set_pud(pudptr, pudval) set_64bit((u64 *) (pudptr), pud_val(pudval))
diff --git a/arch/um/kernel/process.c b/arch/um/kernel/process.c
-index a6d9226..d243e1e 100644
+index 48af59a..4c75105 100644
--- a/arch/um/kernel/process.c
+++ b/arch/um/kernel/process.c
@@ -347,22 +347,6 @@ int singlestepping(void * t)
@@ -12400,7 +12204,7 @@ index ad8f795..2c7eec6 100644
/*
* Memory returned by kmalloc() may be used for DMA, so we must make
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index 96d058a..92a8d5b 100644
+index db3622f..8a6202c 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -36,14 +36,13 @@ config X86
@@ -12453,7 +12257,7 @@ index 96d058a..92a8d5b 100644
default y
depends on MODIFY_LDT_SYSCALL
---help---
-@@ -1208,6 +1209,7 @@ choice
+@@ -1192,6 +1193,7 @@ choice
config NOHIGHMEM
bool "off"
@@ -12461,7 +12265,7 @@ index 96d058a..92a8d5b 100644
---help---
Linux can use up to 64 Gigabytes of physical memory on x86 systems.
However, the address space of 32-bit x86 processors is only 4
-@@ -1244,6 +1246,7 @@ config NOHIGHMEM
+@@ -1228,6 +1230,7 @@ config NOHIGHMEM
config HIGHMEM4G
bool "4GB"
@@ -12469,7 +12273,7 @@ index 96d058a..92a8d5b 100644
---help---
Select this if you have a 32-bit processor and between 1 and 4
gigabytes of physical RAM.
-@@ -1296,7 +1299,7 @@ config PAGE_OFFSET
+@@ -1280,7 +1283,7 @@ config PAGE_OFFSET
hex
default 0xB0000000 if VMSPLIT_3G_OPT
default 0x80000000 if VMSPLIT_2G
@@ -12478,7 +12282,7 @@ index 96d058a..92a8d5b 100644
default 0x40000000 if VMSPLIT_1G
default 0xC0000000
depends on X86_32
-@@ -1317,7 +1320,6 @@ config X86_PAE
+@@ -1301,7 +1304,6 @@ config X86_PAE
config ARCH_PHYS_ADDR_T_64BIT
def_bool y
@@ -12486,7 +12290,7 @@ index 96d058a..92a8d5b 100644
config ARCH_DMA_ADDR_T_64BIT
def_bool y
-@@ -1448,7 +1450,7 @@ config ARCH_PROC_KCORE_TEXT
+@@ -1432,7 +1434,7 @@ config ARCH_PROC_KCORE_TEXT
config ILLEGAL_POINTER_VALUE
hex
@@ -12495,7 +12299,7 @@ index 96d058a..92a8d5b 100644
default 0xdead000000000000 if X86_64
source "mm/Kconfig"
-@@ -1757,6 +1759,7 @@ source kernel/Kconfig.hz
+@@ -1741,6 +1743,7 @@ source kernel/Kconfig.hz
config KEXEC
bool "kexec system call"
select KEXEC_CORE
@@ -12503,7 +12307,7 @@ index 96d058a..92a8d5b 100644
---help---
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
-@@ -1939,7 +1942,9 @@ config X86_NEED_RELOCS
+@@ -1923,7 +1926,9 @@ config X86_NEED_RELOCS
config PHYSICAL_ALIGN
hex "Alignment value to which kernel should be aligned"
@@ -12514,7 +12318,7 @@ index 96d058a..92a8d5b 100644
range 0x2000 0x1000000 if X86_32
range 0x200000 0x1000000 if X86_64
---help---
-@@ -2022,6 +2027,7 @@ config COMPAT_VDSO
+@@ -2006,6 +2011,7 @@ config COMPAT_VDSO
def_bool n
prompt "Disable the 32-bit vDSO (needed for glibc 2.3.3)"
depends on X86_32 || IA32_EMULATION
@@ -12522,7 +12326,23 @@ index 96d058a..92a8d5b 100644
---help---
Certain buggy versions of glibc will crash if they are
presented with a 32-bit vDSO that is not mapped at the address
-@@ -2102,6 +2108,22 @@ config MODIFY_LDT_SYSCALL
+@@ -2046,15 +2052,6 @@ choice
+
+ If unsure, select "Emulate".
+
+- config LEGACY_VSYSCALL_NATIVE
+- bool "Native"
+- help
+- Actual executable code is located in the fixed vsyscall
+- address mapping, implementing time() efficiently. Since
+- this makes the mapping executable, it can be used during
+- security vulnerability exploitation (traditionally as
+- ROP gadgets). This configuration is not recommended.
+-
+ config LEGACY_VSYSCALL_EMULATE
+ bool "Emulate"
+ help
+@@ -2135,6 +2132,22 @@ config MODIFY_LDT_SYSCALL
Saying 'N' here may make sense for embedded or server kernels.
@@ -12546,10 +12366,10 @@ index 96d058a..92a8d5b 100644
endmenu
diff --git a/arch/x86/Kconfig.cpu b/arch/x86/Kconfig.cpu
-index 6983314..54ad7e8 100644
+index 3ba5ff2..44bdacc 100644
--- a/arch/x86/Kconfig.cpu
+++ b/arch/x86/Kconfig.cpu
-@@ -319,7 +319,7 @@ config X86_PPRO_FENCE
+@@ -329,7 +329,7 @@ config X86_PPRO_FENCE
config X86_F00F_BUG
def_bool y
@@ -12558,7 +12378,7 @@ index 6983314..54ad7e8 100644
config X86_INVD_BUG
def_bool y
-@@ -327,7 +327,7 @@ config X86_INVD_BUG
+@@ -337,7 +337,7 @@ config X86_INVD_BUG
config X86_ALIGNMENT_16
def_bool y
@@ -12567,7 +12387,7 @@ index 6983314..54ad7e8 100644
config X86_INTEL_USERCOPY
def_bool y
-@@ -369,7 +369,7 @@ config X86_CMPXCHG64
+@@ -379,7 +379,7 @@ config X86_CMPXCHG64
# generates cmov.
config X86_CMOV
def_bool y
@@ -12577,18 +12397,18 @@ index 6983314..54ad7e8 100644
config X86_MINIMUM_CPU_FAMILY
int
diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
-index d8c0d32..28e3117 100644
+index 137dfa9..6efdd4e 100644
--- a/arch/x86/Kconfig.debug
+++ b/arch/x86/Kconfig.debug
-@@ -69,6 +69,7 @@ config X86_PTDUMP
+@@ -72,6 +72,7 @@ config X86_PTDUMP
bool "Export kernel pagetable layout to userspace via debugfs"
depends on DEBUG_KERNEL
select DEBUG_FS
+ depends on !GRKERNSEC_KMEM
+ select X86_PTDUMP_CORE
---help---
Say Y here if you want to show the kernel pagetable layout in a
- debugfs file. This information is only useful for kernel developers
-@@ -89,7 +90,7 @@ config EFI_PGT_DUMP
+@@ -94,7 +95,7 @@ config EFI_PGT_DUMP
config DEBUG_RODATA
bool "Write protect kernel read-only data structures"
default y
@@ -12597,7 +12417,7 @@ index d8c0d32..28e3117 100644
---help---
Mark the kernel read-only data as write-protected in the pagetables,
in order to catch accidental (and incorrect) writes to such const
-@@ -107,7 +108,7 @@ config DEBUG_RODATA_TEST
+@@ -140,7 +141,7 @@ config DEBUG_WX
config DEBUG_SET_MODULE_RONX
bool "Set loadable kernel module data as NX and text as RO"
@@ -12606,7 +12426,7 @@ index d8c0d32..28e3117 100644
---help---
This option helps catch unintended modifications to loadable
kernel module's text and read-only data. It also prevents execution
-@@ -359,6 +360,7 @@ config X86_DEBUG_FPU
+@@ -392,6 +393,7 @@ config X86_DEBUG_FPU
config PUNIT_ATOM_DEBUG
tristate "ATOM Punit debug driver"
select DEBUG_FS
@@ -12615,7 +12435,7 @@ index d8c0d32..28e3117 100644
---help---
This is a debug driver, which gets the power states
diff --git a/arch/x86/Makefile b/arch/x86/Makefile
-index 747860c..0374d1e 100644
+index 4086abc..52a0a9b 100644
--- a/arch/x86/Makefile
+++ b/arch/x86/Makefile
@@ -75,9 +75,6 @@ ifeq ($(CONFIG_X86_32),y)
@@ -12638,7 +12458,7 @@ index 747860c..0374d1e 100644
# Make sure compiler does not have buggy stack-protector support.
ifdef CONFIG_CC_STACKPROTECTOR
cc_has_sp := $(srctree)/scripts/gcc-x86_$(BITS)-has-stack-protector.sh
-@@ -191,6 +191,7 @@ archheaders:
+@@ -199,6 +199,7 @@ archheaders:
$(Q)$(MAKE) $(build)=arch/x86/entry/syscalls all
archprepare:
@@ -12646,7 +12466,7 @@ index 747860c..0374d1e 100644
ifeq ($(CONFIG_KEXEC_FILE),y)
$(Q)$(MAKE) $(build)=arch/x86/purgatory arch/x86/purgatory/kexec-purgatory.c
endif
-@@ -276,3 +277,9 @@ define archhelp
+@@ -284,3 +285,9 @@ define archhelp
echo ' FDARGS="..." arguments for the booted kernel'
echo ' FDINITRD=file initrd for the booted kernel'
endef
@@ -12657,7 +12477,7 @@ index 747860c..0374d1e 100644
+*** Please upgrade your binutils to 2.18 or newer
+endef
diff --git a/arch/x86/boot/Makefile b/arch/x86/boot/Makefile
-index 0d553e5..cecccf9 100644
+index 2ee62db..5f320a9 100644
--- a/arch/x86/boot/Makefile
+++ b/arch/x86/boot/Makefile
@@ -58,6 +58,9 @@ clean-files += cpustr.h
@@ -12693,10 +12513,10 @@ index 878e4b9..20537ab 100644
#endif /* BOOT_BITOPS_H */
diff --git a/arch/x86/boot/boot.h b/arch/x86/boot/boot.h
-index 0033e96..b3179b9 100644
+index 9011a88..06aa820 100644
--- a/arch/x86/boot/boot.h
+++ b/arch/x86/boot/boot.h
-@@ -84,7 +84,7 @@ static inline void io_delay(void)
+@@ -83,7 +83,7 @@ static inline void io_delay(void)
static inline u16 ds(void)
{
u16 seg;
@@ -12929,7 +12749,7 @@ index 1fd7d57..0f7d096 100644
err = check_cpuflags();
} else if (err == 0x01 &&
diff --git a/arch/x86/boot/header.S b/arch/x86/boot/header.S
-index 2d6b309..65defa1 100644
+index 6236b9e..3099904 100644
--- a/arch/x86/boot/header.S
+++ b/arch/x86/boot/header.S
@@ -438,10 +438,14 @@ setup_data: .quad 0 # 64-bit physical pointer to
@@ -12974,10 +12794,10 @@ index ba3e100..6501b8f 100644
/*
diff --git a/arch/x86/boot/video.c b/arch/x86/boot/video.c
-index 05111bb..a1ae1f0 100644
+index 77780e3..86be0cb 100644
--- a/arch/x86/boot/video.c
+++ b/arch/x86/boot/video.c
-@@ -98,7 +98,7 @@ static void store_mode_params(void)
+@@ -100,7 +100,7 @@ static void store_mode_params(void)
static unsigned int get_entry(void)
{
char entry_buf[4];
@@ -13942,7 +13762,7 @@ index e3531f8..e123f35 100644
ret;
ENDPROC(cast6_xts_dec_8way)
diff --git a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
-index 225be06..2885e731 100644
+index 4fe27e0..2885e731 100644
--- a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
+++ b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
@@ -45,6 +45,7 @@
@@ -13961,15 +13781,6 @@ index 225be06..2885e731 100644
ret
################################################################
-@@ -330,7 +332,7 @@ ENDPROC(crc_pcl)
- ## PCLMULQDQ tables
- ## Table is 128 entries x 2 words (8 bytes) each
- ################################################################
--.section .rotata, "a", %progbits
-+.section .rodata, "a", %progbits
- .align 8
- K_table:
- .long 0x493c7d27, 0x00000001
diff --git a/arch/x86/crypto/ghash-clmulni-intel_asm.S b/arch/x86/crypto/ghash-clmulni-intel_asm.S
index 5d1e007..098cb4f 100644
--- a/arch/x86/crypto/ghash-clmulni-intel_asm.S
@@ -14700,10 +14511,34 @@ index 3c71dd9..008b8db 100644
.macro REMOVE_PT_GPREGS_FROM_STACK addskip=0
diff --git a/arch/x86/entry/common.c b/arch/x86/entry/common.c
-index 80dcc92..da58bb6 100644
+index 0366374..61ed739 100644
--- a/arch/x86/entry/common.c
+++ b/arch/x86/entry/common.c
-@@ -150,6 +150,10 @@ unsigned long syscall_trace_enter_phase1(struct pt_regs *regs, u32 arch)
+@@ -32,9 +32,7 @@
+
+ static struct thread_info *pt_regs_to_thread_info(struct pt_regs *regs)
+ {
+- unsigned long top_of_stack =
+- (unsigned long)(regs + 1) + TOP_OF_KERNEL_STACK_PADDING;
+- return (struct thread_info *)(top_of_stack - THREAD_SIZE);
++ return current_thread_info();
+ }
+
+ #ifdef CONFIG_CONTEXT_TRACKING
+@@ -46,6 +44,12 @@ __visible void enter_from_user_mode(void)
+ }
+ #endif
+
++#ifdef CONFIG_PAX_MEMORY_STACKLEAK
++asmlinkage void pax_erase_kstack(void);
++#else
++static void pax_erase_kstack(void) {}
++#endif
++
+ static void do_audit_syscall_entry(struct pt_regs *regs, u32 arch)
+ {
+ #ifdef CONFIG_X86_64
+@@ -160,6 +164,10 @@ unsigned long syscall_trace_enter_phase1(struct pt_regs *regs, u32 arch)
return 1; /* Something is enabled that we can't handle in phase 1 */
}
@@ -14714,9 +14549,9 @@ index 80dcc92..da58bb6 100644
/* Returns the syscall nr to run (which should match regs->orig_ax). */
long syscall_trace_enter_phase2(struct pt_regs *regs, u32 arch,
unsigned long phase1_result)
-@@ -160,6 +164,11 @@ long syscall_trace_enter_phase2(struct pt_regs *regs, u32 arch,
-
- BUG_ON(regs != task_pt_regs(current));
+@@ -171,6 +179,11 @@ long syscall_trace_enter_phase2(struct pt_regs *regs, u32 arch,
+ if (IS_ENABLED(CONFIG_DEBUG_ENTRY))
+ BUG_ON(regs != task_pt_regs(current));
+#ifdef CONFIG_GRKERNSEC_SETXID
+ if (unlikely(test_and_clear_thread_flag(TIF_GRSEC_SETXID)))
@@ -14726,40 +14561,37 @@ index 80dcc92..da58bb6 100644
/*
* If we stepped into a sysenter/syscall insn, it trapped in
* kernel mode; do_debug() cleared TF and set TIF_SINGLESTEP.
-@@ -207,13 +216,6 @@ long syscall_trace_enter(struct pt_regs *regs)
- return syscall_trace_enter_phase2(regs, arch, phase1_result);
+@@ -207,15 +220,14 @@ long syscall_trace_enter_phase2(struct pt_regs *regs, u32 arch,
+ return ret ?: regs->orig_ax;
}
--static struct thread_info *pt_regs_to_thread_info(struct pt_regs *regs)
--{
-- unsigned long top_of_stack =
-- (unsigned long)(regs + 1) + TOP_OF_KERNEL_STACK_PADDING;
-- return (struct thread_info *)(top_of_stack - THREAD_SIZE);
--}
--
- /* Called with IRQs disabled. */
- __visible void prepare_exit_to_usermode(struct pt_regs *regs)
+-long syscall_trace_enter(struct pt_regs *regs)
++static long syscall_trace_enter(struct pt_regs *regs)
{
-@@ -230,7 +232,7 @@ __visible void prepare_exit_to_usermode(struct pt_regs *regs)
- */
- while (true) {
- u32 cached_flags =
-- READ_ONCE(pt_regs_to_thread_info(regs)->flags);
-+ READ_ONCE(current_thread_info()->flags);
+ u32 arch = is_ia32_task() ? AUDIT_ARCH_I386 : AUDIT_ARCH_X86_64;
+ unsigned long phase1_result = syscall_trace_enter_phase1(regs, arch);
- if (!(cached_flags & (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME |
- _TIF_UPROBE | _TIF_NEED_RESCHED |
-@@ -271,7 +273,7 @@ __visible void prepare_exit_to_usermode(struct pt_regs *regs)
- */
- __visible void syscall_return_slowpath(struct pt_regs *regs)
- {
-- struct thread_info *ti = pt_regs_to_thread_info(regs);
-+ struct thread_info *ti = current_thread_info();
- u32 cached_flags = READ_ONCE(ti->flags);
- bool step;
+- if (phase1_result == 0)
+- return regs->orig_ax;
+- else
+- return syscall_trace_enter_phase2(regs, arch, phase1_result);
++ phase1_result = phase1_result ? syscall_trace_enter_phase2(regs, arch, phase1_result) : regs->orig_ax;
++ pax_erase_kstack();
++ return phase1_result;
+ }
+
+ #define EXIT_TO_USERMODE_LOOP_FLAGS \
+@@ -306,7 +318,7 @@ static void syscall_slow_exit_work(struct pt_regs *regs, u32 cached_flags)
+ step = unlikely(
+ (cached_flags & (_TIF_SINGLESTEP | _TIF_SYSCALL_EMU))
+ == _TIF_SINGLESTEP);
+- if (step || cached_flags & _TIF_SYSCALL_TRACE)
++ if (step || (cached_flags & _TIF_SYSCALL_TRACE))
+ tracehook_report_syscall_exit(regs, step);
+ }
-@@ -281,6 +283,11 @@ __visible void syscall_return_slowpath(struct pt_regs *regs)
- regs->orig_ax))
+@@ -325,6 +337,11 @@ __visible inline void syscall_return_slowpath(struct pt_regs *regs)
+ WARN(irqs_disabled(), "syscall %ld left IRQs disabled", regs->orig_ax))
local_irq_enable();
+#ifdef CONFIG_GRKERNSEC_SETXID
@@ -14770,20 +14602,33 @@ index 80dcc92..da58bb6 100644
/*
* First do one-time work. If these work items are enabled, we
* want to run them exactly once per syscall exit with IRQs on.
-@@ -301,7 +308,7 @@ __visible void syscall_return_slowpath(struct pt_regs *regs)
- step = unlikely(
- (cached_flags & (_TIF_SINGLESTEP | _TIF_SYSCALL_EMU))
- == _TIF_SINGLESTEP);
-- if (step || cached_flags & _TIF_SYSCALL_TRACE)
-+ if (step || (cached_flags & _TIF_SYSCALL_TRACE))
- tracehook_report_syscall_exit(regs, step);
- }
+@@ -412,6 +429,7 @@ __visible long do_fast_syscall_32(struct pt_regs *regs)
+
+ unsigned long landing_pad = (unsigned long)current->mm->context.vdso +
+ vdso_image_32.sym_int80_landing_pad;
++ u32 __user *saved_bp = (u32 __force_user *)(unsigned long)(u32)regs->sp;
+
+ /*
+ * SYSENTER loses EIP, and even SYSCALL32 needs us to skip forward
+@@ -432,11 +450,9 @@ __visible long do_fast_syscall_32(struct pt_regs *regs)
+ * Micro-optimization: the pointer we're following is explicitly
+ * 32 bits, so it can't be out of range.
+ */
+- __get_user(*(u32 *)&regs->bp,
+- (u32 __user __force *)(unsigned long)(u32)regs->sp)
++ __get_user_nocheck(*(u32 *)&regs->bp, saved_bp, sizeof(u32))
+ #else
+- get_user(*(u32 *)&regs->bp,
+- (u32 __user __force *)(unsigned long)(u32)regs->sp)
++ get_user(regs->bp, saved_bp)
+ #endif
+ ) {
diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
-index b2909bf..47ba402 100644
+index f3b6d54..d41929e 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
-@@ -147,13 +147,154 @@
+@@ -147,13 +147,157 @@
movl \reg, PT_GS(%esp)
.endm
.macro SET_KERNEL_GS reg
@@ -14801,7 +14646,7 @@ index b2909bf..47ba402 100644
#endif /* CONFIG_X86_32_LAZY_GS */
--.macro SAVE_ALL
+-.macro SAVE_ALL pt_regs_ax=%eax
+.macro pax_enter_kernel
+#ifdef CONFIG_PAX_KERNEXEC
+ call pax_enter_kernel
@@ -14892,7 +14737,9 @@ index b2909bf..47ba402 100644
+ pushl %edi
+ pushl %ecx
+ pushl %eax
++ pushl %ebp
+
++ GET_THREAD_INFO(%ebp)
+ mov TI_lowest_stack(%ebp), %edi
+ mov $-0xBEEF, %eax
+ std
@@ -14928,6 +14775,7 @@ index b2909bf..47ba402 100644
+ sub $128, %edi
+ mov %edi, TI_lowest_stack(%ebp)
+
++ popl %ebp
+ popl %eax
+ popl %ecx
+ popl %edi
@@ -14935,11 +14783,11 @@ index b2909bf..47ba402 100644
+ENDPROC(pax_erase_kstack)
+#endif
+
-+.macro __SAVE_ALL _DS
++.macro __SAVE_ALL pt_regs_ax, _DS
cld
PUSH_GS
pushl %fs
-@@ -166,7 +307,7 @@
+@@ -166,7 +310,7 @@
pushl %edx
pushl %ecx
pushl %ebx
@@ -14948,32 +14796,32 @@ index b2909bf..47ba402 100644
movl %edx, %ds
movl %edx, %es
movl $(__KERNEL_PERCPU), %edx
-@@ -174,6 +315,15 @@
+@@ -174,6 +318,15 @@
SET_KERNEL_GS %edx
.endm
-+.macro SAVE_ALL
++.macro SAVE_ALL pt_regs_ax=%eax
+#if defined(CONFIG_PAX_KERNEXEC) || defined(CONFIG_PAX_PAGEEXEC) || defined(CONFIG_PAX_SEGMEXEC) || defined(CONFIG_PAX_MEMORY_UDEREF)
-+ __SAVE_ALL __KERNEL_DS
++ __SAVE_ALL \pt_regs_ax, __KERNEL_DS
+ pax_enter_kernel
+#else
-+ __SAVE_ALL __USER_DS
++ __SAVE_ALL \pt_regs_ax, __USER_DS
+#endif
+.endm
+
.macro RESTORE_INT_REGS
popl %ebx
popl %ecx
-@@ -212,7 +362,7 @@ ENTRY(ret_from_fork)
- pushl $0x0202 # Reset kernel eflags
- popfl
- jmp syscall_exit
+@@ -216,7 +369,7 @@ ENTRY(ret_from_fork)
+ movl %esp, %eax
+ call syscall_return_slowpath
+ jmp restore_all
-END(ret_from_fork)
+ENDPROC(ret_from_fork)
ENTRY(ret_from_kernel_thread)
pushl %eax
-@@ -252,7 +402,15 @@ ret_from_intr:
+@@ -264,15 +417,23 @@ ret_from_intr:
andl $SEGMENT_RPL_MASK, %eax
#endif
cmpl $USER_RPL, %eax
@@ -14988,19 +14836,18 @@ index b2909bf..47ba402 100644
+#endif
ENTRY(resume_userspace)
- LOCKDEP_SYS_EXIT
-@@ -260,8 +418,8 @@ ENTRY(resume_userspace)
+ DISABLE_INTERRUPTS(CLBR_ANY)
TRACE_IRQS_OFF
movl %esp, %eax
call prepare_exit_to_usermode
- jmp restore_all
-END(ret_from_exception)
-+ jmp restore_all_pax
++ jmp .Lsyscall_32_done
+ENDPROC(ret_from_exception)
#ifdef CONFIG_PREEMPT
ENTRY(resume_kernel)
-@@ -273,7 +431,7 @@ need_resched:
+@@ -284,7 +445,7 @@ need_resched:
jz restore_all
call preempt_schedule_irq
jmp need_resched
@@ -15008,81 +14855,40 @@ index b2909bf..47ba402 100644
+ENDPROC(resume_kernel)
#endif
- /*
-@@ -298,32 +456,44 @@ sysenter_past_esp:
- pushl $__USER_CS
- /*
- * Push current_thread_info()->sysenter_return to the stack.
-- * A tiny bit of offset fixup is necessary: TI_sysenter_return
-- * is relative to thread_info, which is at the bottom of the
-- * kernel stack page. 4*4 means the 4 words pushed above;
-- * TOP_OF_KERNEL_STACK_PADDING takes us to the top of the stack;
-- * and THREAD_SIZE takes us to the bottom.
- */
-- pushl ((TI_sysenter_return) - THREAD_SIZE + TOP_OF_KERNEL_STACK_PADDING + 4*4)(%esp)
-+ pushl $0
-
- pushl %eax
- SAVE_ALL
-+ GET_THREAD_INFO(%ebp)
-+ movl TI_sysenter_return(%ebp), %ebp
-+ movl %ebp, PT_EIP(%esp)
- ENABLE_INTERRUPTS(CLBR_NONE)
-
- /*
- * Load the potential sixth argument from user stack.
- * Careful about security.
- */
-+ movl PT_OLDESP(%esp),%ebp
-+
-+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ mov PT_OLDSS(%esp), %ds
-+1: movl %ds:(%ebp), %ebp
-+ push %ss
-+ pop %ds
-+#else
- cmpl $__PAGE_OFFSET-3, %ebp
- jae syscall_fault
- ASM_STAC
- 1: movl (%ebp), %ebp
- ASM_CLAC
-+#endif
-+
- movl %ebp, PT_EBP(%esp)
- _ASM_EXTABLE(1b, syscall_fault)
-
- GET_THREAD_INFO(%ebp)
+ # SYSENTER call handler stub
+@@ -300,6 +461,10 @@ sysenter_past_esp:
+ pushl %eax /* pt_regs->orig_ax */
+ SAVE_ALL pt_regs_ax=$-ENOSYS /* save rest */
+#ifdef CONFIG_PAX_RANDKSTACK
+ pax_erase_kstack
+#endif
+
- testl $_TIF_WORK_SYSCALL_ENTRY, TI_flags(%ebp)
- jnz syscall_trace_entry
- sysenter_do_call:
-@@ -339,20 +509,38 @@ sysenter_after_call:
- testl $_TIF_ALLWORK_MASK, %ecx
- jnz syscall_exit_work_irqs_off
- sysenter_exit:
-+
+ /*
+ * User mode is traced as though IRQs are on, and SYSENTER
+ * turned them off.
+@@ -312,11 +477,20 @@ sysenter_past_esp:
+ ALTERNATIVE "testl %eax, %eax; jz .Lsyscall_32_done", \
+ "jmp .Lsyscall_32_done", X86_FEATURE_XENPV
+
+#ifdef CONFIG_PAX_RANDKSTACK
-+ pushl %eax
+ movl %esp, %eax
+ call pax_randomize_kstack
-+ popl %eax
+#endif
+
+ pax_erase_kstack
+
- /* if something modifies registers it must also disable sysexit */
- movl PT_EIP(%esp), %edx
- movl PT_OLDESP(%esp), %ecx
- xorl %ebp, %ebp
- TRACE_IRQS_ON
+ /* Opportunistic SYSEXIT */
+ TRACE_IRQS_ON /* User mode traces as IRQs on. */
+ movl PT_EIP(%esp), %edx /* pt_regs->ip */
+ movl PT_OLDESP(%esp), %ecx /* pt_regs->sp */
1: mov PT_FS(%esp), %fs
+2: mov PT_DS(%esp), %ds
+3: mov PT_ES(%esp), %es
PTGS_TO_GS
+ popl %ebx /* pt_regs->bx */
+ addl $2*4, %esp /* skip pt_regs->cx and pt_regs->dx */
+@@ -332,10 +506,16 @@ sysenter_past_esp:
ENABLE_INTERRUPTS_SYSEXIT
.pushsection .fixup, "ax"
@@ -15101,24 +14907,21 @@ index b2909bf..47ba402 100644
PTGS_TO_GS_EX
ENDPROC(entry_SYSENTER_32)
-@@ -362,6 +550,11 @@ ENTRY(entry_INT80_32)
- pushl %eax # save orig_eax
- SAVE_ALL
- GET_THREAD_INFO(%ebp)
-+
+@@ -345,6 +525,10 @@ ENTRY(entry_INT80_32)
+ pushl %eax /* pt_regs->orig_ax */
+ SAVE_ALL pt_regs_ax=$-ENOSYS /* save rest */
+
+#ifdef CONFIG_PAX_RANDKSTACK
+ pax_erase_kstack
+#endif
+
- # system call tracing in operation / emulation
- testl $_TIF_WORK_SYSCALL_ENTRY, TI_flags(%ebp)
- jnz syscall_trace_entry
-@@ -375,6 +568,15 @@ syscall_exit:
- LOCKDEP_SYS_EXIT
- jmp syscall_exit_work
+ /*
+ * User mode is traced as though IRQs are on. Unlike the 64-bit
+ * case, INT80 is a trap gate on 32-bit kernels, so interrupts
+@@ -355,6 +539,13 @@ ENTRY(entry_INT80_32)
+ call do_syscall_32_irqs_on
+ .Lsyscall_32_done:
-+restore_all_pax:
-+
+#ifdef CONFIG_PAX_RANDKSTACK
+ movl %esp, %eax
+ call pax_randomize_kstack
@@ -15129,7 +14932,7 @@ index b2909bf..47ba402 100644
restore_all:
TRACE_IRQS_IRET
restore_all_notrace:
-@@ -429,14 +631,34 @@ ldt_ss:
+@@ -409,14 +600,34 @@ ldt_ss:
* compensating for the offset by changing to the ESPFIX segment with
* a base address that matches for the difference.
*/
@@ -15167,58 +14970,7 @@ index b2909bf..47ba402 100644
pushl $__ESPFIX_SS
pushl %eax /* new kernel esp */
/*
-@@ -456,11 +678,14 @@ syscall_trace_entry:
- movl $-ENOSYS, PT_EAX(%esp)
- movl %esp, %eax
- call syscall_trace_enter
-+
-+ pax_erase_kstack
-+
- /* What it returned is what we'll actually use. */
- cmpl $(NR_syscalls), %eax
- jnae syscall_call
- jmp syscall_exit
--END(syscall_trace_entry)
-+ENDPROC(syscall_trace_entry)
-
- # perform syscall exit tracing
- ALIGN
-@@ -471,25 +696,29 @@ syscall_exit_work_irqs_off:
- syscall_exit_work:
- movl %esp, %eax
- call syscall_return_slowpath
-- jmp restore_all
--END(syscall_exit_work)
-+ jmp restore_all_pax
-+ENDPROC(syscall_exit_work)
-
- syscall_fault:
-+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ push %ss
-+ pop %ds
-+#endif
- ASM_CLAC
- GET_THREAD_INFO(%ebp)
- movl $-EFAULT, PT_EAX(%esp)
- jmp resume_userspace
--END(syscall_fault)
-+ENDPROC(syscall_fault)
-
- syscall_badsys:
- movl $-ENOSYS, %eax
- jmp syscall_after_call
--END(syscall_badsys)
-+ENDPROC(syscall_badsys)
-
- sysenter_badsys:
- movl $-ENOSYS, %eax
- jmp sysenter_after_call
--END(sysenter_badsys)
-+ENDPROC(sysenter_badsys)
-
- .macro FIXUP_ESPFIX_STACK
- /*
-@@ -501,8 +730,15 @@ END(sysenter_badsys)
+@@ -440,8 +651,15 @@ ENDPROC(entry_INT80_32)
*/
#ifdef CONFIG_X86_ESPFIX32
/* fixup the stack */
@@ -15236,7 +14988,7 @@ index b2909bf..47ba402 100644
shl $16, %eax
addl %esp, %eax /* the adjusted stack pointer */
pushl $__KERNEL_DS
-@@ -538,7 +774,7 @@ ENTRY(irq_entries_start)
+@@ -477,7 +695,7 @@ ENTRY(irq_entries_start)
jmp common_interrupt
.align 8
.endr
@@ -15245,7 +14997,7 @@ index b2909bf..47ba402 100644
/*
* the CPU automatically disables interrupts when executing an IRQ vector,
-@@ -585,7 +821,7 @@ ENTRY(coprocessor_error)
+@@ -524,7 +742,7 @@ ENTRY(coprocessor_error)
pushl $0
pushl $do_coprocessor_error
jmp error_code
@@ -15254,7 +15006,7 @@ index b2909bf..47ba402 100644
ENTRY(simd_coprocessor_error)
ASM_CLAC
-@@ -599,25 +835,25 @@ ENTRY(simd_coprocessor_error)
+@@ -538,25 +756,25 @@ ENTRY(simd_coprocessor_error)
pushl $do_simd_coprocessor_error
#endif
jmp error_code
@@ -15284,7 +15036,7 @@ index b2909bf..47ba402 100644
#endif
ENTRY(overflow)
-@@ -625,59 +861,59 @@ ENTRY(overflow)
+@@ -564,59 +782,59 @@ ENTRY(overflow)
pushl $0
pushl $do_overflow
jmp error_code
@@ -15353,7 +15105,7 @@ index b2909bf..47ba402 100644
#ifdef CONFIG_X86_MCE
ENTRY(machine_check)
-@@ -685,7 +921,7 @@ ENTRY(machine_check)
+@@ -624,7 +842,7 @@ ENTRY(machine_check)
pushl $0
pushl machine_check_vector
jmp error_code
@@ -15362,7 +15114,7 @@ index b2909bf..47ba402 100644
#endif
ENTRY(spurious_interrupt_bug)
-@@ -693,7 +929,7 @@ ENTRY(spurious_interrupt_bug)
+@@ -632,7 +850,7 @@ ENTRY(spurious_interrupt_bug)
pushl $0
pushl $do_spurious_interrupt_bug
jmp error_code
@@ -15371,7 +15123,7 @@ index b2909bf..47ba402 100644
#ifdef CONFIG_XEN
/*
-@@ -800,7 +1036,7 @@ BUILD_INTERRUPT3(hyperv_callback_vector, HYPERVISOR_CALLBACK_VECTOR,
+@@ -739,7 +957,7 @@ BUILD_INTERRUPT3(hyperv_callback_vector, HYPERVISOR_CALLBACK_VECTOR,
ENTRY(mcount)
ret
@@ -15380,7 +15132,7 @@ index b2909bf..47ba402 100644
ENTRY(ftrace_caller)
pushl %eax
-@@ -830,7 +1066,7 @@ ftrace_graph_call:
+@@ -769,7 +987,7 @@ ftrace_graph_call:
.globl ftrace_stub
ftrace_stub:
ret
@@ -15389,7 +15141,7 @@ index b2909bf..47ba402 100644
ENTRY(ftrace_regs_caller)
pushf /* push flags before compare (in cs location) */
-@@ -928,7 +1164,7 @@ trace:
+@@ -867,7 +1085,7 @@ trace:
popl %ecx
popl %eax
jmp ftrace_stub
@@ -15398,7 +15150,7 @@ index b2909bf..47ba402 100644
#endif /* CONFIG_DYNAMIC_FTRACE */
#endif /* CONFIG_FUNCTION_TRACER */
-@@ -946,7 +1182,7 @@ ENTRY(ftrace_graph_caller)
+@@ -885,7 +1103,7 @@ ENTRY(ftrace_graph_caller)
popl %ecx
popl %eax
ret
@@ -15407,7 +15159,16 @@ index b2909bf..47ba402 100644
.globl return_to_handler
return_to_handler:
-@@ -994,14 +1230,17 @@ error_code:
+@@ -904,7 +1122,7 @@ ENTRY(trace_page_fault)
+ ASM_CLAC
+ pushl $trace_do_page_fault
+ jmp error_code
+-END(trace_page_fault)
++ENDPROC(trace_page_fault)
+ #endif
+
+ ENTRY(page_fault)
+@@ -933,14 +1151,17 @@ error_code:
movl $-1, PT_ORIG_EAX(%esp) # no syscall to restart
REG_TO_PTGS %ecx
SET_KERNEL_GS %ecx
@@ -15427,7 +15188,7 @@ index b2909bf..47ba402 100644
/*
* Debug traps and NMI can happen at the one SYSENTER instruction
-@@ -1039,7 +1278,7 @@ debug_stack_correct:
+@@ -978,7 +1199,7 @@ debug_stack_correct:
movl %esp, %eax # pt_regs pointer
call do_debug
jmp ret_from_exception
@@ -15436,7 +15197,7 @@ index b2909bf..47ba402 100644
/*
* NMI is doubly nasty. It can happen _while_ we're handling
-@@ -1078,6 +1317,9 @@ nmi_stack_correct:
+@@ -1017,6 +1238,9 @@ nmi_stack_correct:
xorl %edx, %edx # zero error code
movl %esp, %eax # pt_regs pointer
call do_nmi
@@ -15446,7 +15207,7 @@ index b2909bf..47ba402 100644
jmp restore_all_notrace
nmi_stack_fixup:
-@@ -1111,11 +1353,14 @@ nmi_espfix_stack:
+@@ -1050,11 +1274,14 @@ nmi_espfix_stack:
FIXUP_ESPFIX_STACK # %eax == %esp
xorl %edx, %edx # zero error code
call do_nmi
@@ -15462,7 +15223,7 @@ index b2909bf..47ba402 100644
ENTRY(int3)
ASM_CLAC
-@@ -1126,17 +1371,17 @@ ENTRY(int3)
+@@ -1065,17 +1292,17 @@ ENTRY(int3)
movl %esp, %eax # pt_regs pointer
call do_int3
jmp ret_from_exception
@@ -15484,7 +15245,7 @@ index b2909bf..47ba402 100644
+ENDPROC(async_page_fault)
#endif
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
-index 055a01d..348b266 100644
+index a55697d..66473ae 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -36,6 +36,8 @@
@@ -16021,36 +15782,38 @@ index 055a01d..348b266 100644
/*
* Remaining execve stubs are only 7 bytes long.
* ENTRY() often aligns to 16 bytes, which in this case has no benefits.
-@@ -389,7 +810,7 @@ END(stub_execve)
+@@ -389,19 +810,19 @@ END(stub_execve)
GLOBAL(stub_execveat)
call sys_execveat
jmp return_from_execve
-END(stub_execveat)
+ENDPROC(stub_execveat)
- #if defined(CONFIG_X86_X32_ABI) || defined(CONFIG_IA32_EMULATION)
+ #if defined(CONFIG_X86_X32_ABI)
.align 8
-@@ -397,15 +818,15 @@ GLOBAL(stub_x32_execve)
- GLOBAL(stub32_execve)
+ GLOBAL(stub_x32_execve)
call compat_sys_execve
jmp return_from_execve
--END(stub32_execve)
-END(stub_x32_execve)
-+ENDPROC(stub32_execve)
+ENDPROC(stub_x32_execve)
.align 8
GLOBAL(stub_x32_execveat)
- GLOBAL(stub32_execveat)
call compat_sys_execveat
jmp return_from_execve
--END(stub32_execveat)
-END(stub_x32_execveat)
-+ENDPROC(stub32_execveat)
+ENDPROC(stub_x32_execveat)
#endif
/*
-@@ -434,7 +855,7 @@ ENTRY(stub_x32_rt_sigreturn)
+@@ -423,14 +844,14 @@ return_from_stub:
+ RESTORE_EXTRA_REGS
+ movq %rax, RAX(%rsp)
+ jmp int_ret_from_sys_call
+-END(stub_rt_sigreturn)
++ENDPROC(stub_rt_sigreturn)
+
+ #ifdef CONFIG_X86_X32_ABI
+ ENTRY(stub_x32_rt_sigreturn)
SAVE_EXTRA_REGS 8
call sys32_x32_rt_sigreturn
jmp return_from_stub
@@ -16059,7 +15822,7 @@ index 055a01d..348b266 100644
#endif
/*
-@@ -473,7 +894,7 @@ ENTRY(ret_from_fork)
+@@ -469,7 +890,7 @@ ENTRY(ret_from_fork)
movl $0, RAX(%rsp)
RESTORE_EXTRA_REGS
jmp int_ret_from_sys_call
@@ -16068,7 +15831,7 @@ index 055a01d..348b266 100644
/*
* Build the entry stubs with some assembler magic.
-@@ -488,7 +909,7 @@ ENTRY(irq_entries_start)
+@@ -484,7 +905,7 @@ ENTRY(irq_entries_start)
jmp common_interrupt
.align 8
.endr
@@ -16077,17 +15840,20 @@ index 055a01d..348b266 100644
/*
* Interrupt entry/exit.
-@@ -513,11 +934,19 @@ END(irq_entries_start)
- * tracking that we're in kernel mode.
+@@ -510,6 +931,12 @@ END(irq_entries_start)
*/
SWAPGS
+
+#ifdef CONFIG_PAX_MEMORY_UDEREF
+ pax_enter_kernel_user
+#else
+ pax_enter_kernel
+#endif
+
- #ifdef CONFIG_CONTEXT_TRACKING
+ /*
+ * We need to tell lockdep that IRQs are off. We can't do this until
+ * we fix gsbase, and we should do it before enter_from_user_mode
+@@ -524,7 +951,9 @@ END(irq_entries_start)
call enter_from_user_mode
#endif
@@ -16098,7 +15864,7 @@ index 055a01d..348b266 100644
/*
* Save previous stack pointer, optionally switch to interrupt stack.
* irq_count is used to check if a CPU is already on an interrupt stack
-@@ -529,6 +958,7 @@ END(irq_entries_start)
+@@ -536,6 +965,7 @@ END(irq_entries_start)
incl PER_CPU_VAR(irq_count)
cmovzq PER_CPU_VAR(irq_stack_ptr), %rsp
pushq %rdi
@@ -16106,7 +15872,7 @@ index 055a01d..348b266 100644
/* We entered an interrupt context - irqs are off: */
TRACE_IRQS_OFF
-@@ -561,6 +991,8 @@ ret_from_intr:
+@@ -567,6 +997,8 @@ ret_from_intr:
GLOBAL(retint_user)
mov %rsp,%rdi
call prepare_exit_to_usermode
@@ -16115,7 +15881,7 @@ index 055a01d..348b266 100644
TRACE_IRQS_IRETQ
SWAPGS
jmp restore_regs_and_iret
-@@ -578,6 +1010,21 @@ retint_kernel:
+@@ -584,6 +1016,21 @@ retint_kernel:
jmp 0b
1:
#endif
@@ -16137,7 +15903,7 @@ index 055a01d..348b266 100644
/*
* The iretq could re-enable interrupts:
*/
-@@ -621,15 +1068,15 @@ native_irq_return_ldt:
+@@ -627,15 +1074,15 @@ native_irq_return_ldt:
SWAPGS
movq PER_CPU_VAR(espfix_waddr), %rdi
movq %rax, (0*8)(%rdi) /* RAX */
@@ -16158,7 +15924,7 @@ index 055a01d..348b266 100644
movq %rax, (4*8)(%rdi)
andl $0xffff0000, %eax
popq %rdi
-@@ -639,7 +1086,7 @@ native_irq_return_ldt:
+@@ -645,7 +1092,7 @@ native_irq_return_ldt:
popq %rax
jmp native_irq_return_iret
#endif
@@ -16167,7 +15933,7 @@ index 055a01d..348b266 100644
/*
* APIC interrupts.
-@@ -651,7 +1098,7 @@ ENTRY(\sym)
+@@ -657,7 +1104,7 @@ ENTRY(\sym)
.Lcommon_\sym:
interrupt \do_sym
jmp ret_from_intr
@@ -16176,7 +15942,7 @@ index 055a01d..348b266 100644
.endm
#ifdef CONFIG_TRACING
-@@ -716,7 +1163,7 @@ apicinterrupt IRQ_WORK_VECTOR irq_work_interrupt smp_irq_work_interrupt
+@@ -722,7 +1169,7 @@ apicinterrupt IRQ_WORK_VECTOR irq_work_interrupt smp_irq_work_interrupt
/*
* Exception entry points.
*/
@@ -16185,7 +15951,7 @@ index 055a01d..348b266 100644
.macro idtentry sym do_sym has_error_code:req paranoid=0 shift_ist=-1
ENTRY(\sym)
-@@ -763,6 +1210,12 @@ ENTRY(\sym)
+@@ -769,6 +1216,12 @@ ENTRY(\sym)
.endif
.if \shift_ist != -1
@@ -16198,7 +15964,7 @@ index 055a01d..348b266 100644
subq $EXCEPTION_STKSZ, CPU_TSS_IST(\shift_ist)
.endif
-@@ -806,7 +1259,7 @@ ENTRY(\sym)
+@@ -812,7 +1265,7 @@ ENTRY(\sym)
jmp error_exit /* %ebx: no swapgs flag */
.endif
@@ -16207,7 +15973,7 @@ index 055a01d..348b266 100644
.endm
#ifdef CONFIG_TRACING
-@@ -848,8 +1301,9 @@ gs_change:
+@@ -854,8 +1307,9 @@ gs_change:
2: mfence /* workaround */
SWAPGS
popfq
@@ -16218,7 +15984,7 @@ index 055a01d..348b266 100644
_ASM_EXTABLE(gs_change, bad_gs)
.section .fixup, "ax"
-@@ -871,8 +1325,9 @@ ENTRY(do_softirq_own_stack)
+@@ -877,8 +1331,9 @@ ENTRY(do_softirq_own_stack)
call __do_softirq
leaveq
decl PER_CPU_VAR(irq_count)
@@ -16229,7 +15995,7 @@ index 055a01d..348b266 100644
#ifdef CONFIG_XEN
idtentry xen_hypervisor_callback xen_do_hypervisor_callback has_error_code=0
-@@ -908,7 +1363,7 @@ ENTRY(xen_do_hypervisor_callback) /* do_hypervisor_callback(struct *pt_regs) */
+@@ -914,7 +1369,7 @@ ENTRY(xen_do_hypervisor_callback) /* do_hypervisor_callback(struct *pt_regs) */
call xen_maybe_preempt_hcall
#endif
jmp error_exit
@@ -16238,7 +16004,7 @@ index 055a01d..348b266 100644
/*
* Hypervisor uses this for application faults while it executes.
-@@ -953,7 +1408,7 @@ ENTRY(xen_failsafe_callback)
+@@ -959,7 +1414,7 @@ ENTRY(xen_failsafe_callback)
SAVE_C_REGS
SAVE_EXTRA_REGS
jmp error_exit
@@ -16247,7 +16013,7 @@ index 055a01d..348b266 100644
apicinterrupt3 HYPERVISOR_CALLBACK_VECTOR \
xen_hvm_callback_vector xen_evtchn_do_upcall
-@@ -1002,8 +1457,34 @@ ENTRY(paranoid_entry)
+@@ -1008,8 +1463,34 @@ ENTRY(paranoid_entry)
js 1f /* negative -> in kernel */
SWAPGS
xorl %ebx, %ebx
@@ -16284,7 +16050,7 @@ index 055a01d..348b266 100644
/*
* "Paranoid" exit path from exception stack. This is invoked
-@@ -1020,19 +1501,26 @@ END(paranoid_entry)
+@@ -1026,19 +1507,26 @@ END(paranoid_entry)
ENTRY(paranoid_exit)
DISABLE_INTERRUPTS(CLBR_NONE)
TRACE_IRQS_OFF_DEBUG
@@ -16313,7 +16079,7 @@ index 055a01d..348b266 100644
/*
* Save all registers in pt_regs, and switch gs if needed.
-@@ -1046,21 +1534,26 @@ ENTRY(error_entry)
+@@ -1052,13 +1540,18 @@ ENTRY(error_entry)
testb $3, CS+8(%rsp)
jz .Lerror_kernelspace
@@ -16331,18 +16097,22 @@ index 055a01d..348b266 100644
+#endif
+
.Lerror_entry_from_usermode_after_swapgs:
+ /*
+ * We need to tell lockdep that IRQs are off. We can't do this until
+@@ -1069,10 +1562,12 @@ ENTRY(error_entry)
#ifdef CONFIG_CONTEXT_TRACKING
call enter_from_user_mode
#endif
++ pax_force_retaddr
+ ret
.Lerror_entry_done:
--
TRACE_IRQS_OFF
+ pax_force_retaddr
ret
/*
-@@ -1078,14 +1571,16 @@ ENTRY(error_entry)
+@@ -1090,14 +1585,16 @@ ENTRY(error_entry)
cmpq %rax, RIP+8(%rsp)
je .Lbstep_iret
cmpq $gs_change, RIP+8(%rsp)
@@ -16361,7 +16131,7 @@ index 055a01d..348b266 100644
.Lbstep_iret:
/* Fix truncated RIP */
-@@ -1099,6 +1594,12 @@ ENTRY(error_entry)
+@@ -1111,6 +1608,12 @@ ENTRY(error_entry)
*/
SWAPGS
@@ -16374,7 +16144,7 @@ index 055a01d..348b266 100644
/*
* Pretend that the exception came from user mode: set up pt_regs
* as if we faulted immediately after IRET and clear EBX so that
-@@ -1109,11 +1610,11 @@ ENTRY(error_entry)
+@@ -1121,11 +1624,11 @@ ENTRY(error_entry)
mov %rax, %rsp
decl %ebx
jmp .Lerror_entry_from_usermode_after_swapgs
@@ -16388,7 +16158,7 @@ index 055a01d..348b266 100644
* 1: already in kernel mode, don't need SWAPGS
* 0: user gsbase is loaded, we need SWAPGS and standard preparation for return to usermode
*/
-@@ -1121,10 +1622,10 @@ ENTRY(error_exit)
+@@ -1133,10 +1636,10 @@ ENTRY(error_exit)
movl %ebx, %eax
DISABLE_INTERRUPTS(CLBR_NONE)
TRACE_IRQS_OFF
@@ -16401,7 +16171,7 @@ index 055a01d..348b266 100644
/* Runs on exception stack */
ENTRY(nmi)
-@@ -1178,6 +1679,8 @@ ENTRY(nmi)
+@@ -1190,6 +1693,8 @@ ENTRY(nmi)
* other IST entries.
*/
@@ -16410,7 +16180,7 @@ index 055a01d..348b266 100644
/* Use %rdx as our temp variable throughout */
pushq %rdx
-@@ -1221,6 +1724,12 @@ ENTRY(nmi)
+@@ -1233,6 +1738,12 @@ ENTRY(nmi)
pushq %r14 /* pt_regs->r14 */
pushq %r15 /* pt_regs->r15 */
@@ -16423,7 +16193,7 @@ index 055a01d..348b266 100644
/*
* At this point we no longer need to worry about stack damage
* due to nesting -- we're on the normal thread stack and we're
-@@ -1231,12 +1740,19 @@ ENTRY(nmi)
+@@ -1243,12 +1754,19 @@ ENTRY(nmi)
movq $-1, %rsi
call do_nmi
@@ -16443,7 +16213,7 @@ index 055a01d..348b266 100644
jmp restore_c_regs_and_iret
.Lnmi_from_kernel:
-@@ -1358,6 +1874,7 @@ nested_nmi_out:
+@@ -1370,6 +1888,7 @@ nested_nmi_out:
popq %rdx
/* We are returning to kernel mode, so this cannot result in a fault. */
@@ -16451,7 +16221,16 @@ index 055a01d..348b266 100644
INTERRUPT_RETURN
first_nmi:
-@@ -1431,20 +1948,22 @@ end_repeat_nmi:
+@@ -1398,7 +1917,7 @@ first_nmi:
+ pushq %rsp /* RSP (minus 8 because of the previous push) */
+ addq $8, (%rsp) /* Fix up RSP */
+ pushfq /* RFLAGS */
+- pushq $__KERNEL_CS /* CS */
++ pushq 4*8(%rsp) /* CS */
+ pushq $1f /* RIP */
+ INTERRUPT_RETURN /* continues at repeat_nmi below */
+ 1:
+@@ -1443,20 +1962,22 @@ end_repeat_nmi:
ALLOC_PT_GPREGS_ON_STACK
/*
@@ -16477,7 +16256,7 @@ index 055a01d..348b266 100644
jnz nmi_restore
nmi_swapgs:
SWAPGS_UNSAFE_STACK
-@@ -1455,6 +1974,8 @@ nmi_restore:
+@@ -1467,6 +1988,8 @@ nmi_restore:
/* Point RSP at the "iret" frame. */
REMOVE_PT_GPREGS_FROM_STACK 6*8
@@ -16486,7 +16265,7 @@ index 055a01d..348b266 100644
/*
* Clear "NMI executing". Set DF first so that we can easily
* distinguish the remaining code between here and IRET from
-@@ -1472,9 +1993,9 @@ nmi_restore:
+@@ -1484,9 +2007,9 @@ nmi_restore:
* mode, so this cannot result in a fault.
*/
INTERRUPT_RETURN
@@ -16499,7 +16278,7 @@ index 055a01d..348b266 100644
-END(ignore_sysret)
+ENDPROC(ignore_sysret)
diff --git a/arch/x86/entry/entry_64_compat.S b/arch/x86/entry/entry_64_compat.S
-index a9360d4..e87da3e 100644
+index 6a1ae37..f1c3bfd 100644
--- a/arch/x86/entry/entry_64_compat.S
+++ b/arch/x86/entry/entry_64_compat.S
@@ -13,8 +13,10 @@
@@ -16511,9 +16290,9 @@ index a9360d4..e87da3e 100644
#include <linux/err.h>
+#include <asm/alternative-asm.h>
- /* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */
- #include <linux/elf-em.h>
-@@ -35,6 +37,32 @@ ENTRY(native_usergs_sysret32)
+ .section .entry.text, "ax"
+
+@@ -25,6 +27,32 @@ ENTRY(native_usergs_sysret32)
ENDPROC(native_usergs_sysret32)
#endif
@@ -16546,330 +16325,162 @@ index a9360d4..e87da3e 100644
/*
* 32-bit SYSENTER instruction entry.
*
-@@ -65,20 +93,21 @@ ENTRY(entry_SYSENTER_compat)
- */
- SWAPGS_UNSAFE_STACK
- movq PER_CPU_VAR(cpu_current_top_of_stack), %rsp
-- ENABLE_INTERRUPTS(CLBR_NONE)
-
- /* Zero-extending 32-bit regs, do not remove */
- movl %ebp, %ebp
- movl %eax, %eax
+@@ -76,26 +104,36 @@ ENTRY(entry_SYSENTER_compat)
+ ASM_CLAC /* Clear AC after saving FLAGS */
-- movl ASM_THREAD_INFO(TI_sysenter_return, %rsp, 0), %r10d
-+ GET_THREAD_INFO(%r11)
-+ movl TI_sysenter_return(%r11), %r11d
-
- /* Construct struct pt_regs on stack */
- pushq $__USER32_DS /* pt_regs->ss */
- pushq %rbp /* pt_regs->sp */
- pushfq /* pt_regs->flags */
-+ orl $X86_EFLAGS_IF,(%rsp)
pushq $__USER32_CS /* pt_regs->cs */
-- pushq %r10 /* pt_regs->ip = thread_info->sysenter_return */
-+ pushq %r11 /* pt_regs->ip = thread_info->sysenter_return */
+- xorq %r8,%r8
+- pushq %r8 /* pt_regs->ip = 0 (placeholder) */
++ pushq $0 /* pt_regs->ip = 0 (placeholder) */
pushq %rax /* pt_regs->orig_ax */
++ xorl %eax,%eax
pushq %rdi /* pt_regs->di */
pushq %rsi /* pt_regs->si */
-@@ -88,15 +117,37 @@ ENTRY(entry_SYSENTER_compat)
- cld
- sub $(10*8), %rsp /* pt_regs->r8-11, bp, bx, r12-15 not saved */
-
+ pushq %rdx /* pt_regs->dx */
+ pushq %rcx /* pt_regs->cx */
+ pushq $-ENOSYS /* pt_regs->ax */
+- pushq %r8 /* pt_regs->r8 = 0 */
+- pushq %r8 /* pt_regs->r9 = 0 */
+- pushq %r8 /* pt_regs->r10 = 0 */
+- pushq %r8 /* pt_regs->r11 = 0 */
++ pushq %rax /* pt_regs->r8 = 0 */
++ pushq %rax /* pt_regs->r9 = 0 */
++ pushq %rax /* pt_regs->r10 = 0 */
++ pushq %rax /* pt_regs->r11 = 0 */
+ pushq %rbx /* pt_regs->rbx */
+ pushq %rbp /* pt_regs->rbp (will be overwritten) */
+- pushq %r8 /* pt_regs->r12 = 0 */
+- pushq %r8 /* pt_regs->r13 = 0 */
+- pushq %r8 /* pt_regs->r14 = 0 */
+- pushq %r8 /* pt_regs->r15 = 0 */
+#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
-+ movq %r12, R12(%rsp)
++ pushq %r12 /* pt_regs->r12 */
++#else
++ pushq %rax /* pt_regs->r12 = 0 */
+#endif
-+
++ pushq %rax /* pt_regs->r13 = 0 */
++ pushq %rax /* pt_regs->r14 = 0 */
++ pushq %rax /* pt_regs->r15 = 0 */
+ cld
+
+ pax_enter_kernel_user
+
+#ifdef CONFIG_PAX_RANDKSTACK
+ pax_erase_kstack
+#endif
+
-+ ENABLE_INTERRUPTS(CLBR_NONE)
-+
- /*
- * no need to do an access_ok check here because rbp has been
- * 32-bit zero extended
- */
-+
-+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ addq pax_user_shadow_base, %rbp
-+ ASM_PAX_OPEN_USERLAND
-+#endif
-+
- ASM_STAC
- 1: movl (%rbp), %ebp
- _ASM_EXTABLE(1b, ia32_badarg)
- ASM_CLAC
-
-+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ ASM_PAX_CLOSE_USERLAND
-+#endif
-+
/*
* Sysenter doesn't filter flags, so we need to clear NT
* ourselves. To save a few cycles, we can check whether
-@@ -106,8 +157,9 @@ ENTRY(entry_SYSENTER_compat)
- jnz sysenter_fix_flags
- sysenter_flags_fixed:
-
-- orl $TS_COMPAT, ASM_THREAD_INFO(TI_status, %rsp, SIZEOF_PTREGS)
-- testl $_TIF_WORK_SYSCALL_ENTRY, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ GET_THREAD_INFO(%r11)
-+ orl $TS_COMPAT, TI_status(%r11)
-+ testl $_TIF_WORK_SYSCALL_ENTRY, TI_flags(%r11)
- jnz sysenter_tracesys
-
- sysenter_do_call:
-@@ -123,9 +175,10 @@ sysenter_dispatch:
- call *ia32_sys_call_table(, %rax, 8)
- movq %rax, RAX(%rsp)
- 1:
-+ GET_THREAD_INFO(%r11)
- DISABLE_INTERRUPTS(CLBR_NONE)
- TRACE_IRQS_OFF
-- testl $_TIF_ALLWORK_MASK, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ testl $_TIF_ALLWORK_MASK, TI_flags(%r11)
- jnz sysexit_audit
- sysexit_from_sys_call:
- /*
-@@ -138,11 +191,18 @@ sysexit_from_sys_call:
- * This code path is still called 'sysexit' because it pairs
- * with 'sysenter' and it uses the SYSENTER calling convention.
- */
-- andl $~TS_COMPAT, ASM_THREAD_INFO(TI_status, %rsp, SIZEOF_PTREGS)
-+ pax_exit_kernel_user
-+ pax_erase_kstack
-+ andl $~TS_COMPAT, TI_status(%r11)
- movl RIP(%rsp), %ecx /* User %eip */
- movq RAX(%rsp), %rax
- movl RSI(%rsp), %esi
- movl RDI(%rsp), %edi
-+
-+#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
-+ movq R12(%rsp), %r12
-+#endif
-+
- xorl %edx, %edx /* Do not leak kernel information */
- xorq %r8, %r8
- xorq %r9, %r9
-@@ -195,6 +255,8 @@ sysexit_from_sys_call:
- movl %eax, %edi /* arg1 (RDI) <= syscall number (EAX) */
- call __audit_syscall_entry
-
-+ pax_erase_kstack
-+
- /*
- * We are going to jump back to the syscall dispatch code.
- * Prepare syscall args as required by the 64-bit C ABI.
-@@ -212,7 +274,7 @@ sysexit_from_sys_call:
- .macro auditsys_exit exit
- TRACE_IRQS_ON
- ENABLE_INTERRUPTS(CLBR_NONE)
-- testl $(_TIF_ALLWORK_MASK & ~_TIF_SYSCALL_AUDIT), ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ testl $(_TIF_ALLWORK_MASK & ~_TIF_SYSCALL_AUDIT), TI_flags(%r11)
- jnz ia32_ret_from_sys_call
- movl %eax, %esi /* second arg, syscall return value */
- cmpl $-MAX_ERRNO, %eax /* is it an error ? */
-@@ -221,10 +283,11 @@ sysexit_from_sys_call:
- 1: setbe %al /* 1 if error, 0 if not */
- movzbl %al, %edi /* zero-extend that into %edi */
- call __audit_syscall_exit
-+ GET_THREAD_INFO(%r11)
- movl $(_TIF_ALLWORK_MASK & ~_TIF_SYSCALL_AUDIT), %edi
- DISABLE_INTERRUPTS(CLBR_NONE)
- TRACE_IRQS_OFF
-- testl %edi, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ testl %edi, TI_flags(%r11)
- jz \exit
- xorl %eax, %eax /* Do not leak kernel information */
- movq %rax, R11(%rsp)
-@@ -250,7 +313,7 @@ sysenter_fix_flags:
-
- sysenter_tracesys:
- #ifdef CONFIG_AUDITSYSCALL
-- testl $(_TIF_WORK_SYSCALL_ENTRY & ~_TIF_SYSCALL_AUDIT), ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ testl $(_TIF_WORK_SYSCALL_ENTRY & ~_TIF_SYSCALL_AUDIT), TI_flags(%r11)
- jz sysenter_auditsys
- #endif
- SAVE_EXTRA_REGS
-@@ -270,6 +333,9 @@ sysenter_tracesys:
- movl %eax, %eax /* zero extension */
-
- RESTORE_EXTRA_REGS
-+
-+ pax_erase_kstack
-+
- jmp sysenter_do_call
- ENDPROC(entry_SYSENTER_compat)
-
-@@ -312,7 +378,6 @@ ENTRY(entry_SYSCALL_compat)
- SWAPGS_UNSAFE_STACK
- movl %esp, %r8d
- movq PER_CPU_VAR(cpu_current_top_of_stack), %rsp
-- ENABLE_INTERRUPTS(CLBR_NONE)
-
- /* Zero-extending 32-bit regs, do not remove */
- movl %eax, %eax
-@@ -332,16 +397,40 @@ ENTRY(entry_SYSCALL_compat)
+@@ -181,17 +219,27 @@ ENTRY(entry_SYSCALL_compat)
+ pushq %rdx /* pt_regs->dx */
+ pushq %rbp /* pt_regs->cx (stashed in bp) */
pushq $-ENOSYS /* pt_regs->ax */
- sub $(10*8), %rsp /* pt_regs->r8-11, bp, bx, r12-15 not saved */
-
+- xorq %r8,%r8
+- pushq %r8 /* pt_regs->r8 = 0 */
+- pushq %r8 /* pt_regs->r9 = 0 */
+- pushq %r8 /* pt_regs->r10 = 0 */
+- pushq %r8 /* pt_regs->r11 = 0 */
++ xorl %eax,%eax
++ pushq %rax /* pt_regs->r8 = 0 */
++ pushq %rax /* pt_regs->r9 = 0 */
++ pushq %rax /* pt_regs->r10 = 0 */
++ pushq %rax /* pt_regs->r11 = 0 */
+ pushq %rbx /* pt_regs->rbx */
+ pushq %rbp /* pt_regs->rbp (will be overwritten) */
+- pushq %r8 /* pt_regs->r12 = 0 */
+- pushq %r8 /* pt_regs->r13 = 0 */
+- pushq %r8 /* pt_regs->r14 = 0 */
+- pushq %r8 /* pt_regs->r15 = 0 */
+#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
-+ movq %r12, R12(%rsp)
++ pushq %r12 /* pt_regs->r12 */
++#else
++ pushq %rax /* pt_regs->r12 = 0 */
+#endif
++ pushq %rax /* pt_regs->r13 = 0 */
++ pushq %rax /* pt_regs->r14 = 0 */
++ pushq %rax /* pt_regs->r15 = 0 */
+
+ pax_enter_kernel_user
+
+#ifdef CONFIG_PAX_RANDKSTACK
+ pax_erase_kstack
+#endif
-+
-+ ENABLE_INTERRUPTS(CLBR_NONE)
-+
- /*
- * No need to do an access_ok check here because r8 has been
- * 32-bit zero extended:
- */
-+
-+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ addq pax_user_shadow_base, %r8
-+ ASM_PAX_OPEN_USERLAND
-+#endif
-+
- ASM_STAC
- 1: movl (%r8), %r9d
- _ASM_EXTABLE(1b, ia32_badarg)
- ASM_CLAC
-- orl $TS_COMPAT, ASM_THREAD_INFO(TI_status, %rsp, SIZEOF_PTREGS)
-- testl $_TIF_WORK_SYSCALL_ENTRY, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+
-+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ ASM_PAX_CLOSE_USERLAND
-+#endif
-+
-+ GET_THREAD_INFO(%r11)
-+ orl $TS_COMPAT,TI_status(%r11)
-+ testl $_TIF_WORK_SYSCALL_ENTRY,TI_flags(%r11)
- jnz cstar_tracesys
- cstar_do_call:
-@@ -359,19 +448,27 @@ cstar_dispatch:
- call *ia32_sys_call_table(, %rax, 8)
- movq %rax, RAX(%rsp)
- 1:
-+ GET_THREAD_INFO(%r11)
- DISABLE_INTERRUPTS(CLBR_NONE)
- TRACE_IRQS_OFF
-- testl $_TIF_ALLWORK_MASK, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ testl $_TIF_ALLWORK_MASK, TI_flags(%r11)
- jnz sysretl_audit
+ /*
+ * User mode is traced as though IRQs are on, and SYSENTER
+@@ -207,11 +255,18 @@ ENTRY(entry_SYSCALL_compat)
- sysretl_from_sys_call:
-- andl $~TS_COMPAT, ASM_THREAD_INFO(TI_status, %rsp, SIZEOF_PTREGS)
+ /* Opportunistic SYSRET */
+ sysret32_from_system_call:
+ pax_exit_kernel_user
+ pax_erase_kstack
-+ andl $~TS_COMPAT, TI_status(%r11)
- movl RDX(%rsp), %edx
- movl RSI(%rsp), %esi
- movl RDI(%rsp), %edi
- movl RIP(%rsp), %ecx
- movl EFLAGS(%rsp), %r11d
-- movq RAX(%rsp), %rax
-+ movq RAX(%rsp), %rax
+ TRACE_IRQS_ON /* User mode traces as IRQs on. */
+ movq RBX(%rsp), %rbx /* pt_regs->rbx */
+ movq RBP(%rsp), %rbp /* pt_regs->rbp */
+ movq EFLAGS(%rsp), %r11 /* pt_regs->flags (in r11) */
+ movq RIP(%rsp), %rcx /* pt_regs->ip (in rcx) */
+
+#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
+ movq R12(%rsp), %r12
+#endif
+
+ addq $RAX, %rsp /* Skip r8-r15 */
+ popq %rax /* pt_regs->rax */
+ popq %rdx /* Skip pt_regs->cx */
+@@ -239,7 +294,7 @@ sysret32_from_system_call:
xorq %r10, %r10
- xorq %r9, %r9
- xorq %r8, %r8
-@@ -406,7 +503,7 @@ sysretl_audit:
-
- cstar_tracesys:
- #ifdef CONFIG_AUDITSYSCALL
-- testl $(_TIF_WORK_SYSCALL_ENTRY & ~_TIF_SYSCALL_AUDIT), ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ testl $(_TIF_WORK_SYSCALL_ENTRY & ~_TIF_SYSCALL_AUDIT), TI_flags(%r11)
- jz cstar_auditsys
- #endif
- xchgl %r9d, %ebp
-@@ -429,6 +526,9 @@ cstar_tracesys:
-
- RESTORE_EXTRA_REGS
- xchgl %ebp, %r9d
-+
-+ pax_erase_kstack
-+
- jmp cstar_do_call
- END(entry_SYSCALL_compat)
-
-@@ -449,6 +549,11 @@ ia32_badarg:
- */
+ movq RSP-ORIG_RAX(%rsp), %rsp
+ USERGS_SYSRET32
+-END(entry_SYSCALL_compat)
++ENDPROC(entry_SYSCALL_compat)
- ASM_CLAC /* undo STAC */
-+
-+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ ASM_PAX_CLOSE_USERLAND
-+#endif
-+
- movq $-EFAULT, RAX(%rsp) /* return -EFAULT if possible */
-
- /* Fill in the rest of pt_regs */
-@@ -505,14 +610,8 @@ ia32_ret_from_sys_call:
- */
-
- ENTRY(entry_INT80_compat)
-- /*
-- * Interrupts are off on entry.
-- * We do not frame this tiny irq-off block with TRACE_IRQS_OFF/ON,
-- * it is too small to ever cause noticeable irq latency.
-- */
- PARAVIRT_ADJUST_EXCEPTION_FRAME
- SWAPGS
-- ENABLE_INTERRUPTS(CLBR_NONE)
-
- /* Zero-extending 32-bit regs, do not remove */
- movl %eax, %eax
-@@ -531,8 +630,26 @@ ENTRY(entry_INT80_compat)
+ /*
+ * Emulated IA32 system calls via int 0x80.
+@@ -285,11 +340,11 @@ ENTRY(entry_INT80_compat)
+ pushq %rdx /* pt_regs->dx */
+ pushq %rcx /* pt_regs->cx */
+ pushq $-ENOSYS /* pt_regs->ax */
+- xorq %r8,%r8
+- pushq %r8 /* pt_regs->r8 = 0 */
+- pushq %r8 /* pt_regs->r9 = 0 */
+- pushq %r8 /* pt_regs->r10 = 0 */
+- pushq %r8 /* pt_regs->r11 = 0 */
++ xorl %eax,%eax
++ pushq %rax /* pt_regs->r8 = 0 */
++ pushq %rax /* pt_regs->r9 = 0 */
++ pushq %rax /* pt_regs->r10 = 0 */
++ pushq %rax /* pt_regs->r11 = 0 */
+ pushq %rbx /* pt_regs->rbx */
+ pushq %rbp /* pt_regs->rbp */
+ pushq %r12 /* pt_regs->r12 */
+@@ -298,6 +353,12 @@ ENTRY(entry_INT80_compat)
+ pushq %r15 /* pt_regs->r15 */
cld
- sub $(6*8), %rsp /* pt_regs->bp, bx, r12-15 not saved */
-- orl $TS_COMPAT, ASM_THREAD_INFO(TI_status, %rsp, SIZEOF_PTREGS)
-- testl $_TIF_WORK_SYSCALL_ENTRY, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
-+ movq %r12, R12(%rsp)
-+#endif
-+
+ pax_enter_kernel_user
+
+#ifdef CONFIG_PAX_RANDKSTACK
+ pax_erase_kstack
+#endif
+
-+ /*
-+ * Interrupts are off on entry.
-+ * We do not frame this tiny irq-off block with TRACE_IRQS_OFF/ON,
-+ * it is too small to ever cause noticeable irq latency.
-+ */
-+ ENABLE_INTERRUPTS(CLBR_NONE)
-+
-+ GET_THREAD_INFO(%r11)
-+ orl $TS_COMPAT, TI_status(%r11)
-+ testl $_TIF_WORK_SYSCALL_ENTRY, TI_flags(%r11)
- jnz ia32_tracesys
-
- ia32_do_call:
-@@ -567,6 +684,9 @@ ia32_tracesys:
- movl RDI(%rsp), %edi
- movl %eax, %eax /* zero extension */
- RESTORE_EXTRA_REGS
-+
+ /*
+ * User mode is traced as though IRQs are on, and the interrupt
+ * gate turned them off.
+@@ -309,10 +370,12 @@ ENTRY(entry_INT80_compat)
+ .Lsyscall_32_done:
+
+ /* Go back to user mode. */
++ pax_exit_kernel_user
+ pax_erase_kstack
-+
- jmp ia32_do_call
- END(entry_INT80_compat)
+ TRACE_IRQS_ON
+ SWAPGS
+ jmp restore_regs_and_iret
+-END(entry_INT80_compat)
++ENDPROC(entry_INT80_compat)
+ ALIGN
+ GLOBAL(stub32_clone)
diff --git a/arch/x86/entry/thunk_64.S b/arch/x86/entry/thunk_64.S
index efb2b93..8a9cb8e 100644
--- a/arch/x86/entry/thunk_64.S
@@ -16891,10 +16502,10 @@ index efb2b93..8a9cb8e 100644
_ASM_NOKPROBE(restore)
#endif
diff --git a/arch/x86/entry/vdso/Makefile b/arch/x86/entry/vdso/Makefile
-index a3d0767..36d66c9 100644
+index 265c0ed..6f03321 100644
--- a/arch/x86/entry/vdso/Makefile
+++ b/arch/x86/entry/vdso/Makefile
-@@ -175,7 +175,7 @@ quiet_cmd_vdso = VDSO $@
+@@ -162,7 +162,7 @@ quiet_cmd_vdso = VDSO $@
-Wl,-T,$(filter %.lds,$^) $(filter %.o,$^) && \
sh $(srctree)/$(src)/checkundef.sh '$(NM)' '$@'
@@ -16944,7 +16555,7 @@ index 0224987..0359810 100644
fprintf(outfile, "const struct vdso_image %s = {\n", name);
diff --git a/arch/x86/entry/vdso/vma.c b/arch/x86/entry/vdso/vma.c
-index 4345431..50ae49a 100644
+index 64df471..8346804 100644
--- a/arch/x86/entry/vdso/vma.c
+++ b/arch/x86/entry/vdso/vma.c
@@ -19,10 +19,7 @@
@@ -17005,18 +16616,7 @@ index 4345431..50ae49a 100644
up_write(&mm->mmap_sem);
return ret;
-@@ -191,8 +190,8 @@ static int load_vdso32(void)
-
- if (selected_vdso32->sym_VDSO32_SYSENTER_RETURN)
- current_thread_info()->sysenter_return =
-- current->mm->context.vdso +
-- selected_vdso32->sym_VDSO32_SYSENTER_RETURN;
-+ (void __force_user *)(current->mm->context.vdso +
-+ selected_vdso32->sym_VDSO32_SYSENTER_RETURN);
-
- return 0;
- }
-@@ -201,9 +200,6 @@ static int load_vdso32(void)
+@@ -190,9 +189,6 @@ static int load_vdso32(void)
#ifdef CONFIG_X86_64
int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
{
@@ -17026,7 +16626,7 @@ index 4345431..50ae49a 100644
return map_vdso(&vdso_image_64, true);
}
-@@ -212,12 +208,8 @@ int compat_arch_setup_additional_pages(struct linux_binprm *bprm,
+@@ -201,12 +197,8 @@ int compat_arch_setup_additional_pages(struct linux_binprm *bprm,
int uses_interp)
{
#ifdef CONFIG_X86_X32_ABI
@@ -17040,7 +16640,7 @@ index 4345431..50ae49a 100644
#endif
#ifdef CONFIG_IA32_EMULATION
return load_vdso32();
-@@ -234,15 +226,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
+@@ -223,15 +215,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
#endif
#ifdef CONFIG_X86_64
@@ -17057,18 +16657,23 @@ index 4345431..50ae49a 100644
{
int cpu = smp_processor_id();
diff --git a/arch/x86/entry/vsyscall/vsyscall_64.c b/arch/x86/entry/vsyscall/vsyscall_64.c
-index b160c0c..a00ee2f 100644
+index 174c2549..489a8e7 100644
--- a/arch/x86/entry/vsyscall/vsyscall_64.c
+++ b/arch/x86/entry/vsyscall/vsyscall_64.c
-@@ -38,15 +38,13 @@
+@@ -38,10 +38,8 @@
#define CREATE_TRACE_POINTS
#include "vsyscall_trace.h"
--static enum { EMULATE, NATIVE, NONE } vsyscall_mode = EMULATE;
-+static enum { EMULATE, NONE } vsyscall_mode = EMULATE;
-
- static int __init vsyscall_setup(char *str)
- {
+-static enum { EMULATE, NATIVE, NONE } vsyscall_mode =
+-#if defined(CONFIG_LEGACY_VSYSCALL_NATIVE)
+- NATIVE;
+-#elif defined(CONFIG_LEGACY_VSYSCALL_NONE)
++static enum { EMULATE, NONE } vsyscall_mode =
++#if defined(CONFIG_LEGACY_VSYSCALL_NONE)
+ NONE;
+ #else
+ EMULATE;
+@@ -52,8 +50,6 @@ static int __init vsyscall_setup(char *str)
if (str) {
if (!strcmp("emulate", str))
vsyscall_mode = EMULATE;
@@ -17077,7 +16682,7 @@ index b160c0c..a00ee2f 100644
else if (!strcmp("none", str))
vsyscall_mode = NONE;
else
-@@ -264,8 +262,7 @@ do_ret:
+@@ -271,8 +267,7 @@ do_ret:
return true;
sigsegv:
@@ -17087,7 +16692,7 @@ index b160c0c..a00ee2f 100644
}
/*
-@@ -283,8 +280,8 @@ static const struct vm_operations_struct gate_vma_ops = {
+@@ -290,8 +285,8 @@ static const struct vm_operations_struct gate_vma_ops = {
static struct vm_area_struct gate_vma = {
.vm_start = VSYSCALL_ADDR,
.vm_end = VSYSCALL_ADDR + PAGE_SIZE,
@@ -17098,7 +16703,7 @@ index b160c0c..a00ee2f 100644
.vm_ops = &gate_vma_ops,
};
-@@ -325,10 +322,7 @@ void __init map_vsyscall(void)
+@@ -332,10 +327,7 @@ void __init map_vsyscall(void)
unsigned long physaddr_vsyscall = __pa_symbol(&__vsyscall_page);
if (vsyscall_mode != NONE)
@@ -17137,7 +16742,7 @@ index ae6aad1..719d6d9 100644
set_fs(KERNEL_DS);
has_dumped = 1;
diff --git a/arch/x86/ia32/ia32_signal.c b/arch/x86/ia32/ia32_signal.c
-index a0a19b7..10b0289 100644
+index 0552884..4e736e4 100644
--- a/arch/x86/ia32/ia32_signal.c
+++ b/arch/x86/ia32/ia32_signal.c
@@ -123,7 +123,7 @@ asmlinkage long sys32_sigreturn(void)
@@ -17163,9 +16768,9 @@ index a0a19b7..10b0289 100644
/* Return stub is in 32bit vsyscall page */
if (current->mm->context.vdso)
- restorer = current->mm->context.vdso +
-- selected_vdso32->sym___kernel_sigreturn;
+- vdso_image_32.sym___kernel_sigreturn;
+ restorer = (void __force_user *)(current->mm->context.vdso +
-+ selected_vdso32->sym___kernel_sigreturn);
++ vdso_image_32.sym___kernel_sigreturn);
else
- restorer = &frame->retcode;
+ restorer = frame->retcode;
@@ -17197,10 +16802,10 @@ index a0a19b7..10b0289 100644
+ else if (current->mm->context.vdso)
+ /* Return stub is in 32bit vsyscall page */
+ restorer = (void __force_user *)(current->mm->context.vdso +
-+ selected_vdso32->sym___kernel_rt_sigreturn);
++ vdso_image_32.sym___kernel_rt_sigreturn);
else
- restorer = current->mm->context.vdso +
-- selected_vdso32->sym___kernel_rt_sigreturn;
+- vdso_image_32.sym___kernel_rt_sigreturn;
+ restorer = frame->retcode;
put_user_ex(ptr_to_compat(restorer), &frame->pretcode);
@@ -17398,7 +17003,7 @@ index 7bfc85b..65d1ec4 100644
ALTINSTR_REPLACEMENT(newinstr2, feature2, 2) \
".popsection"
diff --git a/arch/x86/include/asm/apic.h b/arch/x86/include/asm/apic.h
-index ebf6d5e..91c1cf2 100644
+index a30316b..db419a1 100644
--- a/arch/x86/include/asm/apic.h
+++ b/arch/x86/include/asm/apic.h
@@ -45,7 +45,7 @@ static inline void generic_apic_probe(void)
@@ -17433,7 +17038,7 @@ index 20370c6..a2eb9b0 100644
"popl %%ebp\n\t"
"popl %%edi\n\t"
diff --git a/arch/x86/include/asm/atomic.h b/arch/x86/include/asm/atomic.h
-index fb52aa6..527487e 100644
+index ae5fb83..f6a093d 100644
--- a/arch/x86/include/asm/atomic.h
+++ b/arch/x86/include/asm/atomic.h
@@ -28,6 +28,17 @@ static __always_inline int atomic_read(const atomic_t *v)
@@ -17957,7 +17562,7 @@ index a11c30b..66fd8a0 100644
* @i: integer value to subtract
* @v: pointer to type atomic64_t
diff --git a/arch/x86/include/asm/atomic64_64.h b/arch/x86/include/asm/atomic64_64.h
-index 50e33ef..d36dd50 100644
+index 0373510..e37ee10 100644
--- a/arch/x86/include/asm/atomic64_64.h
+++ b/arch/x86/include/asm/atomic64_64.h
@@ -22,6 +22,18 @@ static inline long atomic64_read(const atomic64_t *v)
@@ -18467,20 +18072,20 @@ index acdee09..e5c31cd 100644
struct compat_timespec {
compat_time_t tv_sec;
diff --git a/arch/x86/include/asm/cpufeature.h b/arch/x86/include/asm/cpufeature.h
-index 9727b3b..183784a 100644
+index f7ba9fb..f658131 100644
--- a/arch/x86/include/asm/cpufeature.h
+++ b/arch/x86/include/asm/cpufeature.h
-@@ -216,7 +216,8 @@
- #define X86_FEATURE_PAUSEFILTER ( 8*32+13) /* AMD filtered pause intercept */
+@@ -217,7 +217,8 @@
#define X86_FEATURE_PFTHRESHOLD ( 8*32+14) /* AMD pause filter threshold */
#define X86_FEATURE_VMMCALL ( 8*32+15) /* Prefer vmmcall to vmcall */
+ #define X86_FEATURE_XENPV ( 8*32+16) /* "" Xen paravirtual guest */
-
+#define X86_FEATURE_PCIDUDEREF ( 8*32+30) /* PaX PCID based UDEREF */
+#define X86_FEATURE_STRONGUDEREF (8*32+31) /* PaX PCID based strong UDEREF */
/* Intel-defined CPU features, CPUID level 0x00000007:0 (ebx), word 9 */
#define X86_FEATURE_FSGSBASE ( 9*32+ 0) /* {RD/WR}{FS/GS}BASE instructions*/
-@@ -224,7 +225,7 @@
+@@ -225,7 +226,7 @@
#define X86_FEATURE_BMI1 ( 9*32+ 3) /* 1st group bit manipulation extensions */
#define X86_FEATURE_HLE ( 9*32+ 4) /* Hardware Lock Elision */
#define X86_FEATURE_AVX2 ( 9*32+ 5) /* AVX2 instructions */
@@ -18489,7 +18094,7 @@ index 9727b3b..183784a 100644
#define X86_FEATURE_BMI2 ( 9*32+ 8) /* 2nd group bit manipulation extensions */
#define X86_FEATURE_ERMS ( 9*32+ 9) /* Enhanced REP MOVSB/STOSB */
#define X86_FEATURE_INVPCID ( 9*32+10) /* Invalidate Processor Context ID */
-@@ -404,6 +405,7 @@ extern const char * const x86_bug_flags[NBUGINTS*32];
+@@ -408,6 +409,7 @@ extern const char * const x86_bug_flags[NBUGINTS*32];
#define cpu_has_eager_fpu boot_cpu_has(X86_FEATURE_EAGER_FPU)
#define cpu_has_topoext boot_cpu_has(X86_FEATURE_TOPOEXT)
#define cpu_has_bpext boot_cpu_has(X86_FEATURE_BPEXT)
@@ -18497,7 +18102,7 @@ index 9727b3b..183784a 100644
#if __GNUC__ >= 4
extern void warn_pre_alternatives(void);
-@@ -457,7 +459,8 @@ static __always_inline __pure bool __static_cpu_has(u16 bit)
+@@ -461,7 +463,8 @@ static __always_inline __pure bool __static_cpu_has(u16 bit)
#ifdef CONFIG_X86_DEBUG_STATIC_CPU_HAS
t_warn:
@@ -18507,7 +18112,7 @@ index 9727b3b..183784a 100644
return false;
#endif
-@@ -478,7 +481,7 @@ static __always_inline __pure bool __static_cpu_has(u16 bit)
+@@ -482,7 +485,7 @@ static __always_inline __pure bool __static_cpu_has(u16 bit)
".section .discard,\"aw\",@progbits\n"
" .byte 0xff + (4f-3f) - (2b-1b)\n" /* size check */
".previous\n"
@@ -18516,7 +18121,7 @@ index 9727b3b..183784a 100644
"3: movb $1,%0\n"
"4:\n"
".previous\n"
-@@ -513,7 +516,7 @@ static __always_inline __pure bool _static_cpu_has_safe(u16 bit)
+@@ -517,7 +520,7 @@ static __always_inline __pure bool _static_cpu_has_safe(u16 bit)
" .byte 5f - 4f\n" /* repl len */
" .byte 3b - 2b\n" /* pad len */
".previous\n"
@@ -18525,7 +18130,7 @@ index 9727b3b..183784a 100644
"4: jmp %l[t_no]\n"
"5:\n"
".previous\n"
-@@ -548,7 +551,7 @@ static __always_inline __pure bool _static_cpu_has_safe(u16 bit)
+@@ -552,7 +555,7 @@ static __always_inline __pure bool _static_cpu_has_safe(u16 bit)
".section .discard,\"aw\",@progbits\n"
" .byte 0xff + (4f-3f) - (2b-1b)\n" /* size check */
".previous\n"
@@ -18534,7 +18139,7 @@ index 9727b3b..183784a 100644
"3: movb $0,%0\n"
"4:\n"
".previous\n"
-@@ -563,7 +566,7 @@ static __always_inline __pure bool _static_cpu_has_safe(u16 bit)
+@@ -567,7 +570,7 @@ static __always_inline __pure bool _static_cpu_has_safe(u16 bit)
".section .discard,\"aw\",@progbits\n"
" .byte 0xff + (6f-5f) - (4b-3b)\n" /* size check */
".previous\n"
@@ -18827,7 +18432,7 @@ index fe884e1..46149ae 100644
{
spin_unlock_irqrestore(&dma_spin_lock, flags);
diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h
-index 141c561..120c5386 100644
+index 1514753..436825b 100644
--- a/arch/x86/include/asm/elf.h
+++ b/arch/x86/include/asm/elf.h
@@ -75,9 +75,6 @@ typedef struct user_fxsr_struct elf_fpxregset_t;
@@ -18896,7 +18501,7 @@ index 141c561..120c5386 100644
#define VDSO_ENTRY \
- ((unsigned long)current->mm->context.vdso + \
+ (current->mm->context.vdso + \
- selected_vdso32->sym___kernel_vsyscall)
+ vdso_image_32.sym___kernel_vsyscall)
struct linux_binprm;
diff --git a/arch/x86/include/asm/emergency-restart.h b/arch/x86/include/asm/emergency-restart.h
@@ -19097,10 +18702,10 @@ index 3c3550c..ca9e4c3 100644
/*
diff --git a/arch/x86/include/asm/fpu/types.h b/arch/x86/include/asm/fpu/types.h
-index c49c517..224eeea 100644
+index 1c6f6ac..2575de1 100644
--- a/arch/x86/include/asm/fpu/types.h
+++ b/arch/x86/include/asm/fpu/types.h
-@@ -199,6 +199,39 @@ union fpregs_state {
+@@ -257,6 +257,39 @@ union fpregs_state {
*/
struct fpu {
/*
@@ -19140,7 +18745,7 @@ index c49c517..224eeea 100644
* @last_cpu:
*
* Records the last CPU on which this context was loaded into
-@@ -255,43 +288,6 @@ struct fpu {
+@@ -313,43 +346,6 @@ struct fpu {
* deal with bursty apps that only use the FPU for a short time:
*/
unsigned char counter;
@@ -20280,10 +19885,10 @@ index cdaa58c..ae30f0d 100644
static inline void pud_clear(pud_t *pudp)
diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h
-index 867da5b..7ec083d 100644
+index 6ec0c8b..1e50b49 100644
--- a/arch/x86/include/asm/pgtable.h
+++ b/arch/x86/include/asm/pgtable.h
-@@ -47,6 +47,7 @@ extern struct mm_struct *pgd_page_get_mm(struct page *page);
+@@ -54,6 +54,7 @@ extern struct mm_struct *pgd_page_get_mm(struct page *page);
#ifndef __PAGETABLE_PUD_FOLDED
#define set_pgd(pgdp, pgd) native_set_pgd(pgdp, pgd)
@@ -20291,7 +19896,7 @@ index 867da5b..7ec083d 100644
#define pgd_clear(pgd) native_pgd_clear(pgd)
#endif
-@@ -84,12 +85,53 @@ extern struct mm_struct *pgd_page_get_mm(struct page *page);
+@@ -91,12 +92,53 @@ extern struct mm_struct *pgd_page_get_mm(struct page *page);
#define arch_end_context_switch(prev) do {} while(0)
@@ -20345,8 +19950,8 @@ index 867da5b..7ec083d 100644
static inline int pte_dirty(pte_t pte)
{
return pte_flags(pte) & _PAGE_DIRTY;
-@@ -150,6 +192,11 @@ static inline unsigned long pud_pfn(pud_t pud)
- return (pud_val(pud) & PTE_PFN_MASK) >> PAGE_SHIFT;
+@@ -157,6 +199,11 @@ static inline unsigned long pud_pfn(pud_t pud)
+ return (pud_val(pud) & pud_pfn_mask(pud)) >> PAGE_SHIFT;
}
+static inline unsigned long pgd_pfn(pgd_t pgd)
@@ -20357,7 +19962,7 @@ index 867da5b..7ec083d 100644
#define pte_page(pte) pfn_to_page(pte_pfn(pte))
static inline int pmd_large(pmd_t pte)
-@@ -203,9 +250,29 @@ static inline pte_t pte_wrprotect(pte_t pte)
+@@ -210,9 +257,29 @@ static inline pte_t pte_wrprotect(pte_t pte)
return pte_clear_flags(pte, _PAGE_RW);
}
@@ -20388,7 +19993,7 @@ index 867da5b..7ec083d 100644
}
static inline pte_t pte_mkdirty(pte_t pte)
-@@ -426,6 +493,16 @@ pte_t *populate_extra_pte(unsigned long vaddr);
+@@ -445,6 +512,16 @@ pte_t *populate_extra_pte(unsigned long vaddr);
#endif
#ifndef __ASSEMBLY__
@@ -20405,16 +20010,7 @@ index 867da5b..7ec083d 100644
#include <linux/mm_types.h>
#include <linux/mmdebug.h>
#include <linux/log2.h>
-@@ -577,7 +654,7 @@ static inline unsigned long pud_page_vaddr(pud_t pud)
- * Currently stuck as a macro due to indirect forward reference to
- * linux/mmzone.h's __section_mem_map_addr() definition:
- */
--#define pud_page(pud) pfn_to_page(pud_val(pud) >> PAGE_SHIFT)
-+#define pud_page(pud) pfn_to_page((pud_val(pud) & PTE_PFN_MASK) >> PAGE_SHIFT)
-
- /* Find an entry in the second-level page table.. */
- static inline pmd_t *pmd_offset(pud_t *pud, unsigned long address)
-@@ -617,7 +694,7 @@ static inline unsigned long pgd_page_vaddr(pgd_t pgd)
+@@ -638,7 +715,7 @@ static inline unsigned long pgd_page_vaddr(pgd_t pgd)
* Currently stuck as a macro due to indirect forward reference to
* linux/mmzone.h's __section_mem_map_addr() definition:
*/
@@ -20423,7 +20019,7 @@ index 867da5b..7ec083d 100644
/* to find an entry in a page-table-directory. */
static inline unsigned long pud_index(unsigned long address)
-@@ -632,7 +709,7 @@ static inline pud_t *pud_offset(pgd_t *pgd, unsigned long address)
+@@ -653,7 +730,7 @@ static inline pud_t *pud_offset(pgd_t *pgd, unsigned long address)
static inline int pgd_bad(pgd_t pgd)
{
@@ -20432,7 +20028,7 @@ index 867da5b..7ec083d 100644
}
static inline int pgd_none(pgd_t pgd)
-@@ -655,7 +732,12 @@ static inline int pgd_none(pgd_t pgd)
+@@ -676,7 +753,12 @@ static inline int pgd_none(pgd_t pgd)
* pgd_offset() returns a (pgd_t *)
* pgd_index() is used get the offset into the pgd page's array of pgd_t's;
*/
@@ -20446,7 +20042,7 @@ index 867da5b..7ec083d 100644
/*
* a shortcut which implies the use of the kernel's pgd, instead
* of a process's
-@@ -666,6 +748,25 @@ static inline int pgd_none(pgd_t pgd)
+@@ -687,6 +769,25 @@ static inline int pgd_none(pgd_t pgd)
#define KERNEL_PGD_BOUNDARY pgd_index(PAGE_OFFSET)
#define KERNEL_PGD_PTRS (PTRS_PER_PGD - KERNEL_PGD_BOUNDARY)
@@ -20472,7 +20068,7 @@ index 867da5b..7ec083d 100644
#ifndef __ASSEMBLY__
extern int direct_gbpages;
-@@ -832,11 +933,24 @@ static inline void pmdp_set_wrprotect(struct mm_struct *mm,
+@@ -853,11 +954,24 @@ static inline void pmdp_set_wrprotect(struct mm_struct *mm,
* dst and src can be on the same page, but the range must not overlap,
* and must not cross a page boundary.
*/
@@ -20667,7 +20263,7 @@ index e6844df..432b56e 100644
#endif /* _ASM_X86_PGTABLE_64_DEFS_H */
diff --git a/arch/x86/include/asm/pgtable_types.h b/arch/x86/include/asm/pgtable_types.h
-index 13f310b..6273ff2 100644
+index a471cad..d1e3128 100644
--- a/arch/x86/include/asm/pgtable_types.h
+++ b/arch/x86/include/asm/pgtable_types.h
@@ -85,8 +85,10 @@
@@ -20746,7 +20342,7 @@ index 13f310b..6273ff2 100644
static inline pmdval_t native_pmd_val(pmd_t pmd)
{
return native_pgd_val(pmd.pud.pgd);
-@@ -337,20 +348,18 @@ static inline enum page_cache_mode pgprot2cachemode(pgprot_t pgprot)
+@@ -363,20 +374,18 @@ static inline enum page_cache_mode pgprot2cachemode(pgprot_t pgprot)
}
static inline pgprot_t pgprot_4k_2_large(pgprot_t pgprot)
{
@@ -20769,7 +20365,7 @@ index 13f310b..6273ff2 100644
pgprot_val(new) = (val & ~(_PAGE_PAT | _PAGE_PAT_LARGE)) |
((val & _PAGE_PAT_LARGE) >>
(_PAGE_BIT_PAT_LARGE - _PAGE_BIT_PAT));
-@@ -362,7 +371,6 @@ typedef struct page *pgtable_t;
+@@ -388,7 +397,6 @@ typedef struct page *pgtable_t;
extern pteval_t __supported_pte_mask;
extern void set_nx(void);
@@ -20791,10 +20387,10 @@ index d8ce3ec..96b12e2 100644
__func__, dst, src, unwritten))
BUG();
diff --git a/arch/x86/include/asm/preempt.h b/arch/x86/include/asm/preempt.h
-index b12f810..aedcc13 100644
+index 01bcde8..a6f1377 100644
--- a/arch/x86/include/asm/preempt.h
+++ b/arch/x86/include/asm/preempt.h
-@@ -84,7 +84,7 @@ static __always_inline void __preempt_count_sub(int val)
+@@ -81,7 +81,7 @@ static __always_inline void __preempt_count_sub(int val)
*/
static __always_inline bool __preempt_count_dec_and_test(void)
{
@@ -20804,7 +20400,7 @@ index b12f810..aedcc13 100644
/*
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h
-index b7692da..c888b3b 100644
+index 2d5a50c..9fc95aaf 100644
--- a/arch/x86/include/asm/processor.h
+++ b/arch/x86/include/asm/processor.h
@@ -136,7 +136,7 @@ struct cpuinfo_x86 {
@@ -20997,10 +20593,19 @@ index b7692da..c888b3b 100644
void df_debug(struct pt_regs *regs, long error_code);
#endif /* _ASM_X86_PROCESSOR_H */
diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h
-index 6271281..e2ba226 100644
+index 6271281..eab16e0 100644
--- a/arch/x86/include/asm/ptrace.h
+++ b/arch/x86/include/asm/ptrace.h
-@@ -124,15 +124,16 @@ static inline int v8086_mode(struct pt_regs *regs)
+@@ -87,8 +87,6 @@ extern unsigned long syscall_trace_enter_phase1(struct pt_regs *, u32 arch);
+ extern long syscall_trace_enter_phase2(struct pt_regs *, u32 arch,
+ unsigned long phase1_result);
+
+-extern long syscall_trace_enter(struct pt_regs *);
+-
+ static inline unsigned long regs_return_value(struct pt_regs *regs)
+ {
+ return regs->ax;
+@@ -124,15 +122,16 @@ static inline int v8086_mode(struct pt_regs *regs)
#ifdef CONFIG_X86_64
static inline bool user_64bit_mode(struct pt_regs *regs)
{
@@ -21019,7 +20624,7 @@ index 6271281..e2ba226 100644
#endif
}
-@@ -179,9 +180,11 @@ static inline unsigned long regs_get_register(struct pt_regs *regs,
+@@ -179,9 +178,11 @@ static inline unsigned long regs_get_register(struct pt_regs *regs,
* Traps from the kernel do not save sp and ss.
* Use the helper function to retrieve sp.
*/
@@ -21579,10 +21184,10 @@ index 70bbe39..4ae2bd4 100644
void dump_trace(struct task_struct *tsk, struct pt_regs *regs,
diff --git a/arch/x86/include/asm/switch_to.h b/arch/x86/include/asm/switch_to.h
-index d7f3b3b..3cc39f1 100644
+index 751bf4b..a1278b5 100644
--- a/arch/x86/include/asm/switch_to.h
+++ b/arch/x86/include/asm/switch_to.h
-@@ -108,7 +108,7 @@ do { \
+@@ -112,7 +112,7 @@ do { \
"call __switch_to\n\t" \
"movq "__percpu_arg([current_task])",%%rsi\n\t" \
__switch_canary \
@@ -21591,7 +21196,7 @@ index d7f3b3b..3cc39f1 100644
"movq %%rax,%%rdi\n\t" \
"testl %[_tif_fork],%P[ti_flags](%%r8)\n\t" \
"jnz ret_from_fork\n\t" \
-@@ -119,7 +119,7 @@ do { \
+@@ -123,7 +123,7 @@ do { \
[threadrsp] "i" (offsetof(struct task_struct, thread.sp)), \
[ti_flags] "i" (offsetof(struct thread_info, flags)), \
[_tif_fork] "i" (_TIF_FORK), \
@@ -21625,7 +21230,7 @@ index 82c34ee..940fa40 100644
unsigned, unsigned, unsigned);
diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h
-index 8afdc3e..ca2f1b4 100644
+index c7b5510..2ab8977 100644
--- a/arch/x86/include/asm/thread_info.h
+++ b/arch/x86/include/asm/thread_info.h
@@ -39,7 +39,7 @@
@@ -21637,7 +21242,7 @@ index 8afdc3e..ca2f1b4 100644
#endif
/*
-@@ -53,27 +53,26 @@ struct task_struct;
+@@ -53,24 +53,23 @@ struct task_struct;
#include <linux/atomic.h>
struct thread_info {
@@ -21645,9 +21250,7 @@ index 8afdc3e..ca2f1b4 100644
__u32 flags; /* low level flags */
__u32 status; /* thread synchronous flags */
__u32 cpu; /* current CPU */
- int saved_preempt_count;
mm_segment_t addr_limit;
- void __user *sysenter_return;
+ unsigned long lowest_stack;
unsigned int sig_on_uaccess_error:1;
unsigned int uaccess_err:1; /* uaccess failed */
@@ -21659,7 +21262,6 @@ index 8afdc3e..ca2f1b4 100644
- .task = &tsk, \
.flags = 0, \
.cpu = 0, \
- .saved_preempt_count = INIT_PREEMPT_COUNT, \
.addr_limit = KERNEL_DS, \
}
@@ -21668,7 +21270,7 @@ index 8afdc3e..ca2f1b4 100644
#define init_stack (init_thread_union.stack)
#else /* !__ASSEMBLY__ */
-@@ -113,6 +112,7 @@ struct thread_info {
+@@ -110,6 +109,7 @@ struct thread_info {
#define TIF_SYSCALL_TRACEPOINT 28 /* syscall tracepoint instrumentation */
#define TIF_ADDR32 29 /* 32-bit address space on 64 bits */
#define TIF_X32 30 /* 32-bit native x86-64 binary */
@@ -21676,7 +21278,7 @@ index 8afdc3e..ca2f1b4 100644
#define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
#define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
-@@ -136,17 +136,18 @@ struct thread_info {
+@@ -133,17 +133,18 @@ struct thread_info {
#define _TIF_SYSCALL_TRACEPOINT (1 << TIF_SYSCALL_TRACEPOINT)
#define _TIF_ADDR32 (1 << TIF_ADDR32)
#define _TIF_X32 (1 << TIF_X32)
@@ -21697,7 +21299,7 @@ index 8afdc3e..ca2f1b4 100644
/* flags to check in __switch_to() */
#define _TIF_WORK_CTXSW \
-@@ -164,9 +165,11 @@ struct thread_info {
+@@ -161,9 +162,11 @@ struct thread_info {
*/
#ifndef __ASSEMBLY__
@@ -21710,7 +21312,7 @@ index 8afdc3e..ca2f1b4 100644
}
static inline unsigned long current_stack_pointer(void)
-@@ -182,14 +185,9 @@ static inline unsigned long current_stack_pointer(void)
+@@ -179,14 +182,9 @@ static inline unsigned long current_stack_pointer(void)
#else /* !__ASSEMBLY__ */
@@ -21726,7 +21328,7 @@ index 8afdc3e..ca2f1b4 100644
/*
* ASM operand which evaluates to a 'thread_info' address of
-@@ -282,5 +280,12 @@ static inline bool is_ia32_task(void)
+@@ -279,5 +277,12 @@ static inline bool is_ia32_task(void)
extern void arch_task_cache_init(void);
extern int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src);
extern void arch_release_task_struct(struct task_struct *tsk);
@@ -21839,7 +21441,7 @@ index 6df2029..a359a58 100644
}
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
-index a8df874..e0aaf5f 100644
+index 09b1b0a..8f56367 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
@@ -7,6 +7,7 @@
@@ -21929,7 +21531,7 @@ index a8df874..e0aaf5f 100644
: "0" (ptr), "i" (sizeof(*(ptr)))); \
(x) = (__force __typeof__(*(ptr))) __val_gu; \
+ pax_close_userland(); \
- __ret_gu; \
+ __builtin_expect(__ret_gu, 0); \
})
@@ -189,13 +227,21 @@ __typeof__(__builtin_choose_expr(sizeof(x) > sizeof(0UL), 0ULL, 0UL))
@@ -21987,7 +21589,7 @@ index a8df874..e0aaf5f 100644
break; \
} \
+ pax_close_userland(); \
- __ret_pu; \
+ __builtin_expect(__ret_pu, 0); \
})
@@ -341,10 +389,10 @@ do { \
@@ -22059,7 +21661,7 @@ index a8df874..e0aaf5f 100644
__get_user_size(__gu_val, (ptr), (size), __gu_err, -EFAULT); \
- (x) = (__force __typeof__(*(ptr)))__gu_val; \
+ (x) = (__typeof__(*(ptr)))__gu_val; \
- __gu_err; \
+ __builtin_expect(__gu_err, 0); \
})
/* FIXME: this hack is definitely wrong -AK */
@@ -22769,10 +22371,10 @@ index 5b238981..77fdd78 100644
#define WORD_AT_A_TIME_CONSTANTS { REPEAT_BYTE(0x01), REPEAT_BYTE(0x80) }
diff --git a/arch/x86/include/asm/x86_init.h b/arch/x86/include/asm/x86_init.h
-index 48d34d2..90671c7 100644
+index cd0fc0c..64e7559 100644
--- a/arch/x86/include/asm/x86_init.h
+++ b/arch/x86/include/asm/x86_init.h
-@@ -129,7 +129,7 @@ struct x86_init_ops {
+@@ -128,7 +128,7 @@ struct x86_init_ops {
struct x86_init_timers timers;
struct x86_init_iommu iommu;
struct x86_init_pci pci;
@@ -22781,7 +22383,7 @@ index 48d34d2..90671c7 100644
/**
* struct x86_cpuinit_ops - platform specific cpu hotplug setups
-@@ -140,7 +140,7 @@ struct x86_cpuinit_ops {
+@@ -139,7 +139,7 @@ struct x86_cpuinit_ops {
void (*setup_percpu_clockev)(void);
void (*early_percpu_clock_init)(void);
void (*fixup_cpu_id)(struct cpuinfo_x86 *c, int node);
@@ -22790,7 +22392,7 @@ index 48d34d2..90671c7 100644
struct timespec;
-@@ -168,7 +168,7 @@ struct x86_platform_ops {
+@@ -167,7 +167,7 @@ struct x86_platform_ops {
void (*save_sched_clock_state)(void);
void (*restore_sched_clock_state)(void);
void (*apic_post_init)(void);
@@ -22799,7 +22401,7 @@ index 48d34d2..90671c7 100644
struct pci_dev;
-@@ -177,12 +177,12 @@ struct x86_msi_ops {
+@@ -176,12 +176,12 @@ struct x86_msi_ops {
void (*teardown_msi_irq)(unsigned int irq);
void (*teardown_msi_irqs)(struct pci_dev *dev);
void (*restore_msi_irqs)(struct pci_dev *dev);
@@ -22815,10 +22417,10 @@ index 48d34d2..90671c7 100644
extern struct x86_init_ops x86_init;
extern struct x86_cpuinit_ops x86_cpuinit;
diff --git a/arch/x86/include/asm/xen/page.h b/arch/x86/include/asm/xen/page.h
-index 0679e11..10ba732 100644
+index f5fb840..e45184e 100644
--- a/arch/x86/include/asm/xen/page.h
+++ b/arch/x86/include/asm/xen/page.h
-@@ -80,7 +80,7 @@ static inline int xen_safe_read_ulong(unsigned long *addr, unsigned long *val)
+@@ -82,7 +82,7 @@ static inline int xen_safe_read_ulong(unsigned long *addr, unsigned long *val)
* - get_phys_to_machine() is to be called by __pfn_to_mfn() only in special
* cases needing an extended handling.
*/
@@ -22854,10 +22456,10 @@ index b1b78ff..92eb188 100644
obj-$(CONFIG_X86_64) += mcount_64.o
obj-$(CONFIG_X86_ESPFIX64) += espfix_64.o
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
-index ded848c..b7a508ed 100644
+index e759076..441137a 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
-@@ -1327,7 +1327,7 @@ static void __init acpi_reduced_hw_init(void)
+@@ -1341,7 +1341,7 @@ static void __init acpi_reduced_hw_init(void)
* If your system is blacklisted here, but you find that acpi=force
* works for you, please contact linux-acpi@vger.kernel.org
*/
@@ -22866,7 +22468,7 @@ index ded848c..b7a508ed 100644
/*
* Boxes that need ACPI disabled
*/
-@@ -1402,7 +1402,7 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = {
+@@ -1416,7 +1416,7 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = {
};
/* second table for DMI checks that should run after early-quirks */
@@ -23171,7 +22773,7 @@ index 25f9093..f630040 100644
bp_int3_handler = handler;
bp_int3_addr = (u8 *)addr + sizeof(int3);
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
-index 24e94ce..7bd6977 100644
+index 2f69e3b..f301e5f 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -171,7 +171,7 @@ int first_system_vector = FIRST_SYSTEM_VECTOR;
@@ -23183,7 +22785,7 @@ index 24e94ce..7bd6977 100644
int pic_mode;
-@@ -1868,7 +1868,7 @@ static inline void __smp_error_interrupt(struct pt_regs *regs)
+@@ -1868,7 +1868,7 @@ static void __smp_error_interrupt(struct pt_regs *regs)
apic_write(APIC_ESR, 0);
v = apic_read(APIC_ESR);
ack_APIC_irq();
@@ -23250,7 +22852,7 @@ index 971cf88..a8e01ae 100644
.name = "bigsmp",
.probe = probe_bigsmp,
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
-index 4f28215..e0b9a5d 100644
+index f253218..b71d723 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -1682,7 +1682,7 @@ static unsigned int startup_ioapic_irq(struct irq_data *data)
@@ -23468,7 +23070,7 @@ index 052c9c3..bc22ccdba 100644
proc_create("apm", 0, NULL, &apm_file_ops);
diff --git a/arch/x86/kernel/asm-offsets.c b/arch/x86/kernel/asm-offsets.c
-index 8e3d22a1..37118b6 100644
+index 439df97..884bc37 100644
--- a/arch/x86/kernel/asm-offsets.c
+++ b/arch/x86/kernel/asm-offsets.c
@@ -32,6 +32,8 @@ void common(void) {
@@ -23480,7 +23082,7 @@ index 8e3d22a1..37118b6 100644
BLANK();
OFFSET(crypto_tfm_ctx_offset, crypto_tfm, __crt_ctx);
-@@ -73,8 +75,26 @@ void common(void) {
+@@ -70,8 +72,26 @@ void common(void) {
#endif
OFFSET(PV_CPU_read_cr0, pv_cpu_ops, read_cr0);
OFFSET(PV_MMU_read_cr2, pv_mmu_ops, read_cr2);
@@ -23520,7 +23122,7 @@ index d8f42f9..a46f1fc 100644
OFFSET(TSS_sp0, tss_struct, x86_tss.sp0);
BLANK();
diff --git a/arch/x86/kernel/cpu/Makefile b/arch/x86/kernel/cpu/Makefile
-index 4eb065c..40dd012 100644
+index 5803130..c899b3d 100644
--- a/arch/x86/kernel/cpu/Makefile
+++ b/arch/x86/kernel/cpu/Makefile
@@ -8,10 +8,6 @@ CFLAGS_REMOVE_common.o = -pg
@@ -23535,10 +23137,10 @@ index 4eb065c..40dd012 100644
obj-y += common.o
obj-y += rdrand.o
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
-index 4a70fc6..7720ca5 100644
+index a8816b3..a9c0bf8 100644
--- a/arch/x86/kernel/cpu/amd.c
+++ b/arch/x86/kernel/cpu/amd.c
-@@ -754,7 +754,7 @@ static void init_amd(struct cpuinfo_x86 *c)
+@@ -767,7 +767,7 @@ static void init_amd(struct cpuinfo_x86 *c)
static unsigned int amd_size_cache(struct cpuinfo_x86 *c, unsigned int size)
{
/* AMD errata T13 (order #21922) */
@@ -23568,7 +23170,7 @@ index 04f0fe5..3c0598c 100644
/*
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
-index 1a292573..f917fff 100644
+index c2b7522..a9a9453 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -92,60 +92,6 @@ static const struct cpu_dev default_cpu = {
@@ -23751,7 +23353,7 @@ index 1a292573..f917fff 100644
gdt_descr.size = GDT_SIZE - 1;
load_gdt(&gdt_descr);
/* Reload the per-cpu base */
-@@ -918,6 +967,20 @@ static void identify_cpu(struct cpuinfo_x86 *c)
+@@ -919,6 +968,20 @@ static void identify_cpu(struct cpuinfo_x86 *c)
setup_smep(c);
setup_smap(c);
@@ -23772,7 +23374,7 @@ index 1a292573..f917fff 100644
/*
* The vendor-specific functions might have changed features.
* Now we do "generic changes."
-@@ -992,7 +1055,7 @@ void enable_sep_cpu(void)
+@@ -993,7 +1056,7 @@ void enable_sep_cpu(void)
int cpu;
cpu = get_cpu();
@@ -23781,7 +23383,7 @@ index 1a292573..f917fff 100644
if (!boot_cpu_has(X86_FEATURE_SEP))
goto out;
-@@ -1138,10 +1201,12 @@ static __init int setup_disablecpuid(char *arg)
+@@ -1139,10 +1202,12 @@ static __init int setup_disablecpuid(char *arg)
}
__setup("clearcpuid=", setup_disablecpuid);
@@ -23797,7 +23399,7 @@ index 1a292573..f917fff 100644
DEFINE_PER_CPU_FIRST(union irq_stack_union,
irq_stack_union) __aligned(PAGE_SIZE) __visible;
-@@ -1253,21 +1318,21 @@ EXPORT_PER_CPU_SYMBOL(current_task);
+@@ -1254,21 +1319,21 @@ EXPORT_PER_CPU_SYMBOL(current_task);
DEFINE_PER_CPU(int, __preempt_count) = INIT_PREEMPT_COUNT;
EXPORT_PER_CPU_SYMBOL(__preempt_count);
@@ -23826,7 +23428,7 @@ index 1a292573..f917fff 100644
/*
* Clear all 6 debug registers:
*/
-@@ -1343,7 +1408,7 @@ void cpu_init(void)
+@@ -1344,7 +1409,7 @@ void cpu_init(void)
*/
load_ucode_ap();
@@ -23835,7 +23437,7 @@ index 1a292573..f917fff 100644
oist = &per_cpu(orig_ist, cpu);
#ifdef CONFIG_NUMA
-@@ -1375,7 +1440,6 @@ void cpu_init(void)
+@@ -1376,7 +1441,6 @@ void cpu_init(void)
wrmsrl(MSR_KERNEL_GS_BASE, 0);
barrier();
@@ -23843,7 +23445,7 @@ index 1a292573..f917fff 100644
x2apic_setup();
/*
-@@ -1427,7 +1491,7 @@ void cpu_init(void)
+@@ -1428,7 +1492,7 @@ void cpu_init(void)
{
int cpu = smp_processor_id();
struct task_struct *curr = current;
@@ -23853,7 +23455,7 @@ index 1a292573..f917fff 100644
wait_for_master_cpu(cpu);
diff --git a/arch/x86/kernel/cpu/intel_cacheinfo.c b/arch/x86/kernel/cpu/intel_cacheinfo.c
-index be4febc..f7af533 100644
+index e38d338..48498df 100644
--- a/arch/x86/kernel/cpu/intel_cacheinfo.c
+++ b/arch/x86/kernel/cpu/intel_cacheinfo.c
@@ -519,25 +519,23 @@ cache_private_attrs_is_visible(struct kobject *kobj,
@@ -23905,7 +23507,7 @@ index be4febc..f7af533 100644
return &cache_private_group;
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
-index 6b2c822..84c8d34 100644
+index 7e8a736..c00fc59 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -47,6 +47,7 @@
@@ -23984,7 +23586,7 @@ index 6b2c822..84c8d34 100644
wait_for_panic();
if (!mca_cfg.monarch_timeout)
goto out;
-@@ -1665,7 +1665,7 @@ static void unexpected_machine_check(struct pt_regs *regs, long error_code)
+@@ -1669,7 +1669,7 @@ static void unexpected_machine_check(struct pt_regs *regs, long error_code)
}
/* Call the installed machine check handler for this CPU setup. */
@@ -23993,7 +23595,7 @@ index 6b2c822..84c8d34 100644
unexpected_machine_check;
/*
-@@ -1694,7 +1694,9 @@ void mcheck_cpu_init(struct cpuinfo_x86 *c)
+@@ -1698,7 +1698,9 @@ void mcheck_cpu_init(struct cpuinfo_x86 *c)
return;
}
@@ -24003,7 +23605,7 @@ index 6b2c822..84c8d34 100644
__mcheck_cpu_init_generic();
__mcheck_cpu_init_vendor(c);
-@@ -1725,7 +1727,7 @@ void mcheck_cpu_clear(struct cpuinfo_x86 *c)
+@@ -1729,7 +1731,7 @@ void mcheck_cpu_clear(struct cpuinfo_x86 *c)
*/
static DEFINE_SPINLOCK(mce_chrdev_state_lock);
@@ -24012,7 +23614,7 @@ index 6b2c822..84c8d34 100644
static int mce_chrdev_open_exclu; /* already open exclusive? */
static int mce_chrdev_open(struct inode *inode, struct file *file)
-@@ -1733,7 +1735,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
+@@ -1737,7 +1739,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
spin_lock(&mce_chrdev_state_lock);
if (mce_chrdev_open_exclu ||
@@ -24021,7 +23623,7 @@ index 6b2c822..84c8d34 100644
spin_unlock(&mce_chrdev_state_lock);
return -EBUSY;
-@@ -1741,7 +1743,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
+@@ -1745,7 +1747,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
if (file->f_flags & O_EXCL)
mce_chrdev_open_exclu = 1;
@@ -24030,7 +23632,7 @@ index 6b2c822..84c8d34 100644
spin_unlock(&mce_chrdev_state_lock);
-@@ -1752,7 +1754,7 @@ static int mce_chrdev_release(struct inode *inode, struct file *file)
+@@ -1756,7 +1758,7 @@ static int mce_chrdev_release(struct inode *inode, struct file *file)
{
spin_lock(&mce_chrdev_state_lock);
@@ -24039,7 +23641,7 @@ index 6b2c822..84c8d34 100644
mce_chrdev_open_exclu = 0;
spin_unlock(&mce_chrdev_state_lock);
-@@ -2432,7 +2434,7 @@ static __init void mce_init_banks(void)
+@@ -2446,7 +2448,7 @@ static __init void mce_init_banks(void)
for (i = 0; i < mca_cfg.banks; i++) {
struct mce_bank *b = &mce_banks[i];
@@ -24048,7 +23650,7 @@ index 6b2c822..84c8d34 100644
sysfs_attr_init(&a->attr);
a->attr.name = b->attrname;
-@@ -2539,7 +2541,7 @@ struct dentry *mce_get_debugfs_dir(void)
+@@ -2553,7 +2555,7 @@ struct dentry *mce_get_debugfs_dir(void)
static void mce_reset(void)
{
cpu_missing = 0;
@@ -24102,10 +23704,10 @@ index 01dd870..6fd1c59 100644
wmb();
diff --git a/arch/x86/kernel/cpu/microcode/intel.c b/arch/x86/kernel/cpu/microcode/intel.c
-index 969dc17..a9c3fdd 100644
+index ce47402..4a6bdf8 100644
--- a/arch/x86/kernel/cpu/microcode/intel.c
+++ b/arch/x86/kernel/cpu/microcode/intel.c
-@@ -237,13 +237,13 @@ static enum ucode_state request_microcode_fw(int cpu, struct device *device,
+@@ -1014,13 +1014,13 @@ static enum ucode_state request_microcode_fw(int cpu, struct device *device,
static int get_ucode_user(void *to, const void *from, size_t n)
{
@@ -24172,7 +23774,7 @@ index 951884d..4796b75 100644
extern int generic_get_free_region(unsigned long base, unsigned long size,
int replace_reg);
diff --git a/arch/x86/kernel/cpu/perf_event.c b/arch/x86/kernel/cpu/perf_event.c
-index 66dd3fe9..c9bfa35 100644
+index 2bf79d7..c188219 100644
--- a/arch/x86/kernel/cpu/perf_event.c
+++ b/arch/x86/kernel/cpu/perf_event.c
@@ -1518,7 +1518,7 @@ static void __init pmu_check_apic(void)
@@ -24193,7 +23795,7 @@ index 66dd3fe9..c9bfa35 100644
.name = "events",
.attrs = events_attr,
};
-@@ -2176,7 +2176,7 @@ valid_user_frame(const void __user *fp, unsigned long size)
+@@ -2203,7 +2203,7 @@ valid_user_frame(const void __user *fp, unsigned long size)
static unsigned long get_segment_base(unsigned int segment)
{
struct desc_struct *desc;
@@ -24202,7 +23804,7 @@ index 66dd3fe9..c9bfa35 100644
if ((segment & SEGMENT_TI_MASK) == SEGMENT_LDT) {
#ifdef CONFIG_MODIFY_LDT_SYSCALL
-@@ -2198,7 +2198,7 @@ static unsigned long get_segment_base(unsigned int segment)
+@@ -2225,7 +2225,7 @@ static unsigned long get_segment_base(unsigned int segment)
if (idx > GDT_ENTRIES)
return 0;
@@ -24211,7 +23813,7 @@ index 66dd3fe9..c9bfa35 100644
}
return get_desc_base(desc);
-@@ -2288,7 +2288,7 @@ perf_callchain_user(struct perf_callchain_entry *entry, struct pt_regs *regs)
+@@ -2315,7 +2315,7 @@ perf_callchain_user(struct perf_callchain_entry *entry, struct pt_regs *regs)
break;
perf_callchain_store(entry, frame.return_address);
@@ -24221,10 +23823,10 @@ index 66dd3fe9..c9bfa35 100644
}
diff --git a/arch/x86/kernel/cpu/perf_event.h b/arch/x86/kernel/cpu/perf_event.h
-index 165be83..031e5d22 100644
+index d0e35eb..5e98530 100644
--- a/arch/x86/kernel/cpu/perf_event.h
+++ b/arch/x86/kernel/cpu/perf_event.h
-@@ -790,7 +790,7 @@ static inline void set_linear_ip(struct pt_regs *regs, unsigned long ip)
+@@ -791,7 +791,7 @@ static inline void set_linear_ip(struct pt_regs *regs, unsigned long ip)
regs->cs = kernel_ip(ip) ? __KERNEL_CS : __USER_CS;
if (regs->flags & X86_VM_MASK)
regs->flags ^= (PERF_EFLAGS_VM | X86_VM_MASK);
@@ -24247,7 +23849,7 @@ index 97242a9..cf9c30e 100644
while (amd_iommu_v2_event_descs[i].attr.attr.name)
diff --git a/arch/x86/kernel/cpu/perf_event_intel.c b/arch/x86/kernel/cpu/perf_event_intel.c
-index f63360b..5bf835d 100644
+index e2a4300..1df45be 100644
--- a/arch/x86/kernel/cpu/perf_event_intel.c
+++ b/arch/x86/kernel/cpu/perf_event_intel.c
@@ -2119,6 +2119,8 @@ __intel_get_event_constraints(struct cpu_hw_events *cpuc, int idx,
@@ -24350,7 +23952,7 @@ index f63360b..5bf835d 100644
intel_ds_init();
diff --git a/arch/x86/kernel/cpu/perf_event_intel_bts.c b/arch/x86/kernel/cpu/perf_event_intel_bts.c
-index d1c0f25..9d7332c 100644
+index 2cad71d..5f1baf2 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_bts.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_bts.c
@@ -250,7 +250,7 @@ static void bts_event_start(struct perf_event *event, int flags)
@@ -24381,7 +23983,7 @@ index d1c0f25..9d7332c 100644
__bts_event_stop(event);
diff --git a/arch/x86/kernel/cpu/perf_event_intel_cqm.c b/arch/x86/kernel/cpu/perf_event_intel_cqm.c
-index 377e8f8..2982f48 100644
+index a316ca9..99344f4 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_cqm.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_cqm.c
@@ -1364,7 +1364,9 @@ static int __init intel_cqm_init(void)
@@ -24396,10 +23998,10 @@ index 377e8f8..2982f48 100644
ret = intel_cqm_setup_rmid_cache();
if (ret)
diff --git a/arch/x86/kernel/cpu/perf_event_intel_ds.c b/arch/x86/kernel/cpu/perf_event_intel_ds.c
-index 84f236a..6251ea8 100644
+index 5db1c77..7acef35 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_ds.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_ds.c
-@@ -561,7 +561,7 @@ int intel_pmu_drain_bts_buffer(void)
+@@ -589,7 +589,7 @@ int intel_pmu_drain_bts_buffer(void)
static inline void intel_pmu_drain_pebs_buffer(void)
{
@@ -24408,7 +24010,7 @@ index 84f236a..6251ea8 100644
x86_pmu.drain_pebs(&regs);
}
-@@ -832,7 +832,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
+@@ -860,7 +860,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events);
unsigned long from = cpuc->lbr_entries[0].from;
unsigned long old_to, to = cpuc->lbr_entries[0].to;
@@ -24417,7 +24019,7 @@ index 84f236a..6251ea8 100644
int is_64bit = 0;
void *kaddr;
int size;
-@@ -884,6 +884,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
+@@ -912,6 +912,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
} else {
kaddr = (void *)to;
}
@@ -24425,7 +24027,7 @@ index 84f236a..6251ea8 100644
do {
struct insn insn;
-@@ -1032,7 +1033,7 @@ static void setup_pebs_sample_data(struct perf_event *event,
+@@ -1060,7 +1061,7 @@ static void setup_pebs_sample_data(struct perf_event *event,
}
if (event->attr.precise_ip > 1 && x86_pmu.intel_cap.pebs_format >= 2) {
@@ -24435,10 +24037,10 @@ index 84f236a..6251ea8 100644
} else if (event->attr.precise_ip > 1 && intel_pmu_pebs_fixup_ip(regs))
regs->flags |= PERF_EFLAGS_EXACT;
diff --git a/arch/x86/kernel/cpu/perf_event_intel_lbr.c b/arch/x86/kernel/cpu/perf_event_intel_lbr.c
-index b2c9475..7288a46 100644
+index 659f01e..ef67d60 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_lbr.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_lbr.c
-@@ -682,7 +682,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
+@@ -686,7 +686,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
* Ensure we don't blindy read any address by validating it is
* a known text address.
*/
@@ -24447,7 +24049,7 @@ index b2c9475..7288a46 100644
addr = (void *)from;
/*
* Assume we can get the maximum possible size
-@@ -704,7 +704,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
+@@ -708,7 +708,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
#ifdef CONFIG_X86_64
is64 = kernel_ip((unsigned long)addr) || !test_thread_flag(TIF_IA32);
#endif
@@ -24457,10 +24059,10 @@ index b2c9475..7288a46 100644
if (!insn.opcode.got)
return X86_BR_ABORT;
diff --git a/arch/x86/kernel/cpu/perf_event_intel_pt.c b/arch/x86/kernel/cpu/perf_event_intel_pt.c
-index 4216928..cdae603 100644
+index 868e119..be39b45 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_pt.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_pt.c
-@@ -132,16 +132,12 @@ static const struct attribute_group *pt_attr_groups[] = {
+@@ -132,14 +132,10 @@ static const struct attribute_group *pt_attr_groups[] = {
static int __init pt_pmu_hw_init(void)
{
@@ -24473,14 +24075,11 @@ index 4216928..cdae603 100644
long i;
- attrs = NULL;
-- ret = -ENODEV;
- if (!test_cpu_cap(&boot_cpu_data, X86_FEATURE_INTEL_PT))
-- goto fail;
-+ return -ENODEV;
-
+-
for (i = 0; i < PT_CPUID_LEAVES; i++) {
cpuid_count(20, i,
-@@ -151,39 +147,25 @@ static int __init pt_pmu_hw_init(void)
+ &pt_pmu.caps[CR_EAX + i*PT_CPUID_REGS_NUM],
+@@ -148,39 +144,25 @@ static int __init pt_pmu_hw_init(void)
&pt_pmu.caps[CR_EDX + i*PT_CPUID_REGS_NUM]);
}
@@ -24528,7 +24127,7 @@ index 4216928..cdae603 100644
}
#define RTIT_CTL_CYC_PSB (RTIT_CTL_CYCLEACC | \
-@@ -999,7 +981,7 @@ static void pt_event_start(struct perf_event *event, int mode)
+@@ -996,7 +978,7 @@ static void pt_event_start(struct perf_event *event, int mode)
return;
}
@@ -24537,7 +24136,7 @@ index 4216928..cdae603 100644
event->hw.state = 0;
pt_config_buffer(buf->cur->table, buf->cur_idx,
-@@ -1015,7 +997,7 @@ static void pt_event_stop(struct perf_event *event, int mode)
+@@ -1012,7 +994,7 @@ static void pt_event_stop(struct perf_event *event, int mode)
* Protect against the PMI racing with disabling wrmsr,
* see comment in intel_pt_interrupt().
*/
@@ -24547,10 +24146,10 @@ index 4216928..cdae603 100644
if (event->hw.state == PERF_HES_STOPPED)
diff --git a/arch/x86/kernel/cpu/perf_event_intel_rapl.c b/arch/x86/kernel/cpu/perf_event_intel_rapl.c
-index 81431c0..bc7524c 100644
+index ed446bd..413b10e 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_rapl.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_rapl.c
-@@ -502,7 +502,7 @@ static struct attribute *rapl_events_knl_attr[] = {
+@@ -496,7 +496,7 @@ static struct attribute *rapl_events_knl_attr[] = {
NULL,
};
@@ -24560,10 +24159,10 @@ index 81431c0..bc7524c 100644
.attrs = NULL, /* patched at runtime */
};
diff --git a/arch/x86/kernel/cpu/perf_event_intel_uncore.c b/arch/x86/kernel/cpu/perf_event_intel_uncore.c
-index 560e525..f5d28a9 100644
+index 61215a6..ceee0e5 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_uncore.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_uncore.c
-@@ -731,7 +731,7 @@ static void __init uncore_types_exit(struct intel_uncore_type **types)
+@@ -785,7 +785,7 @@ static void __init uncore_types_exit(struct intel_uncore_type **types)
static int __init uncore_type_init(struct intel_uncore_type *type)
{
struct intel_uncore_pmu *pmus;
@@ -24573,7 +24172,7 @@ index 560e525..f5d28a9 100644
int i, j;
diff --git a/arch/x86/kernel/cpu/perf_event_intel_uncore.h b/arch/x86/kernel/cpu/perf_event_intel_uncore.h
-index 72c54c2..c4170a4b 100644
+index 2f0a4a9..8f4b802 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_uncore.h
+++ b/arch/x86/kernel/cpu/perf_event_intel_uncore.h
@@ -115,7 +115,7 @@ struct intel_uncore_box {
@@ -24583,8 +24182,8 @@ index 72c54c2..c4170a4b 100644
-};
+} __do_const;
- ssize_t uncore_event_show(struct kobject *kobj,
- struct kobj_attribute *attr, char *buf);
+ struct pci2phy_map {
+ struct list_head list;
diff --git a/arch/x86/kernel/crash_dump_64.c b/arch/x86/kernel/crash_dump_64.c
index afa64ad..dce67dd 100644
--- a/arch/x86/kernel/crash_dump_64.c
@@ -24965,7 +24564,7 @@ index 5f1c626..1cba97e 100644
+EXPORT_SYMBOL(pax_check_alloca);
+#endif
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
-index a102564..d1f0b73 100644
+index 569c1e4..76d787d 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -803,8 +803,8 @@ unsigned long __init e820_end_of_low_ram_pfn(void)
@@ -24980,7 +24579,7 @@ index a102564..d1f0b73 100644
static int userdef __initdata;
diff --git a/arch/x86/kernel/early_printk.c b/arch/x86/kernel/early_printk.c
-index eec40f5..4fee808 100644
+index 21bf924..49a5fea3 100644
--- a/arch/x86/kernel/early_printk.c
+++ b/arch/x86/kernel/early_printk.c
@@ -7,6 +7,7 @@
@@ -25187,7 +24786,7 @@ index d25097c..e2df353 100644
return MXCSR_DEFAULT;
}
diff --git a/arch/x86/kernel/fpu/init.c b/arch/x86/kernel/fpu/init.c
-index d14e9ac..13442f0 100644
+index be39b5f..b76c3b1 100644
--- a/arch/x86/kernel/fpu/init.c
+++ b/arch/x86/kernel/fpu/init.c
@@ -42,7 +42,7 @@ static void fpu__init_cpu_generic(void)
@@ -25252,7 +24851,7 @@ index d14e9ac..13442f0 100644
fpu__init_system_ctx_switch();
}
diff --git a/arch/x86/kernel/fpu/regset.c b/arch/x86/kernel/fpu/regset.c
-index dc60810..6c8a1fa 100644
+index 0bc3490..5cfa5c0 100644
--- a/arch/x86/kernel/fpu/regset.c
+++ b/arch/x86/kernel/fpu/regset.c
@@ -37,7 +37,7 @@ int xfpregs_get(struct task_struct *target, const struct user_regset *regset,
@@ -25282,8 +24881,8 @@ index dc60810..6c8a1fa 100644
* presence of FP and SSE state.
*/
if (cpu_has_xsave)
-- fpu->state.xsave.header.xfeatures |= XSTATE_FPSSE;
-+ fpu->state->xsave.header.xfeatures |= XSTATE_FPSSE;
+- fpu->state.xsave.header.xfeatures |= XFEATURE_MASK_FPSSE;
++ fpu->state->xsave.header.xfeatures |= XFEATURE_MASK_FPSSE;
return ret;
}
@@ -25345,13 +24944,13 @@ index dc60810..6c8a1fa 100644
* presence of FP.
*/
if (cpu_has_xsave)
-- fpu->state.xsave.header.xfeatures |= XSTATE_FP;
-+ fpu->state->xsave.header.xfeatures |= XSTATE_FP;
+- fpu->state.xsave.header.xfeatures |= XFEATURE_MASK_FP;
++ fpu->state->xsave.header.xfeatures |= XFEATURE_MASK_FP;
return ret;
}
diff --git a/arch/x86/kernel/fpu/signal.c b/arch/x86/kernel/fpu/signal.c
-index 6545e6d..32d7f10 100644
+index 31c6a60..523f27e 100644
--- a/arch/x86/kernel/fpu/signal.c
+++ b/arch/x86/kernel/fpu/signal.c
@@ -54,7 +54,7 @@ static inline int check_for_xstate(struct fxregs_state __user *buf,
@@ -25361,7 +24960,7 @@ index 6545e6d..32d7f10 100644
- struct xregs_state *xsave = &tsk->thread.fpu.state.xsave;
+ struct xregs_state *xsave = &tsk->thread.fpu.state->xsave;
struct user_i387_ia32_struct env;
- struct _fpstate_ia32 __user *fp = buf;
+ struct _fpstate_32 __user *fp = buf;
@@ -83,18 +83,18 @@ static inline int save_xstate_epilog(void __user *buf, int ia32_frame)
@@ -25387,7 +24986,7 @@ index 6545e6d..32d7f10 100644
* For legacy compatible, we always set FP/SSE bits in the bit
@@ -109,7 +109,7 @@ static inline int save_xstate_epilog(void __user *buf, int ia32_frame)
*/
- xfeatures |= XSTATE_FPSSE;
+ xfeatures |= XFEATURE_MASK_FPSSE;
- err |= __put_user(xfeatures, (__u32 *)&x->header.xfeatures);
+ err |= __put_user(xfeatures, (__u32 __user *)&x->header.xfeatures);
@@ -25427,7 +25026,7 @@ index 6545e6d..32d7f10 100644
+ buf = (void __user *)____m(buf);
if (use_xsave()) {
if ((unsigned long)buf % 64 || fx_only) {
- u64 init_bv = xfeatures_mask & ~XSTATE_FPSSE;
+ u64 init_bv = xfeatures_mask & ~XFEATURE_MASK_FPSSE;
@@ -308,9 +310,9 @@ static int __fpu__restore_sig(void __user *buf, void __user *buf_fx, int size)
*/
fpu__drop(fpu);
@@ -25441,10 +25040,10 @@ index 6545e6d..32d7f10 100644
} else {
sanitize_restored_xstate(tsk, &env, xfeatures, fx_only);
diff --git a/arch/x86/kernel/fpu/xstate.c b/arch/x86/kernel/fpu/xstate.c
-index 2c4ac07..099cbd7 100644
+index 70fc312..30dfd14 100644
--- a/arch/x86/kernel/fpu/xstate.c
+++ b/arch/x86/kernel/fpu/xstate.c
-@@ -93,14 +93,14 @@ EXPORT_SYMBOL_GPL(cpu_has_xfeatures);
+@@ -109,14 +109,14 @@ EXPORT_SYMBOL_GPL(cpu_has_xfeatures);
*/
void fpstate_sanitize_xstate(struct fpu *fpu)
{
@@ -25461,7 +25060,7 @@ index 2c4ac07..099cbd7 100644
/*
* None of the feature bits are in init state. So nothing else
-@@ -456,5 +456,5 @@ const void *get_xsave_field_ptr(int xsave_state)
+@@ -748,5 +748,5 @@ const void *get_xsave_field_ptr(int xsave_state)
*/
fpu__save(fpu);
@@ -25469,7 +25068,7 @@ index 2c4ac07..099cbd7 100644
+ return get_xsave_addr(&fpu->state->xsave, xsave_state);
}
diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c
-index 8b7b0a5..02219db 100644
+index 311bcf3..83b8e85 100644
--- a/arch/x86/kernel/ftrace.c
+++ b/arch/x86/kernel/ftrace.c
@@ -89,7 +89,7 @@ static unsigned long text_ip_addr(unsigned long ip)
@@ -25508,7 +25107,7 @@ index 8b7b0a5..02219db 100644
return -EFAULT;
/* Make sure it is what we expect it to be */
-@@ -670,11 +672,11 @@ static unsigned char *ftrace_jmp_replace(unsigned long ip, unsigned long addr)
+@@ -674,11 +676,11 @@ static unsigned char *ftrace_jmp_replace(unsigned long ip, unsigned long addr)
/* Module allocation simplifies allocating memory for code */
static inline void *alloc_tramp(unsigned long size)
{
@@ -25522,7 +25121,7 @@ index 8b7b0a5..02219db 100644
}
#else
/* Trampolines can only be created if modules are supported */
-@@ -753,7 +755,9 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
+@@ -757,7 +759,9 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
*tramp_size = size + MCOUNT_INSN_SIZE + sizeof(void *);
/* Copy ftrace_caller onto the trampoline memory */
@@ -25532,7 +25131,7 @@ index 8b7b0a5..02219db 100644
if (WARN_ON(ret < 0)) {
tramp_free(trampoline);
return 0;
-@@ -763,6 +767,7 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
+@@ -767,6 +771,7 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
/* The trampoline ends with a jmp to ftrace_return */
jmp = ftrace_jmp_replace(ip, (unsigned long)ftrace_return);
@@ -25540,7 +25139,7 @@ index 8b7b0a5..02219db 100644
memcpy(trampoline + size, jmp, MCOUNT_INSN_SIZE);
/*
-@@ -775,6 +780,7 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
+@@ -779,6 +784,7 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
ptr = (unsigned long *)(trampoline + size + MCOUNT_INSN_SIZE);
*ptr = (unsigned long)ops;
@@ -25548,7 +25147,7 @@ index 8b7b0a5..02219db 100644
op_offset -= start_offset;
memcpy(&op_ptr, trampoline + op_offset, OP_REF_SIZE);
-@@ -792,7 +798,9 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
+@@ -796,7 +802,9 @@ create_trampoline(struct ftrace_ops *ops, unsigned int *tramp_size)
op_ptr.offset = offset;
/* put in the new offset to the ftrace_ops */
@@ -25613,7 +25212,7 @@ index f129a9a..af8f6da 100644
for (i = 0; i < NUM_EXCEPTION_VECTORS; i++)
diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S
-index 0e2d96f..5889003 100644
+index 6bc9ae2..d184220 100644
--- a/arch/x86/kernel/head_32.S
+++ b/arch/x86/kernel/head_32.S
@@ -27,6 +27,12 @@
@@ -25790,7 +25389,7 @@ index 0e2d96f..5889003 100644
num_subarch_entries = (. - subarch_entries) / 4
.previous
#else
-@@ -362,6 +441,7 @@ default_entry:
+@@ -361,6 +440,7 @@ default_entry:
movl pa(mmu_cr4_features),%eax
movl %eax,%cr4
@@ -25798,7 +25397,7 @@ index 0e2d96f..5889003 100644
testb $X86_CR4_PAE, %al # check if PAE is enabled
jz enable_paging
-@@ -390,6 +470,9 @@ default_entry:
+@@ -389,6 +469,9 @@ default_entry:
/* Make changes effective */
wrmsr
@@ -25808,7 +25407,7 @@ index 0e2d96f..5889003 100644
enable_paging:
/*
-@@ -457,14 +540,20 @@ is486:
+@@ -456,14 +539,20 @@ is486:
1: movl $(__KERNEL_DS),%eax # reload all the segment registers
movl %eax,%ss # after changing gdt.
@@ -25830,7 +25429,7 @@ index 0e2d96f..5889003 100644
movl %eax,%gs
xorl %eax,%eax # Clear LDT
-@@ -521,8 +610,11 @@ setup_once:
+@@ -520,8 +609,11 @@ setup_once:
* relocation. Manually set base address in stack canary
* segment descriptor.
*/
@@ -25843,7 +25442,7 @@ index 0e2d96f..5889003 100644
movw %cx, 8 * GDT_ENTRY_STACK_CANARY + 2(%eax)
shrl $16, %ecx
movb %cl, 8 * GDT_ENTRY_STACK_CANARY + 4(%eax)
-@@ -559,7 +651,7 @@ early_idt_handler_common:
+@@ -558,7 +650,7 @@ early_idt_handler_common:
cmpl $2,(%esp) # X86_TRAP_NMI
je .Lis_nmi # Ignore NMI
@@ -25852,7 +25451,7 @@ index 0e2d96f..5889003 100644
je hlt_loop
incl %ss:early_recursion_flag
-@@ -597,8 +689,8 @@ early_idt_handler_common:
+@@ -596,8 +688,8 @@ early_idt_handler_common:
pushl (20+6*4)(%esp) /* trapno */
pushl $fault_msg
call printk
@@ -25862,7 +25461,7 @@ index 0e2d96f..5889003 100644
hlt_loop:
hlt
jmp hlt_loop
-@@ -618,8 +710,11 @@ ENDPROC(early_idt_handler_common)
+@@ -617,8 +709,11 @@ ENDPROC(early_idt_handler_common)
/* This is the default interrupt "handler" :-) */
ALIGN
ignore_int:
@@ -25875,7 +25474,7 @@ index 0e2d96f..5889003 100644
pushl %eax
pushl %ecx
pushl %edx
-@@ -628,9 +723,6 @@ ignore_int:
+@@ -627,9 +722,6 @@ ignore_int:
movl $(__KERNEL_DS),%eax
movl %eax,%ds
movl %eax,%es
@@ -25885,7 +25484,7 @@ index 0e2d96f..5889003 100644
pushl 16(%esp)
pushl 24(%esp)
pushl 32(%esp)
-@@ -664,29 +756,34 @@ ENTRY(setup_once_ref)
+@@ -663,29 +755,34 @@ ENTRY(setup_once_ref)
/*
* BSS section
*/
@@ -25925,7 +25524,7 @@ index 0e2d96f..5889003 100644
ENTRY(initial_page_table)
.long pa(initial_pg_pmd+PGD_IDENT_ATTR),0 /* low identity map */
# if KPMDS == 3
-@@ -705,12 +802,20 @@ ENTRY(initial_page_table)
+@@ -704,12 +801,20 @@ ENTRY(initial_page_table)
# error "Kernel PMDs should be 1, 2 or 3"
# endif
.align PAGE_SIZE /* needs to be page-sized too */
@@ -25947,7 +25546,7 @@ index 0e2d96f..5889003 100644
__INITRODATA
int_msg:
-@@ -738,7 +843,7 @@ fault_msg:
+@@ -737,7 +842,7 @@ fault_msg:
* segment size, and 32-bit linear address value:
*/
@@ -25956,7 +25555,7 @@ index 0e2d96f..5889003 100644
.globl boot_gdt_descr
.globl idt_descr
-@@ -747,7 +852,7 @@ fault_msg:
+@@ -746,7 +851,7 @@ fault_msg:
.word 0 # 32 bit align gdt_desc.address
boot_gdt_descr:
.word __BOOT_DS+7
@@ -25965,7 +25564,7 @@ index 0e2d96f..5889003 100644
.word 0 # 32-bit align idt_desc.address
idt_descr:
-@@ -758,7 +863,7 @@ idt_descr:
+@@ -757,7 +862,7 @@ idt_descr:
.word 0 # 32 bit align gdt_desc.address
ENTRY(early_gdt_descr)
.word GDT_ENTRIES*8-1
@@ -25974,7 +25573,7 @@ index 0e2d96f..5889003 100644
/*
* The boot_gdt must mirror the equivalent in setup.S and is
-@@ -767,5 +872,65 @@ ENTRY(early_gdt_descr)
+@@ -766,5 +871,65 @@ ENTRY(early_gdt_descr)
.align L1_CACHE_BYTES
ENTRY(boot_gdt)
.fill GDT_ENTRY_BOOT_CS,8,0
@@ -26636,7 +26235,7 @@ index 38da8f2..5653e36 100644
bool handle_irq(struct irq_desc *desc, struct pt_regs *regs)
diff --git a/arch/x86/kernel/irq_64.c b/arch/x86/kernel/irq_64.c
-index c767cf2..425a7ec 100644
+index 206d0b9..ecb677c 100644
--- a/arch/x86/kernel/irq_64.c
+++ b/arch/x86/kernel/irq_64.c
@@ -20,6 +20,8 @@
@@ -26705,7 +26304,7 @@ index e565e0e..fdfeb45 100644
}
memcpy(&code, ideal_nops[NOP_ATOMIC5], JUMP_LABEL_NOP_SIZE);
diff --git a/arch/x86/kernel/kgdb.c b/arch/x86/kernel/kgdb.c
-index d6178d9..598681f 100644
+index 44256a6..61d5bfe 100644
--- a/arch/x86/kernel/kgdb.c
+++ b/arch/x86/kernel/kgdb.c
@@ -228,7 +228,10 @@ static void kgdb_correct_hw_break(void)
@@ -26735,7 +26334,7 @@ index d6178d9..598681f 100644
raw_smp_processor_id());
}
-@@ -545,7 +548,7 @@ static int __kgdb_notify(struct die_args *args, unsigned long cmd)
+@@ -550,7 +553,7 @@ static int __kgdb_notify(struct die_args *args, unsigned long cmd)
switch (cmd) {
case DIE_DEBUG:
@@ -26744,7 +26343,7 @@ index d6178d9..598681f 100644
if (user_mode(regs))
return single_step_cont(regs, args);
break;
-@@ -750,11 +753,11 @@ int kgdb_arch_set_breakpoint(struct kgdb_bkpt *bpt)
+@@ -755,11 +758,11 @@ int kgdb_arch_set_breakpoint(struct kgdb_bkpt *bpt)
#endif /* CONFIG_DEBUG_RODATA */
bpt->type = BP_BREAKPOINT;
@@ -26758,7 +26357,7 @@ index d6178d9..598681f 100644
arch_kgdb_ops.gdb_bpt_instr, BREAK_INSTR_SIZE);
#ifdef CONFIG_DEBUG_RODATA
if (!err)
-@@ -767,7 +770,7 @@ int kgdb_arch_set_breakpoint(struct kgdb_bkpt *bpt)
+@@ -772,7 +775,7 @@ int kgdb_arch_set_breakpoint(struct kgdb_bkpt *bpt)
return -EBUSY;
text_poke((void *)bpt->bpt_addr, arch_kgdb_ops.gdb_bpt_instr,
BREAK_INSTR_SIZE);
@@ -26767,7 +26366,7 @@ index d6178d9..598681f 100644
if (err)
return err;
if (memcmp(opc, arch_kgdb_ops.gdb_bpt_instr, BREAK_INSTR_SIZE))
-@@ -792,13 +795,13 @@ int kgdb_arch_remove_breakpoint(struct kgdb_bkpt *bpt)
+@@ -797,13 +800,13 @@ int kgdb_arch_remove_breakpoint(struct kgdb_bkpt *bpt)
if (mutex_is_locked(&text_mutex))
goto knl_write;
text_poke((void *)bpt->bpt_addr, bpt->saved_instr, BREAK_INSTR_SIZE);
@@ -26977,7 +26576,7 @@ index c2bedae..25e7ab60 100644
.name = "data",
.mode = S_IRUGO,
diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
-index 2c7aafa..7ac2af2 100644
+index 2bd81e3..2d5e042 100644
--- a/arch/x86/kernel/kvmclock.c
+++ b/arch/x86/kernel/kvmclock.c
@@ -29,7 +29,7 @@
@@ -26988,8 +26587,8 @@ index 2c7aafa..7ac2af2 100644
+static int kvmclock __read_only = 1;
static int msr_kvm_system_time = MSR_KVM_SYSTEM_TIME;
static int msr_kvm_wall_clock = MSR_KVM_WALL_CLOCK;
-
-@@ -41,7 +41,7 @@ static int parse_no_kvmclock(char *arg)
+ static cycle_t kvm_sched_clock_offset;
+@@ -42,7 +42,7 @@ static int parse_no_kvmclock(char *arg)
early_param("no-kvmclock", parse_no_kvmclock);
/* The hypervisor will put information about time periodically here */
@@ -26998,7 +26597,7 @@ index 2c7aafa..7ac2af2 100644
static struct pvclock_wall_clock wall_clock;
/*
-@@ -132,7 +132,7 @@ bool kvm_check_and_clear_guest_paused(void)
+@@ -156,7 +156,7 @@ bool kvm_check_and_clear_guest_paused(void)
struct pvclock_vcpu_time_info *src;
int cpu = smp_processor_id();
@@ -27007,7 +26606,7 @@ index 2c7aafa..7ac2af2 100644
return ret;
src = &hv_clock[cpu].pvti;
-@@ -159,7 +159,7 @@ int kvm_register_clock(char *txt)
+@@ -183,7 +183,7 @@ int kvm_register_clock(char *txt)
int low, high, ret;
struct pvclock_vcpu_time_info *src;
@@ -27016,7 +26615,7 @@ index 2c7aafa..7ac2af2 100644
return 0;
src = &hv_clock[cpu].pvti;
-@@ -219,7 +219,6 @@ static void kvm_shutdown(void)
+@@ -243,7 +243,6 @@ static void kvm_shutdown(void)
void __init kvmclock_init(void)
{
struct pvclock_vcpu_time_info *vcpu_time;
@@ -27024,7 +26623,7 @@ index 2c7aafa..7ac2af2 100644
int size, cpu;
u8 flags;
-@@ -237,15 +236,8 @@ void __init kvmclock_init(void)
+@@ -261,15 +260,8 @@ void __init kvmclock_init(void)
printk(KERN_INFO "kvm-clock: Using msrs %x and %x",
msr_kvm_system_time, msr_kvm_wall_clock);
@@ -27040,8 +26639,8 @@ index 2c7aafa..7ac2af2 100644
+ kvmclock = 0;
return;
}
- pv_time_ops.sched_clock = kvm_clock_read;
-@@ -286,7 +278,7 @@ int __init kvm_setup_vsyscall_timeinfo(void)
+
+@@ -310,7 +302,7 @@ int __init kvm_setup_vsyscall_timeinfo(void)
struct pvclock_vcpu_time_info *vcpu_time;
unsigned int size;
@@ -27133,15 +26732,14 @@ index 6acc9dd..f72931d 100644
case 0:
ret = read_ldt(ptr, bytecount);
diff --git a/arch/x86/kernel/livepatch.c b/arch/x86/kernel/livepatch.c
-index ff3c3101d..d7c0cd8 100644
+index d1d35cc..d5b1193 100644
--- a/arch/x86/kernel/livepatch.c
+++ b/arch/x86/kernel/livepatch.c
-@@ -41,9 +41,10 @@ int klp_write_module_reloc(struct module *mod, unsigned long type,
+@@ -41,8 +41,10 @@ int klp_write_module_reloc(struct module *mod, unsigned long type,
int ret, numpages, size = 4;
bool readonly;
unsigned long val;
- unsigned long core = (unsigned long)mod->module_core;
-- unsigned long core_ro_size = mod->core_ro_size;
- unsigned long core_size = mod->core_size;
+ unsigned long core_rx = (unsigned long)mod->module_core_rx;
+ unsigned long core_rw = (unsigned long)mod->module_core_rw;
@@ -27150,7 +26748,7 @@ index ff3c3101d..d7c0cd8 100644
switch (type) {
case R_X86_64_NONE:
-@@ -66,11 +67,12 @@ int klp_write_module_reloc(struct module *mod, unsigned long type,
+@@ -65,14 +67,15 @@ int klp_write_module_reloc(struct module *mod, unsigned long type,
return -EINVAL;
}
@@ -27160,11 +26758,14 @@ index ff3c3101d..d7c0cd8 100644
/* loc does not point to any symbol inside the module */
return -EINVAL;
-- if (loc < core + core_ro_size)
+ readonly = false;
+
+ #ifdef CONFIG_DEBUG_SET_MODULE_RONX
+- if (loc < core + mod->core_ro_size)
+ if (loc < core_rx + core_size_rx)
readonly = true;
- else
- readonly = false;
+ #endif
+
diff --git a/arch/x86/kernel/machine_kexec_32.c b/arch/x86/kernel/machine_kexec_32.c
index 469b23d..5449cfe 100644
--- a/arch/x86/kernel/machine_kexec_32.c
@@ -27197,7 +26798,7 @@ index 469b23d..5449cfe 100644
relocate_kernel_ptr = control_page;
page_list[PA_CONTROL_PAGE] = __pa(control_page);
diff --git a/arch/x86/kernel/mcount_64.S b/arch/x86/kernel/mcount_64.S
-index 94ea120..4154cea 100644
+index 87e1762..994fdb6 100644
--- a/arch/x86/kernel/mcount_64.S
+++ b/arch/x86/kernel/mcount_64.S
@@ -7,7 +7,7 @@
@@ -27240,7 +26841,7 @@ index 94ea120..4154cea 100644
#else /* ! CONFIG_DYNAMIC_FTRACE */
-@@ -272,18 +274,20 @@ fgraph_trace:
+@@ -272,6 +274,7 @@ fgraph_trace:
#endif
GLOBAL(ftrace_stub)
@@ -27248,9 +26849,10 @@ index 94ea120..4154cea 100644
retq
trace:
- /* save_mcount_regs fills in first two parameters */
- save_mcount_regs
-
+@@ -284,12 +287,13 @@ trace:
+ * ip and parent ip are used and the list function is called when
+ * function tracing is enabled.
+ */
+ pax_force_fptr ftrace_trace_function
call *ftrace_trace_function
@@ -27262,7 +26864,7 @@ index 94ea120..4154cea 100644
#endif /* CONFIG_DYNAMIC_FTRACE */
#endif /* CONFIG_FUNCTION_TRACER */
-@@ -305,8 +309,9 @@ ENTRY(ftrace_graph_caller)
+@@ -311,8 +315,9 @@ ENTRY(ftrace_graph_caller)
restore_mcount_regs
@@ -27273,7 +26875,7 @@ index 94ea120..4154cea 100644
GLOBAL(return_to_handler)
subq $24, %rsp
-@@ -322,5 +327,7 @@ GLOBAL(return_to_handler)
+@@ -328,5 +333,7 @@ GLOBAL(return_to_handler)
movq 8(%rsp), %rdx
movq (%rsp), %rax
addq $24, %rsp
@@ -27987,7 +27589,7 @@ index 9f7c21c..854f412 100644
+}
+#endif
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
-index 737527b..ebf7a85 100644
+index 9f95091..6885108 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
@@ -64,6 +64,7 @@ asmlinkage void ret_from_kernel_thread(void) __asm__("ret_from_kernel_thread");
@@ -28064,7 +27666,7 @@ index 737527b..ebf7a85 100644
/*
* Load the per-thread Thread-Local Storage descriptor.
*/
-@@ -308,9 +313,9 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -300,9 +305,9 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
* current_thread_info().
*/
load_sp0(tss, next);
@@ -28077,7 +27679,7 @@ index 737527b..ebf7a85 100644
/*
* Restore %gs if needed (which is common)
-@@ -320,7 +325,5 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -312,7 +317,5 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
switch_fpu_finish(next_fpu, fpu_switch);
@@ -28086,7 +27688,7 @@ index 737527b..ebf7a85 100644
return prev_p;
}
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
-index b35921a..c995d0b 100644
+index e835d26..65762c9 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -159,9 +159,10 @@ int copy_thread_tls(unsigned long clone_flags, unsigned long sp,
@@ -28130,15 +27732,12 @@ index b35921a..c995d0b 100644
/*
* Switch FS and GS.
*
-@@ -400,6 +407,7 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -400,10 +407,13 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
* Switch the PDA and FPU contexts.
*/
this_cpu_write(current_task, next_p);
+ this_cpu_write(current_tinfo, &next_p->tinfo);
- /*
- * If it were not for PREEMPT_ACTIVE we could guarantee that the
-@@ -412,6 +420,8 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
/* Reload esp0 and ss1. This changes current_thread_info(). */
load_sp0(tss, next);
@@ -28427,18 +28026,18 @@ index 98111b3..73ca125 100644
identity_mapped:
/* set return address to 0 if not preserving context */
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
-index 37c8ea8..c0e8efa 100644
+index d2bbe34..9d8fdaa 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
-@@ -111,6 +111,7 @@
- #include <asm/mce.h>
+@@ -112,6 +112,7 @@
#include <asm/alternative.h>
#include <asm/prom.h>
+ #include <asm/microcode.h>
+#include <asm/boot.h>
/*
* max_low_pfn_mapped: highest direct mapped pfn under 4GB
-@@ -206,10 +207,12 @@ EXPORT_SYMBOL(boot_cpu_data);
+@@ -207,10 +208,12 @@ EXPORT_SYMBOL(boot_cpu_data);
#endif
@@ -28454,7 +28053,7 @@ index 37c8ea8..c0e8efa 100644
#endif
/* Boot loader ID and version as integers, for the benefit of proc_dointvec */
-@@ -752,7 +755,7 @@ static void __init trim_bios_range(void)
+@@ -758,7 +761,7 @@ static void __init trim_bios_range(void)
* area (640->1Mb) as ram even though it is not.
* take them out.
*/
@@ -28463,7 +28062,7 @@ index 37c8ea8..c0e8efa 100644
sanitize_e820_map(e820.map, ARRAY_SIZE(e820.map), &e820.nr_map);
}
-@@ -760,7 +763,7 @@ static void __init trim_bios_range(void)
+@@ -766,7 +769,7 @@ static void __init trim_bios_range(void)
/* called before trim_bios_range() to spare extra sanitize */
static void __init e820_add_kernel_range(void)
{
@@ -28472,7 +28071,7 @@ index 37c8ea8..c0e8efa 100644
u64 size = __pa_symbol(_end) - start;
/*
-@@ -841,8 +844,8 @@ dump_kernel_offset(struct notifier_block *self, unsigned long v, void *p)
+@@ -847,8 +850,8 @@ dump_kernel_offset(struct notifier_block *self, unsigned long v, void *p)
void __init setup_arch(char **cmdline_p)
{
@@ -28483,7 +28082,7 @@ index 37c8ea8..c0e8efa 100644
early_reserve_initrd();
-@@ -935,16 +938,16 @@ void __init setup_arch(char **cmdline_p)
+@@ -941,16 +944,16 @@ void __init setup_arch(char **cmdline_p)
if (!boot_params.hdr.root_flags)
root_mountflags &= ~MS_RDONLY;
@@ -28583,10 +28182,10 @@ index e4fcb87..9c06c55 100644
* Up to this point, the boot CPU has been using .init.data
* area. Reload any changed state for the boot CPU.
diff --git a/arch/x86/kernel/signal.c b/arch/x86/kernel/signal.c
-index 7d2b2ed..6c92c5f 100644
+index cb6282c..7cda5d0 100644
--- a/arch/x86/kernel/signal.c
+++ b/arch/x86/kernel/signal.c
-@@ -189,7 +189,7 @@ static unsigned long align_sigframe(unsigned long sp)
+@@ -191,7 +191,7 @@ static unsigned long align_sigframe(unsigned long sp)
* Align the stack pointer according to the i386 ABI,
* i.e. so that on function entry ((sp + 4) & 15) == 0.
*/
@@ -28595,20 +28194,20 @@ index 7d2b2ed..6c92c5f 100644
#else /* !CONFIG_X86_32 */
sp = round_down(sp, 16) - 8;
#endif
-@@ -298,10 +298,9 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
+@@ -300,10 +300,9 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
}
if (current->mm->context.vdso)
- restorer = current->mm->context.vdso +
-- selected_vdso32->sym___kernel_sigreturn;
-+ restorer = (void __force_user *)(current->mm->context.vdso + selected_vdso32->sym___kernel_sigreturn);
+- vdso_image_32.sym___kernel_sigreturn;
++ restorer = (void __force_user *)(current->mm->context.vdso + vdso_image_32.sym___kernel_sigreturn);
else
- restorer = &frame->retcode;
-+ restorer = (void __user *)&frame->retcode;
++ restorer = frame->retcode;
if (ksig->ka.sa.sa_flags & SA_RESTORER)
restorer = ksig->ka.sa.sa_restorer;
-@@ -315,7 +314,7 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
+@@ -317,7 +316,7 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
* reasons and because gdb uses it as a signature to notice
* signal handler stack frames.
*/
@@ -28617,20 +28216,20 @@ index 7d2b2ed..6c92c5f 100644
if (err)
return -EFAULT;
-@@ -362,8 +361,10 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
+@@ -364,8 +363,10 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
save_altstack_ex(&frame->uc.uc_stack, regs->sp);
/* Set up to return from userspace. */
- restorer = current->mm->context.vdso +
-- selected_vdso32->sym___kernel_rt_sigreturn;
+- vdso_image_32.sym___kernel_rt_sigreturn;
+ if (current->mm->context.vdso)
-+ restorer = (void __force_user *)(current->mm->context.vdso + selected_vdso32->sym___kernel_rt_sigreturn);
++ restorer = (void __force_user *)(current->mm->context.vdso + vdso_image_32.sym___kernel_rt_sigreturn);
+ else
+ restorer = (void __user *)&frame->retcode;
if (ksig->ka.sa.sa_flags & SA_RESTORER)
restorer = ksig->ka.sa.sa_restorer;
put_user_ex(restorer, &frame->pretcode);
-@@ -375,7 +376,7 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
+@@ -377,7 +378,7 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
* reasons and because gdb uses it as a signature to notice
* signal handler stack frames.
*/
@@ -28639,7 +28238,7 @@ index 7d2b2ed..6c92c5f 100644
} put_user_catch(err);
err |= copy_siginfo_to_user(&frame->info, &ksig->info);
-@@ -611,7 +612,12 @@ setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs)
+@@ -613,7 +614,12 @@ setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs)
{
int usig = ksig->sig;
sigset_t *set = sigmask_to_save();
@@ -28653,7 +28252,7 @@ index 7d2b2ed..6c92c5f 100644
/* Set up the stack frame */
if (is_ia32_frame()) {
-@@ -622,7 +628,7 @@ setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs)
+@@ -624,7 +630,7 @@ setup_rt_frame(struct ksignal *ksig, struct pt_regs *regs)
} else if (is_x32_frame()) {
return x32_setup_rt_frame(ksig, cset, regs);
} else {
@@ -29214,7 +28813,7 @@ index 1c113db..287b42e 100644
static int trace_irq_vector_refcount;
static DEFINE_MUTEX(irq_vector_mutex);
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
-index 346eec7..d98e7a6 100644
+index ade185a..2452e8b 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -70,7 +70,7 @@
@@ -29352,7 +28951,7 @@ index 346eec7..d98e7a6 100644
memmove(&new_stack->regs.ip, (void *)s->regs.sp, 5*8);
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c
-index c3f7602..f6033e1 100644
+index c7c4d9c..ddd1454 100644
--- a/arch/x86/kernel/tsc.c
+++ b/arch/x86/kernel/tsc.c
@@ -151,7 +151,7 @@ static void cyc2ns_write_end(int cpu, struct cyc2ns_data *data)
@@ -29781,7 +29380,7 @@ index 3839628..2e5b5b35 100644
.disable = native_disable_io_apic,
};
diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c
-index 2fbea25..9e0f8c7 100644
+index 6525e92..28559d2 100644
--- a/arch/x86/kvm/cpuid.c
+++ b/arch/x86/kvm/cpuid.c
@@ -206,15 +206,20 @@ int kvm_vcpu_ioctl_set_cpuid2(struct kvm_vcpu *vcpu,
@@ -29932,10 +29531,10 @@ index 7cc2360..6ae1236 100644
{
struct kvm_kpic_state *s = opaque;
diff --git a/arch/x86/kvm/ioapic.c b/arch/x86/kvm/ioapic.c
-index 856f791..bfc7694 100644
+index 88d0a92..fa8b52a 100644
--- a/arch/x86/kvm/ioapic.c
+++ b/arch/x86/kvm/ioapic.c
-@@ -422,6 +422,8 @@ static void kvm_ioapic_eoi_inject_work(struct work_struct *work)
+@@ -405,6 +405,8 @@ static void kvm_ioapic_eoi_inject_work(struct work_struct *work)
#define IOAPIC_SUCCESSIVE_IRQ_MAX_COUNT 10000
static void __kvm_ioapic_update_eoi(struct kvm_vcpu *vcpu,
@@ -29945,7 +29544,7 @@ index 856f791..bfc7694 100644
{
int i;
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
-index ae4483a..0eac8a1 100644
+index 4d30b86..94115f0 100644
--- a/arch/x86/kvm/lapic.c
+++ b/arch/x86/kvm/lapic.c
@@ -56,7 +56,7 @@
@@ -29958,7 +29557,7 @@ index ae4483a..0eac8a1 100644
#define APIC_LVT_NUM 6
/* 14 is the version for Xeon and Pentium 8.4.8*/
diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
-index 736e6ab..b2e3094 100644
+index 3058a22..cb2670f 100644
--- a/arch/x86/kvm/paging_tmpl.h
+++ b/arch/x86/kvm/paging_tmpl.h
@@ -335,7 +335,7 @@ retry_walk:
@@ -29971,10 +29570,10 @@ index 736e6ab..b2e3094 100644
goto error;
walker->ptep_user[walker->level - 1] = ptep_user;
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
-index 22d1813..bc95a50 100644
+index 899c40f..a114588 100644
--- a/arch/x86/kvm/svm.c
+++ b/arch/x86/kvm/svm.c
-@@ -3588,7 +3588,11 @@ static void reload_tss(struct kvm_vcpu *vcpu)
+@@ -3490,7 +3490,11 @@ static void reload_tss(struct kvm_vcpu *vcpu)
int cpu = raw_smp_processor_id();
struct svm_cpu_data *sd = per_cpu(svm_data, cpu);
@@ -29986,7 +29585,7 @@ index 22d1813..bc95a50 100644
load_TR_desc();
}
-@@ -3983,6 +3987,10 @@ static void svm_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -3885,6 +3889,10 @@ static void svm_vcpu_run(struct kvm_vcpu *vcpu)
#endif
#endif
@@ -29997,7 +29596,7 @@ index 22d1813..bc95a50 100644
reload_tss(vcpu);
local_irq_disable();
-@@ -4356,7 +4364,7 @@ static void svm_sched_in(struct kvm_vcpu *vcpu, int cpu)
+@@ -4260,7 +4268,7 @@ static void svm_sched_in(struct kvm_vcpu *vcpu, int cpu)
{
}
@@ -30007,10 +29606,10 @@ index 22d1813..bc95a50 100644
.disabled_by_bios = is_disabled,
.hardware_setup = svm_hardware_setup,
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
-index 2e0bd48..c18c0bf 100644
+index 10e7693..aa4d471 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
-@@ -1440,12 +1440,12 @@ static void vmcs_write64(unsigned long field, u64 value)
+@@ -1512,12 +1512,12 @@ static void vmcs_write64(unsigned long field, u64 value)
#endif
}
@@ -30025,7 +29624,7 @@ index 2e0bd48..c18c0bf 100644
{
vmcs_writel(field, vmcs_readl(field) | mask);
}
-@@ -1705,7 +1705,11 @@ static void reload_tss(void)
+@@ -1777,7 +1777,11 @@ static void reload_tss(void)
struct desc_struct *descs;
descs = (void *)gdt->address;
@@ -30037,7 +29636,7 @@ index 2e0bd48..c18c0bf 100644
load_TR_desc();
}
-@@ -1941,6 +1945,10 @@ static void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
+@@ -2059,6 +2063,10 @@ static void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
vmcs_writel(HOST_TR_BASE, kvm_read_tr_base()); /* 22.2.4 */
vmcs_writel(HOST_GDTR_BASE, gdt->address); /* 22.2.4 */
@@ -30047,17 +29646,17 @@ index 2e0bd48..c18c0bf 100644
+
rdmsrl(MSR_IA32_SYSENTER_ESP, sysenter_esp);
vmcs_writel(HOST_IA32_SYSENTER_ESP, sysenter_esp); /* 22.2.3 */
- vmx->loaded_vmcs->cpu = cpu;
-@@ -2232,7 +2240,7 @@ static void setup_msrs(struct vcpu_vmx *vmx)
- * reads and returns guest's timestamp counter "register"
- * guest_tsc = host_tsc + tsc_offset -- 21.3
+
+@@ -2374,7 +2382,7 @@ static void setup_msrs(struct vcpu_vmx *vmx)
+ * guest_tsc = (host_tsc * tsc multiplier) >> 48 + tsc_offset
+ * -- Intel TSC Scaling for Virtualization White Paper, sec 1.3
*/
--static u64 guest_read_tsc(void)
-+static u64 __intentional_overflow(-1) guest_read_tsc(void)
+-static u64 guest_read_tsc(struct kvm_vcpu *vcpu)
++static u64 __intentional_overflow(-1) guest_read_tsc(struct kvm_vcpu *vcpu)
{
u64 host_tsc, tsc_offset;
-@@ -4451,7 +4459,10 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
+@@ -4605,7 +4613,10 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
unsigned long cr4;
vmcs_writel(HOST_CR0, read_cr0() & ~X86_CR0_TS); /* 22.2.3 */
@@ -30068,7 +29667,7 @@ index 2e0bd48..c18c0bf 100644
/* Save the most likely value for this task's CR4 in the VMCS. */
cr4 = cr4_read_shadow();
-@@ -4478,7 +4489,7 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
+@@ -4632,7 +4643,7 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
vmcs_writel(HOST_IDTR_BASE, dt.address); /* 22.2.4 */
vmx->host_idt_base = dt.address;
@@ -30077,7 +29676,7 @@ index 2e0bd48..c18c0bf 100644
rdmsr(MSR_IA32_SYSENTER_CS, low32, high32);
vmcs_write32(HOST_IA32_SYSENTER_CS, low32);
-@@ -6016,11 +6027,17 @@ static __init int hardware_setup(void)
+@@ -6182,11 +6193,17 @@ static __init int hardware_setup(void)
* page upon invalidation. No need to do anything if not
* using the APIC_ACCESS_ADDR VMCS field.
*/
@@ -30097,15 +29696,15 @@ index 2e0bd48..c18c0bf 100644
if (enable_ept && !cpu_has_vmx_ept_2m_page())
kvm_disable_largepages();
-@@ -6031,6 +6048,7 @@ static __init int hardware_setup(void)
- if (!cpu_has_vmx_apicv())
- enable_apicv = 0;
+@@ -6203,6 +6220,7 @@ static __init int hardware_setup(void)
+ kvm_tsc_scaling_ratio_frac_bits = 48;
+ }
+ pax_open_kernel();
if (enable_apicv)
kvm_x86_ops->update_cr8_intercept = NULL;
else {
-@@ -6039,6 +6057,7 @@ static __init int hardware_setup(void)
+@@ -6211,6 +6229,7 @@ static __init int hardware_setup(void)
kvm_x86_ops->deliver_posted_interrupt = NULL;
kvm_x86_ops->sync_pir_to_irr = vmx_sync_pir_to_irr_dummy;
}
@@ -30113,7 +29712,7 @@ index 2e0bd48..c18c0bf 100644
vmx_disable_intercept_for_msr(MSR_FS_BASE, false);
vmx_disable_intercept_for_msr(MSR_GS_BASE, false);
-@@ -6093,10 +6112,12 @@ static __init int hardware_setup(void)
+@@ -6265,10 +6284,12 @@ static __init int hardware_setup(void)
enable_pml = 0;
if (!enable_pml) {
@@ -30125,8 +29724,8 @@ index 2e0bd48..c18c0bf 100644
+ pax_close_kernel();
}
- return alloc_kvm_area();
-@@ -8352,6 +8373,12 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+ kvm_set_posted_intr_wakeup_handler(wakeup_handler);
+@@ -8580,6 +8601,12 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
"jmp 2f \n\t"
"1: " __ex(ASM_VMX_VMRESUME) "\n\t"
"2: "
@@ -30139,7 +29738,7 @@ index 2e0bd48..c18c0bf 100644
/* Save guest registers, load host registers, keep flags */
"mov %0, %c[wordsize](%%" _ASM_SP ") \n\t"
"pop %0 \n\t"
-@@ -8404,6 +8431,11 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -8632,6 +8659,11 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
#endif
[cr2]"i"(offsetof(struct vcpu_vmx, vcpu.arch.cr2)),
[wordsize]"i"(sizeof(ulong))
@@ -30151,7 +29750,7 @@ index 2e0bd48..c18c0bf 100644
: "cc", "memory"
#ifdef CONFIG_X86_64
, "rax", "rbx", "rdi", "rsi"
-@@ -8417,7 +8449,7 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -8645,7 +8677,7 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
if (debugctlmsr)
update_debugctlmsr(debugctlmsr);
@@ -30160,7 +29759,7 @@ index 2e0bd48..c18c0bf 100644
/*
* The sysexit path does not restore ds/es, so we must set them to
* a reasonable value ourselves.
-@@ -8426,8 +8458,18 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -8654,8 +8686,18 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
* may be executed in interrupt context, which saves and restore segments
* around it, nullifying its effect.
*/
@@ -30181,8 +29780,8 @@ index 2e0bd48..c18c0bf 100644
#endif
vcpu->arch.regs_avail = ~((1 << VCPU_REGS_RIP) | (1 << VCPU_REGS_RSP)
-@@ -10281,7 +10323,7 @@ static void vmx_enable_log_dirty_pt_masked(struct kvm *kvm,
- kvm_mmu_clear_dirty_pt_masked(kvm, memslot, offset, mask);
+@@ -10737,7 +10779,7 @@ out:
+ return ret;
}
-static struct kvm_x86_ops vmx_x86_ops = {
@@ -30191,10 +29790,10 @@ index 2e0bd48..c18c0bf 100644
.disabled_by_bios = vmx_disabled_by_bios,
.hardware_setup = hardware_setup,
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
-index 37bbbf8..4a8338d 100644
+index 9a2ed89..f2f4bc5 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
-@@ -1828,8 +1828,8 @@ static int xen_hvm_config(struct kvm_vcpu *vcpu, u64 data)
+@@ -1937,8 +1937,8 @@ static int xen_hvm_config(struct kvm_vcpu *vcpu, u64 data)
{
struct kvm *kvm = vcpu->kvm;
int lm = is_long_mode(vcpu);
@@ -30205,7 +29804,7 @@ index 37bbbf8..4a8338d 100644
u8 blob_size = lm ? kvm->arch.xen_hvm_config.blob_size_64
: kvm->arch.xen_hvm_config.blob_size_32;
u32 page_num = data & ~PAGE_MASK;
-@@ -2530,6 +2530,8 @@ long kvm_arch_dev_ioctl(struct file *filp,
+@@ -2636,6 +2636,8 @@ long kvm_arch_dev_ioctl(struct file *filp,
if (n < msr_list.nmsrs)
goto out;
r = -EFAULT;
@@ -30214,7 +29813,7 @@ index 37bbbf8..4a8338d 100644
if (copy_to_user(user_msr_list->indices, &msrs_to_save,
num_msrs_to_save * sizeof(u32)))
goto out;
-@@ -2890,7 +2892,7 @@ static int kvm_vcpu_ioctl_x86_set_debugregs(struct kvm_vcpu *vcpu,
+@@ -3028,7 +3030,7 @@ static int kvm_vcpu_ioctl_x86_set_debugregs(struct kvm_vcpu *vcpu,
static void fill_xsave(u8 *dest, struct kvm_vcpu *vcpu)
{
@@ -30223,7 +29822,7 @@ index 37bbbf8..4a8338d 100644
u64 xstate_bv = xsave->header.xfeatures;
u64 valid;
-@@ -2926,7 +2928,7 @@ static void fill_xsave(u8 *dest, struct kvm_vcpu *vcpu)
+@@ -3064,7 +3066,7 @@ static void fill_xsave(u8 *dest, struct kvm_vcpu *vcpu)
static void load_xsave(struct kvm_vcpu *vcpu, u8 *src)
{
@@ -30232,7 +29831,7 @@ index 37bbbf8..4a8338d 100644
u64 xstate_bv = *(u64 *)(src + XSAVE_HDR_OFFSET);
u64 valid;
-@@ -2970,7 +2972,7 @@ static void kvm_vcpu_ioctl_x86_get_xsave(struct kvm_vcpu *vcpu,
+@@ -3108,7 +3110,7 @@ static void kvm_vcpu_ioctl_x86_get_xsave(struct kvm_vcpu *vcpu,
fill_xsave((u8 *) guest_xsave->region, vcpu);
} else {
memcpy(guest_xsave->region,
@@ -30240,17 +29839,17 @@ index 37bbbf8..4a8338d 100644
+ &vcpu->arch.guest_fpu.state->fxsave,
sizeof(struct fxregs_state));
*(u64 *)&guest_xsave->region[XSAVE_HDR_OFFSET / sizeof(u32)] =
- XSTATE_FPSSE;
-@@ -2995,7 +2997,7 @@ static int kvm_vcpu_ioctl_x86_set_xsave(struct kvm_vcpu *vcpu,
+ XFEATURE_MASK_FPSSE;
+@@ -3133,7 +3135,7 @@ static int kvm_vcpu_ioctl_x86_set_xsave(struct kvm_vcpu *vcpu,
} else {
- if (xstate_bv & ~XSTATE_FPSSE)
+ if (xstate_bv & ~XFEATURE_MASK_FPSSE)
return -EINVAL;
- memcpy(&vcpu->arch.guest_fpu.state.fxsave,
+ memcpy(&vcpu->arch.guest_fpu.state->fxsave,
guest_xsave->region, sizeof(struct fxregs_state));
}
return 0;
-@@ -6215,6 +6217,7 @@ void kvm_arch_mmu_notifier_invalidate_page(struct kvm *kvm,
+@@ -6363,6 +6365,7 @@ void kvm_arch_mmu_notifier_invalidate_page(struct kvm *kvm,
* exiting to the userspace. Otherwise, the value will be returned to the
* userspace.
*/
@@ -30258,15 +29857,15 @@ index 37bbbf8..4a8338d 100644
static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
{
int r;
-@@ -6438,6 +6441,7 @@ out:
+@@ -6611,6 +6614,7 @@ out:
return r;
}
+static inline int vcpu_block(struct kvm *kvm, struct kvm_vcpu *vcpu) __must_hold(&kvm->srcu);
static inline int vcpu_block(struct kvm *kvm, struct kvm_vcpu *vcpu)
{
- if (!kvm_arch_vcpu_runnable(vcpu)) {
-@@ -6977,7 +6981,7 @@ int kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu *vcpu,
+ if (!kvm_arch_vcpu_runnable(vcpu) &&
+@@ -7158,7 +7162,7 @@ int kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu *vcpu,
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
{
struct fxregs_state *fxsave =
@@ -30275,7 +29874,7 @@ index 37bbbf8..4a8338d 100644
memcpy(fpu->fpr, fxsave->st_space, 128);
fpu->fcw = fxsave->cwd;
-@@ -6994,7 +6998,7 @@ int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
+@@ -7175,7 +7179,7 @@ int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
{
struct fxregs_state *fxsave =
@@ -30284,7 +29883,7 @@ index 37bbbf8..4a8338d 100644
memcpy(fxsave->st_space, fpu->fpr, 128);
fxsave->cwd = fpu->fcw;
-@@ -7010,9 +7014,9 @@ int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
+@@ -7191,9 +7195,9 @@ int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
static void fx_init(struct kvm_vcpu *vcpu)
{
@@ -30296,7 +29895,7 @@ index 37bbbf8..4a8338d 100644
host_xcr0 | XSTATE_COMPACTION_ENABLED;
/*
-@@ -7036,7 +7040,7 @@ void kvm_load_guest_fpu(struct kvm_vcpu *vcpu)
+@@ -7217,7 +7221,7 @@ void kvm_load_guest_fpu(struct kvm_vcpu *vcpu)
kvm_put_guest_xcr0(vcpu);
vcpu->guest_fpu_loaded = 1;
__kernel_fpu_begin();
@@ -30305,7 +29904,7 @@ index 37bbbf8..4a8338d 100644
trace_kvm_fpu(1);
}
-@@ -7325,6 +7329,8 @@ bool kvm_vcpu_compatible(struct kvm_vcpu *vcpu)
+@@ -7520,6 +7524,8 @@ bool kvm_vcpu_compatible(struct kvm_vcpu *vcpu)
struct static_key kvm_no_apic_vcpu __read_mostly;
@@ -30314,7 +29913,7 @@ index 37bbbf8..4a8338d 100644
int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
{
struct page *page;
-@@ -7341,11 +7347,14 @@ int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
+@@ -7536,11 +7542,14 @@ int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
else
vcpu->arch.mp_state = KVM_MP_STATE_UNINITIALIZED;
@@ -30333,7 +29932,7 @@ index 37bbbf8..4a8338d 100644
vcpu->arch.pio_data = page_address(page);
kvm_set_tsc_khz(vcpu, max_tsc_khz);
-@@ -7399,6 +7408,9 @@ fail_mmu_destroy:
+@@ -7596,6 +7605,9 @@ fail_mmu_destroy:
kvm_mmu_destroy(vcpu);
fail_free_pio_data:
free_page((unsigned long)vcpu->arch.pio_data);
@@ -30343,9 +29942,9 @@ index 37bbbf8..4a8338d 100644
fail:
return r;
}
-@@ -7416,6 +7428,8 @@ void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
+@@ -7613,6 +7625,8 @@ void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
free_page((unsigned long)vcpu->arch.pio_data);
- if (!irqchip_in_kernel(vcpu->kvm))
+ if (!lapic_in_kernel(vcpu))
static_key_slow_dec(&kvm_no_apic_vcpu);
+ kmem_cache_free(fpregs_state_cachep, vcpu->arch.guest_fpu.state);
+ vcpu->arch.guest_fpu.state = NULL;
@@ -32897,7 +32496,7 @@ index 0a42327..45c0063 100644
return len;
}
diff --git a/arch/x86/math-emu/fpu_aux.c b/arch/x86/math-emu/fpu_aux.c
-index dd76a05..df65688 100644
+index 024f6e9..308f1b0 100644
--- a/arch/x86/math-emu/fpu_aux.c
+++ b/arch/x86/math-emu/fpu_aux.c
@@ -52,7 +52,7 @@ void fpstate_init_soft(struct swregs_state *soft)
@@ -32910,10 +32509,10 @@ index dd76a05..df65688 100644
/*
diff --git a/arch/x86/math-emu/fpu_entry.c b/arch/x86/math-emu/fpu_entry.c
-index 3d8f2e4..ef7cf4e 100644
+index e945fed..bffe686 100644
--- a/arch/x86/math-emu/fpu_entry.c
+++ b/arch/x86/math-emu/fpu_entry.c
-@@ -677,7 +677,7 @@ int fpregs_soft_set(struct task_struct *target,
+@@ -643,7 +643,7 @@ int fpregs_soft_set(struct task_struct *target,
unsigned int pos, unsigned int count,
const void *kbuf, const void __user *ubuf)
{
@@ -32922,7 +32521,7 @@ index 3d8f2e4..ef7cf4e 100644
void *space = s387->st_space;
int ret;
int offset, other, i, tags, regnr, tag, newtop;
-@@ -729,7 +729,7 @@ int fpregs_soft_get(struct task_struct *target,
+@@ -695,7 +695,7 @@ int fpregs_soft_get(struct task_struct *target,
unsigned int pos, unsigned int count,
void *kbuf, void __user *ubuf)
{
@@ -32945,7 +32544,7 @@ index 5e044d5..d342fce 100644
#define FPU_CS (*(unsigned short *) &(FPU_info->regs->cs))
diff --git a/arch/x86/mm/Makefile b/arch/x86/mm/Makefile
-index a482d10..1a6edb5 100644
+index 65c47fd..3e0fd98 100644
--- a/arch/x86/mm/Makefile
+++ b/arch/x86/mm/Makefile
@@ -33,3 +33,7 @@ obj-$(CONFIG_ACPI_NUMA) += srat.o
@@ -33756,10 +33355,10 @@ index eef44d9..79b0e58 100644
+ return ret ? -EFAULT : 0;
+}
diff --git a/arch/x86/mm/gup.c b/arch/x86/mm/gup.c
-index 81bf3d2..7ef25c2 100644
+index ae9a37b..c5f8310 100644
--- a/arch/x86/mm/gup.c
+++ b/arch/x86/mm/gup.c
-@@ -268,7 +268,7 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
+@@ -266,7 +266,7 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
addr = start;
len = (unsigned long) nr_pages << PAGE_SHIFT;
end = start + len;
@@ -33768,7 +33367,7 @@ index 81bf3d2..7ef25c2 100644
(void __user *)start, len)))
return 0;
-@@ -344,6 +344,10 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
+@@ -342,6 +342,10 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
goto slow_irqon;
#endif
@@ -33780,7 +33379,7 @@ index 81bf3d2..7ef25c2 100644
* XXX: batch / limit 'nr', to avoid large irq off latency
* needs some instrumenting to determine the common sizes used by
diff --git a/arch/x86/mm/highmem_32.c b/arch/x86/mm/highmem_32.c
-index eecb207a..e76b7f4 100644
+index a6d7392..3b105a8 100644
--- a/arch/x86/mm/highmem_32.c
+++ b/arch/x86/mm/highmem_32.c
@@ -35,6 +35,8 @@ void *kmap_atomic_prot(struct page *page, pgprot_t prot)
@@ -33907,7 +33506,7 @@ index 42982b2..7168fc3 100644
#endif /* CONFIG_HUGETLB_PAGE */
diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c
-index 1d8a83d..e435d63 100644
+index 493f541..eeba8bb 100644
--- a/arch/x86/mm/init.c
+++ b/arch/x86/mm/init.c
@@ -4,6 +4,7 @@
@@ -34117,7 +33716,7 @@ index 1d8a83d..e435d63 100644
(unsigned long)(&__init_begin),
(unsigned long)(&__init_end));
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
-index 7562f42..6859164 100644
+index cb4ef3d..377ec5a 100644
--- a/arch/x86/mm/init_32.c
+++ b/arch/x86/mm/init_32.c
@@ -62,33 +62,6 @@ static noinline int do_test_wp_bit(void);
@@ -34370,7 +33969,7 @@ index 7562f42..6859164 100644
printk(KERN_INFO "Write protecting the kernel text: %luk\n",
size >> 10);
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
-index df48430..0a2197b 100644
+index ec081fe..14e8743 100644
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -136,7 +136,7 @@ int kernel_ident_mapping_init(struct x86_mapping_info *info, pgd_t *pgd_page,
@@ -34770,7 +34369,7 @@ index 0057a7acc..95c7edd 100644
might_sleep();
if (is_enabled()) /* recheck and proper locking in *_core() */
diff --git a/arch/x86/mm/mpx.c b/arch/x86/mm/mpx.c
-index 78e47ff..17c3093 100644
+index b2fd67d..086bcb9 100644
--- a/arch/x86/mm/mpx.c
+++ b/arch/x86/mm/mpx.c
@@ -193,7 +193,7 @@ static int mpx_insn_decode(struct insn *insn,
@@ -34782,7 +34381,7 @@ index 78e47ff..17c3093 100644
insn_get_length(insn);
/*
* copy_from_user() tries to get as many bytes as we could see in
-@@ -292,11 +292,11 @@ siginfo_t *mpx_generate_siginfo(struct pt_regs *regs)
+@@ -293,11 +293,11 @@ siginfo_t *mpx_generate_siginfo(struct pt_regs *regs)
* We were not able to extract an address from the instruction,
* probably because there was something invalid in it.
*/
@@ -34819,7 +34418,7 @@ index c3b3f65..5bfe5dc 100644
unsigned long uninitialized_var(pfn_align);
int i, nid;
diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c
-index 2c44c07..318be75 100644
+index a3137a4..a2bb098 100644
--- a/arch/x86/mm/pageattr.c
+++ b/arch/x86/mm/pageattr.c
@@ -33,7 +33,7 @@ struct cpa_data {
@@ -34875,7 +34474,7 @@ index 2c44c07..318be75 100644
prot = __pgprot(pgprot_val(prot) & ~pgprot_val(forbidden));
return prot;
-@@ -435,23 +444,37 @@ EXPORT_SYMBOL_GPL(slow_virt_to_phys);
+@@ -445,23 +454,37 @@ EXPORT_SYMBOL_GPL(slow_virt_to_phys);
static void __set_pmd_pte(pte_t *kpte, unsigned long address, pte_t pte)
{
/* change init_mm */
@@ -34915,17 +34514,7 @@ index 2c44c07..318be75 100644
}
static int
-@@ -504,7 +527,8 @@ try_preserve_large_page(pte_t *kpte, unsigned long address,
- * up accordingly.
- */
- old_pte = *kpte;
-- old_prot = req_prot = pgprot_large_2_4k(pte_pgprot(old_pte));
-+ old_prot = pte_pgprot(old_pte);
-+ req_prot = pgprot_large_2_4k(old_prot);
-
- pgprot_val(req_prot) &= ~pgprot_val(cpa->mask_clr);
- pgprot_val(req_prot) |= pgprot_val(cpa->mask_set);
-@@ -674,6 +698,10 @@ __split_large_page(struct cpa_data *cpa, pte_t *kpte, unsigned long address,
+@@ -698,6 +721,10 @@ __split_large_page(struct cpa_data *cpa, pte_t *kpte, unsigned long address,
return 0;
}
@@ -34936,7 +34525,7 @@ index 2c44c07..318be75 100644
static int split_large_page(struct cpa_data *cpa, pte_t *kpte,
unsigned long address)
{
-@@ -1117,6 +1145,9 @@ static int __cpa_process_fault(struct cpa_data *cpa, unsigned long vaddr,
+@@ -1141,6 +1168,9 @@ static int __cpa_process_fault(struct cpa_data *cpa, unsigned long vaddr,
}
}
@@ -34946,7 +34535,7 @@ index 2c44c07..318be75 100644
static int __change_page_attr(struct cpa_data *cpa, int primary)
{
unsigned long address;
-@@ -1175,7 +1206,9 @@ repeat:
+@@ -1199,7 +1229,9 @@ repeat:
* Do we really change anything ?
*/
if (pte_val(old_pte) != pte_val(new_pte)) {
@@ -34956,7 +34545,7 @@ index 2c44c07..318be75 100644
cpa->flags |= CPA_FLUSHTLB;
}
cpa->numpages = 1;
-@@ -1321,7 +1354,7 @@ static int __change_page_attr_set_clr(struct cpa_data *cpa, int checkalias)
+@@ -1345,7 +1377,7 @@ static int __change_page_attr_set_clr(struct cpa_data *cpa, int checkalias)
* CPA operation. Either a large page has been
* preserved or a single page update happened.
*/
@@ -35643,7 +35232,7 @@ index 4093216..44b6b83 100644
+ pax_force_retaddr
ret
diff --git a/arch/x86/net/bpf_jit_comp.c b/arch/x86/net/bpf_jit_comp.c
-index 70efcd0..0a689c9 100644
+index 7599197..8e986f3 100644
--- a/arch/x86/net/bpf_jit_comp.c
+++ b/arch/x86/net/bpf_jit_comp.c
@@ -14,7 +14,11 @@
@@ -35684,7 +35273,7 @@ index 70efcd0..0a689c9 100644
bpf_flush_icache(header, image + proglen);
- set_memory_ro((unsigned long)header, header->pages);
prog->bpf_func = (void *)image;
- prog->jited = true;
+ prog->jited = 1;
}
@@ -1120,12 +1127,8 @@ void bpf_jit_free(struct bpf_prog *fp)
unsigned long addr = (unsigned long)fp->bpf_func & PAGE_MASK;
@@ -36415,12 +36004,12 @@ index 86d0f9e..6d499f4 100644
ENDPROC(efi_call)
diff --git a/arch/x86/platform/intel-mid/intel-mid.c b/arch/x86/platform/intel-mid/intel-mid.c
-index 01d54ea..ba1d71c 100644
+index 1bbc21e..8a50853 100644
--- a/arch/x86/platform/intel-mid/intel-mid.c
+++ b/arch/x86/platform/intel-mid/intel-mid.c
@@ -63,7 +63,7 @@ enum intel_mid_timer_options intel_mid_timer_options;
/* intel_mid_ops to store sub arch ops */
- struct intel_mid_ops *intel_mid_ops;
+ static struct intel_mid_ops *intel_mid_ops;
/* getter function for sub arch ops*/
-static void *(*get_intel_mid_ops[])(void) = INTEL_MID_OPS_INIT;
+static const void *(*get_intel_mid_ops[])(void) = INTEL_MID_OPS_INIT;
@@ -36970,10 +36559,10 @@ index c7b15f3..cc09a65 100644
This is the Linux Xen port. Enabling this will allow the
kernel to boot in a paravirtualized environment under the
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
-index aeb385d..ff5dc9e 100644
+index b7de78b..81f54af 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
-@@ -130,8 +130,6 @@ EXPORT_SYMBOL_GPL(xen_start_info);
+@@ -131,8 +131,6 @@ EXPORT_SYMBOL_GPL(xen_start_info);
struct shared_info xen_dummy_shared_info;
@@ -36982,7 +36571,7 @@ index aeb385d..ff5dc9e 100644
RESERVE_BRK(shared_info_page_brk, PAGE_SIZE);
__read_mostly int xen_have_vector_callback;
EXPORT_SYMBOL_GPL(xen_have_vector_callback);
-@@ -589,8 +587,7 @@ static void xen_load_gdt(const struct desc_ptr *dtr)
+@@ -590,8 +588,7 @@ static void xen_load_gdt(const struct desc_ptr *dtr)
{
unsigned long va = dtr->address;
unsigned int size = dtr->size + 1;
@@ -36992,7 +36581,7 @@ index aeb385d..ff5dc9e 100644
int f;
/*
-@@ -638,8 +635,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
+@@ -639,8 +636,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
{
unsigned long va = dtr->address;
unsigned int size = dtr->size + 1;
@@ -37002,7 +36591,7 @@ index aeb385d..ff5dc9e 100644
int f;
/*
-@@ -647,7 +643,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
+@@ -648,7 +644,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
* 8-byte entries, or 16 4k pages..
*/
@@ -37011,7 +36600,7 @@ index aeb385d..ff5dc9e 100644
BUG_ON(va & ~PAGE_MASK);
for (f = 0; va < dtr->address + size; va += PAGE_SIZE, f++) {
-@@ -1270,7 +1266,7 @@ static const struct pv_apic_ops xen_apic_ops __initconst = {
+@@ -1271,7 +1267,7 @@ static const struct pv_apic_ops xen_apic_ops __initconst = {
#endif
};
@@ -37020,7 +36609,7 @@ index aeb385d..ff5dc9e 100644
{
struct sched_shutdown r = { .reason = reason };
int cpu;
-@@ -1278,26 +1274,26 @@ static void xen_reboot(int reason)
+@@ -1279,26 +1275,26 @@ static void xen_reboot(int reason)
for_each_online_cpu(cpu)
xen_pmu_finish(cpu);
@@ -37053,7 +36642,7 @@ index aeb385d..ff5dc9e 100644
{
if (pm_power_off)
pm_power_off();
-@@ -1450,8 +1446,11 @@ static void __ref xen_setup_gdt(int cpu)
+@@ -1451,8 +1447,11 @@ static void __ref xen_setup_gdt(int cpu)
pv_cpu_ops.write_gdt_entry = xen_write_gdt_entry_boot;
pv_cpu_ops.load_gdt = xen_load_gdt_boot;
@@ -37067,7 +36656,7 @@ index aeb385d..ff5dc9e 100644
pv_cpu_ops.write_gdt_entry = xen_write_gdt_entry;
pv_cpu_ops.load_gdt = xen_load_gdt;
-@@ -1569,7 +1568,17 @@ asmlinkage __visible void __init xen_start_kernel(void)
+@@ -1570,7 +1569,17 @@ asmlinkage __visible void __init xen_start_kernel(void)
__userpte_alloc_gfp &= ~__GFP_HIGHMEM;
/* Work out if we support NX */
@@ -37086,7 +36675,7 @@ index aeb385d..ff5dc9e 100644
/* Get mfn list */
xen_build_dynamic_phys_to_machine();
-@@ -1597,13 +1606,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
+@@ -1598,13 +1607,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
machine_ops = xen_machine_ops;
@@ -37101,7 +36690,7 @@ index aeb385d..ff5dc9e 100644
#ifdef CONFIG_ACPI_NUMA
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
-index 9c479fe..7ec4091 100644
+index cb5e266..cd5bcab 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -1950,7 +1950,11 @@ void __init xen_setup_kernel_pagetable(pgd_t *pgd, unsigned long max_pfn)
@@ -37296,7 +36885,7 @@ index 2f33760..835e50a 100644
#define XCHAL_ICACHE_SIZE 8192 /* I-cache size in bytes or 0 */
#define XCHAL_DCACHE_SIZE 8192 /* D-cache size in bytes or 0 */
diff --git a/block/bio.c b/block/bio.c
-index ad3f276..bef6d50 100644
+index 4f184d9..eb9fa89 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -1140,7 +1140,7 @@ struct bio *bio_copy_user_iov(struct request_queue *q,
@@ -37318,7 +36907,7 @@ index ad3f276..bef6d50 100644
nr_pages += end - start;
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
-index 55512dd..8ad1614 100644
+index 5a37188..0361054 100644
--- a/block/blk-cgroup.c
+++ b/block/blk-cgroup.c
@@ -561,10 +561,10 @@ u64 __blkg_prfill_rwstat(struct seq_file *sf, struct blkg_policy_data *pd,
@@ -37371,28 +36960,6 @@ index 55512dd..8ad1614 100644
spin_unlock_irq(blkg->q->queue_lock);
-diff --git a/block/blk-core.c b/block/blk-core.c
-index 18e92a6..1834d7c 100644
---- a/block/blk-core.c
-+++ b/block/blk-core.c
-@@ -1616,8 +1616,6 @@ static void blk_queue_bio(struct request_queue *q, struct bio *bio)
- struct request *req;
- unsigned int request_count = 0;
-
-- blk_queue_split(q, &bio, q->bio_split);
--
- /*
- * low level driver can indicate that it wants pages above a
- * certain limit bounced to low memory (ie for highmem, or even
-@@ -1625,6 +1623,8 @@ static void blk_queue_bio(struct request_queue *q, struct bio *bio)
- */
- blk_queue_bounce(q, &bio);
-
-+ blk_queue_split(q, &bio, q->bio_split);
-+
- if (bio_integrity_enabled(bio) && bio_integrity_prep(bio)) {
- bio->bi_error = -EIO;
- bio_endio(bio);
diff --git a/block/blk-iopoll.c b/block/blk-iopoll.c
index 0736729..2ec3b48 100644
--- a/block/blk-iopoll.c
@@ -37464,7 +37031,7 @@ index d214e92..9649863 100644
if (blk_verify_command(rq->cmd, has_write_perm))
return -EPERM;
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
-index 04de884..b740cb4 100644
+index 1f9093e..96b3e56 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -1941,8 +1941,8 @@ static u64 cfqg_prfill_sectors_recursive(struct seq_file *sf,
@@ -37501,7 +37068,7 @@ index f678c73..f35aa18 100644
err = -EFAULT;
goto out;
diff --git a/block/genhd.c b/block/genhd.c
-index 0c706f3..7e54d22 100644
+index e5cafa51..65e4557 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -470,21 +470,24 @@ static char *bdevt_str(dev_t devt, char *buf)
@@ -37558,7 +37125,7 @@ index 26cb624..a49c3a5 100644
(u8 *) pte, count) < count) {
kfree(pte);
diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c
-index dda653c..028a13ee 100644
+index 0774799..7afc734 100644
--- a/block/scsi_ioctl.c
+++ b/block/scsi_ioctl.c
@@ -67,7 +67,7 @@ static int scsi_get_bus(struct request_queue *q, int __user *p)
@@ -37621,42 +37188,6 @@ index dda653c..028a13ee 100644
if (in_len && copy_from_user(buffer, sic->data + cmdlen, in_len))
goto error;
-diff --git a/crypto/ablkcipher.c b/crypto/ablkcipher.c
-index b4ffc5b..e5b5721 100644
---- a/crypto/ablkcipher.c
-+++ b/crypto/ablkcipher.c
-@@ -277,12 +277,12 @@ static int ablkcipher_walk_first(struct ablkcipher_request *req,
- if (WARN_ON_ONCE(in_irq()))
- return -EDEADLK;
-
-+ walk->iv = req->info;
- walk->nbytes = walk->total;
- if (unlikely(!walk->total))
- return 0;
-
- walk->iv_buffer = NULL;
-- walk->iv = req->info;
- if (unlikely(((unsigned long)walk->iv & alignmask))) {
- int err = ablkcipher_copy_iv(walk, tfm, alignmask);
-
-diff --git a/crypto/blkcipher.c b/crypto/blkcipher.c
-index 11b9814..8cc1622 100644
---- a/crypto/blkcipher.c
-+++ b/crypto/blkcipher.c
-@@ -326,12 +326,12 @@ static int blkcipher_walk_first(struct blkcipher_desc *desc,
- if (WARN_ON_ONCE(in_irq()))
- return -EDEADLK;
-
-+ walk->iv = desc->info;
- walk->nbytes = walk->total;
- if (unlikely(!walk->total))
- return 0;
-
- walk->buffer = NULL;
-- walk->iv = desc->info;
- if (unlikely(((unsigned long)walk->iv & walk->alignmask))) {
- int err = blkcipher_copy_iv(walk);
- if (err)
diff --git a/crypto/cryptd.c b/crypto/cryptd.c
index c81861b..dbf894f 100644
--- a/crypto/cryptd.c
@@ -37680,15 +37211,10 @@ index c81861b..dbf894f 100644
static void cryptd_queue_worker(struct work_struct *work);
diff --git a/crypto/crypto_user.c b/crypto/crypto_user.c
-index 237f379..215a174 100644
+index 43fe85f..215a174 100644
--- a/crypto/crypto_user.c
+++ b/crypto/crypto_user.c
-@@ -499,17 +499,21 @@ static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
- if (link->dump == NULL)
- return -EINVAL;
-
-+ down_read(&crypto_alg_sem);
- list_for_each_entry(alg, &crypto_alg_list, cra_list)
+@@ -504,7 +504,7 @@ static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
dump_alloc += CRYPTO_REPORT_MAXSIZE;
{
@@ -37697,16 +37223,6 @@ index 237f379..215a174 100644
.dump = link->dump,
.done = link->done,
.min_dump_alloc = dump_alloc,
- };
-- return netlink_dump_start(crypto_nlsk, skb, nlh, &c);
-+ err = netlink_dump_start(crypto_nlsk, skb, nlh, &c);
- }
-+ up_read(&crypto_alg_sem);
-+
-+ return err;
- }
-
- err = nlmsg_parse(nlh, crypto_msg_min[type], attrs, CRYPTOCFGA_MAX,
diff --git a/crypto/pcrypt.c b/crypto/pcrypt.c
index ee9cfb9..30b36ed 100644
--- a/crypto/pcrypt.c
@@ -37793,10 +37309,10 @@ index d51a30a..b6891a3 100644
stream->workspace = vzalloc(zlib_inflate_workspacesize());
diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c
-index 5778e8e..03a478b 100644
+index 3405f7a..1155093 100644
--- a/drivers/acpi/acpi_video.c
+++ b/drivers/acpi/acpi_video.c
-@@ -394,7 +394,7 @@ static int video_disable_backlight_sysfs_if(
+@@ -412,7 +412,7 @@ static int video_enable_only_lcd(const struct dmi_system_id *d)
return 0;
}
@@ -37841,10 +37357,10 @@ index 16129c7..8b675cd 100644
struct apei_exec_context {
u32 ip;
diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
-index 23981ac..fa41a4b 100644
+index 3dd9c46..cf0678f 100644
--- a/drivers/acpi/apei/ghes.c
+++ b/drivers/acpi/apei/ghes.c
-@@ -474,7 +474,7 @@ static void __ghes_print_estatus(const char *pfx,
+@@ -478,7 +478,7 @@ static void __ghes_print_estatus(const char *pfx,
const struct acpi_hest_generic *generic,
const struct acpi_hest_generic_status *estatus)
{
@@ -37853,7 +37369,7 @@ index 23981ac..fa41a4b 100644
unsigned int curr_seqno;
char pfx_seq[64];
-@@ -485,7 +485,7 @@ static void __ghes_print_estatus(const char *pfx,
+@@ -489,7 +489,7 @@ static void __ghes_print_estatus(const char *pfx,
else
pfx = KERN_ERR;
}
@@ -37862,7 +37378,7 @@ index 23981ac..fa41a4b 100644
snprintf(pfx_seq, sizeof(pfx_seq), "%s{%u}" HW_ERR, pfx, curr_seqno);
printk("%s""Hardware error from APEI Generic Hardware Error Source: %d\n",
pfx_seq, generic->header.source_id);
-@@ -535,7 +535,7 @@ static int ghes_estatus_cached(struct acpi_hest_generic_status *estatus)
+@@ -539,7 +539,7 @@ static int ghes_estatus_cached(struct acpi_hest_generic_status *estatus)
cache_estatus = GHES_ESTATUS_FROM_CACHE(cache);
if (memcmp(estatus, cache_estatus, len))
continue;
@@ -37871,7 +37387,7 @@ index 23981ac..fa41a4b 100644
now = sched_clock();
if (now - cache->time_in < GHES_ESTATUS_IN_CACHE_MAX_NSEC)
cached = 1;
-@@ -569,7 +569,7 @@ static struct ghes_estatus_cache *ghes_estatus_cache_alloc(
+@@ -573,7 +573,7 @@ static struct ghes_estatus_cache *ghes_estatus_cache_alloc(
cache_estatus = GHES_ESTATUS_FROM_CACHE(cache);
memcpy(cache_estatus, estatus, len);
cache->estatus_len = len;
@@ -37880,7 +37396,7 @@ index 23981ac..fa41a4b 100644
cache->generic = generic;
cache->time_in = sched_clock();
return cache;
-@@ -619,7 +619,7 @@ static void ghes_estatus_cache_add(
+@@ -623,7 +623,7 @@ static void ghes_estatus_cache_add(
slot_cache = cache;
break;
}
@@ -37966,10 +37482,10 @@ index c68e724..e863008 100644
/* parse the table header to get the table length */
if (count <= sizeof(struct acpi_table_header))
diff --git a/drivers/acpi/device_pm.c b/drivers/acpi/device_pm.c
-index 4806b7f..78f0746 100644
+index 08a02cd..1fa9787 100644
--- a/drivers/acpi/device_pm.c
+++ b/drivers/acpi/device_pm.c
-@@ -1041,6 +1041,8 @@ EXPORT_SYMBOL_GPL(acpi_subsys_freeze);
+@@ -1024,6 +1024,8 @@ EXPORT_SYMBOL_GPL(acpi_subsys_freeze);
#endif /* CONFIG_PM_SLEEP */
@@ -37978,7 +37494,7 @@ index 4806b7f..78f0746 100644
static struct dev_pm_domain acpi_general_pm_domain = {
.ops = {
.runtime_suspend = acpi_subsys_runtime_suspend,
-@@ -1057,6 +1059,7 @@ static struct dev_pm_domain acpi_general_pm_domain = {
+@@ -1040,6 +1042,7 @@ static struct dev_pm_domain acpi_general_pm_domain = {
.restore_early = acpi_subsys_resume_early,
#endif
},
@@ -37986,7 +37502,7 @@ index 4806b7f..78f0746 100644
};
/**
-@@ -1134,7 +1137,6 @@ int acpi_dev_pm_attach(struct device *dev, bool power_on)
+@@ -1117,7 +1120,6 @@ int acpi_dev_pm_attach(struct device *dev, bool power_on)
acpi_device_wakeup(adev, ACPI_STATE_S0, false);
}
@@ -37995,10 +37511,10 @@ index 4806b7f..78f0746 100644
}
EXPORT_SYMBOL_GPL(acpi_dev_pm_attach);
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
-index 42c66b6..52256bc 100644
+index b420fb4..e8d7e29 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
-@@ -1470,7 +1470,7 @@ static int ec_clear_on_resume(const struct dmi_system_id *id)
+@@ -1503,7 +1503,7 @@ static int ec_clear_on_resume(const struct dmi_system_id *id)
return 0;
}
@@ -38047,7 +37563,7 @@ index 7cfbda4..74f738c 100644
set_no_mwait, "Extensa 5220", {
DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c
-index 3fe1fbe..198eb5f 100644
+index 0d94621..21686cc 100644
--- a/drivers/acpi/sleep.c
+++ b/drivers/acpi/sleep.c
@@ -148,7 +148,7 @@ static int __init init_nvs_nosave(const struct dmi_system_id *d)
@@ -38060,7 +37576,7 @@ index 3fe1fbe..198eb5f 100644
.callback = init_old_suspend_ordering,
.ident = "Abit KN9 (nForce4 variant)",
diff --git a/drivers/acpi/sysfs.c b/drivers/acpi/sysfs.c
-index 40a4265..bb254e2 100644
+index 0243d37..774aa56 100644
--- a/drivers/acpi/sysfs.c
+++ b/drivers/acpi/sysfs.c
@@ -486,11 +486,11 @@ static u32 num_counters;
@@ -38078,7 +37594,7 @@ index 40a4265..bb254e2 100644
static void delete_gpe_attr_array(void)
{
diff --git a/drivers/acpi/thermal.c b/drivers/acpi/thermal.c
-index 30d8518..06efb1e 100644
+index 82707f9..a6b19f5 100644
--- a/drivers/acpi/thermal.c
+++ b/drivers/acpi/thermal.c
@@ -1208,7 +1208,7 @@ static int thermal_psv(const struct dmi_system_id *d) {
@@ -38091,7 +37607,7 @@ index 30d8518..06efb1e 100644
* Award BIOS on this AOpen makes thermal control almost worthless.
* http://bugzilla.kernel.org/show_bug.cgi?id=8842
diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c
-index 2922f1f..6c2fdaf 100644
+index daaf1c4..4b583a2 100644
--- a/drivers/acpi/video_detect.c
+++ b/drivers/acpi/video_detect.c
@@ -41,7 +41,6 @@ ACPI_MODULE_NAME("video");
@@ -38102,7 +37618,7 @@ index 2922f1f..6c2fdaf 100644
static struct work_struct backlight_notify_work;
static enum acpi_backlight_type acpi_backlight_cmdline = acpi_backlight_undef;
-@@ -284,6 +283,10 @@ static int acpi_video_backlight_notify(struct notifier_block *nb,
+@@ -302,6 +301,10 @@ static int acpi_video_backlight_notify(struct notifier_block *nb,
return NOTIFY_OK;
}
@@ -38113,7 +37629,7 @@ index 2922f1f..6c2fdaf 100644
/*
* Determine which type of backlight interface to use on this system,
* First check cmdline, then dmi quirks, then do autodetect.
-@@ -314,8 +317,6 @@ enum acpi_backlight_type acpi_video_get_backlight_type(void)
+@@ -332,8 +335,6 @@ enum acpi_backlight_type acpi_video_get_backlight_type(void)
&video_caps, NULL);
INIT_WORK(&backlight_notify_work,
acpi_video_backlight_notify_work);
@@ -38182,10 +37698,10 @@ index b79cb10..7daa9f7 100644
}
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
-index 0d7f0da..bc20aa6 100644
+index 7e959f9..cc71b14 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
-@@ -4193,7 +4193,7 @@ int ata_sas_port_init(struct ata_port *ap)
+@@ -4197,7 +4197,7 @@ int ata_sas_port_init(struct ata_port *ap)
if (rc)
return rc;
@@ -38740,10 +38256,10 @@ index 074616b..d6b3d5f 100644
}
atomic_add(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc);
diff --git a/drivers/atm/iphase.c b/drivers/atm/iphase.c
-index 65e6590..df77d04 100644
+index 7d00f29..a9a6c74 100644
--- a/drivers/atm/iphase.c
+++ b/drivers/atm/iphase.c
-@@ -1145,7 +1145,7 @@ static int rx_pkt(struct atm_dev *dev)
+@@ -1146,7 +1146,7 @@ static int rx_pkt(struct atm_dev *dev)
status = (u_short) (buf_desc_ptr->desc_mode);
if (status & (RX_CER | RX_PTE | RX_OFL))
{
@@ -38752,7 +38268,7 @@ index 65e6590..df77d04 100644
IF_ERR(printk("IA: bad packet, dropping it");)
if (status & RX_CER) {
IF_ERR(printk(" cause: packet CRC error\n");)
-@@ -1168,7 +1168,7 @@ static int rx_pkt(struct atm_dev *dev)
+@@ -1169,7 +1169,7 @@ static int rx_pkt(struct atm_dev *dev)
len = dma_addr - buf_addr;
if (len > iadev->rx_buf_sz) {
printk("Over %d bytes sdu received, dropped!!!\n", iadev->rx_buf_sz);
@@ -38761,7 +38277,7 @@ index 65e6590..df77d04 100644
goto out_free_desc;
}
-@@ -1318,7 +1318,7 @@ static void rx_dle_intr(struct atm_dev *dev)
+@@ -1319,7 +1319,7 @@ static void rx_dle_intr(struct atm_dev *dev)
ia_vcc = INPH_IA_VCC(vcc);
if (ia_vcc == NULL)
{
@@ -38770,7 +38286,7 @@ index 65e6590..df77d04 100644
atm_return(vcc, skb->truesize);
dev_kfree_skb_any(skb);
goto INCR_DLE;
-@@ -1330,7 +1330,7 @@ static void rx_dle_intr(struct atm_dev *dev)
+@@ -1331,7 +1331,7 @@ static void rx_dle_intr(struct atm_dev *dev)
if ((length > iadev->rx_buf_sz) || (length >
(skb->len - sizeof(struct cpcs_trailer))))
{
@@ -38779,7 +38295,7 @@ index 65e6590..df77d04 100644
IF_ERR(printk("rx_dle_intr: Bad AAL5 trailer %d (skb len %d)",
length, skb->len);)
atm_return(vcc, skb->truesize);
-@@ -1346,7 +1346,7 @@ static void rx_dle_intr(struct atm_dev *dev)
+@@ -1347,7 +1347,7 @@ static void rx_dle_intr(struct atm_dev *dev)
IF_RX(printk("rx_dle_intr: skb push");)
vcc->push(vcc,skb);
@@ -38788,7 +38304,7 @@ index 65e6590..df77d04 100644
iadev->rx_pkt_cnt++;
}
INCR_DLE:
-@@ -2828,15 +2828,15 @@ static int ia_ioctl(struct atm_dev *dev, unsigned int cmd, void __user *arg)
+@@ -2829,15 +2829,15 @@ static int ia_ioctl(struct atm_dev *dev, unsigned int cmd, void __user *arg)
{
struct k_sonet_stats *stats;
stats = &PRIV(_ia_dev[board])->sonet_stats;
@@ -38813,7 +38329,7 @@ index 65e6590..df77d04 100644
}
ia_cmds.status = 0;
break;
-@@ -2941,7 +2941,7 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
+@@ -2942,7 +2942,7 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
if ((desc == 0) || (desc > iadev->num_tx_desc))
{
IF_ERR(printk(DEV_LABEL "invalid desc for send: %d\n", desc);)
@@ -38822,7 +38338,7 @@ index 65e6590..df77d04 100644
if (vcc->pop)
vcc->pop(vcc, skb);
else
-@@ -3046,14 +3046,14 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
+@@ -3047,14 +3047,14 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
ATM_DESC(skb) = vcc->vci;
skb_queue_tail(&iadev->tx_dma_q, skb);
@@ -39239,10 +38755,10 @@ index 5005924..9fc06c4 100644
subsys_dev_iter_init(&iter, subsys, NULL, NULL);
while ((dev = subsys_dev_iter_next(&iter)))
diff --git a/drivers/base/devres.c b/drivers/base/devres.c
-index 8754646..6828fbe 100644
+index 8fc654f..36e28e9 100644
--- a/drivers/base/devres.c
+++ b/drivers/base/devres.c
-@@ -475,7 +475,9 @@ static int remove_nodes(struct device *dev,
+@@ -476,7 +476,9 @@ static int remove_nodes(struct device *dev,
static int release_nodes(struct device *dev, struct list_head *first,
struct list_head *end, unsigned long flags)
@@ -39295,7 +38811,7 @@ index 560751b..3a4847a 100644
static ssize_t show_node_state(struct device *dev,
struct device_attribute *attr, char *buf)
diff --git a/drivers/base/platform-msi.c b/drivers/base/platform-msi.c
-index 134483d..5588d1c 100644
+index 5df4575..986184b 100644
--- a/drivers/base/platform-msi.c
+++ b/drivers/base/platform-msi.c
@@ -24,6 +24,8 @@
@@ -39347,28 +38863,10 @@ index 134483d..5588d1c 100644
static void platform_msi_free_descs(struct device *dev)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
-index 16550c6..322c4c7 100644
+index 65f50ec..acab2a1 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
-@@ -1517,7 +1517,7 @@ int pm_genpd_attach_cpuidle(struct generic_pm_domain *genpd, int state)
- {
- struct cpuidle_driver *cpuidle_drv;
- struct gpd_cpuidle_data *cpuidle_data;
-- struct cpuidle_state *idle_state;
-+ cpuidle_state_no_const *idle_state;
- int ret = 0;
-
- if (IS_ERR_OR_NULL(genpd) || state < 0)
-@@ -1585,7 +1585,7 @@ int pm_genpd_name_attach_cpuidle(const char *name, int state)
- int pm_genpd_detach_cpuidle(struct generic_pm_domain *genpd)
- {
- struct gpd_cpuidle_data *cpuidle_data;
-- struct cpuidle_state *idle_state;
-+ cpuidle_state_no_const *idle_state;
- int ret = 0;
-
- if (IS_ERR_OR_NULL(genpd))
-@@ -2021,8 +2021,11 @@ int genpd_dev_pm_attach(struct device *dev)
+@@ -1810,8 +1810,11 @@ int genpd_dev_pm_attach(struct device *dev)
goto out;
}
@@ -39379,7 +38877,7 @@ index 16550c6..322c4c7 100644
+ *(void **)&dev->pm_domain->sync = genpd_dev_pm_sync;
+ pax_close_kernel();
+
- ret = pm_genpd_poweron(pd);
+ ret = genpd_poweron(pd);
out:
diff --git a/drivers/base/power/runtime.c b/drivers/base/power/runtime.c
@@ -39430,10 +38928,10 @@ index a7b4679..d302490 100644
static DEVICE_ATTR(runtime_status, 0444, rtpm_status_show, NULL);
diff --git a/drivers/base/power/wakeup.c b/drivers/base/power/wakeup.c
-index 51f15bc..892a668 100644
+index a1e0b9a..81fc106 100644
--- a/drivers/base/power/wakeup.c
+++ b/drivers/base/power/wakeup.c
-@@ -33,14 +33,14 @@ static bool pm_abort_suspend __read_mostly;
+@@ -36,14 +36,14 @@ static bool pm_abort_suspend __read_mostly;
* They need to be modified together atomically, so it's better to use one
* atomic variable to hold them both.
*/
@@ -39450,7 +38948,7 @@ index 51f15bc..892a668 100644
*cnt = (comb >> IN_PROGRESS_BITS);
*inpr = comb & MAX_IN_PROGRESS;
-@@ -537,7 +537,7 @@ static void wakeup_source_activate(struct wakeup_source *ws)
+@@ -540,7 +540,7 @@ static void wakeup_source_activate(struct wakeup_source *ws)
ws->start_prevent_time = ws->last_time;
/* Increment the counter of events in progress. */
@@ -39459,7 +38957,7 @@ index 51f15bc..892a668 100644
trace_wakeup_source_activate(ws->name, cec);
}
-@@ -663,7 +663,7 @@ static void wakeup_source_deactivate(struct wakeup_source *ws)
+@@ -666,7 +666,7 @@ static void wakeup_source_deactivate(struct wakeup_source *ws)
* Increment the counter of registered wakeup events and decrement the
* couter of wakeup events in progress simultaneously.
*/
@@ -39469,29 +38967,10 @@ index 51f15bc..892a668 100644
split_counters(&cnt, &inpr);
diff --git a/drivers/base/regmap/regmap-debugfs.c b/drivers/base/regmap/regmap-debugfs.c
-index 4c55cfb..b4c21fb 100644
+index 3f0a7e2..8195e50 100644
--- a/drivers/base/regmap/regmap-debugfs.c
+++ b/drivers/base/regmap/regmap-debugfs.c
-@@ -30,7 +30,7 @@ static LIST_HEAD(regmap_debugfs_early_list);
- static DEFINE_MUTEX(regmap_debugfs_early_lock);
-
- /* Calculate the length of a fixed format */
--static size_t regmap_calc_reg_len(int max_val, char *buf, size_t buf_size)
-+static size_t regmap_calc_reg_len(int max_val)
- {
- return snprintf(NULL, 0, "%x", max_val);
- }
-@@ -173,8 +173,7 @@ static inline void regmap_calc_tot_len(struct regmap *map,
- {
- /* Calculate the length of a fixed format */
- if (!map->debugfs_tot_len) {
-- map->debugfs_reg_len = regmap_calc_reg_len(map->max_register,
-- buf, count);
-+ map->debugfs_reg_len = regmap_calc_reg_len(map->max_register);
- map->debugfs_val_len = 2 * map->format.val_bytes;
- map->debugfs_tot_len = map->debugfs_reg_len +
- map->debugfs_val_len + 3; /* : \n */
-@@ -404,7 +403,7 @@ static ssize_t regmap_access_read_file(struct file *file,
+@@ -401,7 +401,7 @@ static ssize_t regmap_access_read_file(struct file *file,
char __user *user_buf, size_t count,
loff_t *ppos)
{
@@ -39500,16 +38979,7 @@ index 4c55cfb..b4c21fb 100644
size_t buf_pos = 0;
loff_t p = 0;
ssize_t ret;
-@@ -420,7 +419,7 @@ static ssize_t regmap_access_read_file(struct file *file,
- return -ENOMEM;
-
- /* Calculate the length of a fixed format */
-- reg_len = regmap_calc_reg_len(map->max_register, buf, count);
-+ reg_len = regmap_calc_reg_len(map->max_register);
- tot_len = reg_len + 10; /* ': R W V P\n' */
-
- for (i = 0; i <= map->max_register; i += map->reg_stride) {
-@@ -437,7 +436,7 @@ static ssize_t regmap_access_read_file(struct file *file,
+@@ -434,7 +434,7 @@ static ssize_t regmap_access_read_file(struct file *file,
/* Format the register */
snprintf(buf + buf_pos, count - buf_pos,
"%.*x: %c %c %c %c\n",
@@ -39519,7 +38989,7 @@ index 4c55cfb..b4c21fb 100644
regmap_writeable(map, i) ? 'y' : 'n',
regmap_volatile(map, i) ? 'y' : 'n',
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c
-index afaf562..722e2a9 100644
+index 4ac63c0..9007855 100644
--- a/drivers/base/regmap/regmap.c
+++ b/drivers/base/regmap/regmap.c
@@ -344,8 +344,8 @@ static void regmap_unlock_mutex(void *__map)
@@ -39872,7 +39342,7 @@ index be73e9d..7fbf140 100644
cmdlist_t *reqQ;
cmdlist_t *cmpQ;
diff --git a/drivers/block/drbd/drbd_bitmap.c b/drivers/block/drbd/drbd_bitmap.c
-index e5e0f19..a5dfbd4 100644
+index 9462d27..4b9f997 100644
--- a/drivers/block/drbd/drbd_bitmap.c
+++ b/drivers/block/drbd/drbd_bitmap.c
@@ -1027,7 +1027,7 @@ static void bm_page_io_async(struct drbd_bm_aio_ctx *ctx, int page_nr) __must_ho
@@ -39885,7 +39355,7 @@ index e5e0f19..a5dfbd4 100644
}
diff --git a/drivers/block/drbd/drbd_int.h b/drivers/block/drbd/drbd_int.h
-index 015c6e9..8226d6c 100644
+index e66d453..edaae71 100644
--- a/drivers/block/drbd/drbd_int.h
+++ b/drivers/block/drbd/drbd_int.h
@@ -386,7 +386,7 @@ struct drbd_epoch {
@@ -39982,10 +39452,10 @@ index e80cbef..42533f1 100644
if (!msg)
goto failed;
diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c
-index c097909..b0dd588 100644
+index b4b5680..4ae7b27 100644
--- a/drivers/block/drbd/drbd_receiver.c
+++ b/drivers/block/drbd/drbd_receiver.c
-@@ -870,7 +870,7 @@ int drbd_connected(struct drbd_peer_device *peer_device)
+@@ -871,7 +871,7 @@ int drbd_connected(struct drbd_peer_device *peer_device)
struct drbd_device *device = peer_device->device;
int err;
@@ -39994,7 +39464,7 @@ index c097909..b0dd588 100644
device->peer_seq = 0;
device->state_mutex = peer_device->connection->agreed_pro_version < 100 ?
-@@ -1233,7 +1233,7 @@ static enum finish_epoch drbd_may_finish_epoch(struct drbd_connection *connectio
+@@ -1234,7 +1234,7 @@ static enum finish_epoch drbd_may_finish_epoch(struct drbd_connection *connectio
do {
next_epoch = NULL;
@@ -40003,7 +39473,7 @@ index c097909..b0dd588 100644
switch (ev & ~EV_CLEANUP) {
case EV_PUT:
-@@ -1273,7 +1273,7 @@ static enum finish_epoch drbd_may_finish_epoch(struct drbd_connection *connectio
+@@ -1274,7 +1274,7 @@ static enum finish_epoch drbd_may_finish_epoch(struct drbd_connection *connectio
rv = FE_DESTROYED;
} else {
epoch->flags = 0;
@@ -40012,7 +39482,7 @@ index c097909..b0dd588 100644
/* atomic_set(&epoch->active, 0); is already zero */
if (rv == FE_STILL_LIVE)
rv = FE_RECYCLED;
-@@ -1550,7 +1550,7 @@ static int receive_Barrier(struct drbd_connection *connection, struct packet_inf
+@@ -1551,7 +1551,7 @@ static int receive_Barrier(struct drbd_connection *connection, struct packet_inf
conn_wait_active_ee_empty(connection);
drbd_flush(connection);
@@ -40021,7 +39491,7 @@ index c097909..b0dd588 100644
epoch = kmalloc(sizeof(struct drbd_epoch), GFP_NOIO);
if (epoch)
break;
-@@ -1564,11 +1564,11 @@ static int receive_Barrier(struct drbd_connection *connection, struct packet_inf
+@@ -1565,11 +1565,11 @@ static int receive_Barrier(struct drbd_connection *connection, struct packet_inf
}
epoch->flags = 0;
@@ -40035,7 +39505,7 @@ index c097909..b0dd588 100644
list_add(&epoch->list, &connection->current_epoch->list);
connection->current_epoch = epoch;
connection->epochs++;
-@@ -1780,7 +1780,9 @@ static int e_end_resync_block(struct drbd_work *w, int unused)
+@@ -1781,7 +1781,9 @@ static int e_end_resync_block(struct drbd_work *w, int unused)
}
static int recv_resync_read(struct drbd_peer_device *peer_device, sector_t sector,
@@ -40046,7 +39516,7 @@ index c097909..b0dd588 100644
{
struct drbd_device *device = peer_device->device;
struct drbd_peer_request *peer_req;
-@@ -1802,7 +1804,7 @@ static int recv_resync_read(struct drbd_peer_device *peer_device, sector_t secto
+@@ -1803,7 +1805,7 @@ static int recv_resync_read(struct drbd_peer_device *peer_device, sector_t secto
list_add_tail(&peer_req->w.list, &device->sync_ee);
spin_unlock_irq(&device->resource->req_lock);
@@ -40055,7 +39525,7 @@ index c097909..b0dd588 100644
if (drbd_submit_peer_request(device, peer_req, WRITE, DRBD_FAULT_RS_WR) == 0)
return 0;
-@@ -1900,7 +1902,7 @@ static int receive_RSDataReply(struct drbd_connection *connection, struct packet
+@@ -1901,7 +1903,7 @@ static int receive_RSDataReply(struct drbd_connection *connection, struct packet
drbd_send_ack_dp(peer_device, P_NEG_ACK, p, pi->size);
}
@@ -40064,7 +39534,7 @@ index c097909..b0dd588 100644
return err;
}
-@@ -2290,7 +2292,7 @@ static int receive_Data(struct drbd_connection *connection, struct packet_info *
+@@ -2291,7 +2293,7 @@ static int receive_Data(struct drbd_connection *connection, struct packet_info *
err = wait_for_and_update_peer_seq(peer_device, peer_seq);
drbd_send_ack_dp(peer_device, P_NEG_ACK, p, pi->size);
@@ -40073,7 +39543,7 @@ index c097909..b0dd588 100644
err2 = drbd_drain_block(peer_device, pi->size);
if (!err)
err = err2;
-@@ -2334,7 +2336,7 @@ static int receive_Data(struct drbd_connection *connection, struct packet_info *
+@@ -2335,7 +2337,7 @@ static int receive_Data(struct drbd_connection *connection, struct packet_info *
spin_lock(&connection->epoch_lock);
peer_req->epoch = connection->current_epoch;
@@ -40082,7 +39552,7 @@ index c097909..b0dd588 100644
atomic_inc(&peer_req->epoch->active);
spin_unlock(&connection->epoch_lock);
-@@ -2479,7 +2481,7 @@ bool drbd_rs_c_min_rate_throttle(struct drbd_device *device)
+@@ -2480,7 +2482,7 @@ bool drbd_rs_c_min_rate_throttle(struct drbd_device *device)
curr_events = (int)part_stat_read(&disk->part0, sectors[0]) +
(int)part_stat_read(&disk->part0, sectors[1]) -
@@ -40091,7 +39561,7 @@ index c097909..b0dd588 100644
if (atomic_read(&device->ap_actlog_cnt)
|| curr_events - device->rs_last_events > 64) {
-@@ -2618,7 +2620,7 @@ static int receive_DataRequest(struct drbd_connection *connection, struct packet
+@@ -2619,7 +2621,7 @@ static int receive_DataRequest(struct drbd_connection *connection, struct packet
device->use_csums = true;
} else if (pi->cmd == P_OV_REPLY) {
/* track progress, we may need to throttle */
@@ -40100,7 +39570,7 @@ index c097909..b0dd588 100644
peer_req->w.cb = w_e_end_ov_reply;
dec_rs_pending(device);
/* drbd_rs_begin_io done when we sent this request,
-@@ -2691,7 +2693,7 @@ static int receive_DataRequest(struct drbd_connection *connection, struct packet
+@@ -2692,7 +2694,7 @@ static int receive_DataRequest(struct drbd_connection *connection, struct packet
goto out_free_e;
submit_for_resync:
@@ -40109,7 +39579,7 @@ index c097909..b0dd588 100644
submit:
update_receiver_timing_details(connection, drbd_submit_peer_request);
-@@ -4564,7 +4566,7 @@ struct data_cmd {
+@@ -4565,7 +4567,7 @@ struct data_cmd {
int expect_payload;
size_t pkt_size;
int (*fn)(struct drbd_connection *, struct packet_info *);
@@ -40118,7 +39588,7 @@ index c097909..b0dd588 100644
static struct data_cmd drbd_cmd_handler[] = {
[P_DATA] = { 1, sizeof(struct p_data), receive_Data },
-@@ -4678,7 +4680,7 @@ static void conn_disconnect(struct drbd_connection *connection)
+@@ -4679,7 +4681,7 @@ static void conn_disconnect(struct drbd_connection *connection)
if (!list_empty(&connection->current_epoch->list))
drbd_err(connection, "ASSERTION FAILED: connection->current_epoch->list not empty\n");
/* ok, no more ee's on the fly, it is safe to reset the epoch_size */
@@ -40127,7 +39597,7 @@ index c097909..b0dd588 100644
connection->send.seen_any_write_yet = false;
drbd_info(connection, "Connection closed\n");
-@@ -5182,7 +5184,7 @@ static int got_IsInSync(struct drbd_connection *connection, struct packet_info *
+@@ -5183,7 +5185,7 @@ static int got_IsInSync(struct drbd_connection *connection, struct packet_info *
put_ldev(device);
}
dec_rs_pending(device);
@@ -40136,7 +39606,7 @@ index c097909..b0dd588 100644
return 0;
}
-@@ -5470,7 +5472,7 @@ static int connection_finish_peer_reqs(struct drbd_connection *connection)
+@@ -5471,7 +5473,7 @@ static int connection_finish_peer_reqs(struct drbd_connection *connection)
struct asender_cmd {
size_t pkt_size;
int (*fn)(struct drbd_connection *connection, struct packet_info *);
@@ -40199,7 +39669,7 @@ index 5578c14..a05f791 100644
device->rs_last_events =
(int)part_stat_read(&disk->part0, sectors[0]) +
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
-index 7be2375..8747286 100644
+index d06c62e..cd04d96 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -109,7 +109,7 @@ static int pkt_seq_show(struct seq_file *m, void *p);
@@ -40221,7 +39691,7 @@ index 7be2375..8747286 100644
if (ti.nwa_v) {
pd->nwa = be32_to_cpu(ti.next_writable);
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
-index 8630a77..aad8d5aa 100644
+index 81ea69f..55a949d 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -64,7 +64,7 @@
@@ -40304,10 +39774,10 @@ index e5565fb..71be10b4 100644
+ .command_completed = smart1_completed,
};
diff --git a/drivers/bluetooth/btwilink.c b/drivers/bluetooth/btwilink.c
-index 7a722df..54b76ab 100644
+index 57eb935..eafd6b8 100644
--- a/drivers/bluetooth/btwilink.c
+++ b/drivers/bluetooth/btwilink.c
-@@ -288,7 +288,7 @@ static int ti_st_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
+@@ -275,7 +275,7 @@ static int ti_st_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
static int bt_ti_probe(struct platform_device *pdev)
{
@@ -40347,7 +39817,7 @@ index 577cc4b..bfe0c2d 100644
return 0;
}
diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c
-index 5d28a45..a538f90 100644
+index c206ccd..375691c 100644
--- a/drivers/cdrom/cdrom.c
+++ b/drivers/cdrom/cdrom.c
@@ -610,7 +610,6 @@ int register_cdrom(struct cdrom_device_info *cdi)
@@ -40380,7 +39850,7 @@ index 5d28a45..a538f90 100644
cd_dbg(CD_REG_UNREG, "drive \"/dev/%s\" unregistered\n", cdi->name);
}
-@@ -2126,7 +2127,7 @@ static int cdrom_read_cdda_old(struct cdrom_device_info *cdi, __u8 __user *ubuf,
+@@ -2127,7 +2128,7 @@ static int cdrom_read_cdda_old(struct cdrom_device_info *cdi, __u8 __user *ubuf,
*/
nr = nframes;
do {
@@ -40389,7 +39859,7 @@ index 5d28a45..a538f90 100644
if (cgc.buffer)
break;
-@@ -3434,7 +3435,7 @@ static int cdrom_print_info(const char *header, int val, char *info,
+@@ -3435,7 +3436,7 @@ static int cdrom_print_info(const char *header, int val, char *info,
struct cdrom_device_info *cdi;
int ret;
@@ -40495,10 +39965,10 @@ index 4f94375..413694e 100644
return -EINVAL;
else
diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c
-index 5c0baa9..44011b1 100644
+index 240b6cf..e0ba20c 100644
--- a/drivers/char/hpet.c
+++ b/drivers/char/hpet.c
-@@ -575,7 +575,7 @@ static inline unsigned long hpet_time_div(struct hpets *hpets,
+@@ -574,7 +574,7 @@ static inline unsigned long hpet_time_div(struct hpets *hpets,
}
static int
@@ -40542,7 +40012,7 @@ index e3536da..b1617f0 100644
intf->proc_dir = NULL;
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
-index 54bccf7..f7a4fa9 100644
+index 4cc72fa..4c6f80d 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -300,7 +300,7 @@ struct smi_info {
@@ -40566,7 +40036,7 @@ index 54bccf7..f7a4fa9 100644
#define SI_MAX_PARMS 4
-@@ -3613,7 +3613,7 @@ static int try_smi_init(struct smi_info *new_smi)
+@@ -3620,7 +3620,7 @@ static int try_smi_init(struct smi_info *new_smi)
atomic_set(&new_smi->req_events, 0);
new_smi->run_to_completion = false;
for (i = 0; i < SI_NUM_STATS; i++)
@@ -40576,10 +40046,10 @@ index 54bccf7..f7a4fa9 100644
new_smi->interrupt_disabled = true;
atomic_set(&new_smi->need_watch, 0);
diff --git a/drivers/char/ipmi/ipmi_ssif.c b/drivers/char/ipmi/ipmi_ssif.c
-index 877205d..b098b7e 100644
+index 90e6246..58acb77 100644
--- a/drivers/char/ipmi/ipmi_ssif.c
+++ b/drivers/char/ipmi/ipmi_ssif.c
-@@ -283,17 +283,17 @@ struct ssif_info {
+@@ -284,17 +284,17 @@ struct ssif_info {
unsigned int multi_len;
unsigned int multi_pos;
@@ -40601,7 +40071,7 @@ index 877205d..b098b7e 100644
static void return_hosed_msg(struct ssif_info *ssif_info,
struct ipmi_smi_msg *msg);
-@@ -1608,7 +1608,7 @@ static int ssif_probe(struct i2c_client *client, const struct i2c_device_id *id)
+@@ -1609,7 +1609,7 @@ static int ssif_probe(struct i2c_client *client, const struct i2c_device_id *id)
}
found:
@@ -40610,7 +40080,7 @@ index 877205d..b098b7e 100644
if (ssif_dbg_probe) {
pr_info("ssif_probe: i2c_probe found device at i2c address %x\n",
-@@ -1622,7 +1622,7 @@ static int ssif_probe(struct i2c_client *client, const struct i2c_device_id *id)
+@@ -1623,7 +1623,7 @@ static int ssif_probe(struct i2c_client *client, const struct i2c_device_id *id)
ssif_info->retry_timer.function = retry_timeout;
for (i = 0; i < SSIF_NUM_STATS; i++)
@@ -40782,7 +40252,7 @@ index 97c2d8d..aa03a89 100644
*ppos = i;
diff --git a/drivers/char/pcmcia/synclink_cs.c b/drivers/char/pcmcia/synclink_cs.c
-index 7680d52..073f799e 100644
+index 45df4bf..22d88d4 100644
--- a/drivers/char/pcmcia/synclink_cs.c
+++ b/drivers/char/pcmcia/synclink_cs.c
@@ -2345,7 +2345,7 @@ static void mgslpc_close(struct tty_struct *tty, struct file * filp)
@@ -40810,9 +40280,9 @@ index 7680d52..073f799e 100644
- __FILE__, __LINE__, tty->driver->name, port->count);
+ __FILE__, __LINE__, tty->driver->name, atomic_read(&port->count));
- /* If port is closing, signal caller to try again */
- if (port->flags & ASYNC_CLOSING){
-@@ -2525,11 +2525,11 @@ static int mgslpc_open(struct tty_struct *tty, struct file * filp)
+ port->low_latency = (port->flags & ASYNC_LOW_LATENCY) ? 1 : 0;
+
+@@ -2516,11 +2516,11 @@ static int mgslpc_open(struct tty_struct *tty, struct file * filp)
goto cleanup;
}
spin_lock(&port->lock);
@@ -40826,7 +40296,7 @@ index 7680d52..073f799e 100644
/* 1st open on this device, init hardware */
retval = startup(info, tty);
if (retval < 0)
-@@ -3918,7 +3918,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
+@@ -3909,7 +3909,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
unsigned short new_crctype;
/* return error if TTY interface open */
@@ -40835,7 +40305,7 @@ index 7680d52..073f799e 100644
return -EBUSY;
switch (encoding)
-@@ -4022,7 +4022,7 @@ static int hdlcdev_open(struct net_device *dev)
+@@ -4013,7 +4013,7 @@ static int hdlcdev_open(struct net_device *dev)
/* arbitrate between network and tty opens */
spin_lock_irqsave(&info->netlock, flags);
@@ -40844,7 +40314,7 @@ index 7680d52..073f799e 100644
printk(KERN_WARNING "%s: hdlc_open returning busy\n", dev->name);
spin_unlock_irqrestore(&info->netlock, flags);
return -EBUSY;
-@@ -4112,7 +4112,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+@@ -4103,7 +4103,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
printk("%s:hdlcdev_ioctl(%s)\n", __FILE__, dev->name);
/* return error if TTY interface open */
@@ -40986,24 +40456,25 @@ index 565a947..dcdc06e 100644
acpi_os_unmap_iomem(virt, len);
return 0;
diff --git a/drivers/char/tpm/tpm_eventlog.c b/drivers/char/tpm/tpm_eventlog.c
-index 3a56a13..f6570e6 100644
+index bd72fb0..0212a62 100644
--- a/drivers/char/tpm/tpm_eventlog.c
+++ b/drivers/char/tpm/tpm_eventlog.c
-@@ -95,7 +95,7 @@ static void *tpm_bios_measurements_start(struct seq_file *m, loff_t *pos)
- event = addr;
+@@ -108,8 +108,7 @@ static void *tpm_bios_measurements_start(struct seq_file *m, loff_t *pos)
+ converted_event_type = do_endian_conversion(event->event_type);
- if ((event->event_type == 0 && event->event_size == 0) ||
-- ((addr + sizeof(struct tcpa_event) + event->event_size) >= limit))
-+ (event->event_size >= limit - addr - sizeof(struct tcpa_event)))
+ if (((converted_event_type == 0) && (converted_event_size == 0))
+- || ((addr + sizeof(struct tcpa_event) + converted_event_size)
+- >= limit))
++ || (converted_event_size >= limit - addr - sizeof(struct tcpa_event)))
return NULL;
return addr;
-@@ -120,7 +120,7 @@ static void *tpm_bios_measurements_next(struct seq_file *m, void *v,
- return NULL;
+@@ -138,7 +137,7 @@ static void *tpm_bios_measurements_next(struct seq_file *m, void *v,
+ converted_event_type = do_endian_conversion(event->event_type);
- if ((event->event_type == 0 && event->event_size == 0) ||
-- ((v + sizeof(struct tcpa_event) + event->event_size) >= limit))
-+ (event->event_size >= limit - v - sizeof(struct tcpa_event)))
+ if (((converted_event_type == 0) && (converted_event_size == 0)) ||
+- ((v + sizeof(struct tcpa_event) + converted_event_size) >= limit))
++ (converted_event_size >= limit - v - sizeof(struct tcpa_event)))
return NULL;
(*pos)++;
@@ -41197,7 +40668,7 @@ index cec1ee2..d8e33a0 100644
cpu_notifier_register_begin();
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c
-index 7c0d70e..a09ca84 100644
+index 90d6408..0df4580 100644
--- a/drivers/cpufreq/cpufreq-dt.c
+++ b/drivers/cpufreq/cpufreq-dt.c
@@ -456,7 +456,9 @@ static int dt_cpufreq_probe(struct platform_device *pdev)
@@ -41212,10 +40683,10 @@ index 7c0d70e..a09ca84 100644
ret = cpufreq_register_driver(&dt_cpufreq_driver);
if (ret)
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
-index 25c4c15..6052159 100644
+index 8412ce5..3a40e15 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
-@@ -2120,7 +2120,7 @@ void cpufreq_unregister_governor(struct cpufreq_governor *governor)
+@@ -2048,7 +2048,7 @@ void cpufreq_unregister_governor(struct cpufreq_governor *governor)
read_unlock_irqrestore(&cpufreq_driver_lock, flags);
mutex_lock(&cpufreq_governor_mutex);
@@ -41224,7 +40695,7 @@ index 25c4c15..6052159 100644
mutex_unlock(&cpufreq_governor_mutex);
return;
}
-@@ -2346,7 +2346,7 @@ static int cpufreq_cpu_callback(struct notifier_block *nfb,
+@@ -2274,7 +2274,7 @@ static int cpufreq_cpu_callback(struct notifier_block *nfb,
return NOTIFY_OK;
}
@@ -41233,7 +40704,7 @@ index 25c4c15..6052159 100644
.notifier_call = cpufreq_cpu_callback,
};
-@@ -2386,13 +2386,17 @@ int cpufreq_boost_trigger_state(int state)
+@@ -2314,13 +2314,17 @@ int cpufreq_boost_trigger_state(int state)
return 0;
write_lock_irqsave(&cpufreq_driver_lock, flags);
@@ -41253,7 +40724,7 @@ index 25c4c15..6052159 100644
write_unlock_irqrestore(&cpufreq_driver_lock, flags);
pr_err("%s: Cannot %s BOOST\n",
-@@ -2422,8 +2426,11 @@ static int create_boost_sysfs_file(void)
+@@ -2350,8 +2354,11 @@ static int create_boost_sysfs_file(void)
* Check if driver provides function to enable boost -
* if not, use cpufreq_boost_set_sw as default
*/
@@ -41265,9 +40736,9 @@ index 25c4c15..6052159 100644
+ pax_close_kernel();
+ }
- ret = cpufreq_sysfs_create_file(&boost.attr);
+ ret = sysfs_create_file(cpufreq_global_kobject, &boost.attr);
if (ret)
-@@ -2447,7 +2454,9 @@ int cpufreq_enable_boost_support(void)
+@@ -2375,7 +2382,9 @@ int cpufreq_enable_boost_support(void)
if (cpufreq_boost_supported())
return 0;
@@ -41278,7 +40749,7 @@ index 25c4c15..6052159 100644
/* This will get removed on driver unregister */
return create_boost_sysfs_file();
-@@ -2504,8 +2513,11 @@ int cpufreq_register_driver(struct cpufreq_driver *driver_data)
+@@ -2432,8 +2441,11 @@ int cpufreq_register_driver(struct cpufreq_driver *driver_data)
cpufreq_driver = driver_data;
write_unlock_irqrestore(&cpufreq_driver_lock, flags);
@@ -41293,11 +40764,11 @@ index 25c4c15..6052159 100644
ret = create_boost_sysfs_file();
if (ret)
diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c
-index 939197f..02cf2e1 100644
+index b260576..21a0a29 100644
--- a/drivers/cpufreq/cpufreq_governor.c
+++ b/drivers/cpufreq/cpufreq_governor.c
-@@ -466,7 +466,7 @@ static int cpufreq_governor_start(struct cpufreq_policy *policy,
- cs_dbs_info->enable = 1;
+@@ -460,7 +460,7 @@ static int cpufreq_governor_start(struct cpufreq_policy *policy,
+ cs_dbs_info->down_skip = 0;
cs_dbs_info->requested_freq = policy->cur;
} else {
- struct od_ops *od_ops = cdata->gov_ops;
@@ -41306,10 +40777,10 @@ index 939197f..02cf2e1 100644
od_dbs_info->rate_mult = 1;
diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h
-index 50f1717..7e99891 100644
+index 5621bb0..a854d3c 100644
--- a/drivers/cpufreq/cpufreq_governor.h
+++ b/drivers/cpufreq/cpufreq_governor.h
-@@ -218,7 +218,7 @@ struct common_dbs_data {
+@@ -217,7 +217,7 @@ struct common_dbs_data {
void (*exit)(struct dbs_data *dbs_data, bool notify);
/* Governor specific ops, see below */
@@ -41318,7 +40789,7 @@ index 50f1717..7e99891 100644
/*
* Protects governor's data (struct dbs_data and struct common_dbs_data)
-@@ -240,7 +240,7 @@ struct od_ops {
+@@ -239,7 +239,7 @@ struct od_ops {
unsigned int (*powersave_bias_target)(struct cpufreq_policy *policy,
unsigned int freq_next, unsigned int relation);
void (*freq_increase)(struct cpufreq_policy *policy, unsigned int freq);
@@ -41328,10 +40799,10 @@ index 50f1717..7e99891 100644
static inline int delay_for_sampling_rate(unsigned int sampling_rate)
{
diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
-index 1fa9088..d05d551 100644
+index 03ac6ce..2d7a94b 100644
--- a/drivers/cpufreq/cpufreq_ondemand.c
+++ b/drivers/cpufreq/cpufreq_ondemand.c
-@@ -517,7 +517,7 @@ static void od_exit(struct dbs_data *dbs_data, bool notify)
+@@ -509,7 +509,7 @@ static void od_exit(struct dbs_data *dbs_data, bool notify)
define_get_cpu_dbs_routines(od_cpu_dbs_info);
@@ -41340,7 +40811,7 @@ index 1fa9088..d05d551 100644
.powersave_bias_init_cpu = ondemand_powersave_bias_init_cpu,
.powersave_bias_target = generic_powersave_bias_target,
.freq_increase = dbs_freq_increase,
-@@ -576,14 +576,18 @@ void od_register_powersave_bias_handler(unsigned int (*f)
+@@ -568,14 +568,18 @@ void od_register_powersave_bias_handler(unsigned int (*f)
(struct cpufreq_policy *, unsigned int, unsigned int),
unsigned int powersave_bias)
{
@@ -41362,10 +40833,10 @@ index 1fa9088..d05d551 100644
}
EXPORT_SYMBOL_GPL(od_unregister_powersave_bias_handler);
diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
-index aa33b92..42d64c8 100644
+index 98fb882..9f1d2a4 100644
--- a/drivers/cpufreq/intel_pstate.c
+++ b/drivers/cpufreq/intel_pstate.c
-@@ -137,10 +137,10 @@ struct pstate_funcs {
+@@ -138,10 +138,10 @@ struct pstate_funcs {
struct cpu_defaults {
struct pstate_adjust_policy pid_policy;
struct pstate_funcs funcs;
@@ -41378,7 +40849,7 @@ index aa33b92..42d64c8 100644
static int hwp_active;
struct perf_limits {
-@@ -736,18 +736,18 @@ static void intel_pstate_set_pstate(struct cpudata *cpu, int pstate, bool force)
+@@ -840,19 +840,19 @@ static void intel_pstate_set_pstate(struct cpudata *cpu, int pstate, bool force)
cpu->pstate.current_pstate = pstate;
@@ -41390,10 +40861,12 @@ index aa33b92..42d64c8 100644
{
- cpu->pstate.min_pstate = pstate_funcs.get_min();
- cpu->pstate.max_pstate = pstate_funcs.get_max();
+- cpu->pstate.max_pstate_physical = pstate_funcs.get_max_physical();
- cpu->pstate.turbo_pstate = pstate_funcs.get_turbo();
- cpu->pstate.scaling = pstate_funcs.get_scaling();
+ cpu->pstate.min_pstate = pstate_funcs->get_min();
+ cpu->pstate.max_pstate = pstate_funcs->get_max();
++ cpu->pstate.max_pstate_physical = pstate_funcs->get_max_physical();
+ cpu->pstate.turbo_pstate = pstate_funcs->get_turbo();
+ cpu->pstate.scaling = pstate_funcs->get_scaling();
@@ -41404,7 +40877,7 @@ index aa33b92..42d64c8 100644
intel_pstate_set_pstate(cpu, cpu->pstate.min_pstate, false);
}
-@@ -1097,15 +1097,15 @@ static unsigned int force_load;
+@@ -1210,15 +1210,15 @@ static unsigned int force_load;
static int intel_pstate_msrs_not_valid(void)
{
@@ -41424,11 +40897,12 @@ index aa33b92..42d64c8 100644
{
pid_params.sample_rate_ms = policy->sample_rate_ms;
pid_params.p_gain_pct = policy->p_gain_pct;
-@@ -1117,12 +1117,7 @@ static void copy_pid_params(struct pstate_adjust_policy *policy)
+@@ -1230,13 +1230,7 @@ static void copy_pid_params(struct pstate_adjust_policy *policy)
static void copy_cpu_funcs(struct pstate_funcs *funcs)
{
- pstate_funcs.get_max = funcs->get_max;
+- pstate_funcs.get_max_physical = funcs->get_max_physical;
- pstate_funcs.get_min = funcs->get_min;
- pstate_funcs.get_turbo = funcs->get_turbo;
- pstate_funcs.get_scaling = funcs->get_scaling;
@@ -41651,10 +41125,10 @@ index 832a2c3..1794080 100644
.name = "cpuidle",
};
diff --git a/drivers/crypto/hifn_795x.c b/drivers/crypto/hifn_795x.c
-index 8d2a772..33826c9 100644
+index ca5c71a..df88d0c 100644
--- a/drivers/crypto/hifn_795x.c
+++ b/drivers/crypto/hifn_795x.c
-@@ -51,7 +51,7 @@ module_param_string(hifn_pll_ref, hifn_pll_ref, sizeof(hifn_pll_ref), 0444);
+@@ -49,7 +49,7 @@ module_param_string(hifn_pll_ref, hifn_pll_ref, sizeof(hifn_pll_ref), 0444);
MODULE_PARM_DESC(hifn_pll_ref,
"PLL reference clock (pci[freq] or ext[freq], default ext)");
@@ -41663,7 +41137,7 @@ index 8d2a772..33826c9 100644
#define ACRYPTO_OP_DECRYPT 0
#define ACRYPTO_OP_ENCRYPT 1
-@@ -2577,7 +2577,7 @@ static int hifn_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+@@ -2575,7 +2575,7 @@ static int hifn_probe(struct pci_dev *pdev, const struct pci_device_id *id)
goto err_out_disable_pci_device;
snprintf(name, sizeof(name), "hifn%d",
@@ -41672,45 +41146,6 @@ index 8d2a772..33826c9 100644
err = pci_request_regions(pdev, name);
if (err)
-diff --git a/drivers/crypto/nx/nx-aes-ccm.c b/drivers/crypto/nx/nx-aes-ccm.c
-index 73ef499..7038f36 100644
---- a/drivers/crypto/nx/nx-aes-ccm.c
-+++ b/drivers/crypto/nx/nx-aes-ccm.c
-@@ -409,7 +409,7 @@ static int ccm_nx_decrypt(struct aead_request *req,
- processed += to_process;
- } while (processed < nbytes);
-
-- rc = memcmp(csbcpb->cpb.aes_ccm.out_pat_or_mac, priv->oauth_tag,
-+ rc = crypto_memneq(csbcpb->cpb.aes_ccm.out_pat_or_mac, priv->oauth_tag,
- authsize) ? -EBADMSG : 0;
- out:
- spin_unlock_irqrestore(&nx_ctx->lock, irq_flags);
-diff --git a/drivers/crypto/nx/nx-aes-gcm.c b/drivers/crypto/nx/nx-aes-gcm.c
-index eee624f..bf61bed 100644
---- a/drivers/crypto/nx/nx-aes-gcm.c
-+++ b/drivers/crypto/nx/nx-aes-gcm.c
-@@ -418,7 +418,7 @@ mac:
- itag, req->src, req->assoclen + nbytes,
- crypto_aead_authsize(crypto_aead_reqtfm(req)),
- SCATTERWALK_FROM_SG);
-- rc = memcmp(itag, otag,
-+ rc = crypto_memneq(itag, otag,
- crypto_aead_authsize(crypto_aead_reqtfm(req))) ?
- -EBADMSG : 0;
- }
-diff --git a/drivers/crypto/talitos.c b/drivers/crypto/talitos.c
-index 3b20a1b..8b327d8 100644
---- a/drivers/crypto/talitos.c
-+++ b/drivers/crypto/talitos.c
-@@ -1015,7 +1015,7 @@ static void ipsec_esp_decrypt_swauth_done(struct device *dev,
- } else
- oicv = (char *)&edesc->link_tbl[0];
-
-- err = memcmp(oicv, icv, authsize) ? -EBADMSG : 0;
-+ err = crypto_memneq(oicv, icv, authsize) ? -EBADMSG : 0;
- }
-
- kfree(edesc);
diff --git a/drivers/devfreq/devfreq.c b/drivers/devfreq/devfreq.c
index ca848cc..9049c89 100644
--- a/drivers/devfreq/devfreq.c
@@ -41778,7 +41213,7 @@ index 592af5f..bb1d583 100644
EXPORT_SYMBOL_GPL(edac_device_alloc_index);
diff --git a/drivers/edac/edac_mc_sysfs.c b/drivers/edac/edac_mc_sysfs.c
-index 33df7d9..0794989 100644
+index a75acea..589dd01 100644
--- a/drivers/edac/edac_mc_sysfs.c
+++ b/drivers/edac/edac_mc_sysfs.c
@@ -154,7 +154,7 @@ static const char * const edac_caps[] = {
@@ -42025,7 +41460,7 @@ index 94a58a0..f5eba42 100644
container_of(_dev_attr, struct dmi_device_attribute, dev_attr)
diff --git a/drivers/firmware/dmi_scan.c b/drivers/firmware/dmi_scan.c
-index ac1ce4a..321745e 100644
+index 0e08e66..7824b4a 100644
--- a/drivers/firmware/dmi_scan.c
+++ b/drivers/firmware/dmi_scan.c
@@ -690,14 +690,18 @@ static int __init dmi_init(void)
@@ -42073,10 +41508,10 @@ index d425374..1da1716 100644
EXPORT_SYMBOL_GPL(cper_next_record_id);
diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
-index d6144e3..23f9686 100644
+index 027ca212..65689be 100644
--- a/drivers/firmware/efi/efi.c
+++ b/drivers/firmware/efi/efi.c
-@@ -170,14 +170,16 @@ static struct attribute_group efi_subsys_attr_group = {
+@@ -174,14 +174,16 @@ static struct attribute_group efi_subsys_attr_group = {
};
static struct efivars generic_efivars;
@@ -42176,10 +41611,10 @@ index 5de3ed2..d839c56 100644
.sysfs_ops = &memmap_attr_ops,
.default_attrs = def_attrs,
diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
-index 42700f0..3745ec6 100644
+index d24f35d..5875c5d 100644
--- a/drivers/firmware/psci.c
+++ b/drivers/firmware/psci.c
-@@ -52,7 +52,7 @@ bool psci_tos_resident_on(int cpu)
+@@ -54,7 +54,7 @@ bool psci_tos_resident_on(int cpu)
return cpu == resident_cpu;
}
@@ -42240,10 +41675,10 @@ index 4ba7ed5..1536b5d 100644
static struct {
spinlock_t lock;
diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
-index 5236db1..74e292a 100644
+index f7fbb46..cee8e40 100644
--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
-@@ -1072,7 +1072,7 @@ static void omap_gpio_mod_init(struct gpio_bank *bank)
+@@ -1069,7 +1069,7 @@ static void omap_gpio_mod_init(struct gpio_bank *bank)
writel_relaxed(0, base + bank->regs->ctrl);
}
@@ -42252,7 +41687,7 @@ index 5236db1..74e292a 100644
{
static int gpio;
int irq_base = 0;
-@@ -1157,7 +1157,7 @@ static int omap_gpio_probe(struct platform_device *pdev)
+@@ -1156,7 +1156,7 @@ static int omap_gpio_probe(struct platform_device *pdev)
const struct omap_gpio_platform_data *pdata;
struct resource *res;
struct gpio_bank *bank;
@@ -42288,10 +41723,10 @@ index c1caa45..f0f97d2 100644
return -EINVAL;
}
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
-index 5db3445..21414d5 100644
+index 4e4c308..d041d75 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
-@@ -572,8 +572,10 @@ static void gpiochip_irqchip_remove(struct gpio_chip *gpiochip)
+@@ -638,8 +638,10 @@ static void gpiochip_irqchip_remove(struct gpio_chip *gpiochip)
}
if (gpiochip->irqchip) {
@@ -42304,7 +41739,7 @@ index 5db3445..21414d5 100644
gpiochip->irqchip = NULL;
}
}
-@@ -649,8 +651,10 @@ int _gpiochip_irqchip_add(struct gpio_chip *gpiochip,
+@@ -715,8 +717,10 @@ int _gpiochip_irqchip_add(struct gpio_chip *gpiochip,
*/
if (!irqchip->irq_request_resources &&
!irqchip->irq_release_resources) {
@@ -42318,7 +41753,7 @@ index 5db3445..21414d5 100644
/*
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-index 0d13e63..3f67919 100644
+index 048cfe0..4ed6d8f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -2338,7 +2338,7 @@ static inline void amdgpu_unregister_atpx_handler(void) {}
@@ -42415,10 +41850,10 @@ index 8e99514..3d68786 100644
void *amdgpu_cgs_create_device(struct amdgpu_device *adev)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
-index 6068d82..7ecd87c 100644
+index d5b4213..111bf04 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
-@@ -1074,7 +1074,7 @@ static bool amdgpu_switcheroo_can_switch(struct pci_dev *pdev)
+@@ -1075,7 +1075,7 @@ static bool amdgpu_switcheroo_can_switch(struct pci_dev *pdev)
* locking inversion with the driver load path. And the access here is
* completely racy anyway. So don't bother with locking for now.
*/
@@ -42428,10 +41863,10 @@ index 6068d82..7ecd87c 100644
static const struct vga_switcheroo_client_ops amdgpu_switcheroo_ops = {
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
-index b190c2a..67a7707 100644
+index 0508c5c..cce2be3 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
-@@ -471,7 +471,7 @@ static struct drm_driver kms_driver = {
+@@ -481,7 +481,7 @@ static struct drm_driver kms_driver = {
.driver_features =
DRIVER_USE_AGP |
DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED | DRIVER_GEM |
@@ -42440,7 +41875,7 @@ index b190c2a..67a7707 100644
.dev_priv_size = 0,
.load = amdgpu_driver_load_kms,
.open = amdgpu_driver_open_kms,
-@@ -522,9 +522,6 @@ static struct drm_driver kms_driver = {
+@@ -532,9 +532,6 @@ static struct drm_driver kms_driver = {
.patchlevel = KMS_DRIVER_PATCHLEVEL,
};
@@ -42450,7 +41885,7 @@ index b190c2a..67a7707 100644
static struct pci_driver amdgpu_kms_pci_driver = {
.name = DRIVER_NAME,
.id_table = pciidlist,
-@@ -542,22 +539,23 @@ static int __init amdgpu_init(void)
+@@ -552,22 +549,23 @@ static int __init amdgpu_init(void)
}
#endif
DRM_INFO("amdgpu kernel modesetting enabled.\n");
@@ -42481,12 +41916,12 @@ index b190c2a..67a7707 100644
}
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
-index 5d11e79..04cc53e 100644
+index e23843f..9ecc6f3 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
-@@ -703,4 +703,4 @@ const struct drm_ioctl_desc amdgpu_ioctls_kms[] = {
- DRM_IOCTL_DEF_DRV(AMDGPU_GEM_OP, amdgpu_gem_op_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
- DRM_IOCTL_DEF_DRV(AMDGPU_GEM_USERPTR, amdgpu_gem_userptr_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
+@@ -749,4 +749,4 @@ const struct drm_ioctl_desc amdgpu_ioctls_kms[] = {
+ DRM_IOCTL_DEF_DRV(AMDGPU_GEM_OP, amdgpu_gem_op_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
+ DRM_IOCTL_DEF_DRV(AMDGPU_GEM_USERPTR, amdgpu_gem_userptr_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
};
-int amdgpu_max_kms_ioctl = ARRAY_SIZE(amdgpu_ioctls_kms);
+const int amdgpu_max_kms_ioctl = ARRAY_SIZE(amdgpu_ioctls_kms);
@@ -42948,10 +42383,10 @@ index 7b69070..d7bd78b 100644
if (retval != 0)
return retval;
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-index 3697eee..7147654 100644
+index 3a4820e..ece12c8 100644
--- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-@@ -133,7 +133,7 @@ int amd_sched_entity_init(struct amd_gpu_scheduler *sched,
+@@ -135,7 +135,7 @@ int amd_sched_entity_init(struct amd_gpu_scheduler *sched,
if (r)
return r;
@@ -42961,10 +42396,10 @@ index 3697eee..7147654 100644
/* Add the entity to the run queue */
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-index 80b64dc..fa4b4b4 100644
+index a0f0ae5..1771582 100644
--- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-@@ -44,7 +44,7 @@ struct amd_sched_entity {
+@@ -49,7 +49,7 @@ struct amd_sched_entity {
spinlock_t queue_lock;
struct kfifo job_queue;
@@ -42974,10 +42409,10 @@ index 80b64dc..fa4b4b4 100644
struct fence *dependency;
diff --git a/drivers/gpu/drm/amd/scheduler/sched_fence.c b/drivers/gpu/drm/amd/scheduler/sched_fence.c
-index d802638..c78a893 100644
+index 87c78ee..59dc36e 100644
--- a/drivers/gpu/drm/amd/scheduler/sched_fence.c
+++ b/drivers/gpu/drm/amd/scheduler/sched_fence.c
-@@ -39,7 +39,7 @@ struct amd_sched_fence *amd_sched_fence_create(struct amd_sched_entity *s_entity
+@@ -41,7 +41,7 @@ struct amd_sched_fence *amd_sched_fence_create(struct amd_sched_entity *s_entity
fence->sched = s_entity->sched;
spin_lock_init(&fence->lock);
@@ -42987,10 +42422,10 @@ index d802638..c78a893 100644
s_entity->fence_context, seq);
diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
-index 225034b..4bb9696 100644
+index 77ab93d..ae69bac 100644
--- a/drivers/gpu/drm/armada/armada_drv.c
+++ b/drivers/gpu/drm/armada/armada_drv.c
-@@ -324,6 +324,7 @@ static struct drm_driver armada_drm_driver = {
+@@ -217,6 +217,7 @@ static struct drm_driver armada_drm_driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET |
DRIVER_HAVE_IRQ | DRIVER_PRIME,
.ioctls = armada_ioctls,
@@ -42998,7 +42433,7 @@ index 225034b..4bb9696 100644
.fops = &armada_drm_fops,
};
-@@ -484,8 +485,6 @@ static int __init armada_drm_init(void)
+@@ -337,8 +338,6 @@ static int __init armada_drm_init(void)
{
int ret;
@@ -43008,10 +42443,10 @@ index 225034b..4bb9696 100644
if (ret)
return ret;
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
-index 8328e70..fbd9db2 100644
+index 24c5434..d4671de 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
-@@ -4058,7 +4058,7 @@ int drm_mode_getproperty_ioctl(struct drm_device *dev,
+@@ -4090,7 +4090,7 @@ int drm_mode_getproperty_ioctl(struct drm_device *dev,
goto done;
}
@@ -43021,10 +42456,10 @@ index 8328e70..fbd9db2 100644
ret = -EFAULT;
goto done;
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
-index 53d09a1..b55a078 100644
+index 7dd6728..6271b191 100644
--- a/drivers/gpu/drm/drm_drv.c
+++ b/drivers/gpu/drm/drm_drv.c
-@@ -433,7 +433,7 @@ void drm_unplug_dev(struct drm_device *dev)
+@@ -471,7 +471,7 @@ void drm_unplug_dev(struct drm_device *dev)
drm_device_set_unplugged(dev);
@@ -43034,7 +42469,7 @@ index 53d09a1..b55a078 100644
}
mutex_unlock(&drm_global_mutex);
diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c
-index c59ce4d..056d413 100644
+index 6b5625e..d49b9fb 100644
--- a/drivers/gpu/drm/drm_fops.c
+++ b/drivers/gpu/drm/drm_fops.c
@@ -89,7 +89,7 @@ int drm_open(struct inode *inode, struct file *filp)
@@ -43055,7 +42490,7 @@ index c59ce4d..056d413 100644
drm_minor_release(minor);
return retcode;
}
-@@ -377,7 +377,7 @@ int drm_release(struct inode *inode, struct file *filp)
+@@ -405,7 +405,7 @@ int drm_release(struct inode *inode, struct file *filp)
mutex_lock(&drm_global_mutex);
@@ -43064,7 +42499,7 @@ index c59ce4d..056d413 100644
mutex_lock(&dev->struct_mutex);
list_del(&file_priv->lhead);
-@@ -392,10 +392,10 @@ int drm_release(struct inode *inode, struct file *filp)
+@@ -420,10 +420,10 @@ int drm_release(struct inode *inode, struct file *filp)
* Begin inline drm_release
*/
@@ -43077,7 +42512,7 @@ index c59ce4d..056d413 100644
/* if the master has gone away we can't do anything with the lock */
if (file_priv->minor->master)
-@@ -465,7 +465,7 @@ int drm_release(struct inode *inode, struct file *filp)
+@@ -493,7 +493,7 @@ int drm_release(struct inode *inode, struct file *filp)
* End inline drm_release
*/
@@ -43179,7 +42614,7 @@ index cbb4fc0..5c756cb9 100644
else
type = types[map->type];
diff --git a/drivers/gpu/drm/drm_ioc32.c b/drivers/gpu/drm/drm_ioc32.c
-index ddfa601..be1def0 100644
+index 57676f8..020e7ca 100644
--- a/drivers/gpu/drm/drm_ioc32.c
+++ b/drivers/gpu/drm/drm_ioc32.c
@@ -458,7 +458,7 @@ static int compat_drm_infobufs(struct file *file, unsigned int cmd,
@@ -43231,10 +42666,10 @@ index ddfa601..be1def0 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
-index d93e737..edb8a4a 100644
+index 8ce2a0c..d09a8f6 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
-@@ -652,7 +652,7 @@ long drm_ioctl(struct file *filp,
+@@ -685,7 +685,7 @@ long drm_ioctl(struct file *filp,
struct drm_file *file_priv = filp->private_data;
struct drm_device *dev;
const struct drm_ioctl_desc *ioctl = NULL;
@@ -43244,10 +42679,10 @@ index d93e737..edb8a4a 100644
int retcode = -EINVAL;
char stack_kdata[128];
diff --git a/drivers/gpu/drm/drm_pci.c b/drivers/gpu/drm/drm_pci.c
-index 1b1bd42..2d28e80 100644
+index fcd2a86..f50489e 100644
--- a/drivers/gpu/drm/drm_pci.c
+++ b/drivers/gpu/drm/drm_pci.c
-@@ -305,7 +305,7 @@ int drm_get_pci_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
+@@ -308,7 +308,7 @@ int drm_get_pci_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
/* No locking needed since shadow-attach is single-threaded since it may
* only be called from the per-driver module init hook. */
if (!drm_core_check_feature(dev, DRIVER_MODESET))
@@ -43256,7 +42691,7 @@ index 1b1bd42..2d28e80 100644
return 0;
-@@ -340,7 +340,10 @@ int drm_pci_init(struct drm_driver *driver, struct pci_driver *pdriver)
+@@ -347,7 +347,10 @@ int drm_pci_init(struct drm_driver *driver, struct pci_driver *pdriver)
return pci_register_driver(pdriver);
/* If not using KMS, fall back to stealth mode manual scanning. */
@@ -43268,7 +42703,7 @@ index 1b1bd42..2d28e80 100644
for (i = 0; pdriver->id_table[i].vendor != 0; i++) {
pid = &pdriver->id_table[i];
-@@ -446,7 +449,7 @@ void drm_pci_exit(struct drm_driver *driver, struct pci_driver *pdriver)
+@@ -457,7 +460,7 @@ void drm_pci_exit(struct drm_driver *driver, struct pci_driver *pdriver)
} else {
list_for_each_entry_safe(dev, tmp, &driver->legacy_dev_list,
legacy_dev_list) {
@@ -43278,10 +42713,10 @@ index 1b1bd42..2d28e80 100644
}
}
diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c
-index ae9e6b2..80b2703 100644
+index 2c6019d..6508989 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
-@@ -614,7 +614,6 @@ static int exynos_drm_platform_probe(struct platform_device *pdev)
+@@ -616,7 +616,6 @@ static int exynos_drm_platform_probe(struct platform_device *pdev)
struct component_match *match;
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
@@ -43379,10 +42814,10 @@ index 93ec5dc..204ec92 100644
#define I810_BASE(reg) ((unsigned long) \
dev_priv->mmio_map->handle)
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index ab37d11..5cbacc7 100644
+index b4741d1..a0dc9fc 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -383,7 +383,7 @@ static bool i915_switcheroo_can_switch(struct pci_dev *pdev)
+@@ -354,7 +354,7 @@ static bool i915_switcheroo_can_switch(struct pci_dev *pdev)
* locking inversion with the driver load path. And the access here is
* completely racy anyway. So don't bother with locking for now.
*/
@@ -43391,14 +42826,14 @@ index ab37d11..5cbacc7 100644
}
static const struct vga_switcheroo_client_ops i915_switcheroo_ops = {
-@@ -1273,4 +1273,4 @@ const struct drm_ioctl_desc i915_ioctls[] = {
- DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_SETPARAM, i915_gem_context_setparam_ioctl, DRM_UNLOCKED|DRM_RENDER_ALLOW),
+@@ -1331,4 +1331,4 @@ const struct drm_ioctl_desc i915_ioctls[] = {
+ DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_SETPARAM, i915_gem_context_setparam_ioctl, DRM_RENDER_ALLOW),
};
-int i915_max_ioctl = ARRAY_SIZE(i915_ioctls);
+const int i915_max_ioctl = ARRAY_SIZE(i915_ioctls);
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index ab64d68..b74a68e 100644
+index 760e0ce..ab11c3f 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -40,7 +40,7 @@
@@ -43410,7 +42845,7 @@ index ab64d68..b74a68e 100644
#define GEN_DEFAULT_PIPEOFFSETS \
.pipe_offsets = { PIPE_A_OFFSET, PIPE_B_OFFSET, \
-@@ -1643,7 +1643,7 @@ static const struct file_operations i915_driver_fops = {
+@@ -1687,7 +1687,7 @@ static const struct file_operations i915_driver_fops = {
.llseek = noop_llseek,
};
@@ -43419,7 +42854,7 @@ index ab64d68..b74a68e 100644
/* Don't use MTRRs here; the Xserver or userspace app should
* deal with them for Intel hardware.
*/
-@@ -1697,6 +1697,7 @@ static struct pci_driver i915_pci_driver = {
+@@ -1737,6 +1737,7 @@ static struct pci_driver i915_pci_driver = {
static int __init i915_init(void)
{
@@ -43427,40 +42862,40 @@ index ab64d68..b74a68e 100644
driver.num_ioctls = i915_max_ioctl;
/*
-@@ -1716,6 +1717,7 @@ static int __init i915_init(void)
+@@ -1754,6 +1755,7 @@ static int __init i915_init(void)
+ #endif
if (!(driver.driver_features & DRIVER_MODESET)) {
- driver.get_vblank_timestamp = NULL;
+ pax_close_kernel();
/* Silently fail loading to not upset userspace. */
DRM_DEBUG_DRIVER("KMS and UMS disabled.\n");
return 0;
-@@ -1728,6 +1730,7 @@ static int __init i915_init(void)
- */
- if (driver.driver_features & DRIVER_MODESET)
+@@ -1761,6 +1763,7 @@ static int __init i915_init(void)
+
+ if (i915.nuclear_pageflip)
driver.driver_features |= DRIVER_ATOMIC;
+ pax_close_kernel();
return drm_pci_init(&driver, &i915_pci_driver);
}
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index e1db8de..3abe8a4 100644
+index f4af19a..99d81cb 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
-@@ -2601,7 +2601,7 @@ struct drm_i915_cmd_table {
+@@ -2636,7 +2636,7 @@ struct drm_i915_cmd_table {
#include "i915_trace.h"
extern const struct drm_ioctl_desc i915_ioctls[];
-extern int i915_max_ioctl;
+extern const int i915_max_ioctl;
- extern int i915_suspend_legacy(struct drm_device *dev, pm_message_t state);
- extern int i915_resume_legacy(struct drm_device *dev);
+ extern int i915_suspend_switcheroo(struct drm_device *dev, pm_message_t state);
+ extern int i915_resume_switcheroo(struct drm_device *dev);
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index a953d49..bf179e7 100644
+index 6ed7d63a..1863cfa 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -940,12 +940,12 @@ i915_gem_check_execbuffer(struct drm_i915_gem_execbuffer2 *exec)
+@@ -965,12 +965,12 @@ i915_gem_check_execbuffer(struct drm_i915_gem_execbuffer2 *exec)
static int
validate_exec_list(struct drm_device *dev,
struct drm_i915_gem_exec_object2 *exec,
@@ -43476,10 +42911,10 @@ index a953d49..bf179e7 100644
invalid_flags = __EXEC_OBJECT_UNKNOWN_FLAGS;
if (USES_FULL_PPGTT(dev))
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
-index 96054a5..bdd1955 100644
+index 86c7500..f4d2025 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
-@@ -2408,8 +2408,8 @@ static void chv_setup_private_ppat(struct drm_i915_private *dev_priv)
+@@ -2953,8 +2953,8 @@ static void chv_setup_private_ppat(struct drm_i915_private *dev_priv)
static int gen8_gmch_probe(struct drm_device *dev,
u64 *gtt_total,
@@ -43490,7 +42925,7 @@ index 96054a5..bdd1955 100644
u64 *mappable_end)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -2456,8 +2456,8 @@ static int gen8_gmch_probe(struct drm_device *dev,
+@@ -3001,8 +3001,8 @@ static int gen8_gmch_probe(struct drm_device *dev,
static int gen6_gmch_probe(struct drm_device *dev,
u64 *gtt_total,
@@ -43501,7 +42936,7 @@ index 96054a5..bdd1955 100644
u64 *mappable_end)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -2507,8 +2507,8 @@ static void gen6_gmch_remove(struct i915_address_space *vm)
+@@ -3052,8 +3052,8 @@ static void gen6_gmch_remove(struct i915_address_space *vm)
static int i915_gmch_probe(struct drm_device *dev,
u64 *gtt_total,
@@ -43512,7 +42947,7 @@ index 96054a5..bdd1955 100644
u64 *mappable_end)
{
struct drm_i915_private *dev_priv = dev->dev_private;
-@@ -2576,8 +2576,8 @@ int i915_gem_gtt_init(struct drm_device *dev)
+@@ -3121,8 +3121,8 @@ int i915_gem_gtt_init(struct drm_device *dev)
/* GMADR is the PCI mmio aperture into the global GTT. */
DRM_INFO("Memory usable by graphics device = %lluM\n",
gtt->base.total >> 20);
@@ -43524,15 +42959,16 @@ index 96054a5..bdd1955 100644
if (intel_iommu_gfx_mapped)
DRM_INFO("VT-d active for gfx access\n");
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h b/drivers/gpu/drm/i915/i915_gem_gtt.h
-index e1cfa29..0092778 100644
+index a216397..2906614 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.h
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
-@@ -317,10 +317,10 @@ struct i915_address_space {
+@@ -344,11 +344,11 @@ struct i915_address_space {
struct i915_gtt {
struct i915_address_space base;
- size_t stolen_size; /* Total size of stolen memory */
+ u64 stolen_size; /* Total size of stolen memory */
+ size_t stolen_usable_size; /* Total size minus BIOS reserved */
u64 mappable_end; /* End offset that we can CPU map */
struct io_mapping *mappable; /* Mapping to our CPU mappable region */
- phys_addr_t mappable_base; /* PA of our GMADR */
@@ -43540,7 +42976,7 @@ index e1cfa29..0092778 100644
/** "Graphics Stolen Memory" holds the global PTEs */
void __iomem *gsm;
-@@ -331,7 +331,7 @@ struct i915_gtt {
+@@ -359,7 +359,7 @@ struct i915_gtt {
/* global gtt ops */
int (*gtt_probe)(struct drm_device *dev, u64 *gtt_total,
@@ -43583,10 +43019,10 @@ index 97f3a56..32c712e 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 39d73db..b5187a1 100644
+index 0d228f9..a00f50a 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -4143,14 +4143,15 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
+@@ -4395,14 +4395,15 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
pm_qos_add_request(&dev_priv->pm_qos, PM_QOS_CPU_DMA_LATENCY, PM_QOS_DEFAULT_VALUE);
@@ -43597,15 +43033,15 @@ index 39d73db..b5187a1 100644
+ *(void **)&dev->driver->get_vblank_counter = i8xx_get_vblank_counter;
} else if (IS_G4X(dev_priv) || INTEL_INFO(dev_priv)->gen >= 5) {
dev->max_vblank_count = 0xffffffff; /* full 32 bit counter */
-- dev->driver->get_vblank_counter = gm45_get_vblank_counter;
-+ *(void **)&dev->driver->get_vblank_counter = gm45_get_vblank_counter;
+- dev->driver->get_vblank_counter = g4x_get_vblank_counter;
++ *(void **)&dev->driver->get_vblank_counter = g4x_get_vblank_counter;
} else {
- dev->driver->get_vblank_counter = i915_get_vblank_counter;
+ *(void **)&dev->driver->get_vblank_counter = i915_get_vblank_counter;
dev->max_vblank_count = 0xffffff; /* only 24 bits of frame count */
}
-@@ -4162,66 +4163,67 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
+@@ -4414,32 +4415,32 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
if (!IS_GEN2(dev_priv))
dev->vblank_disable_immediate = true;
@@ -43655,10 +43091,12 @@ index 39d73db..b5187a1 100644
+ *(void **)&dev->driver->irq_uninstall = gen8_irq_uninstall;
+ *(void **)&dev->driver->enable_vblank = gen8_enable_vblank;
+ *(void **)&dev->driver->disable_vblank = gen8_disable_vblank;
- if (HAS_PCH_SPLIT(dev))
- dev_priv->display.hpd_irq_setup = ibx_hpd_irq_setup;
- else
+ if (IS_BROXTON(dev))
dev_priv->display.hpd_irq_setup = bxt_hpd_irq_setup;
+ else if (HAS_PCH_SPT(dev))
+@@ -4447,35 +4448,36 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
+ else
+ dev_priv->display.hpd_irq_setup = ilk_hpd_irq_setup;
} else if (HAS_PCH_SPLIT(dev)) {
- dev->driver->irq_handler = ironlake_irq_handler;
- dev->driver->irq_preinstall = ironlake_irq_reset;
@@ -43672,7 +43110,7 @@ index 39d73db..b5187a1 100644
+ *(void **)&dev->driver->irq_uninstall = ironlake_irq_uninstall;
+ *(void **)&dev->driver->enable_vblank = ironlake_enable_vblank;
+ *(void **)&dev->driver->disable_vblank = ironlake_disable_vblank;
- dev_priv->display.hpd_irq_setup = ibx_hpd_irq_setup;
+ dev_priv->display.hpd_irq_setup = ilk_hpd_irq_setup;
} else {
if (INTEL_INFO(dev_priv)->gen == 2) {
- dev->driver->irq_preinstall = i8xx_irq_preinstall;
@@ -43714,10 +43152,10 @@ index 39d73db..b5187a1 100644
/**
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index b2270d5..e5c48fe 100644
+index 32cf973..62e0cfa 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -14594,13 +14594,13 @@ struct intel_quirk {
+@@ -14720,13 +14720,13 @@ struct intel_quirk {
int subsystem_vendor;
int subsystem_device;
void (*hook)(struct drm_device *dev);
@@ -43733,7 +43171,7 @@ index b2270d5..e5c48fe 100644
static int intel_dmi_reverse_brightness(const struct dmi_system_id *id)
{
-@@ -14608,18 +14608,20 @@ static int intel_dmi_reverse_brightness(const struct dmi_system_id *id)
+@@ -14734,18 +14734,20 @@ static int intel_dmi_reverse_brightness(const struct dmi_system_id *id)
return 1;
}
@@ -43765,10 +43203,10 @@ index b2270d5..e5c48fe 100644
},
};
diff --git a/drivers/gpu/drm/imx/imx-drm-core.c b/drivers/gpu/drm/imx/imx-drm-core.c
-index 74f505b..21f6914 100644
+index 7b990b4..452d7e4 100644
--- a/drivers/gpu/drm/imx/imx-drm-core.c
+++ b/drivers/gpu/drm/imx/imx-drm-core.c
-@@ -355,7 +355,7 @@ int imx_drm_add_crtc(struct drm_device *drm, struct drm_crtc *crtc,
+@@ -354,7 +354,7 @@ int imx_drm_add_crtc(struct drm_device *drm, struct drm_crtc *crtc,
if (imxdrm->pipes >= MAX_CRTC)
return -EINVAL;
@@ -43794,7 +43232,7 @@ index 5e2f131..d227dbc 100644
}
diff --git a/drivers/gpu/drm/mga/mga_drv.h b/drivers/gpu/drm/mga/mga_drv.h
-index b4a20149..caa87d9 100644
+index bb31233..75b39f0 100644
--- a/drivers/gpu/drm/mga/mga_drv.h
+++ b/drivers/gpu/drm/mga/mga_drv.h
@@ -122,9 +122,9 @@ typedef struct drm_mga_private {
@@ -43852,11 +43290,11 @@ index 729bfd5..14bae78 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/mga/mga_irq.c b/drivers/gpu/drm/mga/mga_irq.c
-index 1b071b8..de8601a 100644
+index 693ba70..465bcfc 100644
--- a/drivers/gpu/drm/mga/mga_irq.c
+++ b/drivers/gpu/drm/mga/mga_irq.c
-@@ -43,7 +43,7 @@ u32 mga_get_vblank_counter(struct drm_device *dev, int crtc)
- if (crtc != 0)
+@@ -43,7 +43,7 @@ u32 mga_get_vblank_counter(struct drm_device *dev, unsigned int pipe)
+ if (pipe != 0)
return 0;
- return atomic_read(&dev_priv->vbl_received);
@@ -43915,7 +43353,7 @@ index 4dca65a..3486961 100644
#define BIT_TABLE(id, funcid) ((struct bit_table){ id, parse_bit_##funcid##_tbl_entry })
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
-index ccefb64..10c4d33 100644
+index 1d3ee51..5fb4449 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -76,9 +76,8 @@ MODULE_PARM_DESC(runpm, "disable (0), force enable (1), optimus only default (-1
@@ -43929,7 +43367,7 @@ index ccefb64..10c4d33 100644
static u64
nouveau_pci_name(struct pci_dev *pdev)
-@@ -917,7 +916,7 @@ nouveau_driver_fops = {
+@@ -915,7 +914,7 @@ nouveau_driver_fops = {
};
static struct drm_driver
@@ -43938,7 +43376,7 @@ index ccefb64..10c4d33 100644
.driver_features =
DRIVER_GEM | DRIVER_MODESET | DRIVER_PRIME | DRIVER_RENDER |
DRIVER_KMS_LEGACY_CONTEXT,
-@@ -929,6 +928,8 @@ driver_stub = {
+@@ -927,6 +926,8 @@ driver_stub = {
.postclose = nouveau_drm_postclose,
.lastclose = nouveau_vga_lastclose,
@@ -43947,7 +43385,7 @@ index ccefb64..10c4d33 100644
#if defined(CONFIG_DEBUG_FS)
.debugfs_init = nouveau_debugfs_init,
.debugfs_cleanup = nouveau_debugfs_takedown,
-@@ -1065,10 +1066,10 @@ err_free:
+@@ -1064,10 +1065,10 @@ err_free:
static int __init
nouveau_drm_init(void)
{
@@ -43962,10 +43400,10 @@ index ccefb64..10c4d33 100644
nouveau_display_options();
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.h b/drivers/gpu/drm/nouveau/nouveau_drm.h
-index 3c902c2..1b2d658 100644
+index a02813e..c30a6b0 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.h
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.h
-@@ -125,7 +125,6 @@ struct nouveau_drm {
+@@ -124,7 +124,6 @@ struct nouveau_drm {
struct drm_global_reference mem_global_ref;
struct ttm_bo_global_ref bo_global_ref;
struct ttm_bo_device bdev;
@@ -43987,10 +43425,10 @@ index 462679a..88e32a7 100644
if (nr < DRM_COMMAND_BASE)
diff --git a/drivers/gpu/drm/nouveau/nouveau_ttm.c b/drivers/gpu/drm/nouveau/nouveau_ttm.c
-index 3f0fb55..ad5fa4a 100644
+index d2e7d20..7bbe51f 100644
--- a/drivers/gpu/drm/nouveau/nouveau_ttm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_ttm.c
-@@ -104,10 +104,10 @@ nouveau_vram_manager_new(struct ttm_mem_type_manager *man,
+@@ -107,10 +107,10 @@ nouveau_vram_manager_new(struct ttm_mem_type_manager *man,
}
const struct ttm_mem_type_manager_func nouveau_vram_manager = {
@@ -44005,7 +43443,7 @@ index 3f0fb55..ad5fa4a 100644
};
static int
-@@ -180,11 +180,11 @@ nouveau_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix)
+@@ -183,11 +183,11 @@ nouveau_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix)
}
const struct ttm_mem_type_manager_func nouveau_gart_manager = {
@@ -44022,7 +43460,7 @@ index 3f0fb55..ad5fa4a 100644
};
/*XXX*/
-@@ -253,11 +253,11 @@ nv04_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix)
+@@ -256,11 +256,11 @@ nv04_gart_manager_debug(struct ttm_mem_type_manager *man, const char *prefix)
}
const struct ttm_mem_type_manager_func nv04_gart_manager = {
@@ -44123,7 +43561,7 @@ index 6911b8c..89d6867 100644
return 0;
}
diff --git a/drivers/gpu/drm/qxl/qxl_drv.c b/drivers/gpu/drm/qxl/qxl_drv.c
-index 83f6f0b..0d36693 100644
+index 7307b07..8eecdd0 100644
--- a/drivers/gpu/drm/qxl/qxl_drv.c
+++ b/drivers/gpu/drm/qxl/qxl_drv.c
@@ -37,7 +37,7 @@
@@ -44135,7 +43573,7 @@ index 83f6f0b..0d36693 100644
static const struct pci_device_id pciidlist[] = {
{ 0x1b36, 0x100, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8,
0xffff00, 0 },
-@@ -278,7 +278,11 @@ static int __init qxl_init(void)
+@@ -279,7 +279,11 @@ static int __init qxl_init(void)
if (qxl_modeset == 0)
return -EINVAL;
@@ -44168,7 +43606,7 @@ index 01a8694..584fb48 100644
wait_queue_head_t display_event;
wait_queue_head_t cursor_event;
diff --git a/drivers/gpu/drm/qxl/qxl_ioctl.c b/drivers/gpu/drm/qxl/qxl_ioctl.c
-index bda5c5f..aa09e3e 100644
+index 2ae8577..0554f54 100644
--- a/drivers/gpu/drm/qxl/qxl_ioctl.c
+++ b/drivers/gpu/drm/qxl/qxl_ioctl.c
@@ -183,7 +183,7 @@ static int qxl_process_single_command(struct qxl_device *qdev,
@@ -44204,7 +43642,7 @@ index bda5c5f..aa09e3e 100644
return -EFAULT;
@@ -439,4 +439,4 @@ const struct drm_ioctl_desc qxl_ioctls[] = {
- DRM_AUTH|DRM_UNLOCKED),
+ DRM_AUTH),
};
-int qxl_max_ioctls = ARRAY_SIZE(qxl_ioctls);
@@ -44318,7 +43756,7 @@ index 0cbc4c9..0e46686 100644
return 0;
#endif
diff --git a/drivers/gpu/drm/r128/r128_cce.c b/drivers/gpu/drm/r128/r128_cce.c
-index 2c45ac9..5d740f8 100644
+index 14fd83b5f..b2acbd19 100644
--- a/drivers/gpu/drm/r128/r128_cce.c
+++ b/drivers/gpu/drm/r128/r128_cce.c
@@ -377,7 +377,7 @@ static int r128_do_init_cce(struct drm_device *dev, drm_r128_init_t *init)
@@ -44346,7 +43784,7 @@ index c57b4de..2614d79 100644
return drm_pci_init(&driver, &r128_pci_driver);
}
diff --git a/drivers/gpu/drm/r128/r128_drv.h b/drivers/gpu/drm/r128/r128_drv.h
-index 723e5d6..6efb284 100644
+index 09143b8..86c8394 100644
--- a/drivers/gpu/drm/r128/r128_drv.h
+++ b/drivers/gpu/drm/r128/r128_drv.h
@@ -93,14 +93,14 @@ typedef struct drm_r128_private {
@@ -44409,11 +43847,11 @@ index 663f38c..ec159a1 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/r128/r128_irq.c b/drivers/gpu/drm/r128/r128_irq.c
-index c2ae496..30b5993 100644
+index 9730f49..920e9bf 100644
--- a/drivers/gpu/drm/r128/r128_irq.c
+++ b/drivers/gpu/drm/r128/r128_irq.c
-@@ -41,7 +41,7 @@ u32 r128_get_vblank_counter(struct drm_device *dev, int crtc)
- if (crtc != 0)
+@@ -41,7 +41,7 @@ u32 r128_get_vblank_counter(struct drm_device *dev, unsigned int pipe)
+ if (pipe != 0)
return 0;
- return atomic_read(&dev_priv->vbl_received);
@@ -44475,7 +43913,7 @@ index b928c17..e5d9400 100644
if (regcomp
(&mask_rex, "(0x[0-9a-fA-F]*) *([_a-zA-Z0-9]*)", REG_EXTENDED)) {
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
-index f3f562f..0c099bb 100644
+index c566993..0bf8fae 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
@@ -1253,7 +1253,7 @@ static bool radeon_switcheroo_can_switch(struct pci_dev *pdev)
@@ -44488,11 +43926,11 @@ index f3f562f..0c099bb 100644
static const struct vga_switcheroo_client_ops radeon_switcheroo_ops = {
diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
-index 5751446..2ec7c5d 100644
+index 5b6a6f5..7f4e55a 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.c
+++ b/drivers/gpu/drm/radeon/radeon_drv.c
-@@ -130,7 +130,7 @@ extern int radeon_get_crtc_scanoutpos(struct drm_device *dev, int crtc,
- ktime_t *etime);
+@@ -130,7 +130,7 @@ extern int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int crtc,
+ const struct drm_display_mode *mode);
extern bool radeon_is_px(struct drm_device *dev);
extern const struct drm_ioctl_desc radeon_ioctls_kms[];
-extern int radeon_max_kms_ioctl;
@@ -44537,7 +43975,7 @@ index 5751446..2ec7c5d 100644
DRM_ERROR("No UMS support in radeon module!\n");
return -EINVAL;
diff --git a/drivers/gpu/drm/radeon/radeon_drv.h b/drivers/gpu/drm/radeon/radeon_drv.h
-index 46bd393..8f077b5 100644
+index 0caafc7..32afc20 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.h
+++ b/drivers/gpu/drm/radeon/radeon_drv.h
@@ -264,7 +264,7 @@ typedef struct drm_radeon_private {
@@ -44601,7 +44039,7 @@ index 0b98ea1..a3c770f 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/radeon/radeon_irq.c b/drivers/gpu/drm/radeon/radeon_irq.c
-index 244b19b..c19226d 100644
+index 688afb6..4b95df6 100644
--- a/drivers/gpu/drm/radeon/radeon_irq.c
+++ b/drivers/gpu/drm/radeon/radeon_irq.c
@@ -226,8 +226,8 @@ static int radeon_emit_irq(struct drm_device * dev)
@@ -44625,12 +44063,12 @@ index 244b19b..c19226d 100644
dev->max_vblank_count = 0x001fffff;
diff --git a/drivers/gpu/drm/radeon/radeon_kms.c b/drivers/gpu/drm/radeon/radeon_kms.c
-index 0e932bf..3de01a7 100644
+index d290a8a..e165ba9 100644
--- a/drivers/gpu/drm/radeon/radeon_kms.c
+++ b/drivers/gpu/drm/radeon/radeon_kms.c
-@@ -932,4 +932,4 @@ const struct drm_ioctl_desc radeon_ioctls_kms[] = {
- DRM_IOCTL_DEF_DRV(RADEON_GEM_OP, radeon_gem_op_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
- DRM_IOCTL_DEF_DRV(RADEON_GEM_USERPTR, radeon_gem_userptr_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
+@@ -946,4 +946,4 @@ const struct drm_ioctl_desc radeon_ioctls_kms[] = {
+ DRM_IOCTL_DEF_DRV(RADEON_GEM_OP, radeon_gem_op_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
+ DRM_IOCTL_DEF_DRV(RADEON_GEM_USERPTR, radeon_gem_userptr_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
};
-int radeon_max_kms_ioctl = ARRAY_SIZE(radeon_ioctls_kms);
+const int radeon_max_kms_ioctl = ARRAY_SIZE(radeon_ioctls_kms);
@@ -44663,7 +44101,7 @@ index 15aee72..c6df119 100644
-int radeon_max_ioctl = ARRAY_SIZE(radeon_ioctls);
+const int radeon_max_ioctl = ARRAY_SIZE(radeon_ioctls);
diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c
-index 06ac59fe..57e0681 100644
+index e343074..2042c8b 100644
--- a/drivers/gpu/drm/radeon/radeon_ttm.c
+++ b/drivers/gpu/drm/radeon/radeon_ttm.c
@@ -961,7 +961,7 @@ void radeon_ttm_set_active_vram_size(struct radeon_device *rdev, u64 size)
@@ -44742,10 +44180,10 @@ index 79bce76..4fd9a20 100644
}
diff --git a/drivers/gpu/drm/sis/sis_drv.h b/drivers/gpu/drm/sis/sis_drv.h
-index 16f972b..4f46125 100644
+index 328f8a7..0cfcf55 100644
--- a/drivers/gpu/drm/sis/sis_drv.h
+++ b/drivers/gpu/drm/sis/sis_drv.h
-@@ -73,6 +73,6 @@ extern void sis_reclaim_buffers_locked(struct drm_device *dev,
+@@ -77,6 +77,6 @@ extern void sis_reclaim_buffers_locked(struct drm_device *dev,
extern void sis_lastclose(struct drm_device *dev);
extern const struct drm_ioctl_desc sis_ioctls[];
@@ -44764,10 +44202,10 @@ index 93ad8a5..48f0a57 100644
-int sis_max_ioctl = ARRAY_SIZE(sis_ioctls);
+const int sis_max_ioctl = ARRAY_SIZE(sis_ioctls);
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c
-index ddefb85..9011500 100644
+index e9f24a8..d790ccc 100644
--- a/drivers/gpu/drm/tegra/dc.c
+++ b/drivers/gpu/drm/tegra/dc.c
-@@ -1656,7 +1656,7 @@ static int tegra_dc_debugfs_init(struct tegra_dc *dc, struct drm_minor *minor)
+@@ -1654,7 +1654,7 @@ static int tegra_dc_debugfs_init(struct tegra_dc *dc, struct drm_minor *minor)
}
for (i = 0; i < ARRAY_SIZE(debugfs_files); i++)
@@ -44803,7 +44241,7 @@ index 52b32cb..a8b2d5b 100644
struct dentry *debugfs;
};
diff --git a/drivers/gpu/drm/tegra/sor.c b/drivers/gpu/drm/tegra/sor.c
-index da1715e..f6fee95 100644
+index 3eff7cf..06e8322 100644
--- a/drivers/gpu/drm/tegra/sor.c
+++ b/drivers/gpu/drm/tegra/sor.c
@@ -1003,8 +1003,11 @@ static int tegra_sor_debugfs_init(struct tegra_sor *sor,
@@ -45071,7 +44509,7 @@ index ed8aa8f..16c84fc 100644
return drm_pci_init(&driver, &via_pci_driver);
}
diff --git a/drivers/gpu/drm/via/via_drv.h b/drivers/gpu/drm/via/via_drv.h
-index ef8c500..e0053ce 100644
+index 286a785..c0182616 100644
--- a/drivers/gpu/drm/via/via_drv.h
+++ b/drivers/gpu/drm/via/via_drv.h
@@ -53,7 +53,7 @@ typedef struct drm_via_ring_buffer {
@@ -45092,7 +44530,7 @@ index ef8c500..e0053ce 100644
drm_via_state_t hc_state;
char pci_buf[VIA_PCI_BUF_SIZE];
const uint32_t *fire_offsets[VIA_FIRE_BUF_SIZE];
-@@ -117,7 +117,7 @@ enum via_family {
+@@ -121,7 +121,7 @@ enum via_family {
#define VIA_WRITE8(reg, val) DRM_WRITE8(VIA_BASE, reg, val)
extern const struct drm_ioctl_desc via_ioctls[];
@@ -45102,11 +44540,11 @@ index ef8c500..e0053ce 100644
extern int via_fb_init(struct drm_device *dev, void *data, struct drm_file *file_priv);
extern int via_mem_alloc(struct drm_device *dev, void *data, struct drm_file *file_priv);
diff --git a/drivers/gpu/drm/via/via_irq.c b/drivers/gpu/drm/via/via_irq.c
-index 1319433..a993b0c 100644
+index ea8172c..6ceff63 100644
--- a/drivers/gpu/drm/via/via_irq.c
+++ b/drivers/gpu/drm/via/via_irq.c
-@@ -101,7 +101,7 @@ u32 via_get_vblank_counter(struct drm_device *dev, int crtc)
- if (crtc != 0)
+@@ -102,7 +102,7 @@ u32 via_get_vblank_counter(struct drm_device *dev, unsigned int pipe)
+ if (pipe != 0)
return 0;
- return atomic_read(&dev_priv->vbl_received);
@@ -45114,7 +44552,7 @@ index 1319433..a993b0c 100644
}
irqreturn_t via_driver_irq_handler(int irq, void *arg)
-@@ -116,8 +116,8 @@ irqreturn_t via_driver_irq_handler(int irq, void *arg)
+@@ -117,8 +117,8 @@ irqreturn_t via_driver_irq_handler(int irq, void *arg)
status = VIA_READ(VIA_REG_INTERRUPT);
if (status & VIA_IRQ_VBLANK_PENDING) {
@@ -45125,7 +44563,7 @@ index 1319433..a993b0c 100644
do_gettimeofday(&cur_vblank);
if (dev_priv->last_vblank_valid) {
dev_priv->usec_per_vblank =
-@@ -127,7 +127,7 @@ irqreturn_t via_driver_irq_handler(int irq, void *arg)
+@@ -128,7 +128,7 @@ irqreturn_t via_driver_irq_handler(int irq, void *arg)
dev_priv->last_vblank = cur_vblank;
dev_priv->last_vblank_valid = 1;
}
@@ -45134,7 +44572,7 @@ index 1319433..a993b0c 100644
DRM_DEBUG("US per vblank is: %u\n",
dev_priv->usec_per_vblank);
}
-@@ -137,7 +137,7 @@ irqreturn_t via_driver_irq_handler(int irq, void *arg)
+@@ -138,7 +138,7 @@ irqreturn_t via_driver_irq_handler(int irq, void *arg)
for (i = 0; i < dev_priv->num_irqs; ++i) {
if (status & cur_irq->pending_mask) {
@@ -45143,7 +44581,7 @@ index 1319433..a993b0c 100644
wake_up(&cur_irq->irq_queue);
handled = 1;
if (dev_priv->irq_map[drm_via_irq_dma0_td] == i)
-@@ -242,11 +242,11 @@ via_driver_irq_wait(struct drm_device *dev, unsigned int irq, int force_sequence
+@@ -243,11 +243,11 @@ via_driver_irq_wait(struct drm_device *dev, unsigned int irq, int force_sequence
DRM_WAIT_ON(ret, cur_irq->irq_queue, 3 * HZ,
((VIA_READ(masks[irq][2]) & masks[irq][3]) ==
masks[irq][4]));
@@ -45157,7 +44595,7 @@ index 1319433..a993b0c 100644
*sequence) <= (1 << 23)));
}
*sequence = cur_irq_sequence;
-@@ -284,7 +284,7 @@ void via_driver_irq_preinstall(struct drm_device *dev)
+@@ -285,7 +285,7 @@ void via_driver_irq_preinstall(struct drm_device *dev)
}
for (i = 0; i < dev_priv->num_irqs; ++i) {
@@ -45166,7 +44604,7 @@ index 1319433..a993b0c 100644
cur_irq->enable_mask = dev_priv->irq_masks[i][0];
cur_irq->pending_mask = dev_priv->irq_masks[i][1];
init_waitqueue_head(&cur_irq->irq_queue);
-@@ -366,7 +366,7 @@ int via_wait_irq(struct drm_device *dev, void *data, struct drm_file *file_priv)
+@@ -367,7 +367,7 @@ int via_wait_irq(struct drm_device *dev, void *data, struct drm_file *file_priv)
switch (irqwait->request.type & ~VIA_IRQ_FLAGS_MASK) {
case VIA_IRQ_RELATIVE:
irqwait->request.sequence +=
@@ -45176,10 +44614,10 @@ index 1319433..a993b0c 100644
case VIA_IRQ_ABSOLUTE:
break;
diff --git a/drivers/gpu/drm/virtio/virtgpu_ttm.c b/drivers/gpu/drm/virtio/virtgpu_ttm.c
-index b092d7b..3bbecd9 100644
+index 9fd924c..c64b065 100644
--- a/drivers/gpu/drm/virtio/virtgpu_ttm.c
+++ b/drivers/gpu/drm/virtio/virtgpu_ttm.c
-@@ -197,11 +197,11 @@ static void ttm_bo_man_debug(struct ttm_mem_type_manager *man,
+@@ -198,11 +198,11 @@ static void ttm_bo_man_debug(struct ttm_mem_type_manager *man,
}
static const struct ttm_mem_type_manager_func virtio_gpu_bo_manager_func = {
@@ -45197,7 +44635,7 @@ index b092d7b..3bbecd9 100644
static int virtio_gpu_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
-index f19fd39..429e1ebe 100644
+index 469cdd5..958866a 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
@@ -434,7 +434,7 @@ struct vmw_private {
@@ -45210,7 +44648,7 @@ index f19fd39..429e1ebe 100644
wait_queue_head_t fifo_queue;
spinlock_t waiter_lock;
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
-index 80c40c3..ed6de49 100644
+index b6a0806..9fb5479 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
@@ -156,7 +156,7 @@ int vmw_fifo_init(struct vmw_private *dev_priv, struct vmw_fifo_state *fifo)
@@ -45219,19 +44657,19 @@ index 80c40c3..ed6de49 100644
- atomic_set(&dev_priv->marker_seq, dev_priv->last_read_seqno);
+ atomic_set_unchecked(&dev_priv->marker_seq, dev_priv->last_read_seqno);
- iowrite32(dev_priv->last_read_seqno, fifo_mem + SVGA_FIFO_FENCE);
+ vmw_mmio_write(dev_priv->last_read_seqno, fifo_mem + SVGA_FIFO_FENCE);
vmw_marker_queue_init(&fifo->marker_queue);
-@@ -378,7 +378,7 @@ static void *vmw_local_fifo_reserve(struct vmw_private *dev_priv,
+@@ -355,7 +355,7 @@ static void *vmw_local_fifo_reserve(struct vmw_private *dev_priv,
if (reserveable)
- iowrite32(bytes, fifo_mem +
- SVGA_FIFO_RESERVED);
+ vmw_mmio_write(bytes, fifo_mem +
+ SVGA_FIFO_RESERVED);
- return (void __force *) (fifo_mem +
+ return (void __force_kernel *) (fifo_mem +
(next_cmd >> 2));
} else {
need_bounce = true;
-@@ -568,7 +568,7 @@ int vmw_fifo_send_fence(struct vmw_private *dev_priv, uint32_t *seqno)
+@@ -544,7 +544,7 @@ int vmw_fifo_send_fence(struct vmw_private *dev_priv, uint32_t *seqno)
fm = vmw_fifo_reserve(dev_priv, bytes);
if (unlikely(fm == NULL)) {
@@ -45240,7 +44678,7 @@ index 80c40c3..ed6de49 100644
ret = -ENOMEM;
(void)vmw_fallback_wait(dev_priv, false, true, *seqno,
false, 3*HZ);
-@@ -576,7 +576,7 @@ int vmw_fifo_send_fence(struct vmw_private *dev_priv, uint32_t *seqno)
+@@ -552,7 +552,7 @@ int vmw_fifo_send_fence(struct vmw_private *dev_priv, uint32_t *seqno)
}
do {
@@ -45269,10 +44707,10 @@ index 170b61b..fec7348 100644
+ .debug = vmw_gmrid_man_debug
};
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_irq.c b/drivers/gpu/drm/vmwgfx/vmwgfx_irq.c
-index 9498a5e..d532ac1 100644
+index 0c7e172..ead94fc 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_irq.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_irq.c
-@@ -105,7 +105,7 @@ bool vmw_seqno_passed(struct vmw_private *dev_priv,
+@@ -103,7 +103,7 @@ bool vmw_seqno_passed(struct vmw_private *dev_priv,
* emitted. Then the fence is stale and signaled.
*/
@@ -45281,7 +44719,7 @@ index 9498a5e..d532ac1 100644
> VMW_FENCE_WRAP);
return ret;
-@@ -144,7 +144,7 @@ int vmw_fallback_wait(struct vmw_private *dev_priv,
+@@ -142,7 +142,7 @@ int vmw_fallback_wait(struct vmw_private *dev_priv,
}
}
@@ -45304,20 +44742,20 @@ index efd1ffd..0ae13ca 100644
marker = list_first_entry(&queue->head,
struct vmw_marker, head);
diff --git a/drivers/gpu/vga/vga_switcheroo.c b/drivers/gpu/vga/vga_switcheroo.c
-index 2106066..e759b59 100644
+index 41edd5a..cb008f0 100644
--- a/drivers/gpu/vga/vga_switcheroo.c
+++ b/drivers/gpu/vga/vga_switcheroo.c
-@@ -657,7 +657,7 @@ static int vga_switcheroo_runtime_resume(struct device *dev)
- /* this version is for the case where the power switch is separate
- to the device being powered down. */
+@@ -910,7 +910,7 @@ static int vga_switcheroo_runtime_resume(struct device *dev)
+ * where the power switch is separate to the device being powered down.
+ */
int vga_switcheroo_init_domain_pm_ops(struct device *dev,
- struct dev_pm_domain *domain)
+ dev_pm_domain_no_const *domain)
{
/* copy over all the bus versions */
if (dev->bus && dev->bus->pm) {
-@@ -711,7 +711,7 @@ static int vga_switcheroo_runtime_resume_hdmi_audio(struct device *dev)
-
+@@ -981,7 +981,7 @@ static int vga_switcheroo_runtime_resume_hdmi_audio(struct device *dev)
+ */
int
vga_switcheroo_init_domain_pm_optimus_hdmi_audio(struct device *dev,
- struct dev_pm_domain *domain)
@@ -45326,10 +44764,10 @@ index 2106066..e759b59 100644
/* copy over all the bus versions */
if (dev->bus && dev->bus->pm) {
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
-index c0fbf4e..865f19d 100644
+index c6f7a69..cf26aed 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
-@@ -2575,7 +2575,7 @@ EXPORT_SYMBOL_GPL(hid_ignore);
+@@ -2583,7 +2583,7 @@ EXPORT_SYMBOL_GPL(hid_ignore);
int hid_add_device(struct hid_device *hdev)
{
@@ -45338,7 +44776,7 @@ index c0fbf4e..865f19d 100644
int ret;
if (WARN_ON(hdev->status & HID_STAT_ADDED))
-@@ -2618,7 +2618,7 @@ int hid_add_device(struct hid_device *hdev)
+@@ -2626,7 +2626,7 @@ int hid_add_device(struct hid_device *hdev)
/* XXX hack, any other cleaner solution after the driver core
* is converted to allow more than 20 bytes as the device name? */
dev_set_name(&hdev->dev, "%04X:%04X:%04X.%04X", hdev->bus,
@@ -45505,10 +44943,10 @@ index b853b4b..3647b37 100644
cap_msg.caps.cap_bits.balloon = 1;
cap_msg.caps.cap_bits.hot_add = 1;
diff --git a/drivers/hv/hyperv_vmbus.h b/drivers/hv/hyperv_vmbus.h
-index 3d70e36..465d989 100644
+index 3782636..7dc4e6c 100644
--- a/drivers/hv/hyperv_vmbus.h
+++ b/drivers/hv/hyperv_vmbus.h
-@@ -659,7 +659,7 @@ enum vmbus_connect_state {
+@@ -654,7 +654,7 @@ enum vmbus_connect_state {
struct vmbus_connection {
enum vmbus_connect_state conn_state;
@@ -45549,7 +44987,7 @@ index 579bdf9..0dac21d5 100644
enable_cap_knobs, "IBM Active Energy Manager",
{
diff --git a/drivers/hwmon/applesmc.c b/drivers/hwmon/applesmc.c
-index 0af63da..05a183a 100644
+index 0af7fd3..2701c0a 100644
--- a/drivers/hwmon/applesmc.c
+++ b/drivers/hwmon/applesmc.c
@@ -1105,7 +1105,7 @@ static int applesmc_create_nodes(struct applesmc_node_group *groups, int num)
@@ -45590,7 +45028,7 @@ index cccef87..06ce8ec 100644
{
sysfs_attr_init(&attr->attr);
diff --git a/drivers/hwmon/coretemp.c b/drivers/hwmon/coretemp.c
-index 3e03379..ec521d3 100644
+index 6a27eb2..349ed23 100644
--- a/drivers/hwmon/coretemp.c
+++ b/drivers/hwmon/coretemp.c
@@ -783,7 +783,7 @@ static int coretemp_cpu_callback(struct notifier_block *nfb,
@@ -45661,10 +45099,10 @@ index 37f0170..414ec2c 100644
int i, j, count;
diff --git a/drivers/hwmon/nct6775.c b/drivers/hwmon/nct6775.c
-index 8b4fa55..fb3c20b 100644
+index d7ebdf8..5d0cfb2 100644
--- a/drivers/hwmon/nct6775.c
+++ b/drivers/hwmon/nct6775.c
-@@ -970,10 +970,10 @@ static struct attribute_group *
+@@ -1048,10 +1048,10 @@ static struct attribute_group *
nct6775_create_attr_group(struct device *dev, struct sensor_template_group *tg,
int repeat)
{
@@ -45806,10 +45244,10 @@ index 65e3240..e6c511d 100644
/* Wrapper access functions for multiplexed SMBus */
static DEFINE_MUTEX(amd756_lock);
diff --git a/drivers/i2c/busses/i2c-designware-pcidrv.c b/drivers/i2c/busses/i2c-designware-pcidrv.c
-index df23e8c..1354d8e 100644
+index 1543d35d..6515f503 100644
--- a/drivers/i2c/busses/i2c-designware-pcidrv.c
+++ b/drivers/i2c/busses/i2c-designware-pcidrv.c
-@@ -60,7 +60,7 @@ struct dw_scl_sda_cfg {
+@@ -61,7 +61,7 @@ struct dw_scl_sda_cfg {
};
struct dw_pci_controller {
@@ -45832,10 +45270,10 @@ index 88eda09..cf40434 100644
/* Wrapper access functions for multiplexed SMBus */
static DEFINE_MUTEX(nforce2_lock);
diff --git a/drivers/i2c/i2c-dev.c b/drivers/i2c/i2c-dev.c
-index 71c7a39..71dd3e0 100644
+index 2413ec9..9cb2203 100644
--- a/drivers/i2c/i2c-dev.c
+++ b/drivers/i2c/i2c-dev.c
-@@ -272,7 +272,7 @@ static noinline int i2cdev_ioctl_rdrw(struct i2c_client *client,
+@@ -272,7 +272,7 @@ static noinline int i2cdev_ioctl_rdwr(struct i2c_client *client,
break;
}
@@ -45845,7 +45283,7 @@ index 71c7a39..71dd3e0 100644
if (IS_ERR(rdwr_pa[i].buf)) {
res = PTR_ERR(rdwr_pa[i].buf);
diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c
-index 64a6b82..a524354 100644
+index ef907fd..1b61cf2 100644
--- a/drivers/ide/ide-cd.c
+++ b/drivers/ide/ide-cd.c
@@ -768,7 +768,7 @@ static void cdrom_do_block_pc(ide_drive_t *drive, struct request *rq)
@@ -45858,7 +45296,7 @@ index 64a6b82..a524354 100644
}
}
diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c
-index 56b9708..980b63b 100644
+index 37a8a90..4724cbd 100644
--- a/drivers/ide/ide-disk.c
+++ b/drivers/ide/ide-disk.c
@@ -178,7 +178,7 @@ static ide_startstop_t __ide_do_rw_disk(ide_drive_t *drive, struct request *rq,
@@ -45871,10 +45309,10 @@ index 56b9708..980b63b 100644
{
ide_hwif_t *hwif = drive->hwif;
diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
-index b3fcc2c..6f90dc4 100644
+index 159ede6..856c0d5 100644
--- a/drivers/iio/industrialio-core.c
+++ b/drivers/iio/industrialio-core.c
-@@ -590,7 +590,7 @@ static ssize_t iio_write_channel_info(struct device *dev,
+@@ -594,7 +594,7 @@ static ssize_t iio_write_channel_info(struct device *dev,
}
static
@@ -45897,7 +45335,7 @@ index b13936d..65322b2 100644
if (chipset >= AK_MAX_TYPE) {
diff --git a/drivers/infiniband/core/cm.c b/drivers/infiniband/core/cm.c
-index 4f918b9..97b5a90 100644
+index 0a26dd6..54c83de 100644
--- a/drivers/infiniband/core/cm.c
+++ b/drivers/infiniband/core/cm.c
@@ -115,7 +115,7 @@ static char const counter_group_names[CM_COUNTER_GROUPS]
@@ -46030,7 +45468,7 @@ index 4f918b9..97b5a90 100644
counter[attr_id - CM_ATTR_ID_OFFSET]);
work = kmalloc(sizeof *work + sizeof(struct ib_sa_path_rec) * paths,
-@@ -3777,7 +3777,7 @@ static ssize_t cm_show_counter(struct kobject *obj, struct attribute *attr,
+@@ -3751,7 +3751,7 @@ static ssize_t cm_show_counter(struct kobject *obj, struct attribute *attr,
cm_attr = container_of(attr, struct cm_counter_attribute, attr);
return sprintf(buf, "%ld\n",
@@ -46129,10 +45567,10 @@ index d47df93..93e4cfd 100644
}
}
diff --git a/drivers/infiniband/core/uverbs_cmd.c b/drivers/infiniband/core/uverbs_cmd.c
-index be4cb9f..a2bd947 100644
+index 1c02dea..5f1efa6 100644
--- a/drivers/infiniband/core/uverbs_cmd.c
+++ b/drivers/infiniband/core/uverbs_cmd.c
-@@ -959,6 +959,9 @@ ssize_t ib_uverbs_reg_mr(struct ib_uverbs_file *file,
+@@ -961,6 +961,9 @@ ssize_t ib_uverbs_reg_mr(struct ib_uverbs_file *file,
if (copy_from_user(&cmd, buf, sizeof cmd))
return -EFAULT;
@@ -46142,8 +45580,30 @@ index be4cb9f..a2bd947 100644
INIT_UDATA(&udata, buf + sizeof cmd,
(unsigned long) cmd.response + sizeof resp,
in_len - sizeof cmd, out_len - sizeof resp);
+diff --git a/drivers/infiniband/hw/cxgb3/iwch_cm.c b/drivers/infiniband/hw/cxgb3/iwch_cm.c
+index cb78b1e..f504ba7 100644
+--- a/drivers/infiniband/hw/cxgb3/iwch_cm.c
++++ b/drivers/infiniband/hw/cxgb3/iwch_cm.c
+@@ -149,7 +149,7 @@ static int iwch_l2t_send(struct t3cdev *tdev, struct sk_buff *skb, struct l2t_en
+ error = l2t_send(tdev, skb, l2e);
+ if (error < 0)
+ kfree_skb(skb);
+- return error;
++ return error < 0 ? error : 0;
+ }
+
+ int iwch_cxgb3_ofld_send(struct t3cdev *tdev, struct sk_buff *skb)
+@@ -165,7 +165,7 @@ int iwch_cxgb3_ofld_send(struct t3cdev *tdev, struct sk_buff *skb)
+ error = cxgb3_ofld_send(tdev, skb);
+ if (error < 0)
+ kfree_skb(skb);
+- return error;
++ return error < 0 ? error : 0;
+ }
+
+ static void release_tid(struct t3cdev *tdev, u32 hwtid, struct sk_buff *skb)
diff --git a/drivers/infiniband/hw/cxgb4/device.c b/drivers/infiniband/hw/cxgb4/device.c
-index 1a29739..154f025 100644
+index 58fce174..f6de2c2 100644
--- a/drivers/infiniband/hw/cxgb4/device.c
+++ b/drivers/infiniband/hw/cxgb4/device.c
@@ -122,7 +122,7 @@ void c4iw_log_wr_stats(struct t4_wq *wq, struct t4_cqe *cqe)
@@ -46174,7 +45634,7 @@ index 1a29739..154f025 100644
pr_err(MOD "error allocating wr_log. Logging disabled\n");
}
diff --git a/drivers/infiniband/hw/cxgb4/iw_cxgb4.h b/drivers/infiniband/hw/cxgb4/iw_cxgb4.h
-index c7bb38c..46059b4 100644
+index 00e55fa..44a2635 100644
--- a/drivers/infiniband/hw/cxgb4/iw_cxgb4.h
+++ b/drivers/infiniband/hw/cxgb4/iw_cxgb4.h
@@ -180,7 +180,7 @@ struct c4iw_rdev {
@@ -46187,7 +45647,7 @@ index c7bb38c..46059b4 100644
int wr_log_size;
};
diff --git a/drivers/infiniband/hw/cxgb4/mem.c b/drivers/infiniband/hw/cxgb4/mem.c
-index 026b91e..47c3bdb 100644
+index e1629ab..22d07b9 100644
--- a/drivers/infiniband/hw/cxgb4/mem.c
+++ b/drivers/infiniband/hw/cxgb4/mem.c
@@ -256,7 +256,7 @@ static int write_tpt_entry(struct c4iw_rdev *rdev, u32 reset_tpt_entry,
@@ -46209,7 +45669,7 @@ index 026b91e..47c3bdb 100644
PDBG("%s stag_state 0x%0x type 0x%0x pdid 0x%0x, stag_idx 0x%x\n",
__func__, stag_state, type, pdid, stag_idx);
diff --git a/drivers/infiniband/hw/mlx4/mad.c b/drivers/infiniband/hw/mlx4/mad.c
-index 1cd75ff..8fc6bc7 100644
+index 870e56b..c1985ce 100644
--- a/drivers/infiniband/hw/mlx4/mad.c
+++ b/drivers/infiniband/hw/mlx4/mad.c
@@ -98,7 +98,7 @@ __be64 mlx4_ib_gen_node_guid(void)
@@ -46222,7 +45682,7 @@ index 1cd75ff..8fc6bc7 100644
}
diff --git a/drivers/infiniband/hw/mlx4/mcg.c b/drivers/infiniband/hw/mlx4/mcg.c
-index 2d5bccd..a5d2030 100644
+index 99451d8..a9f0747 100644
--- a/drivers/infiniband/hw/mlx4/mcg.c
+++ b/drivers/infiniband/hw/mlx4/mcg.c
@@ -1046,7 +1046,7 @@ int mlx4_ib_mcg_port_init(struct mlx4_ib_demux_ctx *ctx)
@@ -46235,10 +45695,10 @@ index 2d5bccd..a5d2030 100644
ctx->mcg_wq = create_singlethread_workqueue(name);
if (!ctx->mcg_wq)
diff --git a/drivers/infiniband/hw/mlx4/mlx4_ib.h b/drivers/infiniband/hw/mlx4/mlx4_ib.h
-index 1e7b23b..527fb1d 100644
+index 1caa11e..2ebefd7 100644
--- a/drivers/infiniband/hw/mlx4/mlx4_ib.h
+++ b/drivers/infiniband/hw/mlx4/mlx4_ib.h
-@@ -448,7 +448,7 @@ struct mlx4_ib_demux_ctx {
+@@ -450,7 +450,7 @@ struct mlx4_ib_demux_ctx {
struct list_head mcg_mgid0_list;
struct workqueue_struct *mcg_wq;
struct mlx4_ib_demux_pv_ctx **tun;
@@ -46685,7 +46145,7 @@ index 4166452..fc952c3 100644
}
diff --git a/drivers/infiniband/hw/nes/nes_nic.c b/drivers/infiniband/hw/nes/nes_nic.c
-index 70acda9..a96de9d 100644
+index 6a0bdfa..f587041 100644
--- a/drivers/infiniband/hw/nes/nes_nic.c
+++ b/drivers/infiniband/hw/nes/nes_nic.c
@@ -1274,39 +1274,39 @@ static void nes_netdev_get_ethtool_stats(struct net_device *netdev,
@@ -46749,7 +46209,7 @@ index 70acda9..a96de9d 100644
/**
diff --git a/drivers/infiniband/hw/nes/nes_verbs.c b/drivers/infiniband/hw/nes/nes_verbs.c
-index 44cb513..6702198 100644
+index 137880a..f3248f4 100644
--- a/drivers/infiniband/hw/nes/nes_verbs.c
+++ b/drivers/infiniband/hw/nes/nes_verbs.c
@@ -46,9 +46,9 @@
@@ -46764,8 +46224,8 @@ index 44cb513..6702198 100644
+atomic_unchecked_t sw_qps_destroyed;
static void nes_unregister_ofa_device(struct nes_ib_device *nesibdev);
-
-@@ -1146,7 +1146,7 @@ static struct ib_qp *nes_create_qp(struct ib_pd *ibpd,
+ static int nes_dereg_mr(struct ib_mr *ib_mr);
+@@ -1114,7 +1114,7 @@ static struct ib_qp *nes_create_qp(struct ib_pd *ibpd,
if (init_attr->create_flags)
return ERR_PTR(-EINVAL);
@@ -46774,7 +46234,7 @@ index 44cb513..6702198 100644
switch (init_attr->qp_type) {
case IB_QPT_RC:
if (nes_drv_opt & NES_DRV_OPT_NO_INLINE_DATA) {
-@@ -1480,7 +1480,7 @@ static int nes_destroy_qp(struct ib_qp *ibqp)
+@@ -1448,7 +1448,7 @@ static int nes_destroy_qp(struct ib_qp *ibqp)
struct iw_cm_event cm_event;
int ret = 0;
@@ -46808,6 +46268,19 @@ index cdc7df4..a2fdfdb 100644
.kind = "ipoib",
.maxtype = IFLA_IPOIB_MAX,
.policy = ipoib_policy,
+diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c
+index e9ae3d5..96e4940 100644
+--- a/drivers/input/evdev.c
++++ b/drivers/input/evdev.c
+@@ -997,7 +997,7 @@ static int evdev_set_mask(struct evdev_client *client,
+ if (!cnt)
+ return 0;
+
+- mask = kcalloc(sizeof(unsigned long), BITS_TO_LONGS(cnt), GFP_KERNEL);
++ mask = kcalloc(BITS_TO_LONGS(cnt), sizeof(unsigned long), GFP_KERNEL);
+ if (!mask)
+ return -ENOMEM;
+
diff --git a/drivers/input/gameport/gameport.c b/drivers/input/gameport/gameport.c
index 4a2a9e3..b9261a7 100644
--- a/drivers/input/gameport/gameport.c
@@ -46830,7 +46303,7 @@ index 4a2a9e3..b9261a7 100644
gameport->dev.release = gameport_release_port;
if (gameport->parent)
diff --git a/drivers/input/input.c b/drivers/input/input.c
-index 5391abd..d454638 100644
+index 8806059..fddeb99 100644
--- a/drivers/input/input.c
+++ b/drivers/input/input.c
@@ -1781,7 +1781,7 @@ EXPORT_SYMBOL_GPL(input_class);
@@ -46863,28 +46336,6 @@ index 4a95b22..874c182 100644
#include <linux/input.h>
#include <linux/gameport.h>
#include <linux/jiffies.h>
-diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
-index f8850f9..9708a2d 100644
---- a/drivers/input/joystick/xpad.c
-+++ b/drivers/input/joystick/xpad.c
-@@ -959,7 +959,7 @@ static void xpad_led_set(struct led_classdev *led_cdev,
-
- static int xpad_led_probe(struct usb_xpad *xpad)
- {
-- static atomic_t led_seq = ATOMIC_INIT(-1);
-+ static atomic_unchecked_t led_seq = ATOMIC_INIT(-1);
- struct xpad_led *led;
- struct led_classdev *led_cdev;
- int error;
-@@ -971,7 +971,7 @@ static int xpad_led_probe(struct usb_xpad *xpad)
- if (!led)
- return -ENOMEM;
-
-- xpad->led_no = atomic_inc_return(&led_seq);
-+ xpad->led_no = atomic_inc_return_unchecked(&led_seq);
-
- snprintf(led->name, sizeof(led->name), "xpad%lu", xpad->led_no);
- led->xpad = xpad;
diff --git a/drivers/input/misc/ims-pcu.c b/drivers/input/misc/ims-pcu.c
index ac1fa5f..5f7502c 100644
--- a/drivers/input/misc/ims-pcu.c
@@ -46991,10 +46442,10 @@ index 92e2243..8fd9092 100644
.ident = "Shift",
.matches = {
diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
-index cbe6a89..da64411 100644
+index b9094e9..a4885c6 100644
--- a/drivers/iommu/Kconfig
+++ b/drivers/iommu/Kconfig
-@@ -102,6 +102,7 @@ config AMD_IOMMU_STATS
+@@ -109,6 +109,7 @@ config AMD_IOMMU_STATS
bool "Export AMD IOMMU statistics to debugfs"
depends on AMD_IOMMU
select DEBUG_FS
@@ -47003,10 +46454,10 @@ index cbe6a89..da64411 100644
This option enables code in the AMD IOMMU driver to collect various
statistics about whats happening in the driver and exports that
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c
-index 532e2a2..a60aa73 100644
+index 8b2be1e..907a80f 100644
--- a/drivers/iommu/amd_iommu.c
+++ b/drivers/iommu/amd_iommu.c
-@@ -794,11 +794,21 @@ static void copy_cmd_to_buffer(struct amd_iommu *iommu,
+@@ -695,11 +695,21 @@ static void copy_cmd_to_buffer(struct amd_iommu *iommu,
static void build_completion_wait(struct iommu_cmd *cmd, u64 address)
{
@@ -47031,10 +46482,10 @@ index 532e2a2..a60aa73 100644
CMD_SET_TYPE(cmd, CMD_COMPL_WAIT);
}
diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm-smmu-v3.c
-index ef78620..5b5d477 100644
+index 4e5118a..6b1675e 100644
--- a/drivers/iommu/arm-smmu-v3.c
+++ b/drivers/iommu/arm-smmu-v3.c
-@@ -1517,7 +1517,7 @@ static int arm_smmu_domain_finalise(struct iommu_domain *domain)
+@@ -1539,7 +1539,7 @@ static int arm_smmu_domain_finalise(struct iommu_domain *domain)
.iommu_dev = smmu->dev,
};
@@ -47044,10 +46495,10 @@ index ef78620..5b5d477 100644
return -ENOMEM;
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
-index 48a39df..d7db978 100644
+index 47dc7a7..2bfe405 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
-@@ -331,7 +331,7 @@ enum arm_smmu_domain_stage {
+@@ -341,7 +341,7 @@ enum arm_smmu_domain_stage {
struct arm_smmu_domain {
struct arm_smmu_device *smmu;
@@ -47056,7 +46507,7 @@ index 48a39df..d7db978 100644
spinlock_t pgtbl_lock;
struct arm_smmu_cfg cfg;
enum arm_smmu_domain_stage stage;
-@@ -793,7 +793,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
+@@ -798,7 +798,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
{
int irq, start, ret = 0;
unsigned long ias, oas;
@@ -47065,7 +46516,7 @@ index 48a39df..d7db978 100644
struct io_pgtable_cfg pgtbl_cfg;
enum io_pgtable_fmt fmt;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
-@@ -879,14 +879,16 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
+@@ -884,14 +884,16 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
};
smmu_domain->smmu = smmu;
@@ -47085,7 +46536,7 @@ index 48a39df..d7db978 100644
/* Initialise the context bank with our page table cfg */
arm_smmu_init_context_bank(smmu_domain, &pgtbl_cfg);
-@@ -907,7 +909,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
+@@ -912,7 +914,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
mutex_unlock(&smmu_domain->init_mutex);
/* Publish page table ops for map/unmap */
@@ -47094,7 +46545,7 @@ index 48a39df..d7db978 100644
return 0;
out_clear_smmu:
-@@ -940,8 +942,7 @@ static void arm_smmu_destroy_domain_context(struct iommu_domain *domain)
+@@ -945,8 +947,7 @@ static void arm_smmu_destroy_domain_context(struct iommu_domain *domain)
free_irq(irq, domain);
}
@@ -47104,7 +46555,7 @@ index 48a39df..d7db978 100644
__arm_smmu_free_bitmap(smmu->context_map, cfg->cbndx);
}
-@@ -1167,13 +1168,13 @@ static int arm_smmu_map(struct iommu_domain *domain, unsigned long iova,
+@@ -1172,13 +1173,13 @@ static int arm_smmu_map(struct iommu_domain *domain, unsigned long iova,
int ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -47121,7 +46572,7 @@ index 48a39df..d7db978 100644
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
return ret;
}
-@@ -1184,13 +1185,13 @@ static size_t arm_smmu_unmap(struct iommu_domain *domain, unsigned long iova,
+@@ -1189,13 +1190,13 @@ static size_t arm_smmu_unmap(struct iommu_domain *domain, unsigned long iova,
size_t ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -47138,7 +46589,7 @@ index 48a39df..d7db978 100644
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
return ret;
}
-@@ -1201,7 +1202,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
+@@ -1206,7 +1207,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
struct arm_smmu_device *smmu = smmu_domain->smmu;
struct arm_smmu_cfg *cfg = &smmu_domain->cfg;
@@ -47147,16 +46598,16 @@ index 48a39df..d7db978 100644
struct device *dev = smmu->dev;
void __iomem *cb_base;
u32 tmp;
-@@ -1224,7 +1225,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
+@@ -1227,7 +1228,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
dev_err(dev,
- "iova to phys timed out on 0x%pad. Falling back to software table walk.\n",
+ "iova to phys timed out on %pad. Falling back to software table walk.\n",
&iova);
- return ops->iova_to_phys(ops, iova);
-+ return iop->ops->iova_to_phys(iop, iova);
++ return iop->ops->iova_to_phys(ops, iova);
}
phys = readl_relaxed(cb_base + ARM_SMMU_CB_PAR_LO);
-@@ -1245,9 +1246,9 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
+@@ -1248,9 +1249,9 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
phys_addr_t ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -47168,7 +46619,7 @@ index 48a39df..d7db978 100644
return 0;
spin_lock_irqsave(&smmu_domain->pgtbl_lock, flags);
-@@ -1255,7 +1256,7 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
+@@ -1258,7 +1259,7 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
smmu_domain->stage == ARM_SMMU_DOMAIN_S1) {
ret = arm_smmu_iova_to_phys_hard(domain, iova);
} else {
@@ -47177,7 +46628,7 @@ index 48a39df..d7db978 100644
}
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
-@@ -1658,7 +1659,9 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
+@@ -1676,7 +1677,9 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
size |= SZ_64K | SZ_512M;
}
@@ -47189,7 +46640,7 @@ index 48a39df..d7db978 100644
if (smmu->features & ARM_SMMU_FEAT_TRANS_S1)
diff --git a/drivers/iommu/io-pgtable-arm.c b/drivers/iommu/io-pgtable-arm.c
-index 7df9777..6fc3d9a 100644
+index dad768c..6783134 100644
--- a/drivers/iommu/io-pgtable-arm.c
+++ b/drivers/iommu/io-pgtable-arm.c
@@ -38,12 +38,6 @@
@@ -47218,7 +46669,7 @@ index 7df9777..6fc3d9a 100644
arm_lpae_iopte *ptep = data->pgd;
int ret, lvl = ARM_LPAE_START_LVL(data);
arm_lpae_iopte prot;
-@@ -523,12 +517,11 @@ static int __arm_lpae_unmap(struct arm_lpae_io_pgtable *data,
+@@ -524,12 +518,11 @@ static int __arm_lpae_unmap(struct arm_lpae_io_pgtable *data,
return __arm_lpae_unmap(data, iova, size, lvl + 1, ptep);
}
@@ -47233,7 +46684,7 @@ index 7df9777..6fc3d9a 100644
arm_lpae_iopte *ptep = data->pgd;
int lvl = ARM_LPAE_START_LVL(data);
-@@ -539,10 +532,10 @@ static int arm_lpae_unmap(struct io_pgtable_ops *ops, unsigned long iova,
+@@ -540,10 +533,10 @@ static int arm_lpae_unmap(struct io_pgtable_ops *ops, unsigned long iova,
return unmapped;
}
@@ -47246,7 +46697,7 @@ index 7df9777..6fc3d9a 100644
arm_lpae_iopte pte, *ptep = data->pgd;
int lvl = ARM_LPAE_START_LVL(data);
-@@ -609,6 +602,12 @@ static void arm_lpae_restrict_pgsizes(struct io_pgtable_cfg *cfg)
+@@ -610,6 +603,12 @@ static void arm_lpae_restrict_pgsizes(struct io_pgtable_cfg *cfg)
}
}
@@ -47259,7 +46710,7 @@ index 7df9777..6fc3d9a 100644
static struct arm_lpae_io_pgtable *
arm_lpae_alloc_pgtable(struct io_pgtable_cfg *cfg)
{
-@@ -645,11 +644,7 @@ arm_lpae_alloc_pgtable(struct io_pgtable_cfg *cfg)
+@@ -646,11 +645,7 @@ arm_lpae_alloc_pgtable(struct io_pgtable_cfg *cfg)
pgd_bits = va_bits - (data->bits_per_level * (data->levels - 1));
data->pgd_size = 1UL << (pgd_bits + ilog2(sizeof(arm_lpae_iopte)));
@@ -47272,7 +46723,7 @@ index 7df9777..6fc3d9a 100644
return data;
}
-@@ -907,9 +902,9 @@ static struct iommu_gather_ops dummy_tlb_ops __initdata = {
+@@ -908,9 +903,9 @@ static struct iommu_gather_ops dummy_tlb_ops __initdata = {
.tlb_sync = dummy_tlb_sync,
};
@@ -47284,7 +46735,7 @@ index 7df9777..6fc3d9a 100644
struct io_pgtable_cfg *cfg = &data->iop.cfg;
pr_err("cfg: pgsize_bitmap 0x%lx, ias %u-bit\n",
-@@ -919,9 +914,9 @@ static void __init arm_lpae_dump_ops(struct io_pgtable_ops *ops)
+@@ -920,9 +915,9 @@ static void __init arm_lpae_dump_ops(struct io_pgtable_ops *ops)
data->bits_per_level, data->pgd);
}
@@ -47296,7 +46747,7 @@ index 7df9777..6fc3d9a 100644
selftest_running = false; \
-EFAULT; \
})
-@@ -936,30 +931,32 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
+@@ -937,30 +932,32 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
int i, j;
unsigned long iova;
size_t size;
@@ -47338,7 +46789,7 @@ index 7df9777..6fc3d9a 100644
/*
* Distinct mappings of different granule sizes.
-@@ -969,19 +966,19 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
+@@ -970,19 +967,19 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
while (j != BITS_PER_LONG) {
size = 1UL << j;
@@ -47364,7 +46815,7 @@ index 7df9777..6fc3d9a 100644
iova += SZ_1G;
j++;
-@@ -990,15 +987,15 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
+@@ -991,15 +988,15 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
/* Partial unmap */
size = 1UL << __ffs(cfg->pgsize_bitmap);
@@ -47386,7 +46837,7 @@ index 7df9777..6fc3d9a 100644
/* Full unmap */
iova = 0;
-@@ -1006,25 +1003,25 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
+@@ -1007,25 +1004,25 @@ static int __init arm_lpae_run_tests(struct io_pgtable_cfg *cfg)
while (j != BITS_PER_LONG) {
size = 1UL << j;
@@ -47518,10 +46969,10 @@ index ac9e234..a2f206e 100644
/**
diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
-index 049df49..da1f16d 100644
+index 0e3b009..5b97b84 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
-@@ -934,7 +934,7 @@ static int iommu_bus_notifier(struct notifier_block *nb,
+@@ -956,7 +956,7 @@ static int iommu_bus_notifier(struct notifier_block *nb,
static int iommu_bus_init(struct bus_type *bus, const struct iommu_ops *ops)
{
int err;
@@ -47531,7 +46982,7 @@ index 049df49..da1f16d 100644
.ops = ops,
};
diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c
-index 8cf605f..388b01f 100644
+index dfb868e..7447315a 100644
--- a/drivers/iommu/ipmmu-vmsa.c
+++ b/drivers/iommu/ipmmu-vmsa.c
@@ -41,7 +41,7 @@ struct ipmmu_vmsa_domain {
@@ -47590,10 +47041,10 @@ index 8cf605f..388b01f 100644
static int ipmmu_find_utlbs(struct ipmmu_vmsa_device *mmu, struct device *dev,
diff --git a/drivers/iommu/irq_remapping.c b/drivers/iommu/irq_remapping.c
-index 913455a..d7e8048 100644
+index 8adaaea..99dab8e 100644
--- a/drivers/iommu/irq_remapping.c
+++ b/drivers/iommu/irq_remapping.c
-@@ -149,7 +149,7 @@ int __init irq_remap_enable_fault_handling(void)
+@@ -153,7 +153,7 @@ int __init irq_remap_enable_fault_handling(void)
void panic_if_irq_remap(const char *msg)
{
if (irq_remapping_enabled)
@@ -47603,10 +47054,10 @@ index 913455a..d7e8048 100644
void ir_ack_apic_edge(struct irq_data *data)
diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c
-index 982c09c..47e1aa8 100644
+index abf2ffa..29cac65 100644
--- a/drivers/irqchip/irq-gic.c
+++ b/drivers/irqchip/irq-gic.c
-@@ -368,7 +368,7 @@ static void gic_handle_cascade_irq(struct irq_desc *desc)
+@@ -382,7 +382,7 @@ static void gic_handle_cascade_irq(struct irq_desc *desc)
chained_irq_exit(chip, desc);
}
@@ -47616,7 +47067,7 @@ index 982c09c..47e1aa8 100644
.irq_mask = gic_mask_irq,
.irq_unmask = gic_unmask_irq,
diff --git a/drivers/irqchip/irq-i8259.c b/drivers/irqchip/irq-i8259.c
-index e484fd2..b6cdf69 100644
+index 6b304eb..6e3a1413 100644
--- a/drivers/irqchip/irq-i8259.c
+++ b/drivers/irqchip/irq-i8259.c
@@ -204,7 +204,7 @@ spurious_8259A_irq:
@@ -47629,10 +47080,10 @@ index e484fd2..b6cdf69 100644
* Theoretically we do not have to handle this IRQ,
* but in Linux this does not cause problems and is
diff --git a/drivers/irqchip/irq-renesas-intc-irqpin.c b/drivers/irqchip/irq-renesas-intc-irqpin.c
-index 9525335..f0322eb 100644
+index c325806..b18ef0f 100644
--- a/drivers/irqchip/irq-renesas-intc-irqpin.c
+++ b/drivers/irqchip/irq-renesas-intc-irqpin.c
-@@ -382,7 +382,7 @@ static int intc_irqpin_probe(struct platform_device *pdev)
+@@ -384,7 +384,7 @@ static int intc_irqpin_probe(struct platform_device *pdev)
struct intc_irqpin_iomem *i;
struct resource *io[INTC_IRQPIN_REG_NR];
struct resource *irq;
@@ -47641,19 +47092,6 @@ index 9525335..f0322eb 100644
void (*enable_fn)(struct irq_data *d);
void (*disable_fn)(struct irq_data *d);
const char *name = dev_name(dev);
-diff --git a/drivers/irqchip/irq-renesas-irqc.c b/drivers/irqchip/irq-renesas-irqc.c
-index 35bf97b..7b361c00 100644
---- a/drivers/irqchip/irq-renesas-irqc.c
-+++ b/drivers/irqchip/irq-renesas-irqc.c
-@@ -181,7 +181,7 @@ static int irqc_probe(struct platform_device *pdev)
- struct irqc_priv *p;
- struct resource *io;
- struct resource *irq;
-- struct irq_chip *irq_chip;
-+ irq_chip_no_const *irq_chip;
- const char *name = dev_name(&pdev->dev);
- int ret;
- int k;
diff --git a/drivers/isdn/capi/capi.c b/drivers/isdn/capi/capi.c
index 6a2df32..dc962f1 100644
--- a/drivers/isdn/capi/capi.c
@@ -47767,10 +47205,10 @@ index 600c79b..3752bab 100644
mutex_unlock(&cs->mutex);
diff --git a/drivers/isdn/gigaset/ser-gigaset.c b/drivers/isdn/gigaset/ser-gigaset.c
-index 375be50..675293c 100644
+index 2a506fe..fdbe969 100644
--- a/drivers/isdn/gigaset/ser-gigaset.c
+++ b/drivers/isdn/gigaset/ser-gigaset.c
-@@ -453,22 +453,22 @@ static int gigaset_set_line_ctrl(struct cardstate *cs, unsigned cflag)
+@@ -452,22 +452,22 @@ static int gigaset_set_line_ctrl(struct cardstate *cs, unsigned cflag)
}
static const struct gigaset_ops ops = {
@@ -47883,74 +47321,6 @@ index 4d9b195..455075c 100644
return -EFAULT;
} else {
memcpy(buf, dp, left);
-diff --git a/drivers/isdn/hisax/config.c b/drivers/isdn/hisax/config.c
-index b33f53b..bf04d2a 100644
---- a/drivers/isdn/hisax/config.c
-+++ b/drivers/isdn/hisax/config.c
-@@ -1896,7 +1896,7 @@ static void EChannel_proc_rcv(struct hisax_d_if *d_if)
- ptr--;
- *ptr++ = '\n';
- *ptr = 0;
-- HiSax_putstatus(cs, NULL, "%s", cs->dlog);
-+ HiSax_putstatus(cs, NULL, cs->dlog);
- } else
- HiSax_putstatus(cs, "LogEcho: ",
- "warning Frame too big (%d)",
-diff --git a/drivers/isdn/hisax/hfc_pci.c b/drivers/isdn/hisax/hfc_pci.c
-index 4a48255..90449e1 100644
---- a/drivers/isdn/hisax/hfc_pci.c
-+++ b/drivers/isdn/hisax/hfc_pci.c
-@@ -901,7 +901,7 @@ Begin:
- ptr--;
- *ptr++ = '\n';
- *ptr = 0;
-- HiSax_putstatus(cs, NULL, "%s", cs->dlog);
-+ HiSax_putstatus(cs, NULL, cs->dlog);
- } else
- HiSax_putstatus(cs, "LogEcho: ", "warning Frame too big (%d)", total - 3);
- }
-diff --git a/drivers/isdn/hisax/hfc_sx.c b/drivers/isdn/hisax/hfc_sx.c
-index b1fad81..13b2151 100644
---- a/drivers/isdn/hisax/hfc_sx.c
-+++ b/drivers/isdn/hisax/hfc_sx.c
-@@ -674,7 +674,7 @@ receive_emsg(struct IsdnCardState *cs)
- ptr--;
- *ptr++ = '\n';
- *ptr = 0;
-- HiSax_putstatus(cs, NULL, "%s", cs->dlog);
-+ HiSax_putstatus(cs, NULL, cs->dlog);
- } else
- HiSax_putstatus(cs, "LogEcho: ", "warning Frame too big (%d)", skb->len);
- }
-diff --git a/drivers/isdn/hisax/q931.c b/drivers/isdn/hisax/q931.c
-index b420f8b..ba4beb2 100644
---- a/drivers/isdn/hisax/q931.c
-+++ b/drivers/isdn/hisax/q931.c
-@@ -1179,7 +1179,7 @@ LogFrame(struct IsdnCardState *cs, u_char *buf, int size)
- dp--;
- *dp++ = '\n';
- *dp = 0;
-- HiSax_putstatus(cs, NULL, "%s", cs->dlog);
-+ HiSax_putstatus(cs, NULL, cs->dlog);
- } else
- HiSax_putstatus(cs, "LogFrame: ", "warning Frame too big (%d)", size);
- }
-@@ -1246,7 +1246,7 @@ dlogframe(struct IsdnCardState *cs, struct sk_buff *skb, int dir)
- }
- if (finish) {
- *dp = 0;
-- HiSax_putstatus(cs, NULL, "%s", cs->dlog);
-+ HiSax_putstatus(cs, NULL, cs->dlog);
- return;
- }
- if ((0xfe & buf[0]) == PROTO_DIS_N0) { /* 1TR6 */
-@@ -1509,5 +1509,5 @@ dlogframe(struct IsdnCardState *cs, struct sk_buff *skb, int dir)
- dp += sprintf(dp, "Unknown protocol %x!", buf[0]);
- }
- *dp = 0;
-- HiSax_putstatus(cs, NULL, "%s", cs->dlog);
-+ HiSax_putstatus(cs, NULL, cs->dlog);
- }
diff --git a/drivers/isdn/i4l/isdn_common.c b/drivers/isdn/i4l/isdn_common.c
index 9b856e1..fa03c92 100644
--- a/drivers/isdn/i4l/isdn_common.c
@@ -47982,7 +47352,7 @@ index 91d5730..336523e 100644
/* The following should better go into a dedicated source file such that
diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
-index bc91261..2ef7e36 100644
+index 2175225..b875cac 100644
--- a/drivers/isdn/i4l/isdn_tty.c
+++ b/drivers/isdn/i4l/isdn_tty.c
@@ -1503,9 +1503,9 @@ isdn_tty_open(struct tty_struct *tty, struct file *filp)
@@ -48547,10 +47917,10 @@ index b3ff57d..b2e30fb 100644
return size;
diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c
-index 48b5890..b0af0ca 100644
+index 4f22e91..5b13fde 100644
--- a/drivers/md/bitmap.c
+++ b/drivers/md/bitmap.c
-@@ -1933,7 +1933,7 @@ void bitmap_status(struct seq_file *seq, struct bitmap *bitmap)
+@@ -1931,7 +1931,7 @@ void bitmap_status(struct seq_file *seq, struct bitmap *bitmap)
chunk_kb ? "KB" : "B");
if (bitmap->storage.file) {
seq_printf(seq, ", file: ");
@@ -48560,7 +47930,7 @@ index 48b5890..b0af0ca 100644
seq_printf(seq, "\n");
diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c
-index dd90d12..10c9377 100644
+index 2fd4c82..199bd5d 100644
--- a/drivers/md/dm-cache-target.c
+++ b/drivers/md/dm-cache-target.c
@@ -185,16 +185,16 @@ struct cache_features {
@@ -48740,7 +48110,7 @@ index dd90d12..10c9377 100644
}
static void wait_for_migrations(struct cache *cache)
-@@ -2866,8 +2866,8 @@ static int cache_create(struct cache_args *ca, struct cache **result)
+@@ -2865,8 +2865,8 @@ static int cache_create(struct cache_args *ca, struct cache **result)
init_waitqueue_head(&cache->migration_wait);
init_waitqueue_head(&cache->quiescing_wait);
@@ -48751,7 +48121,7 @@ index dd90d12..10c9377 100644
r = -ENOMEM;
atomic_set(&cache->nr_dirty, 0);
-@@ -2934,12 +2934,12 @@ static int cache_create(struct cache_args *ca, struct cache **result)
+@@ -2933,12 +2933,12 @@ static int cache_create(struct cache_args *ca, struct cache **result)
load_stats(cache);
@@ -48770,7 +48140,7 @@ index dd90d12..10c9377 100644
spin_lock_init(&cache->invalidation_lock);
INIT_LIST_HEAD(&cache->invalidation_requests);
-@@ -3549,12 +3549,12 @@ static void cache_status(struct dm_target *ti, status_type_t type,
+@@ -3548,12 +3548,12 @@ static void cache_status(struct dm_target *ti, status_type_t type,
cache->sectors_per_block,
(unsigned long long) from_cblock(residency),
(unsigned long long) from_cblock(cache->cache_size),
@@ -48967,7 +48337,7 @@ index 797ddb9..9595c24 100644
schedule_work(&sc->trigger_event);
}
diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
-index e76ed00..aee345b 100644
+index 061152a..b033201 100644
--- a/drivers/md/dm-table.c
+++ b/drivers/md/dm-table.c
@@ -305,7 +305,7 @@ static int device_area_is_invalid(struct dm_target *ti, struct dm_dev *dev,
@@ -48980,10 +48350,10 @@ index e76ed00..aee345b 100644
"start=%llu, len=%llu, dev_size=%llu",
dm_device_name(ti->table->md), bdevname(bdev, b),
diff --git a/drivers/md/dm-thin-metadata.c b/drivers/md/dm-thin-metadata.c
-index 6ba47cf..a870ba2 100644
+index c219a05..15a27ca 100644
--- a/drivers/md/dm-thin-metadata.c
+++ b/drivers/md/dm-thin-metadata.c
-@@ -403,7 +403,7 @@ static void __setup_btree_details(struct dm_pool_metadata *pmd)
+@@ -405,7 +405,7 @@ static void __setup_btree_details(struct dm_pool_metadata *pmd)
{
pmd->info.tm = pmd->tm;
pmd->info.levels = 2;
@@ -48992,7 +48362,7 @@ index 6ba47cf..a870ba2 100644
pmd->info.value_type.size = sizeof(__le64);
pmd->info.value_type.inc = data_block_inc;
pmd->info.value_type.dec = data_block_dec;
-@@ -422,7 +422,7 @@ static void __setup_btree_details(struct dm_pool_metadata *pmd)
+@@ -424,7 +424,7 @@ static void __setup_btree_details(struct dm_pool_metadata *pmd)
pmd->bl_info.tm = pmd->tm;
pmd->bl_info.levels = 1;
@@ -49002,10 +48372,10 @@ index 6ba47cf..a870ba2 100644
pmd->bl_info.value_type.inc = data_block_inc;
pmd->bl_info.value_type.dec = data_block_dec;
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
-index 1b5c604..cd00629 100644
+index 5df4048..1344a0d 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
-@@ -193,9 +193,9 @@ struct mapped_device {
+@@ -194,9 +194,9 @@ struct mapped_device {
/*
* Event handling.
*/
@@ -49017,7 +48387,7 @@ index 1b5c604..cd00629 100644
struct list_head uevent_list;
spinlock_t uevent_lock; /* Protect access to uevent_list */
-@@ -704,14 +704,16 @@ static void queue_io(struct mapped_device *md, struct bio *bio)
+@@ -735,14 +735,16 @@ static void queue_io(struct mapped_device *md, struct bio *bio)
* function to access the md->map field, and make sure they call
* dm_put_live_table() when finished.
*/
@@ -49036,7 +48406,7 @@ index 1b5c604..cd00629 100644
{
srcu_read_unlock(&md->io_barrier, srcu_idx);
}
-@@ -726,13 +728,15 @@ void dm_sync_table(struct mapped_device *md)
+@@ -757,13 +759,15 @@ void dm_sync_table(struct mapped_device *md)
* A fast alternative to dm_get_live_table/dm_put_live_table.
* The caller must not block between these two functions.
*/
@@ -49054,7 +48424,7 @@ index 1b5c604..cd00629 100644
{
rcu_read_unlock();
}
-@@ -2286,8 +2290,8 @@ static struct mapped_device *alloc_dev(int minor)
+@@ -2315,8 +2319,8 @@ static struct mapped_device *alloc_dev(int minor)
spin_lock_init(&md->deferred_lock);
atomic_set(&md->holders, 1);
atomic_set(&md->open_count, 0);
@@ -49065,7 +48435,7 @@ index 1b5c604..cd00629 100644
INIT_LIST_HEAD(&md->uevent_list);
INIT_LIST_HEAD(&md->table_devices);
spin_lock_init(&md->uevent_lock);
-@@ -2428,7 +2432,7 @@ static void event_callback(void *context)
+@@ -2457,7 +2461,7 @@ static void event_callback(void *context)
dm_send_uevents(&uevents, &disk_to_dev(md->disk)->kobj);
@@ -49074,7 +48444,7 @@ index 1b5c604..cd00629 100644
wake_up(&md->eventq);
}
-@@ -3365,18 +3369,18 @@ int dm_kobject_uevent(struct mapped_device *md, enum kobject_action action,
+@@ -3400,18 +3404,18 @@ int dm_kobject_uevent(struct mapped_device *md, enum kobject_action action,
uint32_t dm_next_uevent_seq(struct mapped_device *md)
{
@@ -49097,7 +48467,7 @@ index 1b5c604..cd00629 100644
void dm_uevent_add(struct mapped_device *md, struct list_head *elist)
diff --git a/drivers/md/md.c b/drivers/md/md.c
-index 3fe3d04..e9cfcd1 100644
+index b1e1f6b..8fe237a 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -197,10 +197,10 @@ EXPORT_SYMBOL_GPL(bio_clone_mddev);
@@ -49122,7 +48492,7 @@ index 3fe3d04..e9cfcd1 100644
wake_up(&md_event_waiters);
}
-@@ -1431,7 +1431,7 @@ static int super_1_load(struct md_rdev *rdev, struct md_rdev *refdev, int minor_
+@@ -1434,7 +1434,7 @@ static int super_1_load(struct md_rdev *rdev, struct md_rdev *refdev, int minor_
if ((le32_to_cpu(sb->feature_map) & MD_FEATURE_RESHAPE_ACTIVE) &&
(le32_to_cpu(sb->feature_map) & MD_FEATURE_NEW_OFFSET))
rdev->new_data_offset += (s32)le32_to_cpu(sb->new_offset);
@@ -49131,7 +48501,7 @@ index 3fe3d04..e9cfcd1 100644
rdev->sb_size = le32_to_cpu(sb->max_dev) * 2 + 256;
bmask = queue_logical_block_size(rdev->bdev->bd_disk->queue)-1;
-@@ -1682,7 +1682,7 @@ static void super_1_sync(struct mddev *mddev, struct md_rdev *rdev)
+@@ -1703,7 +1703,7 @@ static void super_1_sync(struct mddev *mddev, struct md_rdev *rdev)
else
sb->resync_offset = cpu_to_le64(0);
@@ -49140,7 +48510,7 @@ index 3fe3d04..e9cfcd1 100644
sb->raid_disks = cpu_to_le32(mddev->raid_disks);
sb->size = cpu_to_le64(mddev->dev_sectors);
-@@ -2604,7 +2604,7 @@ __ATTR_PREALLOC(state, S_IRUGO|S_IWUSR, state_show, state_store);
+@@ -2711,7 +2711,7 @@ __ATTR_PREALLOC(state, S_IRUGO|S_IWUSR, state_show, state_store);
static ssize_t
errors_show(struct md_rdev *rdev, char *page)
{
@@ -49149,7 +48519,7 @@ index 3fe3d04..e9cfcd1 100644
}
static ssize_t
-@@ -2616,7 +2616,7 @@ errors_store(struct md_rdev *rdev, const char *buf, size_t len)
+@@ -2723,7 +2723,7 @@ errors_store(struct md_rdev *rdev, const char *buf, size_t len)
rv = kstrtouint(buf, 10, &n);
if (rv < 0)
return rv;
@@ -49158,7 +48528,7 @@ index 3fe3d04..e9cfcd1 100644
return len;
}
static struct rdev_sysfs_entry rdev_errors =
-@@ -3053,8 +3053,8 @@ int md_rdev_init(struct md_rdev *rdev)
+@@ -3167,8 +3167,8 @@ int md_rdev_init(struct md_rdev *rdev)
rdev->sb_loaded = 0;
rdev->bb_page = NULL;
atomic_set(&rdev->nr_pending, 0);
@@ -49169,7 +48539,7 @@ index 3fe3d04..e9cfcd1 100644
INIT_LIST_HEAD(&rdev->same_set);
init_waitqueue_head(&rdev->blocked_wait);
-@@ -4276,7 +4276,7 @@ mismatch_cnt_show(struct mddev *mddev, char *page)
+@@ -4392,7 +4392,7 @@ mismatch_cnt_show(struct mddev *mddev, char *page)
{
return sprintf(page, "%llu\n",
(unsigned long long)
@@ -49178,7 +48548,7 @@ index 3fe3d04..e9cfcd1 100644
}
static struct md_sysfs_entry md_mismatches = __ATTR_RO(mismatch_cnt);
-@@ -5290,7 +5290,7 @@ static void md_clean(struct mddev *mddev)
+@@ -5431,7 +5431,7 @@ static void md_clean(struct mddev *mddev)
mddev->new_layout = 0;
mddev->new_chunk_sectors = 0;
mddev->curr_resync = 0;
@@ -49187,7 +48557,7 @@ index 3fe3d04..e9cfcd1 100644
mddev->suspend_lo = mddev->suspend_hi = 0;
mddev->sync_speed_min = mddev->sync_speed_max = 0;
mddev->recovery = 0;
-@@ -5709,9 +5709,10 @@ static int get_array_info(struct mddev *mddev, void __user *arg)
+@@ -5847,9 +5847,10 @@ static int get_array_info(struct mddev *mddev, void __user *arg)
info.patch_version = MD_PATCHLEVEL_VERSION;
info.ctime = mddev->ctime;
info.level = mddev->level;
@@ -49200,7 +48570,7 @@ index 3fe3d04..e9cfcd1 100644
info.nr_disks = nr;
info.raid_disks = mddev->raid_disks;
info.md_minor = mddev->md_minor;
-@@ -7257,7 +7258,7 @@ static int md_seq_show(struct seq_file *seq, void *v)
+@@ -7391,7 +7392,7 @@ static int md_seq_show(struct seq_file *seq, void *v)
spin_unlock(&pers_lock);
seq_printf(seq, "\n");
@@ -49209,7 +48579,7 @@ index 3fe3d04..e9cfcd1 100644
return 0;
}
if (v == (void*)2) {
-@@ -7355,7 +7356,7 @@ static int md_seq_open(struct inode *inode, struct file *file)
+@@ -7491,7 +7492,7 @@ static int md_seq_open(struct inode *inode, struct file *file)
return error;
seq = file->private_data;
@@ -49218,7 +48588,7 @@ index 3fe3d04..e9cfcd1 100644
return error;
}
-@@ -7372,7 +7373,7 @@ static unsigned int mdstat_poll(struct file *filp, poll_table *wait)
+@@ -7508,7 +7509,7 @@ static unsigned int mdstat_poll(struct file *filp, poll_table *wait)
/* always allow read */
mask = POLLIN | POLLRDNORM;
@@ -49227,7 +48597,7 @@ index 3fe3d04..e9cfcd1 100644
mask |= POLLERR | POLLPRI;
return mask;
}
-@@ -7472,7 +7473,7 @@ static int is_mddev_idle(struct mddev *mddev, int init)
+@@ -7608,7 +7609,7 @@ static int is_mddev_idle(struct mddev *mddev, int init)
struct gendisk *disk = rdev->bdev->bd_contains->bd_disk;
curr_events = (int)part_stat_read(&disk->part0, sectors[0]) +
(int)part_stat_read(&disk->part0, sectors[1]) -
@@ -49236,7 +48606,7 @@ index 3fe3d04..e9cfcd1 100644
/* sync IO will cause sync_io to increase before the disk_stats
* as sync_io is counted when a request starts, and
* disk_stats is counted when it completes.
-@@ -7726,7 +7727,7 @@ void md_do_sync(struct md_thread *thread)
+@@ -7859,7 +7860,7 @@ void md_do_sync(struct md_thread *thread)
* which defaults to physical size, but can be virtual size
*/
max_sectors = mddev->resync_max_sectors;
@@ -49246,10 +48616,10 @@ index 3fe3d04..e9cfcd1 100644
if (test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery))
j = mddev->resync_min;
diff --git a/drivers/md/md.h b/drivers/md/md.h
-index ab33957..0d4a801 100644
+index dfa57b4..7af9cda 100644
--- a/drivers/md/md.h
+++ b/drivers/md/md.h
-@@ -96,13 +96,13 @@ struct md_rdev {
+@@ -102,13 +102,13 @@ struct md_rdev {
* only maintained for arrays that
* support hot removal
*/
@@ -49265,7 +48635,7 @@ index ab33957..0d4a801 100644
* for reporting to userspace and storing
* in superblock.
*/
-@@ -301,7 +301,7 @@ struct mddev {
+@@ -314,7 +314,7 @@ struct mddev {
sector_t resync_max_sectors; /* may be set by personality */
@@ -49274,7 +48644,7 @@ index ab33957..0d4a801 100644
* parity/replica mismatch found
*/
-@@ -479,7 +479,7 @@ extern void mddev_unlock(struct mddev *mddev);
+@@ -492,7 +492,7 @@ extern void mddev_unlock(struct mddev *mddev);
static inline void md_sync_acct(struct block_device *bdev, unsigned long nr_sectors)
{
@@ -49284,10 +48654,10 @@ index ab33957..0d4a801 100644
struct md_personality
diff --git a/drivers/md/persistent-data/dm-space-map-metadata.c b/drivers/md/persistent-data/dm-space-map-metadata.c
-index 5309129..7fb096e 100644
+index fca6dbc..74ec612 100644
--- a/drivers/md/persistent-data/dm-space-map-metadata.c
+++ b/drivers/md/persistent-data/dm-space-map-metadata.c
-@@ -691,7 +691,7 @@ static int sm_metadata_extend(struct dm_space_map *sm, dm_block_t extra_blocks)
+@@ -703,7 +703,7 @@ static int sm_metadata_extend(struct dm_space_map *sm, dm_block_t extra_blocks)
* Flick into a mode where all blocks get allocated in the new area.
*/
smm->begin = old_len;
@@ -49296,7 +48666,7 @@ index 5309129..7fb096e 100644
/*
* Extend.
-@@ -728,7 +728,7 @@ out:
+@@ -741,7 +741,7 @@ out:
/*
* Switch back to normal behaviour.
*/
@@ -49318,10 +48688,10 @@ index 3e6d115..ffecdeb 100644
/*----------------------------------------------------------------*/
diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
-index d9d031e..11e6fd1 100644
+index c4b9134..6602200 100644
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
-@@ -1061,7 +1061,7 @@ static void make_request(struct mddev *mddev, struct bio * bio)
+@@ -1063,7 +1063,7 @@ static void make_request(struct mddev *mddev, struct bio * bio)
struct blk_plug_cb *cb;
struct raid1_plug_cb *plug = NULL;
int first_clone;
@@ -49330,7 +48700,7 @@ index d9d031e..11e6fd1 100644
int max_sectors;
sector_t start_next_window;
-@@ -1884,7 +1884,7 @@ static int fix_sync_read_error(struct r1bio *r1_bio)
+@@ -1897,7 +1897,7 @@ static int fix_sync_read_error(struct r1bio *r1_bio)
if (r1_sync_page_io(rdev, sect, s,
bio->bi_io_vec[idx].bv_page,
READ) != 0)
@@ -49339,7 +48709,7 @@ index d9d031e..11e6fd1 100644
}
sectors -= s;
sect += s;
-@@ -1975,7 +1975,7 @@ static void process_checks(struct r1bio *r1_bio)
+@@ -1988,7 +1988,7 @@ static void process_checks(struct r1bio *r1_bio)
} else
j = 0;
if (j >= 0)
@@ -49348,7 +48718,7 @@ index d9d031e..11e6fd1 100644
if (j < 0 || (test_bit(MD_RECOVERY_CHECK, &mddev->recovery)
&& !error)) {
/* No need to write to this device. */
-@@ -2116,7 +2116,7 @@ static void fix_read_error(struct r1conf *conf, int read_disk,
+@@ -2129,7 +2129,7 @@ static void fix_read_error(struct r1conf *conf, int read_disk,
!test_bit(Faulty, &rdev->flags)) {
if (r1_sync_page_io(rdev, sect, s,
conf->tmppage, READ)) {
@@ -49358,7 +48728,7 @@ index d9d031e..11e6fd1 100644
"md/raid1:%s: read error corrected "
"(%d sectors at %llu on %s)\n",
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
-index 96f3659..548d342 100644
+index ce959b4..3dff1bc 100644
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@ -1068,7 +1068,7 @@ static void __make_request(struct mddev *mddev, struct bio *bio)
@@ -49370,7 +48740,7 @@ index 96f3659..548d342 100644
int max_sectors;
int sectors;
-@@ -1827,7 +1827,7 @@ static void end_sync_read(struct bio *bio)
+@@ -1829,7 +1829,7 @@ static void end_sync_read(struct bio *bio)
/* The write handler will notice the lack of
* R10BIO_Uptodate and record any errors etc
*/
@@ -49379,7 +48749,7 @@ index 96f3659..548d342 100644
&conf->mirrors[d].rdev->corrected_errors);
/* for reconstruct, we always reschedule after a read.
-@@ -1974,7 +1974,7 @@ static void sync_request_write(struct mddev *mddev, struct r10bio *r10_bio)
+@@ -1978,7 +1978,7 @@ static void sync_request_write(struct mddev *mddev, struct r10bio *r10_bio)
}
if (j == vcnt)
continue;
@@ -49388,7 +48758,7 @@ index 96f3659..548d342 100644
if (test_bit(MD_RECOVERY_CHECK, &mddev->recovery))
/* Don't fix anything. */
continue;
-@@ -2173,7 +2173,7 @@ static void check_decay_read_errors(struct mddev *mddev, struct md_rdev *rdev)
+@@ -2177,7 +2177,7 @@ static void check_decay_read_errors(struct mddev *mddev, struct md_rdev *rdev)
{
struct timespec cur_time_mon;
unsigned long hours_since_last;
@@ -49397,7 +48767,7 @@ index 96f3659..548d342 100644
ktime_get_ts(&cur_time_mon);
-@@ -2195,9 +2195,9 @@ static void check_decay_read_errors(struct mddev *mddev, struct md_rdev *rdev)
+@@ -2199,9 +2199,9 @@ static void check_decay_read_errors(struct mddev *mddev, struct md_rdev *rdev)
* overflowing the shift of read_errors by hours_since_last.
*/
if (hours_since_last >= 8 * sizeof(read_errors))
@@ -49409,7 +48779,7 @@ index 96f3659..548d342 100644
}
static int r10_sync_page_io(struct md_rdev *rdev, sector_t sector,
-@@ -2251,8 +2251,8 @@ static void fix_read_error(struct r10conf *conf, struct mddev *mddev, struct r10
+@@ -2255,8 +2255,8 @@ static void fix_read_error(struct r10conf *conf, struct mddev *mddev, struct r10
return;
check_decay_read_errors(mddev, rdev);
@@ -49420,7 +48790,7 @@ index 96f3659..548d342 100644
char b[BDEVNAME_SIZE];
bdevname(rdev->bdev, b);
-@@ -2260,7 +2260,7 @@ static void fix_read_error(struct r10conf *conf, struct mddev *mddev, struct r10
+@@ -2264,7 +2264,7 @@ static void fix_read_error(struct r10conf *conf, struct mddev *mddev, struct r10
"md/raid10:%s: %s: Raid device exceeded "
"read_error threshold [cur %d:max %d]\n",
mdname(mddev), b,
@@ -49429,7 +48799,7 @@ index 96f3659..548d342 100644
printk(KERN_NOTICE
"md/raid10:%s: %s: Failing raid device\n",
mdname(mddev), b);
-@@ -2413,7 +2413,7 @@ static void fix_read_error(struct r10conf *conf, struct mddev *mddev, struct r10
+@@ -2417,7 +2417,7 @@ static void fix_read_error(struct r10conf *conf, struct mddev *mddev, struct r10
sect +
choose_data_offset(r10_bio, rdev)),
bdevname(rdev->bdev, b));
@@ -49439,10 +48809,10 @@ index 96f3659..548d342 100644
rdev_dec_pending(rdev, mddev);
diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
-index 45933c1..0f1bc4f 100644
+index 704ef7f..8799ca3 100644
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
-@@ -1115,23 +1115,23 @@ async_copy_data(int frombio, struct bio *bio, struct page **page,
+@@ -1121,23 +1121,23 @@ async_copy_data(int frombio, struct bio *bio, struct page **page,
struct bio_vec bvl;
struct bvec_iter iter;
struct page *bio_page;
@@ -49472,7 +48842,7 @@ index 45933c1..0f1bc4f 100644
if (page_offset < 0) {
b_offset = -page_offset;
-@@ -2022,6 +2022,10 @@ static int grow_one_stripe(struct r5conf *conf, gfp_t gfp)
+@@ -2028,6 +2028,10 @@ static int grow_one_stripe(struct r5conf *conf, gfp_t gfp)
return 1;
}
@@ -49483,7 +48853,7 @@ index 45933c1..0f1bc4f 100644
static int grow_stripes(struct r5conf *conf, int num)
{
struct kmem_cache *sc;
-@@ -2032,7 +2036,11 @@ static int grow_stripes(struct r5conf *conf, int num)
+@@ -2038,7 +2042,11 @@ static int grow_stripes(struct r5conf *conf, int num)
"raid%d-%s", conf->level, mdname(conf->mddev));
else
sprintf(conf->cache_name[0],
@@ -49495,7 +48865,7 @@ index 45933c1..0f1bc4f 100644
sprintf(conf->cache_name[1], "%s-alt", conf->cache_name[0]);
conf->active_name = 0;
-@@ -2323,21 +2331,21 @@ static void raid5_end_read_request(struct bio * bi)
+@@ -2329,21 +2337,21 @@ static void raid5_end_read_request(struct bio * bi)
mdname(conf->mddev), STRIPE_SECTORS,
(unsigned long long)s,
bdevname(rdev->bdev, b));
@@ -49521,7 +48891,7 @@ index 45933c1..0f1bc4f 100644
if (test_bit(R5_ReadRepl, &sh->dev[i].flags))
printk_ratelimited(
KERN_WARNING
-@@ -2365,7 +2373,7 @@ static void raid5_end_read_request(struct bio * bi)
+@@ -2371,7 +2379,7 @@ static void raid5_end_read_request(struct bio * bi)
mdname(conf->mddev),
(unsigned long long)s,
bdn);
@@ -49530,7 +48900,7 @@ index 45933c1..0f1bc4f 100644
> conf->max_nr_stripes)
printk(KERN_WARNING
"md/raid:%s: Too many read errors, failing device %s.\n",
-@@ -3733,7 +3741,7 @@ static void handle_parity_checks5(struct r5conf *conf, struct stripe_head *sh,
+@@ -3743,7 +3751,7 @@ static void handle_parity_checks5(struct r5conf *conf, struct stripe_head *sh,
*/
set_bit(STRIPE_INSYNC, &sh->state);
else {
@@ -49539,7 +48909,7 @@ index 45933c1..0f1bc4f 100644
if (test_bit(MD_RECOVERY_CHECK, &conf->mddev->recovery))
/* don't try to repair!! */
set_bit(STRIPE_INSYNC, &sh->state);
-@@ -3885,7 +3893,7 @@ static void handle_parity_checks6(struct r5conf *conf, struct stripe_head *sh,
+@@ -3895,7 +3903,7 @@ static void handle_parity_checks6(struct r5conf *conf, struct stripe_head *sh,
*/
}
} else {
@@ -49613,7 +48983,7 @@ index 2b8b4b1..8cef451 100644
#if IS_REACHABLE(CONFIG_DVB_DIB8000)
void *dib8000_attach(struct dib8000_ops *ops);
diff --git a/drivers/media/pci/cx88/cx88-video.c b/drivers/media/pci/cx88/cx88-video.c
-index 400e5ca..f69f748 100644
+index aef9acf..722ff02 100644
--- a/drivers/media/pci/cx88/cx88-video.c
+++ b/drivers/media/pci/cx88/cx88-video.c
@@ -50,9 +50,9 @@ MODULE_VERSION(CX88_VERSION);
@@ -49630,7 +49000,7 @@ index 400e5ca..f69f748 100644
module_param_array(video_nr, int, NULL, 0444);
module_param_array(vbi_nr, int, NULL, 0444);
diff --git a/drivers/media/pci/ivtv/ivtv-driver.c b/drivers/media/pci/ivtv/ivtv-driver.c
-index 8616fa8..e16eeaf 100644
+index c2e60b4..5eeccc0 100644
--- a/drivers/media/pci/ivtv/ivtv-driver.c
+++ b/drivers/media/pci/ivtv/ivtv-driver.c
@@ -83,7 +83,7 @@ static struct pci_device_id ivtv_pci_tbl[] = {
@@ -49682,7 +49052,7 @@ index 8c84846..27b4f83 100644
p2m_id = -p2m_id;
}
diff --git a/drivers/media/pci/solo6x10/solo6x10.h b/drivers/media/pci/solo6x10/solo6x10.h
-index 27423d7..c3332fd 100644
+index 4ab6586..e1c352e 100644
--- a/drivers/media/pci/solo6x10/solo6x10.h
+++ b/drivers/media/pci/solo6x10/solo6x10.h
@@ -217,7 +217,7 @@ struct solo_dev {
@@ -49695,7 +49065,7 @@ index 27423d7..c3332fd 100644
unsigned int p2m_timeouts;
diff --git a/drivers/media/pci/tw68/tw68-core.c b/drivers/media/pci/tw68/tw68-core.c
-index 04706cc..23ae0ae 100644
+index 4e77618..e6f33c8 100644
--- a/drivers/media/pci/tw68/tw68-core.c
+++ b/drivers/media/pci/tw68/tw68-core.c
@@ -61,7 +61,7 @@ static unsigned int card[] = {[0 ... (TW68_MAXBOARDS - 1)] = UNSET };
@@ -49777,7 +49147,7 @@ index 70c28d1..ff21b13 100644
videobuf_queue_dma_contig_init(q, &video_vbq_ops, q->dev,
diff --git a/drivers/media/platform/s5p-tv/mixer.h b/drivers/media/platform/s5p-tv/mixer.h
-index fb2acc5..a2fcbdc4 100644
+index 42cd270..b8ebb97 100644
--- a/drivers/media/platform/s5p-tv/mixer.h
+++ b/drivers/media/platform/s5p-tv/mixer.h
@@ -156,7 +156,7 @@ struct mxr_layer {
@@ -49790,7 +49160,7 @@ index fb2acc5..a2fcbdc4 100644
const struct mxr_format **fmt_array;
/** size of format array */
diff --git a/drivers/media/platform/s5p-tv/mixer_grp_layer.c b/drivers/media/platform/s5p-tv/mixer_grp_layer.c
-index 74344c7..a39e70e 100644
+index db3163b..d7a6b4d 100644
--- a/drivers/media/platform/s5p-tv/mixer_grp_layer.c
+++ b/drivers/media/platform/s5p-tv/mixer_grp_layer.c
@@ -235,7 +235,7 @@ struct mxr_layer *mxr_graph_layer_create(struct mxr_device *mdev, int idx)
@@ -49803,7 +49173,7 @@ index 74344c7..a39e70e 100644
.buffer_set = mxr_graph_buffer_set,
.stream_set = mxr_graph_stream_set,
diff --git a/drivers/media/platform/s5p-tv/mixer_reg.c b/drivers/media/platform/s5p-tv/mixer_reg.c
-index 5127acb..a188d0a 100644
+index a0ec14a..225f4ac 100644
--- a/drivers/media/platform/s5p-tv/mixer_reg.c
+++ b/drivers/media/platform/s5p-tv/mixer_reg.c
@@ -276,7 +276,7 @@ static void mxr_irq_layer_handle(struct mxr_layer *layer)
@@ -49814,9 +49184,9 @@ index 5127acb..a188d0a 100644
+ layer->ops->buffer_set(layer, layer->update_buf);
if (done && done != layer->shadow_buf)
- vb2_buffer_done(&done->vb, VB2_BUF_STATE_DONE);
+ vb2_buffer_done(&done->vb.vb2_buf, VB2_BUF_STATE_DONE);
diff --git a/drivers/media/platform/s5p-tv/mixer_video.c b/drivers/media/platform/s5p-tv/mixer_video.c
-index 751f3b6..d829203 100644
+index dc1c679..30aae739b 100644
--- a/drivers/media/platform/s5p-tv/mixer_video.c
+++ b/drivers/media/platform/s5p-tv/mixer_video.c
@@ -210,7 +210,7 @@ static void mxr_layer_default_geo(struct mxr_layer *layer)
@@ -49870,7 +49240,7 @@ index 751f3b6..d829203 100644
/* retrieve update selection rectangle */
res.left = target->x_offset;
-@@ -938,13 +938,13 @@ static int start_streaming(struct vb2_queue *vq, unsigned int count)
+@@ -939,13 +939,13 @@ static int start_streaming(struct vb2_queue *vq, unsigned int count)
mxr_output_get(mdev);
mxr_layer_update_output(layer);
@@ -49886,7 +49256,7 @@ index 751f3b6..d829203 100644
mxr_streamer_get(mdev);
return 0;
-@@ -1014,7 +1014,7 @@ static void stop_streaming(struct vb2_queue *vq)
+@@ -1017,7 +1017,7 @@ static void stop_streaming(struct vb2_queue *vq)
spin_unlock_irqrestore(&layer->enq_slock, flags);
/* disabling layer in hardware */
@@ -49895,7 +49265,7 @@ index 751f3b6..d829203 100644
/* remove one streamer */
mxr_streamer_put(mdev);
/* allow changes in output configuration */
-@@ -1052,8 +1052,8 @@ void mxr_base_layer_unregister(struct mxr_layer *layer)
+@@ -1055,8 +1055,8 @@ void mxr_base_layer_unregister(struct mxr_layer *layer)
void mxr_layer_release(struct mxr_layer *layer)
{
@@ -49906,7 +49276,7 @@ index 751f3b6..d829203 100644
}
void mxr_base_layer_release(struct mxr_layer *layer)
-@@ -1079,7 +1079,7 @@ struct mxr_layer *mxr_base_layer_create(struct mxr_device *mdev,
+@@ -1082,7 +1082,7 @@ struct mxr_layer *mxr_base_layer_create(struct mxr_device *mdev,
layer->mdev = mdev;
layer->idx = idx;
@@ -49916,10 +49286,10 @@ index 751f3b6..d829203 100644
spin_lock_init(&layer->enq_slock);
INIT_LIST_HEAD(&layer->enq_list);
diff --git a/drivers/media/platform/s5p-tv/mixer_vp_layer.c b/drivers/media/platform/s5p-tv/mixer_vp_layer.c
-index c9388c4..ce71ece 100644
+index dd002a4..7fafd8a 100644
--- a/drivers/media/platform/s5p-tv/mixer_vp_layer.c
+++ b/drivers/media/platform/s5p-tv/mixer_vp_layer.c
-@@ -206,7 +206,7 @@ struct mxr_layer *mxr_vp_layer_create(struct mxr_device *mdev, int idx)
+@@ -207,7 +207,7 @@ struct mxr_layer *mxr_vp_layer_create(struct mxr_device *mdev, int idx)
{
struct mxr_layer *layer;
int ret;
@@ -49929,12 +49299,12 @@ index c9388c4..ce71ece 100644
.buffer_set = mxr_vp_buffer_set,
.stream_set = mxr_vp_stream_set,
diff --git a/drivers/media/platform/sti/c8sectpfe/Kconfig b/drivers/media/platform/sti/c8sectpfe/Kconfig
-index 641ad8f..02eacb9 100644
+index 7420a50..e6f31a0 100644
--- a/drivers/media/platform/sti/c8sectpfe/Kconfig
+++ b/drivers/media/platform/sti/c8sectpfe/Kconfig
-@@ -5,6 +5,7 @@ config DVB_C8SECTPFE
+@@ -4,6 +4,7 @@ config DVB_C8SECTPFE
+ depends on ARCH_STI || ARCH_MULTIPLATFORM || COMPILE_TEST
select FW_LOADER
- select FW_LOADER_USER_HELPER_FALLBACK
select DEBUG_FS
+ depends on !GRKERNSEC_KMEM
select DVB_LNBP21 if MEDIA_SUBDRV_AUTOSELECT
@@ -50737,10 +50107,10 @@ index 6c3c477..6c435a4 100644
}
diff --git a/drivers/media/v4l2-core/v4l2-compat-ioctl32.c b/drivers/media/v4l2-core/v4l2-compat-ioctl32.c
-index af63543..0436f20 100644
+index 327e83a..b0963b7 100644
--- a/drivers/media/v4l2-core/v4l2-compat-ioctl32.c
+++ b/drivers/media/v4l2-core/v4l2-compat-ioctl32.c
-@@ -429,7 +429,7 @@ static int get_v4l2_buffer32(struct v4l2_buffer *kp, struct v4l2_buffer32 __user
+@@ -450,7 +450,7 @@ static int get_v4l2_buffer32(struct v4l2_buffer *kp, struct v4l2_buffer32 __user
* by passing a very big num_planes value */
uplane = compat_alloc_user_space(num_planes *
sizeof(struct v4l2_plane));
@@ -50749,7 +50119,7 @@ index af63543..0436f20 100644
while (--num_planes >= 0) {
ret = get_v4l2_plane32(uplane, uplane32, kp->memory);
-@@ -500,7 +500,7 @@ static int put_v4l2_buffer32(struct v4l2_buffer *kp, struct v4l2_buffer32 __user
+@@ -521,7 +521,7 @@ static int put_v4l2_buffer32(struct v4l2_buffer *kp, struct v4l2_buffer32 __user
if (num_planes == 0)
return 0;
@@ -50758,7 +50128,7 @@ index af63543..0436f20 100644
if (get_user(p, &up->m.planes))
return -EFAULT;
uplane32 = compat_ptr(p);
-@@ -564,7 +564,7 @@ static int get_v4l2_framebuffer32(struct v4l2_framebuffer *kp, struct v4l2_frame
+@@ -585,7 +585,7 @@ static int get_v4l2_framebuffer32(struct v4l2_framebuffer *kp, struct v4l2_frame
get_user(kp->flags, &up->flags) ||
copy_from_user(&kp->fmt, &up->fmt, sizeof(up->fmt)))
return -EFAULT;
@@ -50767,7 +50137,7 @@ index af63543..0436f20 100644
return 0;
}
-@@ -669,7 +669,7 @@ static int get_v4l2_ext_controls32(struct v4l2_ext_controls *kp, struct v4l2_ext
+@@ -691,7 +691,7 @@ static int get_v4l2_ext_controls32(struct v4l2_ext_controls *kp, struct v4l2_ext
n * sizeof(struct v4l2_ext_control32)))
return -EFAULT;
kcontrols = compat_alloc_user_space(n * sizeof(struct v4l2_ext_control));
@@ -50776,7 +50146,7 @@ index af63543..0436f20 100644
while (--n >= 0) {
u32 id;
-@@ -696,7 +696,7 @@ static int put_v4l2_ext_controls32(struct v4l2_ext_controls *kp, struct v4l2_ext
+@@ -718,7 +718,7 @@ static int put_v4l2_ext_controls32(struct v4l2_ext_controls *kp, struct v4l2_ext
{
struct v4l2_ext_control32 __user *ucontrols;
struct v4l2_ext_control __user *kcontrols =
@@ -50785,7 +50155,7 @@ index af63543..0436f20 100644
int n = kp->count;
compat_caddr_t p;
-@@ -780,7 +780,7 @@ static int get_v4l2_edid32(struct v4l2_edid *kp, struct v4l2_edid32 __user *up)
+@@ -803,7 +803,7 @@ static int get_v4l2_edid32(struct v4l2_edid *kp, struct v4l2_edid32 __user *up)
get_user(tmp, &up->edid) ||
copy_from_user(kp->reserved, up->reserved, sizeof(kp->reserved)))
return -EFAULT;
@@ -50811,10 +50181,10 @@ index 5b0a30b..1974b38 100644
if (basename[len - 1] >= '0' && basename[len - 1] <= '9')
diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
-index 4a384fc..4b562e4 100644
+index 7486af2..a1f2e87 100644
--- a/drivers/media/v4l2-core/v4l2-ioctl.c
+++ b/drivers/media/v4l2-core/v4l2-ioctl.c
-@@ -2341,7 +2341,8 @@ struct v4l2_ioctl_info {
+@@ -2382,7 +2382,8 @@ struct v4l2_ioctl_info {
struct file *file, void *fh, void *p);
} u;
void (*debug)(const void *arg, bool write_only);
@@ -50824,7 +50194,7 @@ index 4a384fc..4b562e4 100644
/* This control needs a priority check */
#define INFO_FL_PRIO (1 << 0)
-@@ -2525,7 +2526,7 @@ static long __video_do_ioctl(struct file *file,
+@@ -2566,7 +2567,7 @@ static long __video_do_ioctl(struct file *file,
struct video_device *vfd = video_devdata(file);
const struct v4l2_ioctl_ops *ops = vfd->ioctl_ops;
bool write_only = false;
@@ -50833,7 +50203,7 @@ index 4a384fc..4b562e4 100644
const struct v4l2_ioctl_info *info;
void *fh = file->private_data;
struct v4l2_fh *vfh = NULL;
-@@ -2616,7 +2617,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
+@@ -2657,7 +2658,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
ret = -EINVAL;
break;
}
@@ -50842,7 +50212,7 @@ index 4a384fc..4b562e4 100644
*kernel_ptr = (void **)&buf->m.planes;
*array_size = sizeof(struct v4l2_plane) * buf->length;
ret = 1;
-@@ -2633,7 +2634,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
+@@ -2674,7 +2675,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
ret = -EINVAL;
break;
}
@@ -50851,7 +50221,7 @@ index 4a384fc..4b562e4 100644
*kernel_ptr = (void **)&edid->edid;
*array_size = edid->blocks * 128;
ret = 1;
-@@ -2651,7 +2652,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
+@@ -2692,7 +2693,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
ret = -EINVAL;
break;
}
@@ -50860,7 +50230,7 @@ index 4a384fc..4b562e4 100644
*kernel_ptr = (void **)&ctrls->controls;
*array_size = sizeof(struct v4l2_ext_control)
* ctrls->count;
-@@ -2752,7 +2753,7 @@ video_usercopy(struct file *file, unsigned int cmd, unsigned long arg,
+@@ -2793,7 +2794,7 @@ video_usercopy(struct file *file, unsigned int cmd, unsigned long arg,
}
if (has_array_args) {
@@ -50946,7 +50316,7 @@ index 5dcc031..e08ecd2 100644
seq_printf(m, " {CurRepSz=%d} x {CurRepDepth=%d} = %d bytes ^= 0x%x\n",
ioc->reply_sz, ioc->reply_depth, ioc->reply_sz*ioc->reply_depth, sz);
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c
-index 005a88b..5a90fbb 100644
+index 7ebccfa..a0cd0e6 100644
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@ -446,6 +446,23 @@ mptsas_is_end_device(struct mptsas_devinfo * attached)
@@ -51011,10 +50381,10 @@ index 0236cd7..53b10d7 100644
static u8 avg_sample = SAMPLE_16;
diff --git a/drivers/mfd/kempld-core.c b/drivers/mfd/kempld-core.c
-index 463f4ea..1624d49 100644
+index 05b9245..9f05055 100644
--- a/drivers/mfd/kempld-core.c
+++ b/drivers/mfd/kempld-core.c
-@@ -499,7 +499,7 @@ static struct platform_driver kempld_driver = {
+@@ -494,7 +494,7 @@ static struct platform_driver kempld_driver = {
.remove = kempld_remove,
};
@@ -51077,34 +50447,8 @@ index 40e51b0..b986312 100644
for (i = irq_base; i < irq_end; i++) {
irq_set_chip_and_handler(i, &twl4030_irq_chip,
-diff --git a/drivers/mfd/wm5110-tables.c b/drivers/mfd/wm5110-tables.c
-index c4b9374..9afdda4 100644
---- a/drivers/mfd/wm5110-tables.c
-+++ b/drivers/mfd/wm5110-tables.c
-@@ -250,7 +250,7 @@ static const struct reg_sequence wm5110_revd_patch[] = {
- };
-
- /* Add extra headphone write sequence locations */
--static const struct reg_default wm5110_reve_patch[] = {
-+static const struct reg_sequence wm5110_reve_patch[] = {
- { 0x80, 0x3 },
- { 0x80, 0x3 },
- { 0x4b, 0x138 },
-diff --git a/drivers/mfd/wm8998-tables.c b/drivers/mfd/wm8998-tables.c
-index e6de3cd..607640c 100644
---- a/drivers/mfd/wm8998-tables.c
-+++ b/drivers/mfd/wm8998-tables.c
-@@ -21,7 +21,7 @@
- #define WM8998_NUM_AOD_ISR 2
- #define WM8998_NUM_ISR 5
-
--static const struct reg_default wm8998_rev_a_patch[] = {
-+static const struct reg_sequence wm8998_rev_a_patch[] = {
- { 0x0212, 0x0000 },
- { 0x0211, 0x0014 },
- { 0x04E4, 0x0E0D },
diff --git a/drivers/misc/c2port/core.c b/drivers/misc/c2port/core.c
-index 464419b..64bae8d 100644
+index cc8645b..7cc15e4 100644
--- a/drivers/misc/c2port/core.c
+++ b/drivers/misc/c2port/core.c
@@ -922,7 +922,9 @@ struct c2port_device *c2port_device_register(char *name,
@@ -51119,7 +50463,7 @@ index 464419b..64bae8d 100644
c2dev->dev = device_create(c2port_class, NULL, 0, c2dev,
"c2port%d", c2dev->id);
diff --git a/drivers/misc/kgdbts.c b/drivers/misc/kgdbts.c
-index 9a60bd4..cee2069 100644
+index 99635dd..5098638 100644
--- a/drivers/misc/kgdbts.c
+++ b/drivers/misc/kgdbts.c
@@ -834,7 +834,7 @@ static void run_plant_and_detach_test(int is_early)
@@ -51193,6 +50537,27 @@ index c439c82..1f20f57 100644
union axis_conversion ac; /* hw -> logical axis */
int mapped_btns[3];
+diff --git a/drivers/misc/mic/scif/scif_api.c b/drivers/misc/mic/scif/scif_api.c
+index ddc9e4b..7b9c669 100644
+--- a/drivers/misc/mic/scif/scif_api.c
++++ b/drivers/misc/mic/scif/scif_api.c
+@@ -1486,10 +1486,12 @@ int scif_client_register(struct scif_client *client)
+ {
+ struct subsys_interface *si = &client->si;
+
+- si->name = client->name;
+- si->subsys = &scif_peer_bus;
+- si->add_dev = scif_add_client_dev;
+- si->remove_dev = scif_remove_client_dev;
++ pax_open_kernel();
++ *(const char **)&si->name = client->name;
++ *(struct bus_type **)&si->subsys = &scif_peer_bus;
++ *(void **)&si->add_dev = scif_add_client_dev;
++ *(void **)&si->remove_dev = scif_remove_client_dev;
++ pax_close_kernel();
+
+ return subsys_interface_register(&client->si);
+ }
diff --git a/drivers/misc/mic/scif/scif_rb.c b/drivers/misc/mic/scif/scif_rb.c
index 637cc46..4fb1267 100644
--- a/drivers/misc/mic/scif/scif_rb.c
@@ -51234,7 +50599,7 @@ index 637cc46..4fb1267 100644
}
diff --git a/drivers/misc/sgi-gru/gruhandles.c b/drivers/misc/sgi-gru/gruhandles.c
-index 2f30bad..c4c13d0 100644
+index 1ee8e82..785f528 100644
--- a/drivers/misc/sgi-gru/gruhandles.c
+++ b/drivers/misc/sgi-gru/gruhandles.c
@@ -44,8 +44,8 @@ static void update_mcs_stats(enum mcs_op op, unsigned long clks)
@@ -51527,24 +50892,11 @@ index 7f32712..8539ab2 100644
/*
* Timer function to enforce the timelimit on the partition disengage.
-diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c
-index c742cfd..805f5e1 100644
---- a/drivers/mmc/card/block.c
-+++ b/drivers/mmc/card/block.c
-@@ -582,7 +582,7 @@ static int mmc_blk_ioctl_cmd(struct block_device *bdev,
- if (idata->ic.postsleep_min_us)
- usleep_range(idata->ic.postsleep_min_us, idata->ic.postsleep_max_us);
-
-- if (copy_to_user(&(ic_ptr->response), cmd.resp, sizeof(cmd.resp))) {
-+ if (copy_to_user(ic_ptr->response, cmd.resp, sizeof(cmd.resp))) {
- err = -EFAULT;
- goto cmd_rel_host;
- }
diff --git a/drivers/mmc/host/dw_mmc.h b/drivers/mmc/host/dw_mmc.h
-index 8ce4674..a23c858 100644
+index f695b58..7b7d017 100644
--- a/drivers/mmc/host/dw_mmc.h
+++ b/drivers/mmc/host/dw_mmc.h
-@@ -286,5 +286,5 @@ struct dw_mci_drv_data {
+@@ -295,5 +295,5 @@ struct dw_mci_drv_data {
struct mmc_ios *ios);
int (*switch_voltage)(struct mmc_host *mmc,
struct mmc_ios *ios);
@@ -51582,7 +50934,7 @@ index 7fb0753..ad156f0 100644
device_init_wakeup(&pdev->dev, true);
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c
-index 886d230..289d769 100644
+index 1f1582f..b396c3a 100644
--- a/drivers/mmc/host/sdhci-esdhc-imx.c
+++ b/drivers/mmc/host/sdhci-esdhc-imx.c
@@ -1191,9 +1191,12 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev)
@@ -51633,7 +50985,7 @@ index 9a1a6ff..b8f1a57 100644
if (!ECCBUF_SIZE) {
/* We should fall back to a general writev implementation.
diff --git a/drivers/mtd/nand/denali.c b/drivers/mtd/nand/denali.c
-index 870c7fc..c7d6440 100644
+index 67eb2be..d1e2bf5 100644
--- a/drivers/mtd/nand/denali.c
+++ b/drivers/mtd/nand/denali.c
@@ -24,6 +24,7 @@
@@ -51645,7 +50997,7 @@ index 870c7fc..c7d6440 100644
#include "denali.h"
diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
-index 1b8f350..990f2e9 100644
+index 2064ada..7c62920 100644
--- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
+++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
@@ -386,7 +386,7 @@ void prepare_data_dma(struct gpmi_nand_data *this, enum dma_data_direction dr)
@@ -51709,7 +51061,7 @@ index 615c65d..c6c0439 100644
.priv_size = sizeof(struct cfhsi),
.setup = cfhsi_setup,
diff --git a/drivers/net/can/Kconfig b/drivers/net/can/Kconfig
-index e8c96b8..516a96c 100644
+index 6d04183..d69aee9 100644
--- a/drivers/net/can/Kconfig
+++ b/drivers/net/can/Kconfig
@@ -98,7 +98,7 @@ config CAN_JANZ_ICAN3
@@ -51748,10 +51100,10 @@ index 674f367..ec3a31f 100644
.setup = vcan_setup,
};
diff --git a/drivers/net/dummy.c b/drivers/net/dummy.c
-index 815eb94..38ef9b7 100644
+index 69fc840..77a32fc 100644
--- a/drivers/net/dummy.c
+++ b/drivers/net/dummy.c
-@@ -163,7 +163,7 @@ static int dummy_validate(struct nlattr *tb[], struct nlattr *data[])
+@@ -167,7 +167,7 @@ static int dummy_validate(struct nlattr *tb[], struct nlattr *data[])
return 0;
}
@@ -51897,10 +51249,10 @@ index b3bc87f..5bdfdd3 100644
+ .wrapper_rx_desc_init = xgbe_wrapper_rx_descriptor_init,
+};
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-dev.c b/drivers/net/ethernet/amd/xgbe/xgbe-dev.c
-index f672dba3..d71818d 100644
+index f6a7161..aa98a8b 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-dev.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-dev.c
-@@ -2776,7 +2776,7 @@ static void xgbe_powerdown_rx(struct xgbe_prv_data *pdata)
+@@ -2723,7 +2723,7 @@ static void xgbe_powerdown_rx(struct xgbe_prv_data *pdata)
static int xgbe_init(struct xgbe_prv_data *pdata)
{
@@ -51909,7 +51261,7 @@ index f672dba3..d71818d 100644
int ret;
DBGPR("-->xgbe_init\n");
-@@ -2842,106 +2842,101 @@ static int xgbe_init(struct xgbe_prv_data *pdata)
+@@ -2789,106 +2789,101 @@ static int xgbe_init(struct xgbe_prv_data *pdata)
return 0;
}
@@ -52093,7 +51445,7 @@ index f672dba3..d71818d 100644
+ .set_rss_lookup_table = xgbe_set_rss_lookup_table,
+};
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
-index dde0486..831e127 100644
+index 53ce122..de7d19d 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
@@ -245,7 +245,7 @@ static int xgbe_maybe_stop_tx_queue(struct xgbe_channel *channel,
@@ -52132,7 +51484,7 @@ index dde0486..831e127 100644
struct xgbe_channel *channel;
unsigned int dma_isr, dma_ch_isr;
unsigned int mac_isr, mac_tssr;
-@@ -443,7 +443,7 @@ static void xgbe_service(struct work_struct *work)
+@@ -447,7 +447,7 @@ static void xgbe_service(struct work_struct *work)
struct xgbe_prv_data,
service_work);
@@ -52141,7 +51493,7 @@ index dde0486..831e127 100644
}
static void xgbe_service_timer(unsigned long data)
-@@ -702,7 +702,7 @@ static void xgbe_free_irqs(struct xgbe_prv_data *pdata)
+@@ -706,7 +706,7 @@ static void xgbe_free_irqs(struct xgbe_prv_data *pdata)
void xgbe_init_tx_coalesce(struct xgbe_prv_data *pdata)
{
@@ -52150,7 +51502,7 @@ index dde0486..831e127 100644
DBGPR("-->xgbe_init_tx_coalesce\n");
-@@ -716,7 +716,7 @@ void xgbe_init_tx_coalesce(struct xgbe_prv_data *pdata)
+@@ -720,7 +720,7 @@ void xgbe_init_tx_coalesce(struct xgbe_prv_data *pdata)
void xgbe_init_rx_coalesce(struct xgbe_prv_data *pdata)
{
@@ -52159,7 +51511,7 @@ index dde0486..831e127 100644
DBGPR("-->xgbe_init_rx_coalesce\n");
-@@ -731,7 +731,7 @@ void xgbe_init_rx_coalesce(struct xgbe_prv_data *pdata)
+@@ -735,7 +735,7 @@ void xgbe_init_rx_coalesce(struct xgbe_prv_data *pdata)
static void xgbe_free_tx_data(struct xgbe_prv_data *pdata)
{
@@ -52168,7 +51520,7 @@ index dde0486..831e127 100644
struct xgbe_channel *channel;
struct xgbe_ring *ring;
struct xgbe_ring_data *rdata;
-@@ -756,7 +756,7 @@ static void xgbe_free_tx_data(struct xgbe_prv_data *pdata)
+@@ -760,7 +760,7 @@ static void xgbe_free_tx_data(struct xgbe_prv_data *pdata)
static void xgbe_free_rx_data(struct xgbe_prv_data *pdata)
{
@@ -52177,7 +51529,7 @@ index dde0486..831e127 100644
struct xgbe_channel *channel;
struct xgbe_ring *ring;
struct xgbe_ring_data *rdata;
-@@ -784,13 +784,13 @@ static int xgbe_phy_init(struct xgbe_prv_data *pdata)
+@@ -788,13 +788,13 @@ static int xgbe_phy_init(struct xgbe_prv_data *pdata)
pdata->phy_link = -1;
pdata->phy_speed = SPEED_UNKNOWN;
@@ -52193,7 +51545,7 @@ index dde0486..831e127 100644
unsigned long flags;
DBGPR("-->xgbe_powerdown\n");
-@@ -829,7 +829,7 @@ int xgbe_powerdown(struct net_device *netdev, unsigned int caller)
+@@ -833,7 +833,7 @@ int xgbe_powerdown(struct net_device *netdev, unsigned int caller)
int xgbe_powerup(struct net_device *netdev, unsigned int caller)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52202,7 +51554,7 @@ index dde0486..831e127 100644
unsigned long flags;
DBGPR("-->xgbe_powerup\n");
-@@ -866,8 +866,8 @@ int xgbe_powerup(struct net_device *netdev, unsigned int caller)
+@@ -870,8 +870,8 @@ int xgbe_powerup(struct net_device *netdev, unsigned int caller)
static int xgbe_start(struct xgbe_prv_data *pdata)
{
@@ -52213,7 +51565,7 @@ index dde0486..831e127 100644
struct net_device *netdev = pdata->netdev;
int ret;
-@@ -910,8 +910,8 @@ err_phy:
+@@ -914,8 +914,8 @@ err_phy:
static void xgbe_stop(struct xgbe_prv_data *pdata)
{
@@ -52224,7 +51576,7 @@ index dde0486..831e127 100644
struct xgbe_channel *channel;
struct net_device *netdev = pdata->netdev;
struct netdev_queue *txq;
-@@ -1139,7 +1139,7 @@ static int xgbe_set_hwtstamp_settings(struct xgbe_prv_data *pdata,
+@@ -1143,7 +1143,7 @@ static int xgbe_set_hwtstamp_settings(struct xgbe_prv_data *pdata,
return -ERANGE;
}
@@ -52233,7 +51585,7 @@ index dde0486..831e127 100644
memcpy(&pdata->tstamp_config, &config, sizeof(config));
-@@ -1288,7 +1288,7 @@ static void xgbe_packet_info(struct xgbe_prv_data *pdata,
+@@ -1292,7 +1292,7 @@ static void xgbe_packet_info(struct xgbe_prv_data *pdata,
static int xgbe_open(struct net_device *netdev)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52242,7 +51594,7 @@ index dde0486..831e127 100644
int ret;
DBGPR("-->xgbe_open\n");
-@@ -1360,7 +1360,7 @@ err_sysclk:
+@@ -1364,7 +1364,7 @@ err_sysclk:
static int xgbe_close(struct net_device *netdev)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52251,7 +51603,7 @@ index dde0486..831e127 100644
DBGPR("-->xgbe_close\n");
-@@ -1387,8 +1387,8 @@ static int xgbe_close(struct net_device *netdev)
+@@ -1391,8 +1391,8 @@ static int xgbe_close(struct net_device *netdev)
static int xgbe_xmit(struct sk_buff *skb, struct net_device *netdev)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52262,7 +51614,7 @@ index dde0486..831e127 100644
struct xgbe_channel *channel;
struct xgbe_ring *ring;
struct xgbe_packet_data *packet;
-@@ -1457,7 +1457,7 @@ tx_netdev_return:
+@@ -1461,7 +1461,7 @@ tx_netdev_return:
static void xgbe_set_rx_mode(struct net_device *netdev)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52271,7 +51623,7 @@ index dde0486..831e127 100644
DBGPR("-->xgbe_set_rx_mode\n");
-@@ -1469,7 +1469,7 @@ static void xgbe_set_rx_mode(struct net_device *netdev)
+@@ -1473,7 +1473,7 @@ static void xgbe_set_rx_mode(struct net_device *netdev)
static int xgbe_set_mac_address(struct net_device *netdev, void *addr)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52280,7 +51632,7 @@ index dde0486..831e127 100644
struct sockaddr *saddr = addr;
DBGPR("-->xgbe_set_mac_address\n");
-@@ -1544,7 +1544,7 @@ static struct rtnl_link_stats64 *xgbe_get_stats64(struct net_device *netdev,
+@@ -1548,7 +1548,7 @@ static struct rtnl_link_stats64 *xgbe_get_stats64(struct net_device *netdev,
DBGPR("-->%s\n", __func__);
@@ -52289,7 +51641,7 @@ index dde0486..831e127 100644
s->rx_packets = pstats->rxframecount_gb;
s->rx_bytes = pstats->rxoctetcount_gb;
-@@ -1571,7 +1571,7 @@ static int xgbe_vlan_rx_add_vid(struct net_device *netdev, __be16 proto,
+@@ -1575,7 +1575,7 @@ static int xgbe_vlan_rx_add_vid(struct net_device *netdev, __be16 proto,
u16 vid)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52298,7 +51650,7 @@ index dde0486..831e127 100644
DBGPR("-->%s\n", __func__);
-@@ -1587,7 +1587,7 @@ static int xgbe_vlan_rx_kill_vid(struct net_device *netdev, __be16 proto,
+@@ -1591,7 +1591,7 @@ static int xgbe_vlan_rx_kill_vid(struct net_device *netdev, __be16 proto,
u16 vid)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52307,7 +51659,7 @@ index dde0486..831e127 100644
DBGPR("-->%s\n", __func__);
-@@ -1654,7 +1654,7 @@ static int xgbe_set_features(struct net_device *netdev,
+@@ -1658,7 +1658,7 @@ static int xgbe_set_features(struct net_device *netdev,
netdev_features_t features)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52316,7 +51668,7 @@ index dde0486..831e127 100644
netdev_features_t rxhash, rxcsum, rxvlan, rxvlan_filter;
int ret = 0;
-@@ -1720,8 +1720,8 @@ struct net_device_ops *xgbe_get_netdev_ops(void)
+@@ -1724,8 +1724,8 @@ struct net_device_ops *xgbe_get_netdev_ops(void)
static void xgbe_rx_refresh(struct xgbe_channel *channel)
{
struct xgbe_prv_data *pdata = channel->pdata;
@@ -52327,7 +51679,7 @@ index dde0486..831e127 100644
struct xgbe_ring *ring = channel->rx_ring;
struct xgbe_ring_data *rdata;
-@@ -1798,8 +1798,8 @@ static struct sk_buff *xgbe_create_skb(struct xgbe_prv_data *pdata,
+@@ -1802,8 +1802,8 @@ static struct sk_buff *xgbe_create_skb(struct xgbe_prv_data *pdata,
static int xgbe_tx_poll(struct xgbe_channel *channel)
{
struct xgbe_prv_data *pdata = channel->pdata;
@@ -52338,7 +51690,7 @@ index dde0486..831e127 100644
struct xgbe_ring *ring = channel->tx_ring;
struct xgbe_ring_data *rdata;
struct xgbe_ring_desc *rdesc;
-@@ -1869,7 +1869,7 @@ static int xgbe_tx_poll(struct xgbe_channel *channel)
+@@ -1873,7 +1873,7 @@ static int xgbe_tx_poll(struct xgbe_channel *channel)
static int xgbe_rx_poll(struct xgbe_channel *channel, int budget)
{
struct xgbe_prv_data *pdata = channel->pdata;
@@ -52348,37 +51700,37 @@ index dde0486..831e127 100644
struct xgbe_ring_data *rdata;
struct xgbe_packet_data *packet;
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c b/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c
-index 59e090e..90bc0b4 100644
+index 6040293..66ba674 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c
-@@ -211,7 +211,7 @@ static void xgbe_get_ethtool_stats(struct net_device *netdev,
-
- DBGPR("-->%s\n", __func__);
+@@ -206,7 +206,7 @@ static void xgbe_get_ethtool_stats(struct net_device *netdev,
+ u8 *stat;
+ int i;
- pdata->hw_if.read_mmc_stats(pdata);
+ pdata->hw_if->read_mmc_stats(pdata);
for (i = 0; i < XGBE_STATS_COUNT; i++) {
stat = (u8 *)pdata + xgbe_gstring_stats[i].stat_offset;
*data++ = *(u64 *)stat;
-@@ -284,7 +284,7 @@ static int xgbe_set_pauseparam(struct net_device *netdev,
+@@ -267,7 +267,7 @@ static int xgbe_set_pauseparam(struct net_device *netdev,
pdata->phy.advertising ^= ADVERTISED_Asym_Pause;
if (netif_running(netdev))
- ret = pdata->phy_if.phy_config_aneg(pdata);
+ ret = pdata->phy_if->phy_config_aneg(pdata);
- DBGPR("<--xgbe_set_pauseparam\n");
-
-@@ -364,7 +364,7 @@ static int xgbe_set_settings(struct net_device *netdev,
+ return ret;
+ }
+@@ -356,7 +356,7 @@ static int xgbe_set_settings(struct net_device *netdev,
pdata->phy.advertising &= ~ADVERTISED_Autoneg;
if (netif_running(netdev))
- ret = pdata->phy_if.phy_config_aneg(pdata);
+ ret = pdata->phy_if->phy_config_aneg(pdata);
- DBGPR("<--xgbe_set_settings\n");
-
-@@ -411,7 +411,7 @@ static int xgbe_set_coalesce(struct net_device *netdev,
+ return ret;
+ }
+@@ -410,7 +410,7 @@ static int xgbe_set_coalesce(struct net_device *netdev,
struct ethtool_coalesce *ec)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52387,7 +51739,7 @@ index 59e090e..90bc0b4 100644
unsigned int rx_frames, rx_riwt, rx_usecs;
unsigned int tx_frames;
-@@ -536,7 +536,7 @@ static int xgbe_set_rxfh(struct net_device *netdev, const u32 *indir,
+@@ -533,7 +533,7 @@ static int xgbe_set_rxfh(struct net_device *netdev, const u32 *indir,
const u8 *key, const u8 hfunc)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -52395,9 +51747,9 @@ index 59e090e..90bc0b4 100644
+ struct xgbe_hw_if *hw_if = pdata->hw_if;
unsigned int ret;
- if (hfunc != ETH_RSS_HASH_NO_CHANGE && hfunc != ETH_RSS_HASH_TOP)
+ if (hfunc != ETH_RSS_HASH_NO_CHANGE && hfunc != ETH_RSS_HASH_TOP) {
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-main.c b/drivers/net/ethernet/amd/xgbe/xgbe-main.c
-index e83bd76..f2d5d56 100644
+index 618d952..bd80ebd 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-main.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-main.c
@@ -202,13 +202,6 @@ static void xgbe_default_config(struct xgbe_prv_data *pdata)
@@ -52414,7 +51766,7 @@ index e83bd76..f2d5d56 100644
#ifdef CONFIG_ACPI
static int xgbe_acpi_support(struct xgbe_prv_data *pdata)
{
-@@ -641,10 +634,12 @@ static int xgbe_probe(struct platform_device *pdev)
+@@ -647,10 +640,12 @@ static int xgbe_probe(struct platform_device *pdev)
memcpy(netdev->dev_addr, pdata->mac_addr, netdev->addr_len);
/* Set all the function pointers */
@@ -52429,7 +51781,7 @@ index e83bd76..f2d5d56 100644
/* Populate the hardware features */
xgbe_get_all_hw_features(pdata);
-@@ -698,7 +693,7 @@ static int xgbe_probe(struct platform_device *pdev)
+@@ -704,7 +699,7 @@ static int xgbe_probe(struct platform_device *pdev)
XGMAC_SET_BITS(pdata->rss_options, MAC_RSSCR, UDP4TE, 1);
/* Call MDIO/PHY initialization routine */
@@ -52439,7 +51791,7 @@ index e83bd76..f2d5d56 100644
/* Set device operations */
netdev->netdev_ops = xgbe_get_netdev_ops();
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c b/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c
-index 9088c3a..2ffe7c4 100644
+index 4460580..00b80d7 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c
@@ -202,7 +202,7 @@ static void xgbe_xgmii_mode(struct xgbe_prv_data *pdata)
@@ -52485,7 +51837,7 @@ index 9088c3a..2ffe7c4 100644
pdata->rx_pause = pdata->phy.rx_pause;
}
-@@ -1351,14 +1351,13 @@ static void xgbe_phy_init(struct xgbe_prv_data *pdata)
+@@ -1343,14 +1343,13 @@ static void xgbe_phy_init(struct xgbe_prv_data *pdata)
xgbe_dump_phy_registers(pdata);
}
@@ -52531,10 +51883,10 @@ index b03e4f5..78e4cc4 100644
spin_unlock_irqrestore(&pdata->tstamp_lock, flags);
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe.h b/drivers/net/ethernet/amd/xgbe/xgbe.h
-index 8c9d01e..8c7bd644 100644
+index e234b99..4f0e2a1 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe.h
+++ b/drivers/net/ethernet/amd/xgbe/xgbe.h
-@@ -801,9 +801,9 @@ struct xgbe_prv_data {
+@@ -785,9 +785,9 @@ struct xgbe_prv_data {
int dev_irq;
unsigned int per_channel_irq;
@@ -52547,7 +51899,7 @@ index 8c9d01e..8c7bd644 100644
/* AXI DMA settings */
unsigned int coherent;
-@@ -964,6 +964,10 @@ struct xgbe_prv_data {
+@@ -948,6 +948,10 @@ struct xgbe_prv_data {
#endif
};
@@ -52642,10 +51994,10 @@ index 4e5c387..bba8173 100644
static void bna_attr_init(struct bna_ioceth *ioceth)
diff --git a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c
-index 29f3308..b594c38 100644
+index 245c063..74ed9c9 100644
--- a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c
+++ b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c
-@@ -265,9 +265,9 @@ static void octnet_mdio_resp_callback(struct octeon_device *oct,
+@@ -264,9 +264,9 @@ static void octnet_mdio_resp_callback(struct octeon_device *oct,
if (status) {
dev_err(&oct->pci_dev->dev, "MIDO instruction failed. Status: %llx\n",
CVM_CAST64(status));
@@ -52657,7 +52009,7 @@ index 29f3308..b594c38 100644
}
wake_up_interruptible(&mdio_cmd_ctx->wc);
}
-@@ -298,7 +298,7 @@ octnet_mdio45_access(struct lio *lio, int op, int loc, int *value)
+@@ -297,7 +297,7 @@ octnet_mdio45_access(struct lio *lio, int op, int loc, int *value)
mdio_cmd_rsp = (struct oct_mdio_cmd_resp *)sc->virtrptr;
mdio_cmd = (struct oct_mdio_cmd *)sc->virtdptr;
@@ -52667,7 +52019,7 @@ index 29f3308..b594c38 100644
mdio_cmd->op = op;
mdio_cmd->mdio_addr = loc;
diff --git a/drivers/net/ethernet/cavium/liquidio/lio_main.c b/drivers/net/ethernet/cavium/liquidio/lio_main.c
-index f683d97..8c4419a 100644
+index b895044..f8ed0c3 100644
--- a/drivers/net/ethernet/cavium/liquidio/lio_main.c
+++ b/drivers/net/ethernet/cavium/liquidio/lio_main.c
@@ -1726,7 +1726,7 @@ static void if_cfg_callback(struct octeon_device *oct,
@@ -52738,7 +52090,7 @@ index 8966f31..e15a101 100644
break;
}
diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
-index eb48a97..60c72cd 100644
+index 8a1d9ff..5cc81dd 100644
--- a/drivers/net/ethernet/emulex/benet/be_main.c
+++ b/drivers/net/ethernet/emulex/benet/be_main.c
@@ -551,7 +551,7 @@ static void accumulate_16bit_val(u32 *acc, u16 val)
@@ -52777,7 +52129,7 @@ index dce5f7b..2433466 100644
#include "ftmac100.h"
diff --git a/drivers/net/ethernet/intel/i40e/i40e_ptp.c b/drivers/net/ethernet/intel/i40e/i40e_ptp.c
-index 8c40d6e..87ecdb3 100644
+index 565ca7c..dcdf764 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_ptp.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_ptp.c
@@ -418,7 +418,7 @@ void i40e_ptp_set_increment(struct i40e_pf *pf)
@@ -52818,10 +52170,10 @@ index 4421bf54..c07afb0 100644
netdev_tx_completed_queue(ring->tx_queue, packets, bytes);
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c
-index 394744b..de2161e 100644
+index 1203d89..7895359 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c
-@@ -2025,8 +2025,11 @@ static void mlx5e_build_netdev(struct net_device *netdev)
+@@ -2033,8 +2033,11 @@ static void mlx5e_build_netdev(struct net_device *netdev)
SET_NETDEV_DEV(netdev, &mdev->pdev->dev);
@@ -52891,7 +52243,7 @@ index bf89216..4044d8c 100644
max_sds_rings = QLCNIC_MAX_SDS_RINGS;
max_tx_rings = QLCNIC_MAX_TX_RINGS;
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_vnic.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_vnic.c
-index be7d7a6..a8983f8 100644
+index 3490675..0b9e15a 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_vnic.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_vnic.c
@@ -207,17 +207,23 @@ int qlcnic_83xx_config_vnic_opmode(struct qlcnic_adapter *adapter)
@@ -52966,7 +52318,7 @@ index 79ef799..59bbd1f 100644
int (*set_speed)(struct net_device *, u8 aneg, u16 sp, u8 dpx, u32 adv);
int (*get_settings)(struct net_device *, struct ethtool_cmd *);
diff --git a/drivers/net/ethernet/sfc/ptp.c b/drivers/net/ethernet/sfc/ptp.c
-index ad62615..a4c124d 100644
+index c771e0a..bbb368d 100644
--- a/drivers/net/ethernet/sfc/ptp.c
+++ b/drivers/net/ethernet/sfc/ptp.c
@@ -832,7 +832,7 @@ static int efx_ptp_synchronize(struct efx_nic *efx, unsigned int num_readings)
@@ -53077,10 +52429,10 @@ index 2b7550c..f75bc6c 100644
.ident = "EPIA-M",
.matches = {
diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c
-index 445071c..6be9e60 100644
+index 58efdec..4184f70 100644
--- a/drivers/net/geneve.c
+++ b/drivers/net/geneve.c
-@@ -971,7 +971,7 @@ nla_put_failure:
+@@ -1321,7 +1321,7 @@ nla_put_failure:
return -EMSGSIZE;
}
@@ -53089,60 +52441,6 @@ index 445071c..6be9e60 100644
.kind = "geneve",
.maxtype = IFLA_GENEVE_MAX,
.policy = geneve_policy,
-diff --git a/drivers/net/hamradio/6pack.c b/drivers/net/hamradio/6pack.c
-index 7c4a415..5a1e985 100644
---- a/drivers/net/hamradio/6pack.c
-+++ b/drivers/net/hamradio/6pack.c
-@@ -683,14 +683,20 @@ static void sixpack_close(struct tty_struct *tty)
- if (!atomic_dec_and_test(&sp->refcnt))
- down(&sp->dead_sem);
-
-- unregister_netdev(sp->dev);
-+ /* We must stop the queue to avoid potentially scribbling
-+ * on the free buffers. The sp->dead_sem is not sufficient
-+ * to protect us from sp->xbuff access.
-+ */
-+ netif_stop_queue(sp->dev);
-
-- del_timer(&sp->tx_t);
-- del_timer(&sp->resync_t);
-+ del_timer_sync(&sp->tx_t);
-+ del_timer_sync(&sp->resync_t);
-
- /* Free all 6pack frame buffers. */
- kfree(sp->rbuff);
- kfree(sp->xbuff);
-+
-+ unregister_netdev(sp->dev);
- }
-
- /* Perform I/O control on an active 6pack channel. */
-diff --git a/drivers/net/hamradio/mkiss.c b/drivers/net/hamradio/mkiss.c
-index 216bfd3..85828f1 100644
---- a/drivers/net/hamradio/mkiss.c
-+++ b/drivers/net/hamradio/mkiss.c
-@@ -797,14 +797,19 @@ static void mkiss_close(struct tty_struct *tty)
- */
- if (!atomic_dec_and_test(&ax->refcnt))
- down(&ax->dead_sem);
--
-- unregister_netdev(ax->dev);
-+ /*
-+ * Halt the transmit queue so that a new transmit cannot scribble
-+ * on our buffers
-+ */
-+ netif_stop_queue(ax->dev);
-
- /* Free all AX25 frame buffers. */
- kfree(ax->rbuff);
- kfree(ax->xbuff);
-
- ax->tty = NULL;
-+
-+ unregister_netdev(ax->dev);
- }
-
- /* Perform I/O control on an active ax25 channel. */
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index 5fa98f5..322f0f8 100644
--- a/drivers/net/hyperv/hyperv_net.h
@@ -53202,10 +52500,10 @@ index cc56fac..c15b884 100644
.priv_size = sizeof(struct ifb_dev_private),
.setup = ifb_setup,
diff --git a/drivers/net/ipvlan/ipvlan_core.c b/drivers/net/ipvlan/ipvlan_core.c
-index 207f62e..af3f5e5 100644
+index 8c48bb2..0a03401 100644
--- a/drivers/net/ipvlan/ipvlan_core.c
+++ b/drivers/net/ipvlan/ipvlan_core.c
-@@ -466,7 +466,7 @@ static void ipvlan_multicast_enqueue(struct ipvl_port *port,
+@@ -470,7 +470,7 @@ static void ipvlan_multicast_enqueue(struct ipvl_port *port,
schedule_work(&port->wq);
} else {
spin_unlock(&port->backlog.lock);
@@ -53312,7 +52610,7 @@ index f9db2ce..6cd460c 100644
}
diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c
-index 47da435..a4a7bd8 100644
+index 06c8bfe..a081f70 100644
--- a/drivers/net/macvlan.c
+++ b/drivers/net/macvlan.c
@@ -335,7 +335,7 @@ static void macvlan_broadcast_enqueue(struct macvlan_port *port,
@@ -53324,7 +52622,7 @@ index 47da435..a4a7bd8 100644
}
static void macvlan_flush_sources(struct macvlan_port *port,
-@@ -1481,13 +1481,15 @@ static const struct nla_policy macvlan_policy[IFLA_MACVLAN_MAX + 1] = {
+@@ -1483,13 +1483,15 @@ static const struct nla_policy macvlan_policy[IFLA_MACVLAN_MAX + 1] = {
int macvlan_link_register(struct rtnl_link_ops *ops)
{
/* common fields */
@@ -53347,7 +52645,7 @@ index 47da435..a4a7bd8 100644
return rtnl_link_register(ops);
};
-@@ -1573,7 +1575,7 @@ static int macvlan_device_event(struct notifier_block *unused,
+@@ -1575,7 +1577,7 @@ static int macvlan_device_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -53357,7 +52655,7 @@ index 47da435..a4a7bd8 100644
};
diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
-index 197c939..5f7bee5 100644
+index 0fc5219..cfe16bb 100644
--- a/drivers/net/macvtap.c
+++ b/drivers/net/macvtap.c
@@ -485,7 +485,7 @@ static void macvtap_setup(struct net_device *dev)
@@ -53369,7 +52667,7 @@ index 197c939..5f7bee5 100644
.kind = "macvtap",
.setup = macvtap_setup,
.newlink = macvtap_newlink,
-@@ -1090,7 +1090,7 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
+@@ -1091,7 +1091,7 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
ret = 0;
u = q->flags;
@@ -53378,7 +52676,7 @@ index 197c939..5f7bee5 100644
put_user(u, &ifr->ifr_flags))
ret = -EFAULT;
macvtap_put_vlan(vlan);
-@@ -1173,8 +1173,8 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
+@@ -1174,8 +1174,8 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
}
ret = 0;
u = vlan->dev->type;
@@ -53389,7 +52687,7 @@ index 197c939..5f7bee5 100644
put_user(u, &ifr->ifr_hwaddr.sa_family))
ret = -EFAULT;
macvtap_put_vlan(vlan);
-@@ -1308,7 +1308,7 @@ static int macvtap_device_event(struct notifier_block *unused,
+@@ -1309,7 +1309,7 @@ static int macvtap_device_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -53412,10 +52710,10 @@ index 7b7c70e..a92dc83 100644
.priv_size = sizeof(struct nlmon),
.setup = nlmon_setup,
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
-index f761288..a1024be 100644
+index 0bfbaba..c81a3588 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -218,7 +218,7 @@ EXPORT_SYMBOL(phy_device_create);
+@@ -249,7 +249,7 @@ static int get_phy_c45_devs_in_pkg(struct mii_bus *bus, int addr, int dev_addr,
* zero on success.
*
*/
@@ -53424,7 +52722,7 @@ index f761288..a1024be 100644
struct phy_c45_device_ids *c45_ids) {
int phy_reg;
int i, reg_addr;
-@@ -296,7 +296,7 @@ retry: reg_addr = MII_ADDR_C45 | i << 16 | MDIO_DEVS2;
+@@ -320,7 +320,7 @@ static int get_phy_c45_ids(struct mii_bus *bus, int addr, u32 *phy_id,
* its return value is in turn returned.
*
*/
@@ -53433,7 +52731,7 @@ index f761288..a1024be 100644
bool is_c45, struct phy_c45_device_ids *c45_ids)
{
int phy_reg;
-@@ -334,7 +334,7 @@ static int get_phy_id(struct mii_bus *bus, int addr, u32 *phy_id,
+@@ -358,7 +358,7 @@ static int get_phy_id(struct mii_bus *bus, int addr, u32 *phy_id,
struct phy_device *get_phy_device(struct mii_bus *bus, int addr, bool is_c45)
{
struct phy_c45_device_ids c45_ids = {0};
@@ -53465,7 +52763,7 @@ index 9a863c6..8e2d8c9 100644
err = 0;
break;
diff --git a/drivers/net/ppp/pptp.c b/drivers/net/ppp/pptp.c
-index b910cae..f55670b 100644
+index 597c53e..f7e8c79 100644
--- a/drivers/net/ppp/pptp.c
+++ b/drivers/net/ppp/pptp.c
@@ -129,24 +129,27 @@ static int lookup_chan_dst(u16 call_id, __be32 d_addr)
@@ -53502,7 +52800,7 @@ index b910cae..f55670b 100644
spin_unlock(&chan_lock);
return 0;
-@@ -415,7 +418,6 @@ static int pptp_bind(struct socket *sock, struct sockaddr *uservaddr,
+@@ -416,7 +419,6 @@ static int pptp_bind(struct socket *sock, struct sockaddr *uservaddr,
struct sock *sk = sock->sk;
struct sockaddr_pppox *sp = (struct sockaddr_pppox *) uservaddr;
struct pppox_sock *po = pppox_sk(sk);
@@ -53510,7 +52808,7 @@ index b910cae..f55670b 100644
int error = 0;
if (sockaddr_len < sizeof(struct sockaddr_pppox))
-@@ -423,10 +425,22 @@ static int pptp_bind(struct socket *sock, struct sockaddr *uservaddr,
+@@ -424,10 +426,22 @@ static int pptp_bind(struct socket *sock, struct sockaddr *uservaddr,
lock_sock(sk);
@@ -53535,7 +52833,7 @@ index b910cae..f55670b 100644
release_sock(sk);
return error;
}
-@@ -497,7 +511,7 @@ static int pptp_connect(struct socket *sock, struct sockaddr *uservaddr,
+@@ -498,7 +512,7 @@ static int pptp_connect(struct socket *sock, struct sockaddr *uservaddr,
}
opt->dst_addr = sp->sa_addr.pptp;
@@ -53580,7 +52878,7 @@ index 59fefca..b1422b1 100644
};
diff --git a/drivers/net/tun.c b/drivers/net/tun.c
-index 976aa97..c1efed2 100644
+index f0db770..f237a01 100644
--- a/drivers/net/tun.c
+++ b/drivers/net/tun.c
@@ -1473,7 +1473,7 @@ static int tun_validate(struct nlattr *tb[], struct nlattr *data[])
@@ -53611,20 +52909,6 @@ index 976aa97..c1efed2 100644
if (cmd == TUNSETIFF || cmd == TUNSETQUEUE || _IOC_TYPE(cmd) == 0x89) {
if (copy_from_user(&ifr, argp, ifreq_len))
return -EFAULT;
-diff --git a/drivers/net/usb/asix_common.c b/drivers/net/usb/asix_common.c
-index 079069a..a11e690 100644
---- a/drivers/net/usb/asix_common.c
-+++ b/drivers/net/usb/asix_common.c
-@@ -108,7 +108,8 @@ int asix_rx_fixup_internal(struct usbnet *dev, struct sk_buff *skb,
- }
-
- if (rx->size > skb->len - offset) {
-- remaining = rx->size - (skb->len - offset);
-+ remaining = skb->len - offset;
-+ remaining = rx->size - remaining;
- rx->size = skb->len - offset;
- }
-
diff --git a/drivers/net/usb/hso.c b/drivers/net/usb/hso.c
index 111d907..1ee643e 100644
--- a/drivers/net/usb/hso.c
@@ -53717,7 +53001,7 @@ index 111d907..1ee643e 100644
hso_start_serial_device(serial_table[i], GFP_NOIO);
hso_kick_transmit(dev2ser(serial_table[i]));
diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
-index 2e32c41..4899cb7 100644
+index 2fb637a..1e442a2 100644
--- a/drivers/net/usb/r8152.c
+++ b/drivers/net/usb/r8152.c
@@ -615,7 +615,7 @@ struct r8152 {
@@ -53752,7 +53036,7 @@ index a2515887..6d13233 100644
/* we will have to manufacture ethernet headers, prepare template */
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
-index d8838ded..6c93f77 100644
+index f94ab78..675a3a4 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -48,7 +48,7 @@ module_param(gso, bool, 0444);
@@ -53765,10 +53049,10 @@ index d8838ded..6c93f77 100644
#define VIRTNET_DRIVER_VERSION "1.0.0"
diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
-index 374feba..01ba30e 100644
+index 0a242b2..91f07ed 100644
--- a/drivers/net/vrf.c
+++ b/drivers/net/vrf.c
-@@ -628,7 +628,7 @@ static const struct nla_policy vrf_nl_policy[IFLA_VRF_MAX + 1] = {
+@@ -939,7 +939,7 @@ static const struct nla_policy vrf_nl_policy[IFLA_VRF_MAX + 1] = {
[IFLA_VRF_TABLE] = { .type = NLA_U32 },
};
@@ -53778,10 +53062,10 @@ index 374feba..01ba30e 100644
.priv_size = sizeof(struct net_vrf),
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
-index 40b5f8a..f934a2f 100644
+index 405a7b6..3248ac3 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
-@@ -3043,7 +3043,7 @@ static struct net *vxlan_get_link_net(const struct net_device *dev)
+@@ -3135,7 +3135,7 @@ static struct net *vxlan_get_link_net(const struct net_device *dev)
return vxlan->net;
}
@@ -53790,7 +53074,7 @@ index 40b5f8a..f934a2f 100644
.kind = "vxlan",
.maxtype = IFLA_VXLAN_MAX,
.policy = vxlan_policy,
-@@ -3091,7 +3091,7 @@ static int vxlan_lowerdev_event(struct notifier_block *unused,
+@@ -3183,7 +3183,7 @@ static int vxlan_lowerdev_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -53799,6 +53083,19 @@ index 40b5f8a..f934a2f 100644
.notifier_call = vxlan_lowerdev_event,
};
+diff --git a/drivers/net/wan/dscc4.c b/drivers/net/wan/dscc4.c
+index 7a72407..6292259 100644
+--- a/drivers/net/wan/dscc4.c
++++ b/drivers/net/wan/dscc4.c
+@@ -1626,7 +1626,7 @@ try:
+ if (state & Xpr) {
+ void __iomem *scc_addr;
+ unsigned long ring;
+- int i;
++ unsigned int i;
+
+ /*
+ * - the busy condition happens (sometimes);
diff --git a/drivers/net/wan/lmc/lmc_media.c b/drivers/net/wan/lmc/lmc_media.c
index 5920c99..ff2e4a5 100644
--- a/drivers/net/wan/lmc/lmc_media.c
@@ -53915,28 +53212,6 @@ index 5920c99..ff2e4a5 100644
};
static void
-diff --git a/drivers/net/wan/x25_asy.c b/drivers/net/wan/x25_asy.c
-index 5c47b01..cd39025 100644
---- a/drivers/net/wan/x25_asy.c
-+++ b/drivers/net/wan/x25_asy.c
-@@ -549,16 +549,12 @@ static void x25_asy_receive_buf(struct tty_struct *tty,
-
- static int x25_asy_open_tty(struct tty_struct *tty)
- {
-- struct x25_asy *sl = tty->disc_data;
-+ struct x25_asy *sl;
- int err;
-
- if (tty->ops->write == NULL)
- return -EOPNOTSUPP;
-
-- /* First make sure we're not already connected. */
-- if (sl && sl->magic == X25_ASY_MAGIC)
-- return -EEXIST;
--
- /* OK. Find a free X.25 channel to use. */
- sl = x25_asy_alloc();
- if (sl == NULL)
diff --git a/drivers/net/wan/z85230.c b/drivers/net/wan/z85230.c
index 2f0bd69..e46ed7b 100644
--- a/drivers/net/wan/z85230.c
@@ -54003,10 +53278,10 @@ index 0b60295..b8bfa5b 100644
if (rd == NULL) {
result = -ENOMEM;
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c
-index d0c97c2..108f59b 100644
+index 17c40f0..9646fee 100644
--- a/drivers/net/wireless/airo.c
+++ b/drivers/net/wireless/airo.c
-@@ -7846,7 +7846,7 @@ static int writerids(struct net_device *dev, aironet_ioctl *comp) {
+@@ -7857,7 +7857,7 @@ static int writerids(struct net_device *dev, aironet_ioctl *comp) {
struct airo_info *ai = dev->ml_priv;
int ridcode;
int enabled;
@@ -54029,10 +53304,10 @@ index dab2513..4c4b65d 100644
return msecs_to_jiffies((s->poll_timeout[2] << 16)
| (s->poll_timeout[1] << 8)
diff --git a/drivers/net/wireless/ath/ath10k/ce.c b/drivers/net/wireless/ath/ath10k/ce.c
-index cf28fbe..a63dd1b 100644
+index edf3629..9f20ef9 100644
--- a/drivers/net/wireless/ath/ath10k/ce.c
+++ b/drivers/net/wireless/ath/ath10k/ce.c
-@@ -897,12 +897,12 @@ static int ath10k_ce_init_dest_ring(struct ath10k *ar,
+@@ -878,12 +878,12 @@ static int ath10k_ce_init_dest_ring(struct ath10k *ar,
return 0;
}
@@ -54047,7 +53322,7 @@ index cf28fbe..a63dd1b 100644
dma_addr_t base_addr;
nentries = roundup_pow_of_two(nentries);
-@@ -969,7 +969,7 @@ ath10k_ce_alloc_dest_ring(struct ath10k *ar, unsigned int ce_id,
+@@ -929,7 +929,7 @@ ath10k_ce_alloc_dest_ring(struct ath10k *ar, unsigned int ce_id,
const struct ce_attr *attr)
{
struct ath10k_ce_ring *dest_ring;
@@ -54056,33 +53331,8 @@ index cf28fbe..a63dd1b 100644
dma_addr_t base_addr;
nentries = roundup_pow_of_two(attr->dest_nentries);
-diff --git a/drivers/net/wireless/ath/ath10k/htc.c b/drivers/net/wireless/ath/ath10k/htc.c
-index 32d9ff1..0952b33 100644
---- a/drivers/net/wireless/ath/ath10k/htc.c
-+++ b/drivers/net/wireless/ath/ath10k/htc.c
-@@ -841,7 +841,10 @@ int ath10k_htc_start(struct ath10k_htc *htc)
- /* registered target arrival callback from the HIF layer */
- int ath10k_htc_init(struct ath10k *ar)
- {
-- struct ath10k_hif_cb htc_callbacks;
-+ static struct ath10k_hif_cb htc_callbacks = {
-+ .rx_completion = ath10k_htc_rx_completion_handler,
-+ .tx_completion = ath10k_htc_tx_completion_handler,
-+ };
- struct ath10k_htc_ep *ep = NULL;
- struct ath10k_htc *htc = &ar->htc;
-
-@@ -850,8 +853,6 @@ int ath10k_htc_init(struct ath10k *ar)
- ath10k_htc_reset_endpoint_states(htc);
-
- /* setup HIF layer callbacks */
-- htc_callbacks.rx_completion = ath10k_htc_rx_completion_handler;
-- htc_callbacks.tx_completion = ath10k_htc_tx_completion_handler;
- htc->ar = ar;
-
- /* Get HIF default pipe for HTC message exchange */
diff --git a/drivers/net/wireless/ath/ath10k/htc.h b/drivers/net/wireless/ath/ath10k/htc.h
-index 527179c..a890150 100644
+index e70aa38..2fcc407 100644
--- a/drivers/net/wireless/ath/ath10k/htc.h
+++ b/drivers/net/wireless/ath/ath10k/htc.h
@@ -270,13 +270,13 @@ enum ath10k_htc_ep_id {
@@ -54337,7 +53587,7 @@ index da84b70..83e4978 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 e8454db..c7b26fe 100644
+index 831a544..d846785 100644
--- a/drivers/net/wireless/ath/ath9k/hw.h
+++ b/drivers/net/wireless/ath/ath9k/hw.h
@@ -671,7 +671,7 @@ struct ath_hw_private_ops {
@@ -54359,10 +53609,10 @@ index e8454db..c7b26fe 100644
struct ath_nf_limits {
s16 max;
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
-index c27143b..bd90160 100644
+index d184e68..1ba76e5 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
-@@ -2579,16 +2579,18 @@ void ath9k_fill_chanctx_ops(void)
+@@ -2585,16 +2585,18 @@ void ath9k_fill_chanctx_ops(void)
if (!ath9k_is_chanctx_enabled())
return;
@@ -54454,7 +53704,7 @@ index 6808db4..3a5df05 100644
DEBUGFS_READONLY_FILE(tx_total_pending, 20, "%d",
atomic_read(&ar->tx_total_pending));
diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
-index 170c209..1e10745 100644
+index 19d3d64..80799ca 100644
--- a/drivers/net/wireless/ath/carl9170/main.c
+++ b/drivers/net/wireless/ath/carl9170/main.c
@@ -320,7 +320,7 @@ static void carl9170_zap_queues(struct ar9170 *ar)
@@ -54702,7 +53952,7 @@ index b15e44f..8658af2 100644
memset(buf, 0, sizeof(buf));
buf_size = min(count, sizeof(buf) - 1);
diff --git a/drivers/net/wireless/iwlwifi/mvm/d3.c b/drivers/net/wireless/iwlwifi/mvm/d3.c
-index 5761876..fdd6a8a 100644
+index 29ae58e..305baa0 100644
--- a/drivers/net/wireless/iwlwifi/mvm/d3.c
+++ b/drivers/net/wireless/iwlwifi/mvm/d3.c
@@ -279,7 +279,7 @@ static void iwl_mvm_wowlan_program_keys(struct ieee80211_hw *hw,
@@ -54714,7 +53964,7 @@ index 5761876..fdd6a8a 100644
aes_tx_sc->pn = cpu_to_le64(pn64);
} else {
aes_sc = data->rsc_tsc->all_tsc_rsc.aes.multicast_rsc;
-@@ -1449,7 +1449,7 @@ static void iwl_mvm_d3_update_gtks(struct ieee80211_hw *hw,
+@@ -1448,7 +1448,7 @@ static void iwl_mvm_d3_update_gtks(struct ieee80211_hw *hw,
switch (key->cipher) {
case WLAN_CIPHER_SUITE_CCMP:
iwl_mvm_set_aes_rx_seq(sc->aes.unicast_rsc, key);
@@ -54724,7 +53974,7 @@ index 5761876..fdd6a8a 100644
case WLAN_CIPHER_SUITE_TKIP:
iwl_mvm_tkip_sc_to_seq(&sc->tkip.tsc, &seq);
diff --git a/drivers/net/wireless/iwlwifi/mvm/tx.c b/drivers/net/wireless/iwlwifi/mvm/tx.c
-index 6df5aad..421d8db 100644
+index c652a66..1f75da8 100644
--- a/drivers/net/wireless/iwlwifi/mvm/tx.c
+++ b/drivers/net/wireless/iwlwifi/mvm/tx.c
@@ -284,7 +284,7 @@ static void iwl_mvm_set_tx_cmd_crypto(struct iwl_mvm *mvm,
@@ -54759,10 +54009,10 @@ index 9028345..5b66ca3 100644
memset(buf, 0, sizeof(buf));
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
-index 520bef8..67e3bdf 100644
+index c00a7daaa..4f9ed30 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
-@@ -3151,20 +3151,20 @@ static int __init init_mac80211_hwsim(void)
+@@ -3150,20 +3150,20 @@ static int __init init_mac80211_hwsim(void)
if (channels < 1)
return -EINVAL;
@@ -54797,19 +54047,6 @@ index 520bef8..67e3bdf 100644
spin_lock_init(&hwsim_radio_lock);
INIT_LIST_HEAD(&hwsim_radios);
-diff --git a/drivers/net/wireless/rndis_wlan.c b/drivers/net/wireless/rndis_wlan.c
-index 71a825c..ce7d6c3 100644
---- a/drivers/net/wireless/rndis_wlan.c
-+++ b/drivers/net/wireless/rndis_wlan.c
-@@ -1236,7 +1236,7 @@ static int set_rts_threshold(struct usbnet *usbdev, u32 rts_threshold)
-
- netdev_dbg(usbdev->net, "%s(): %i\n", __func__, rts_threshold);
-
-- if (rts_threshold < 0 || rts_threshold > 2347)
-+ if (rts_threshold > 2347)
- rts_threshold = 2347;
-
- tmp = cpu_to_le32(rts_threshold);
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h
index 3282ddb..26aabb5 100644
--- a/drivers/net/wireless/rt2x00/rt2x00.h
@@ -54892,7 +54129,7 @@ index af0fe2e..d04986b 100644
wlcore_set_min_fw_ver(wl, WL127X_CHIP_VER,
WL127X_IFTYPE_SR_VER, WL127X_MAJOR_SR_VER,
diff --git a/drivers/net/wireless/ti/wl18xx/main.c b/drivers/net/wireless/ti/wl18xx/main.c
-index abbf054..6ad2ddb 100644
+index 50cce42..f40cfd3 100644
--- a/drivers/net/wireless/ti/wl18xx/main.c
+++ b/drivers/net/wireless/ti/wl18xx/main.c
@@ -2005,8 +2005,10 @@ static int wl18xx_setup(struct wl1271 *wl)
@@ -54921,24 +54158,11 @@ index a912dc0..a8225ba 100644
u16 int_num;
ZD_ASSERT(in_interrupt());
-diff --git a/drivers/nfc/nfcwilink.c b/drivers/nfc/nfcwilink.c
-index ce2e2cf..f81e500 100644
---- a/drivers/nfc/nfcwilink.c
-+++ b/drivers/nfc/nfcwilink.c
-@@ -497,7 +497,7 @@ static struct nci_ops nfcwilink_ops = {
-
- static int nfcwilink_probe(struct platform_device *pdev)
- {
-- static struct nfcwilink *drv;
-+ struct nfcwilink *drv;
- int rc;
- __u32 protocols;
-
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
-index 6e82bc42..ab4145c 100644
+index 655f79d..509e3cd 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
-@@ -1161,7 +1161,9 @@ static int __init of_fdt_raw_init(void)
+@@ -1170,7 +1170,9 @@ static int __init of_fdt_raw_init(void)
pr_warn("fdt: not creating '/sys/firmware/fdt': CRC check failed\n");
return 0;
}
@@ -55116,71 +54340,18 @@ index c776333..aa6b325 100644
#endif /* IEEE1284.3 support. */
diff --git a/drivers/pci/host/pci-host-generic.c b/drivers/pci/host/pci-host-generic.c
-index 265dd25..41a02dd 100644
+index 5434c90..c7f4ead 100644
--- a/drivers/pci/host/pci-host-generic.c
+++ b/drivers/pci/host/pci-host-generic.c
-@@ -26,9 +26,9 @@
- #include <linux/platform_device.h>
-
+@@ -28,7 +28,7 @@
struct gen_pci_cfg_bus_ops {
-+ struct pci_ops ops;
u32 bus_shift;
-- void __iomem *(*map_bus)(struct pci_bus *, unsigned int, int);
+ struct pci_ops ops;
-};
+} __do_const;
struct gen_pci_cfg_windows {
struct resource res;
-@@ -64,8 +64,12 @@ static void __iomem *gen_pci_map_cfg_bus_cam(struct pci_bus *bus,
- }
-
- static struct gen_pci_cfg_bus_ops gen_pci_cfg_cam_bus_ops = {
-+ .ops = {
-+ .map_bus = gen_pci_map_cfg_bus_cam,
-+ .read = pci_generic_config_read,
-+ .write = pci_generic_config_write,
-+ },
- .bus_shift = 16,
-- .map_bus = gen_pci_map_cfg_bus_cam,
- };
-
- static void __iomem *gen_pci_map_cfg_bus_ecam(struct pci_bus *bus,
-@@ -79,13 +83,12 @@ static void __iomem *gen_pci_map_cfg_bus_ecam(struct pci_bus *bus,
- }
-
- static struct gen_pci_cfg_bus_ops gen_pci_cfg_ecam_bus_ops = {
-+ .ops = {
-+ .map_bus = gen_pci_map_cfg_bus_ecam,
-+ .read = pci_generic_config_read,
-+ .write = pci_generic_config_write,
-+ },
- .bus_shift = 20,
-- .map_bus = gen_pci_map_cfg_bus_ecam,
--};
--
--static struct pci_ops gen_pci_ops = {
-- .read = pci_generic_config_read,
-- .write = pci_generic_config_write,
- };
-
- static const struct of_device_id gen_pci_of_match[] = {
-@@ -235,7 +238,6 @@ static int gen_pci_probe(struct platform_device *pdev)
-
- of_id = of_match_node(gen_pci_of_match, np);
- pci->cfg.ops = of_id->data;
-- gen_pci_ops.map_bus = pci->cfg.ops->map_bus;
- pci->host.dev.parent = dev;
- INIT_LIST_HEAD(&pci->host.windows);
- INIT_LIST_HEAD(&pci->resources);
-@@ -256,7 +258,7 @@ static int gen_pci_probe(struct platform_device *pdev)
- if (!pci_has_flag(PCI_PROBE_ONLY))
- pci_add_flags(PCI_REASSIGN_ALL_RSRC | PCI_REASSIGN_ALL_BUS);
-
-- bus = pci_scan_root_bus(dev, 0, &gen_pci_ops, pci, &pci->resources);
-+ bus = pci_scan_root_bus(dev, 0, &pci->cfg.ops->ops, pci, &pci->resources);
- if (!bus) {
- dev_err(dev, "Scanning rootbus failed");
- return -ENODEV;
diff --git a/drivers/pci/hotplug/acpiphp_ibm.c b/drivers/pci/hotplug/acpiphp_ibm.c
index 6ca2399..68d866b 100644
--- a/drivers/pci/hotplug/acpiphp_ibm.c
@@ -55318,10 +54489,10 @@ index 612b21a..9494a5e 100644
int retval = -ENOMEM;
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
-index 4a7da3c..74dbaf1 100644
+index 7eaa4c8..b858f21 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
-@@ -468,8 +468,8 @@ static int populate_msi_sysfs(struct pci_dev *pdev)
+@@ -472,8 +472,8 @@ static int populate_msi_sysfs(struct pci_dev *pdev)
{
struct attribute **msi_attrs;
struct attribute *msi_attr;
@@ -55332,7 +54503,7 @@ index 4a7da3c..74dbaf1 100644
const struct attribute_group **msi_irq_groups;
struct msi_desc *entry;
int ret = -ENOMEM;
-@@ -528,7 +528,7 @@ error_attrs:
+@@ -535,7 +535,7 @@ error_attrs:
count = 0;
msi_attr = msi_attrs[count];
while (msi_attr) {
@@ -55341,7 +54512,7 @@ index 4a7da3c..74dbaf1 100644
kfree(msi_attr->name);
kfree(msi_dev_attr);
++count;
-@@ -1227,12 +1227,14 @@ static void pci_msi_domain_update_dom_ops(struct msi_domain_info *info)
+@@ -1234,12 +1234,14 @@ static void pci_msi_domain_update_dom_ops(struct msi_domain_info *info)
if (ops == NULL) {
info->ops = &pci_msi_domain_ops_default;
} else {
@@ -55359,7 +54530,7 @@ index 4a7da3c..74dbaf1 100644
}
}
-@@ -1241,12 +1243,14 @@ static void pci_msi_domain_update_chip_ops(struct msi_domain_info *info)
+@@ -1248,12 +1250,14 @@ static void pci_msi_domain_update_chip_ops(struct msi_domain_info *info)
struct irq_chip *chip = info->chip;
BUG_ON(!chip);
@@ -55378,19 +54549,10 @@ index 4a7da3c..74dbaf1 100644
/**
diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
-index 9261868..8b7d036 100644
+index eead54c..a611b6c 100644
--- a/drivers/pci/pci-sysfs.c
+++ b/drivers/pci/pci-sysfs.c
-@@ -216,7 +216,7 @@ static ssize_t numa_node_store(struct device *dev,
- if (ret)
- return ret;
-
-- if (node >= MAX_NUMNODES || !node_online(node))
-+ if (node < 0 || node >= MAX_NUMNODES || !node_online(node))
- return -EINVAL;
-
- add_taint(TAINT_FIRMWARE_WORKAROUND, LOCKDEP_STILL_OK);
-@@ -1140,7 +1140,7 @@ static int pci_create_attr(struct pci_dev *pdev, int num, int write_combine)
+@@ -1143,7 +1143,7 @@ static int pci_create_attr(struct pci_dev *pdev, int num, int write_combine)
{
/* allocate attribute structure, piggyback attribute name */
int name_len = write_combine ? 13 : 10;
@@ -55399,7 +54561,7 @@ index 9261868..8b7d036 100644
int retval;
res_attr = kzalloc(sizeof(*res_attr) + name_len, GFP_ATOMIC);
-@@ -1317,7 +1317,7 @@ static struct device_attribute reset_attr = __ATTR(reset, 0200, NULL, reset_stor
+@@ -1320,7 +1320,7 @@ static struct device_attribute reset_attr = __ATTR(reset, 0200, NULL, reset_stor
static int pci_create_capabilities_sysfs(struct pci_dev *dev)
{
int retval;
@@ -55408,7 +54570,7 @@ index 9261868..8b7d036 100644
/* If the device has VPD, try to expose it in sysfs. */
if (dev->vpd) {
-@@ -1364,7 +1364,7 @@ int __must_check pci_create_sysfs_dev_files(struct pci_dev *pdev)
+@@ -1367,7 +1367,7 @@ int __must_check pci_create_sysfs_dev_files(struct pci_dev *pdev)
{
int retval;
int rom_size = 0;
@@ -55418,10 +54580,10 @@ index 9261868..8b7d036 100644
if (!sysfs_initialized)
return -EACCES;
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
-index 24ba9dc..d2711f9 100644
+index d390fc1..d410fda 100644
--- a/drivers/pci/pci.h
+++ b/drivers/pci/pci.h
-@@ -101,7 +101,7 @@ struct pci_vpd_ops {
+@@ -103,7 +103,7 @@ struct pci_vpd_ops {
struct pci_vpd {
unsigned int len;
const struct pci_vpd_ops *ops;
@@ -55461,10 +54623,10 @@ index be35da2..ec16cdb 100644
* Boxes that should not use MSI for PCIe PME signaling.
*/
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
-index 8361d27..d81f096 100644
+index edb1984..dda9a083 100644
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
-@@ -176,7 +176,7 @@ int __pci_read_base(struct pci_dev *dev, enum pci_bar_type type,
+@@ -179,7 +179,7 @@ int __pci_read_base(struct pci_dev *dev, enum pci_bar_type type,
u16 orig_cmd;
struct pci_bus_region region, inverted_region;
@@ -55495,10 +54657,10 @@ index 3f155e7..0f4b1f0 100644
&proc_bus_pci_dev_operations);
proc_initialized = 1;
diff --git a/drivers/pinctrl/nomadik/pinctrl-nomadik.c b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
-index 96cf039..ad82396 100644
+index eebfae0..f4713a8 100644
--- a/drivers/pinctrl/nomadik/pinctrl-nomadik.c
+++ b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
-@@ -1230,7 +1230,7 @@ static int nmk_gpio_probe(struct platform_device *dev)
+@@ -1212,7 +1212,7 @@ static int nmk_gpio_probe(struct platform_device *dev)
struct device_node *np = dev->dev.of_node;
struct nmk_gpio_chip *nmk_chip;
struct gpio_chip *chip;
@@ -55508,7 +54670,7 @@ index 96cf039..ad82396 100644
bool supports_sleepmode;
int irq;
diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
-index b0fde0f..70d6a7b 100644
+index 0d2fc0c..6f9ff62 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -24,6 +24,7 @@
@@ -55519,7 +54681,7 @@ index b0fde0f..70d6a7b 100644
#include "pinctrl-at91.h"
#include "core.h"
-@@ -1632,7 +1633,9 @@ static int at91_gpio_of_irq_setup(struct platform_device *pdev,
+@@ -1613,7 +1614,9 @@ static int at91_gpio_of_irq_setup(struct platform_device *pdev,
at91_gpio->pioc_hwirq = irqd_to_hwirq(d);
/* Setup proper .irq_set_type function */
@@ -55566,10 +54728,10 @@ index 1e1e594..8fe59c5 100644
};
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
-index efbc3f0..18ae682 100644
+index f96f7b8..2d17b99 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
-@@ -1868,6 +1868,10 @@ static int show_dsts(struct seq_file *m, void *data)
+@@ -1870,6 +1870,10 @@ static int show_dsts(struct seq_file *m, void *data)
int err;
u32 retval = -1;
@@ -55580,7 +54742,7 @@ index efbc3f0..18ae682 100644
err = asus_wmi_get_devstate(asus, asus->debug.dev_id, &retval);
if (err < 0)
-@@ -1884,6 +1888,10 @@ static int show_devs(struct seq_file *m, void *data)
+@@ -1886,6 +1890,10 @@ static int show_devs(struct seq_file *m, void *data)
int err;
u32 retval = -1;
@@ -55591,7 +54753,7 @@ index efbc3f0..18ae682 100644
err = asus_wmi_set_devstate(asus->debug.dev_id, asus->debug.ctrl_param,
&retval);
-@@ -1908,6 +1916,10 @@ static int show_call(struct seq_file *m, void *data)
+@@ -1910,6 +1918,10 @@ static int show_call(struct seq_file *m, void *data)
union acpi_object *obj;
acpi_status status;
@@ -55603,10 +54765,10 @@ index efbc3f0..18ae682 100644
1, asus->debug.method_id,
&input, &output);
diff --git a/drivers/platform/x86/compal-laptop.c b/drivers/platform/x86/compal-laptop.c
-index f2706d2..850edfa4 100644
+index e1c2b6d..8f25439 100644
--- a/drivers/platform/x86/compal-laptop.c
+++ b/drivers/platform/x86/compal-laptop.c
-@@ -765,7 +765,7 @@ static int dmi_check_cb_extra(const struct dmi_system_id *id)
+@@ -805,7 +805,7 @@ static int dmi_check_cb_extra(const struct dmi_system_id *id)
return 1;
}
@@ -55629,7 +54791,7 @@ index 458e6c9..089aee7 100644
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad R50"),
HDAPS_DMI_MATCH_NORMAL("IBM", "ThinkPad R51"),
diff --git a/drivers/platform/x86/ibm_rtl.c b/drivers/platform/x86/ibm_rtl.c
-index 97c2be1..2ee50ce 100644
+index c62e5e1..854b418 100644
--- a/drivers/platform/x86/ibm_rtl.c
+++ b/drivers/platform/x86/ibm_rtl.c
@@ -227,7 +227,7 @@ static void rtl_teardown_sysfs(void) {
@@ -55728,10 +54890,10 @@ index e6aac72..e11ff24 100644
.ident = "Samsung Q10",
.matches = {
diff --git a/drivers/platform/x86/sony-laptop.c b/drivers/platform/x86/sony-laptop.c
-index aeb80d1..3eb376b 100644
+index f73c295..711e2f4 100644
--- a/drivers/platform/x86/sony-laptop.c
+++ b/drivers/platform/x86/sony-laptop.c
-@@ -2527,7 +2527,7 @@ static void sony_nc_gfx_switch_cleanup(struct platform_device *pd)
+@@ -2528,7 +2528,7 @@ static void sony_nc_gfx_switch_cleanup(struct platform_device *pd)
}
/* High speed charging function */
@@ -55740,7 +54902,7 @@ index aeb80d1..3eb376b 100644
static ssize_t sony_nc_highspeed_charging_store(struct device *dev,
struct device_attribute *attr,
-@@ -2601,7 +2601,7 @@ static void sony_nc_highspeed_charging_cleanup(struct platform_device *pd)
+@@ -2602,7 +2602,7 @@ static void sony_nc_highspeed_charging_cleanup(struct platform_device *pd)
}
/* low battery function */
@@ -55749,7 +54911,7 @@ index aeb80d1..3eb376b 100644
static ssize_t sony_nc_lowbatt_store(struct device *dev,
struct device_attribute *attr,
-@@ -2667,7 +2667,7 @@ static void sony_nc_lowbatt_cleanup(struct platform_device *pd)
+@@ -2668,7 +2668,7 @@ static void sony_nc_lowbatt_cleanup(struct platform_device *pd)
}
/* fan speed function */
@@ -55758,7 +54920,7 @@ index aeb80d1..3eb376b 100644
static ssize_t sony_nc_hsfan_store(struct device *dev,
struct device_attribute *attr,
-@@ -2774,7 +2774,7 @@ static void sony_nc_fanspeed_cleanup(struct platform_device *pd)
+@@ -2775,7 +2775,7 @@ static void sony_nc_fanspeed_cleanup(struct platform_device *pd)
}
/* USB charge function */
@@ -55767,7 +54929,7 @@ index aeb80d1..3eb376b 100644
static ssize_t sony_nc_usb_charge_store(struct device *dev,
struct device_attribute *attr,
-@@ -2848,7 +2848,7 @@ static void sony_nc_usb_charge_cleanup(struct platform_device *pd)
+@@ -2849,7 +2849,7 @@ static void sony_nc_usb_charge_cleanup(struct platform_device *pd)
}
/* Panel ID function */
@@ -55776,7 +54938,7 @@ index aeb80d1..3eb376b 100644
static ssize_t sony_nc_panelid_show(struct device *dev,
struct device_attribute *attr, char *buffer)
-@@ -2895,7 +2895,7 @@ static void sony_nc_panelid_cleanup(struct platform_device *pd)
+@@ -2896,7 +2896,7 @@ static void sony_nc_panelid_cleanup(struct platform_device *pd)
}
/* smart connect function */
@@ -55785,7 +54947,7 @@ index aeb80d1..3eb376b 100644
static ssize_t sony_nc_smart_conn_store(struct device *dev,
struct device_attribute *attr,
-@@ -4851,7 +4851,7 @@ static struct acpi_driver sony_pic_driver = {
+@@ -4852,7 +4852,7 @@ static struct acpi_driver sony_pic_driver = {
.drv.pm = &sony_pic_pm,
};
@@ -55795,7 +54957,7 @@ index aeb80d1..3eb376b 100644
.ident = "Sony Vaio",
.matches = {
diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c
-index 131dd74..d7deb43 100644
+index 0bed473..c867ae2 100644
--- a/drivers/platform/x86/thinkpad_acpi.c
+++ b/drivers/platform/x86/thinkpad_acpi.c
@@ -2460,10 +2460,10 @@ static void hotkey_compare_and_issue_event(struct tp_nvram_state *oldn,
@@ -55977,10 +55139,10 @@ index ed2d7fd..266b28f 100644
__power_supply_attrs[i] = &power_supply_attrs[i].attr;
}
diff --git a/drivers/power/reset/at91-reset.c b/drivers/power/reset/at91-reset.c
-index c378d4e..f7946c3 100644
+index 3f6b5dd..02c9986 100644
--- a/drivers/power/reset/at91-reset.c
+++ b/drivers/power/reset/at91-reset.c
-@@ -16,6 +16,7 @@
+@@ -17,6 +17,7 @@
#include <linux/of_address.h>
#include <linux/platform_device.h>
#include <linux/reboot.h>
@@ -55988,7 +55150,7 @@ index c378d4e..f7946c3 100644
#include <soc/at91/at91sam9_ddrsdr.h>
#include <soc/at91/at91sam9_sdramc.h>
-@@ -203,7 +204,9 @@ static int at91_reset_of_probe(struct platform_device *pdev)
+@@ -205,7 +206,9 @@ static int __init at91_reset_probe(struct platform_device *pdev)
}
match = of_match_node(at91_reset_of_match, pdev->dev.of_node);
@@ -55996,22 +55158,9 @@ index c378d4e..f7946c3 100644
+ pax_open_kernel();
+ *(void **)&at91_restart_nb.notifier_call = match->data;
+ pax_close_kernel();
- return register_restart_handler(&at91_restart_nb);
- }
-
-@@ -231,9 +234,11 @@ static int at91_reset_platform_probe(struct platform_device *pdev)
- }
-
- match = platform_get_device_id(pdev);
-- at91_restart_nb.notifier_call =
-+ pax_open_kernel();
-+ *(void **)&at91_restart_nb.notifier_call =
- (int (*)(struct notifier_block *,
- unsigned long, void *)) match->driver_data;
-+ pax_close_kernel();
- return register_restart_handler(&at91_restart_nb);
- }
+ sclk = devm_clk_get(&pdev->dev, NULL);
+ if (IS_ERR(sclk))
diff --git a/drivers/powercap/powercap_sys.c b/drivers/powercap/powercap_sys.c
index 84419af..268ede8 100644
--- a/drivers/powercap/powercap_sys.c
@@ -56228,10 +55377,10 @@ index 302e626..12579af 100644
da->attr.name = info->pin_config[i].name;
da->attr.mode = 0644;
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
-index 8a34f6a..e4b3e44 100644
+index 73b7683..8ccd43b 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
-@@ -3681,7 +3681,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
+@@ -3842,7 +3842,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
const struct regulation_constraints *constraints = NULL;
const struct regulator_init_data *init_data;
struct regulator_config *config = NULL;
@@ -56240,7 +55389,7 @@ index 8a34f6a..e4b3e44 100644
struct regulator_dev *rdev;
struct device *dev;
int ret, i;
-@@ -3764,7 +3764,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
+@@ -3925,7 +3925,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
rdev->dev.class = &regulator_class;
rdev->dev.parent = dev;
dev_set_name(&rdev->dev, "regulator.%lu",
@@ -56382,10 +55531,10 @@ index a6d9434..dc26b71 100644
case RTC_PIE_ON:
diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c
-index a705e64..7710ad0 100644
+index aa705bb..629dbb4 100644
--- a/drivers/rtc/rtc-ds1307.c
+++ b/drivers/rtc/rtc-ds1307.c
-@@ -110,7 +110,7 @@ struct ds1307 {
+@@ -107,7 +107,7 @@ struct ds1307 {
u8 offset; /* register's offset */
u8 regs[11];
u16 nvram_offset;
@@ -56409,6 +55558,43 @@ index d99a705..f8ebd79 100644
ret = sysfs_create_bin_file(&pdev->dev.kobj, &m48t59_nvram_attr);
if (ret)
+diff --git a/drivers/rtc/rtc-rv8803.c b/drivers/rtc/rtc-rv8803.c
+index e7329e2..6160c59 100644
+--- a/drivers/rtc/rtc-rv8803.c
++++ b/drivers/rtc/rtc-rv8803.c
+@@ -423,6 +423,15 @@ static struct rtc_class_ops rv8803_rtc_ops = {
+ .ioctl = rv8803_ioctl,
+ };
+
++static struct rtc_class_ops rv8803_rtc_alarm_ops = {
++ .read_time = rv8803_get_time,
++ .set_time = rv8803_set_time,
++ .ioctl = rv8803_ioctl,
++ .read_alarm = rv8803_get_alarm,
++ .set_alarm = rv8803_set_alarm,
++ .alarm_irq_enable = rv8803_alarm_irq_enable,
++};
++
+ static int rv8803_probe(struct i2c_client *client,
+ const struct i2c_device_id *id)
+ {
+@@ -465,15 +474,11 @@ static int rv8803_probe(struct i2c_client *client,
+ if (err) {
+ dev_warn(&client->dev, "unable to request IRQ, alarms disabled\n");
+ client->irq = 0;
+- } else {
+- rv8803_rtc_ops.read_alarm = rv8803_get_alarm;
+- rv8803_rtc_ops.set_alarm = rv8803_set_alarm;
+- rv8803_rtc_ops.alarm_irq_enable = rv8803_alarm_irq_enable;
+ }
+ }
+
+ rv8803->rtc = devm_rtc_device_register(&client->dev, client->name,
+- &rv8803_rtc_ops, THIS_MODULE);
++ client->irq > 0 ? &rv8803_rtc_alarm_ops : &rv8803_rtc_ops, THIS_MODULE);
+ if (IS_ERR(rv8803->rtc)) {
+ dev_err(&client->dev, "unable to register the class device\n");
+ return PTR_ERR(rv8803->rtc);
diff --git a/drivers/rtc/rtc-test.c b/drivers/rtc/rtc-test.c
index 3a2da4c..e88493c 100644
--- a/drivers/rtc/rtc-test.c
@@ -56426,19 +55612,6 @@ index 3a2da4c..e88493c 100644
}
rtc = devm_rtc_device_register(&plat_dev->dev, "test",
-diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
-index 7a6dbfb..5cdcd29 100644
---- a/drivers/scsi/be2iscsi/be_main.c
-+++ b/drivers/scsi/be2iscsi/be_main.c
-@@ -3184,7 +3184,7 @@ be_sgl_create_contiguous(void *virtual_address,
- {
- WARN_ON(!virtual_address);
- WARN_ON(!physical_address);
-- WARN_ON(!length > 0);
-+ WARN_ON(!length);
- WARN_ON(!sgl);
-
- sgl->va = virtual_address;
diff --git a/drivers/scsi/bfa/bfa_fcpim.h b/drivers/scsi/bfa/bfa_fcpim.h
index e693af6..2e525b6 100644
--- a/drivers/scsi/bfa/bfa_fcpim.h
@@ -56612,7 +55785,7 @@ index 045c4e1..13de803 100644
error = bus_register(&fcoe_bus_type);
if (error)
diff --git a/drivers/scsi/hosts.c b/drivers/scsi/hosts.c
-index 8bb173e..20236b4 100644
+index 82ac1cd..aeee84c 100644
--- a/drivers/scsi/hosts.c
+++ b/drivers/scsi/hosts.c
@@ -42,7 +42,7 @@
@@ -56624,7 +55797,7 @@ index 8bb173e..20236b4 100644
static void scsi_host_cls_release(struct device *dev)
-@@ -392,7 +392,7 @@ struct Scsi_Host *scsi_host_alloc(struct scsi_host_template *sht, int privsize)
+@@ -410,7 +410,7 @@ struct Scsi_Host *scsi_host_alloc(struct scsi_host_template *sht, int privsize)
* subtract one because we increment first then return, but we need to
* know what the next host number was before increment
*/
@@ -56634,10 +55807,10 @@ index 8bb173e..20236b4 100644
/* These three are default values which can be overridden */
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
-index 40669f8..826df08 100644
+index a386036..03dff12 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
-@@ -897,10 +897,10 @@ static inline u32 next_command(struct ctlr_info *h, u8 q)
+@@ -916,10 +916,10 @@ static inline u32 next_command(struct ctlr_info *h, u8 q)
struct reply_queue_buffer *rq = &h->reply_queue[q];
if (h->transMethod & CFGTBL_Trans_io_accel1)
@@ -56650,7 +55823,7 @@ index 40669f8..826df08 100644
if ((rq->head[rq->current_entry] & 1) == rq->wraparound) {
a = rq->head[rq->current_entry];
-@@ -1082,7 +1082,7 @@ static void __enqueue_cmd_and_start_io(struct ctlr_info *h,
+@@ -1101,7 +1101,7 @@ static void __enqueue_cmd_and_start_io(struct ctlr_info *h,
break;
default:
set_performant_mode(h, c, reply_queue);
@@ -56659,7 +55832,7 @@ index 40669f8..826df08 100644
}
}
-@@ -6406,17 +6406,17 @@ static void __iomem *remap_pci_mem(ulong base, ulong size)
+@@ -6746,17 +6746,17 @@ static void __iomem *remap_pci_mem(ulong base, ulong size)
static inline unsigned long get_next_completion(struct ctlr_info *h, u8 q)
{
@@ -56680,7 +55853,7 @@ index 40669f8..826df08 100644
(h->interrupts_enabled == 0);
}
-@@ -7354,7 +7354,7 @@ static int hpsa_pci_init(struct ctlr_info *h)
+@@ -7684,7 +7684,7 @@ static int hpsa_pci_init(struct ctlr_info *h)
if (prod_index < 0)
return prod_index;
h->product_name = products[prod_index].product_name;
@@ -56689,7 +55862,7 @@ index 40669f8..826df08 100644
h->needs_abort_tags_swizzled =
ctlr_needs_abort_tags_swizzled(h->board_id);
-@@ -7753,7 +7753,7 @@ static void controller_lockup_detected(struct ctlr_info *h)
+@@ -8083,7 +8083,7 @@ static void controller_lockup_detected(struct ctlr_info *h)
unsigned long flags;
u32 lockup_detected;
@@ -56698,7 +55871,7 @@ index 40669f8..826df08 100644
spin_lock_irqsave(&h->lock, flags);
lockup_detected = readl(h->vaddr + SA5_SCRATCHPAD_OFFSET);
if (!lockup_detected) {
-@@ -8036,7 +8036,7 @@ reinit_after_soft_reset:
+@@ -8419,7 +8419,7 @@ reinit_after_soft_reset:
}
/* make sure the board interrupts are off */
@@ -56707,7 +55880,7 @@ index 40669f8..826df08 100644
rc = hpsa_request_irqs(h, do_hpsa_intr_msi, do_hpsa_intr_intx);
if (rc)
-@@ -8094,7 +8094,7 @@ reinit_after_soft_reset:
+@@ -8477,7 +8477,7 @@ reinit_after_soft_reset:
* fake ones to scoop up any residual completions.
*/
spin_lock_irqsave(&h->lock, flags);
@@ -56716,7 +55889,7 @@ index 40669f8..826df08 100644
spin_unlock_irqrestore(&h->lock, flags);
hpsa_free_irqs(h);
rc = hpsa_request_irqs(h, hpsa_msix_discard_completions,
-@@ -8124,9 +8124,9 @@ reinit_after_soft_reset:
+@@ -8507,9 +8507,9 @@ reinit_after_soft_reset:
dev_info(&h->pdev->dev, "Board READY.\n");
dev_info(&h->pdev->dev,
"Waiting for stale completions to drain.\n");
@@ -56728,7 +55901,7 @@ index 40669f8..826df08 100644
rc = controller_reset_failed(h->cfgtable);
if (rc)
-@@ -8151,7 +8151,7 @@ reinit_after_soft_reset:
+@@ -8536,7 +8536,7 @@ reinit_after_soft_reset:
/* Turn the interrupts on so we can service requests */
@@ -56737,7 +55910,7 @@ index 40669f8..826df08 100644
hpsa_hba_inquiry(h);
-@@ -8167,7 +8167,7 @@ reinit_after_soft_reset:
+@@ -8557,7 +8557,7 @@ reinit_after_soft_reset:
clean7: /* perf, sg, cmd, irq, shost, pci, lu, aer/h */
hpsa_free_performant_mode(h);
@@ -56746,7 +55919,7 @@ index 40669f8..826df08 100644
clean6: /* sg, cmd, irq, pci, lockup, wq/aer/h */
hpsa_free_sg_chain_blocks(h);
clean5: /* cmd, irq, shost, pci, lu, aer/h */
-@@ -8237,7 +8237,7 @@ static void hpsa_shutdown(struct pci_dev *pdev)
+@@ -8692,7 +8692,7 @@ static void hpsa_shutdown(struct pci_dev *pdev)
* To write all data in the battery backed cache to disks
*/
hpsa_flush_cache(h);
@@ -56755,7 +55928,7 @@ index 40669f8..826df08 100644
hpsa_free_irqs(h); /* init_one 4 */
hpsa_disable_interrupt_mode(h); /* pci_init 2 */
}
-@@ -8375,7 +8375,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
+@@ -8834,7 +8834,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
CFGTBL_Trans_enable_directed_msix |
(trans_support & (CFGTBL_Trans_io_accel1 |
CFGTBL_Trans_io_accel2));
@@ -56764,7 +55937,7 @@ index 40669f8..826df08 100644
/* This is a bit complicated. There are 8 registers on
* the controller which we write to to tell it 8 different
-@@ -8417,7 +8417,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
+@@ -8876,7 +8876,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
* perform the superfluous readl() after each command submission.
*/
if (trans_support & (CFGTBL_Trans_io_accel1 | CFGTBL_Trans_io_accel2))
@@ -56773,7 +55946,7 @@ index 40669f8..826df08 100644
/* Controller spec: zero out this buffer. */
for (i = 0; i < h->nreply_queues; i++)
-@@ -8447,12 +8447,12 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
+@@ -8906,12 +8906,12 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
* enable outbound interrupt coalescing in accelerator mode;
*/
if (trans_support & CFGTBL_Trans_io_accel1) {
@@ -56789,10 +55962,10 @@ index 40669f8..826df08 100644
writel(4, &h->cfgtable->HostWrite.CoalIntCount);
}
diff --git a/drivers/scsi/hpsa.h b/drivers/scsi/hpsa.h
-index 27debb3..394d998 100644
+index ae5beda..59e7332 100644
--- a/drivers/scsi/hpsa.h
+++ b/drivers/scsi/hpsa.h
-@@ -153,7 +153,7 @@ struct ctlr_info {
+@@ -177,7 +177,7 @@ struct ctlr_info {
unsigned int msix_vector;
unsigned int msi_vector;
int intr_mode; /* either PERF_MODE_INT or SIMPLE_MODE_INT */
@@ -56801,7 +55974,7 @@ index 27debb3..394d998 100644
/* queue and queue Info */
unsigned int Qdepth;
-@@ -542,38 +542,38 @@ static unsigned long SA5_ioaccel_mode1_completed(struct ctlr_info *h, u8 q)
+@@ -577,38 +577,38 @@ static unsigned long SA5_ioaccel_mode1_completed(struct ctlr_info *h, u8 q)
}
static struct access_method SA5_access = {
@@ -56893,7 +56066,7 @@ index 4d1c511..d5744cb 100644
wait_queue_head_t reset_wq;
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
-index b62836d..fe79a06 100644
+index 536cd5a..86dbbf2 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -1057,7 +1057,7 @@ static int ipr_get_hrrq_index(struct ipr_ioa_cfg *ioa_cfg)
@@ -56905,7 +56078,7 @@ index b62836d..fe79a06 100644
hrrq = (hrrq % (ioa_cfg->hrrq_num - 1)) + 1;
}
return hrrq;
-@@ -8010,9 +8010,9 @@ static void ipr_init_ioa_mem(struct ipr_ioa_cfg *ioa_cfg)
+@@ -8103,9 +8103,9 @@ static void ipr_init_ioa_mem(struct ipr_ioa_cfg *ioa_cfg)
ioa_cfg->identify_hrrq_index = 0;
if (ioa_cfg->hrrq_num == 1)
@@ -56918,10 +56091,10 @@ index b62836d..fe79a06 100644
/* Zero out config table */
memset(ioa_cfg->u.cfg_table, 0, ioa_cfg->cfg_table_size);
diff --git a/drivers/scsi/ipr.h b/drivers/scsi/ipr.h
-index e4fb17a..0243f99 100644
+index a34c7a5..797901a 100644
--- a/drivers/scsi/ipr.h
+++ b/drivers/scsi/ipr.h
-@@ -1517,7 +1517,7 @@ struct ipr_ioa_cfg {
+@@ -1535,7 +1535,7 @@ struct ipr_ioa_cfg {
struct ipr_hrr_queue hrrq[IPR_MAX_HRRQ_NUM];
u32 hrrq_num;
@@ -57089,7 +56262,7 @@ index 9c706d8..d3e3ed2 100644
.qc_issue = sas_ata_qc_issue,
.qc_fill_rtf = sas_ata_qc_fill_rtf,
diff --git a/drivers/scsi/lpfc/lpfc.h b/drivers/scsi/lpfc/lpfc.h
-index a5a56fa..43499fd 100644
+index ceee9a3..59939c5 100644
--- a/drivers/scsi/lpfc/lpfc.h
+++ b/drivers/scsi/lpfc/lpfc.h
@@ -435,7 +435,7 @@ struct lpfc_vport {
@@ -57101,7 +56274,7 @@ index a5a56fa..43499fd 100644
#endif
uint8_t stat_data_enabled;
uint8_t stat_data_blocked;
-@@ -885,8 +885,8 @@ struct lpfc_hba {
+@@ -887,8 +887,8 @@ struct lpfc_hba {
struct timer_list fabric_block_timer;
unsigned long bit_flags;
#define FABRIC_COMANDS_BLOCKED 0
@@ -57112,7 +56285,7 @@ index a5a56fa..43499fd 100644
unsigned long last_rsrc_error_time;
unsigned long last_ramp_down_time;
#ifdef CONFIG_SCSI_LPFC_DEBUG_FS
-@@ -921,7 +921,7 @@ struct lpfc_hba {
+@@ -923,7 +923,7 @@ struct lpfc_hba {
struct dentry *debug_slow_ring_trc;
struct lpfc_debugfs_trc *slow_ring_trc;
@@ -57205,10 +56378,10 @@ index 25aa9b9..d700a65 100644
snprintf(name, sizeof(name), "discovery_trace");
vport->debug_disc_trc =
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
-index f962118..6706983 100644
+index db9446c..627edd4 100644
--- a/drivers/scsi/lpfc/lpfc_init.c
+++ b/drivers/scsi/lpfc/lpfc_init.c
-@@ -11416,8 +11416,10 @@ lpfc_init(void)
+@@ -11425,8 +11425,10 @@ lpfc_init(void)
"misc_register returned with status %d", error);
if (lpfc_enable_npiv) {
@@ -57222,7 +56395,7 @@ index f962118..6706983 100644
lpfc_transport_template =
fc_attach_transport(&lpfc_transport_functions);
diff --git a/drivers/scsi/lpfc/lpfc_scsi.c b/drivers/scsi/lpfc/lpfc_scsi.c
-index e5eb40d..056dcd4 100644
+index 4679ed4..4ddcfea 100644
--- a/drivers/scsi/lpfc/lpfc_scsi.c
+++ b/drivers/scsi/lpfc/lpfc_scsi.c
@@ -261,7 +261,7 @@ lpfc_rampdown_queue_depth(struct lpfc_hba *phba)
@@ -57257,10 +56430,10 @@ index e5eb40d..056dcd4 100644
/**
diff --git a/drivers/scsi/megaraid/megaraid_sas.h b/drivers/scsi/megaraid/megaraid_sas.h
-index 20c3754..1b05e727 100644
+index c0f7c8c..2903f29 100644
--- a/drivers/scsi/megaraid/megaraid_sas.h
+++ b/drivers/scsi/megaraid/megaraid_sas.h
-@@ -1700,7 +1700,7 @@ struct megasas_instance {
+@@ -1742,7 +1742,7 @@ struct megasas_instance {
s8 init_id;
u16 max_num_sge;
@@ -57269,51 +56442,11 @@ index 20c3754..1b05e727 100644
u16 max_mfi_cmds;
u16 max_scsi_cmds;
u32 max_sectors_per_req;
-diff --git a/drivers/scsi/mpt2sas/mpt2sas_scsih.c b/drivers/scsi/mpt2sas/mpt2sas_scsih.c
-index 0ad09b2..c9e6939 100644
---- a/drivers/scsi/mpt2sas/mpt2sas_scsih.c
-+++ b/drivers/scsi/mpt2sas/mpt2sas_scsih.c
-@@ -1638,7 +1638,7 @@ _scsih_get_resync(struct device *dev)
- {
- struct scsi_device *sdev = to_scsi_device(dev);
- struct MPT2SAS_ADAPTER *ioc = shost_priv(sdev->host);
-- static struct _raid_device *raid_device;
-+ struct _raid_device *raid_device;
- unsigned long flags;
- Mpi2RaidVolPage0_t vol_pg0;
- Mpi2ConfigReply_t mpi_reply;
-@@ -1690,7 +1690,7 @@ _scsih_get_state(struct device *dev)
- {
- struct scsi_device *sdev = to_scsi_device(dev);
- struct MPT2SAS_ADAPTER *ioc = shost_priv(sdev->host);
-- static struct _raid_device *raid_device;
-+ struct _raid_device *raid_device;
- unsigned long flags;
- Mpi2RaidVolPage0_t vol_pg0;
- Mpi2ConfigReply_t mpi_reply;
-@@ -6830,7 +6830,7 @@ _scsih_sas_ir_operation_status_event(struct MPT2SAS_ADAPTER *ioc,
- Mpi2EventDataIrOperationStatus_t *event_data =
- (Mpi2EventDataIrOperationStatus_t *)
- fw_event->event_data;
-- static struct _raid_device *raid_device;
-+ struct _raid_device *raid_device;
- unsigned long flags;
- u16 handle;
-
-@@ -7317,7 +7317,7 @@ _scsih_scan_for_devices_after_reset(struct MPT2SAS_ADAPTER *ioc)
- u64 sas_address;
- struct _sas_device *sas_device;
- struct _sas_node *expander_device;
-- static struct _raid_device *raid_device;
-+ struct _raid_device *raid_device;
- u8 retry_count;
- unsigned long flags;
-
diff --git a/drivers/scsi/pmcraid.c b/drivers/scsi/pmcraid.c
-index ed31d8c..ab856b3 100644
+index b2a88200..f469ddd 100644
--- a/drivers/scsi/pmcraid.c
+++ b/drivers/scsi/pmcraid.c
-@@ -200,8 +200,8 @@ static int pmcraid_slave_alloc(struct scsi_device *scsi_dev)
+@@ -201,8 +201,8 @@ static int pmcraid_slave_alloc(struct scsi_device *scsi_dev)
res->scsi_dev = scsi_dev;
scsi_dev->hostdata = res;
res->change_detected = 0;
@@ -57324,7 +56457,7 @@ index ed31d8c..ab856b3 100644
rc = 0;
}
spin_unlock_irqrestore(&pinstance->resource_lock, lock_flags);
-@@ -2640,9 +2640,9 @@ static int pmcraid_error_handler(struct pmcraid_cmd *cmd)
+@@ -2641,9 +2641,9 @@ static int pmcraid_error_handler(struct pmcraid_cmd *cmd)
/* If this was a SCSI read/write command keep count of errors */
if (SCSI_CMD_TYPE(scsi_cmd->cmnd[0]) == SCSI_READ_CMD)
@@ -57336,7 +56469,7 @@ index ed31d8c..ab856b3 100644
if (!RES_IS_GSCSI(res->cfg_entry) &&
masked_ioasc != PMCRAID_IOASC_HW_DEVICE_BUS_STATUS_ERROR) {
-@@ -3468,7 +3468,7 @@ static int pmcraid_queuecommand_lck(
+@@ -3469,7 +3469,7 @@ static int pmcraid_queuecommand_lck(
* block of scsi_cmd which is re-used (e.g. cancel/abort), which uses
* hrrq_id assigned here in queuecommand
*/
@@ -57345,7 +56478,7 @@ index ed31d8c..ab856b3 100644
pinstance->num_hrrq;
cmd->cmd_done = pmcraid_io_done;
-@@ -3782,7 +3782,7 @@ static long pmcraid_ioctl_passthrough(
+@@ -3783,7 +3783,7 @@ static long pmcraid_ioctl_passthrough(
* block of scsi_cmd which is re-used (e.g. cancel/abort), which uses
* hrrq_id assigned here in queuecommand
*/
@@ -57374,7 +56507,7 @@ index ed31d8c..ab856b3 100644
INIT_LIST_HEAD(&pinstance->free_res_q);
INIT_LIST_HEAD(&pinstance->used_res_q);
-@@ -5951,7 +5951,7 @@ static int pmcraid_probe(struct pci_dev *pdev,
+@@ -5949,7 +5949,7 @@ static int pmcraid_probe(struct pci_dev *pdev,
/* Schedule worker thread to handle CCN and take care of adding and
* removing devices to OS
*/
@@ -57454,10 +56587,10 @@ index 7686bfe..4710893 100644
extern void qla2x00_free_sysfs_attr(scsi_qla_host_t *, bool);
extern void qla2x00_init_host_attr(scsi_qla_host_t *);
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
-index c2dd17b..92bc0e0 100644
+index bfa9a64..d3b3ec2 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
-@@ -1424,8 +1424,10 @@ qla2x00_config_dma_addressing(struct qla_hw_data *ha)
+@@ -1423,8 +1423,10 @@ qla2x00_config_dma_addressing(struct qla_hw_data *ha)
!pci_set_consistent_dma_mask(ha->pdev, DMA_BIT_MASK(64))) {
/* Ok, a 64bit DMA mask is applicable. */
ha->flags.enable_64bit_addressing = 1;
@@ -57543,10 +56676,10 @@ index a7cfc27..151f483 100644
uint32_t default_time2wait; /* Default Min time between
* relogins (+aens) */
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
-index 6d25879..3031a9f 100644
+index 01c3610..3e92008 100644
--- a/drivers/scsi/qla4xxx/ql4_os.c
+++ b/drivers/scsi/qla4xxx/ql4_os.c
-@@ -4491,12 +4491,12 @@ static void qla4xxx_check_relogin_flash_ddb(struct iscsi_cls_session *cls_sess)
+@@ -4490,12 +4490,12 @@ static void qla4xxx_check_relogin_flash_ddb(struct iscsi_cls_session *cls_sess)
*/
if (!iscsi_is_session_online(cls_sess)) {
/* Reset retry relogin timer */
@@ -57561,7 +56694,7 @@ index 6d25879..3031a9f 100644
ddb_entry->default_time2wait + 4));
set_bit(DPC_RELOGIN_DEVICE, &ha->dpc_flags);
atomic_set(&ddb_entry->retry_relogin_timer,
-@@ -6604,7 +6604,7 @@ static void qla4xxx_setup_flash_ddb_entry(struct scsi_qla_host *ha,
+@@ -6603,7 +6603,7 @@ static void qla4xxx_setup_flash_ddb_entry(struct scsi_qla_host *ha,
atomic_set(&ddb_entry->retry_relogin_timer, INVALID_ENTRY);
atomic_set(&ddb_entry->relogin_timer, 0);
@@ -57571,7 +56704,7 @@ index 6d25879..3031a9f 100644
ddb_entry->default_relogin_timeout =
(def_timeout > LOGIN_TOV) && (def_timeout < LOGIN_TOV * 10) ?
diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c
-index 207d6a7..bf155b5 100644
+index d07fb65..4a162c0 100644
--- a/drivers/scsi/scsi.c
+++ b/drivers/scsi/scsi.c
@@ -591,7 +591,7 @@ void scsi_finish_command(struct scsi_cmnd *cmd)
@@ -57584,7 +56717,7 @@ index 207d6a7..bf155b5 100644
if (drv->done)
good_bytes = drv->done(cmd);
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
-index 126a48c..b38f662 100644
+index dd8ad2a..5c5a30c 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -1597,7 +1597,7 @@ static void scsi_kill_request(struct request *req, struct request_queue *q)
@@ -57618,10 +56751,10 @@ index 126a48c..b38f662 100644
/* check if the device is still usable */
if (unlikely(cmd->device->sdev_state == SDEV_DEL)) {
diff --git a/drivers/scsi/scsi_sysfs.c b/drivers/scsi/scsi_sysfs.c
-index dff8faf..28dcc11 100644
+index 21930c9..51a9e18 100644
--- a/drivers/scsi/scsi_sysfs.c
+++ b/drivers/scsi/scsi_sysfs.c
-@@ -790,7 +790,7 @@ show_iostat_##field(struct device *dev, struct device_attribute *attr, \
+@@ -813,7 +813,7 @@ show_iostat_##field(struct device *dev, struct device_attribute *attr, \
char *buf) \
{ \
struct scsi_device *sdev = to_scsi_device(dev); \
@@ -57733,10 +56866,10 @@ index e3cd3ec..00560ec 100644
transport_setup_device(&rport->dev);
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
-index 3f37022..43557f0 100644
+index 4e08d1cd..bd76e1b 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
-@@ -111,7 +111,7 @@ static int sd_resume(struct device *);
+@@ -112,7 +112,7 @@ static int sd_resume(struct device *);
static void sd_rescan(struct device *);
static int sd_init_command(struct scsi_cmnd *SCpnt);
static void sd_uninit_command(struct scsi_cmnd *SCpnt);
@@ -57745,7 +56878,7 @@ index 3f37022..43557f0 100644
static int sd_eh_action(struct scsi_cmnd *, int);
static void sd_read_capacity(struct scsi_disk *sdkp, unsigned char *buffer);
static void scsi_disk_release(struct device *cdev);
-@@ -1646,7 +1646,7 @@ static unsigned int sd_completed_bytes(struct scsi_cmnd *scmd)
+@@ -1756,7 +1756,7 @@ static unsigned int sd_completed_bytes(struct scsi_cmnd *scmd)
*
* Note: potentially run from within an ISR. Must not block.
**/
@@ -57754,7 +56887,7 @@ index 3f37022..43557f0 100644
{
int result = SCpnt->result;
unsigned int good_bytes = result ? 0 : scsi_bufflen(SCpnt);
-@@ -2973,7 +2973,7 @@ static int sd_probe(struct device *dev)
+@@ -3100,7 +3100,7 @@ static int sd_probe(struct device *dev)
sdkp->disk = gd;
sdkp->index = index;
atomic_set(&sdkp->openers, 0);
@@ -57764,10 +56897,10 @@ index 3f37022..43557f0 100644
if (!sdp->request_queue->rq_timeout) {
if (sdp->type != TYPE_MOD)
diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
-index 9d7b7db..33ecc51 100644
+index 503ab8b..fee54a1 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
-@@ -1083,7 +1083,7 @@ sg_ioctl(struct file *filp, unsigned int cmd_in, unsigned long arg)
+@@ -1089,7 +1089,7 @@ sg_ioctl(struct file *filp, unsigned int cmd_in, unsigned long arg)
sdp->disk->disk_name,
MKDEV(SCSI_GENERIC_MAJOR, sdp->index),
NULL,
@@ -57838,10 +56971,10 @@ index de2c1bf..60b8563 100644
.read = fuse_read,
};
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
-index a5f53de..105bfd3 100644
+index dee1cb8..3626295 100644
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
-@@ -2414,7 +2414,7 @@ int spi_bus_unlock(struct spi_master *master)
+@@ -2506,7 +2506,7 @@ int spi_bus_unlock(struct spi_master *master)
EXPORT_SYMBOL_GPL(spi_bus_unlock);
/* portable code must never pass more than 32 bytes */
@@ -57851,10 +56984,10 @@ index a5f53de..105bfd3 100644
static u8 *buf;
diff --git a/drivers/staging/android/timed_output.c b/drivers/staging/android/timed_output.c
-index b41429f..2de5373 100644
+index aff9cdb..a2f1a81 100644
--- a/drivers/staging/android/timed_output.c
+++ b/drivers/staging/android/timed_output.c
-@@ -25,7 +25,7 @@
+@@ -26,7 +26,7 @@
#include "timed_output.h"
static struct class *timed_output_class;
@@ -57863,7 +56996,7 @@ index b41429f..2de5373 100644
static ssize_t enable_show(struct device *dev, struct device_attribute *attr,
char *buf)
-@@ -65,7 +65,7 @@ static int create_timed_output_class(void)
+@@ -66,7 +66,7 @@ static int create_timed_output_class(void)
timed_output_class = class_create(THIS_MODULE, "timed_output");
if (IS_ERR(timed_output_class))
return PTR_ERR(timed_output_class);
@@ -57872,7 +57005,7 @@ index b41429f..2de5373 100644
timed_output_class->dev_groups = timed_output_groups;
}
-@@ -83,7 +83,7 @@ int timed_output_dev_register(struct timed_output_dev *tdev)
+@@ -84,7 +84,7 @@ int timed_output_dev_register(struct timed_output_dev *tdev)
if (ret < 0)
return ret;
@@ -57882,7 +57015,7 @@ index b41429f..2de5373 100644
MKDEV(0, tdev->index), NULL, "%s", tdev->name);
if (IS_ERR(tdev->dev))
diff --git a/drivers/staging/comedi/comedi_fops.c b/drivers/staging/comedi/comedi_fops.c
-index 0e8a451..9558241 100644
+index 7b4af51..63d4c51 100644
--- a/drivers/staging/comedi/comedi_fops.c
+++ b/drivers/staging/comedi/comedi_fops.c
@@ -311,8 +311,8 @@ static void comedi_file_reset(struct file *file)
@@ -57896,7 +57029,7 @@ index 0e8a451..9558241 100644
}
static void comedi_file_check(struct file *file)
-@@ -1980,7 +1980,7 @@ static int do_setrsubd_ioctl(struct comedi_device *dev, unsigned long arg,
+@@ -1985,7 +1985,7 @@ static int do_setrsubd_ioctl(struct comedi_device *dev, unsigned long arg,
!(s_old->async->cmd.flags & CMDF_WRITE))
return -EBUSY;
@@ -57905,7 +57038,7 @@ index 0e8a451..9558241 100644
return 0;
}
-@@ -2022,7 +2022,7 @@ static int do_setwsubd_ioctl(struct comedi_device *dev, unsigned long arg,
+@@ -2027,7 +2027,7 @@ static int do_setwsubd_ioctl(struct comedi_device *dev, unsigned long arg,
(s_old->async->cmd.flags & CMDF_WRITE))
return -EBUSY;
@@ -57914,23 +57047,11 @@ index 0e8a451..9558241 100644
return 0;
}
-diff --git a/drivers/staging/dgnc/dgnc_mgmt.c b/drivers/staging/dgnc/dgnc_mgmt.c
-index b13318a..883e2a8 100644
---- a/drivers/staging/dgnc/dgnc_mgmt.c
-+++ b/drivers/staging/dgnc/dgnc_mgmt.c
-@@ -115,6 +115,7 @@ long dgnc_mgmt_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
-
- spin_lock_irqsave(&dgnc_global_lock, flags);
-
-+ memset(&ddi, 0, sizeof(ddi));
- ddi.dinfo_nboards = dgnc_NumBoards;
- sprintf(ddi.dinfo_version, "%s", DG_PART);
-
diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c
-index 7f5fa3d..53b5471 100644
+index b1e4516..2ad1652 100644
--- a/drivers/staging/fbtft/fbtft-core.c
+++ b/drivers/staging/fbtft/fbtft-core.c
-@@ -682,7 +682,7 @@ struct fb_info *fbtft_framebuffer_alloc(struct fbtft_display *display,
+@@ -651,7 +651,7 @@ struct fb_info *fbtft_framebuffer_alloc(struct fbtft_display *display,
{
struct fb_info *info;
struct fbtft_par *par;
@@ -57940,10 +57061,10 @@ index 7f5fa3d..53b5471 100644
u8 *vmem = NULL;
void *txbuf = NULL;
diff --git a/drivers/staging/fbtft/fbtft.h b/drivers/staging/fbtft/fbtft.h
-index 7e9a506..d0b0069 100644
+index 3ccdec9..fcd4277 100644
--- a/drivers/staging/fbtft/fbtft.h
+++ b/drivers/staging/fbtft/fbtft.h
-@@ -106,7 +106,7 @@ struct fbtft_ops {
+@@ -101,7 +101,7 @@ struct fbtft_ops {
int (*set_var)(struct fbtft_par *par);
int (*set_gamma)(struct fbtft_par *par, unsigned long *curves);
@@ -57953,7 +57074,7 @@ index 7e9a506..d0b0069 100644
/**
* struct fbtft_display - Describes the display properties
diff --git a/drivers/staging/gdm724x/gdm_tty.c b/drivers/staging/gdm724x/gdm_tty.c
-index 001348c..cfaac8a 100644
+index e2c0f22..72fe9cc 100644
--- a/drivers/staging/gdm724x/gdm_tty.c
+++ b/drivers/staging/gdm724x/gdm_tty.c
@@ -44,7 +44,7 @@
@@ -57966,7 +57087,7 @@ index 001348c..cfaac8a 100644
static struct tty_driver *gdm_driver[TTY_MAX_COUNT];
static struct gdm *gdm_table[TTY_MAX_COUNT][GDM_TTY_MINOR];
diff --git a/drivers/staging/iio/accel/lis3l02dq_ring.c b/drivers/staging/iio/accel/lis3l02dq_ring.c
-index b892f2c..9b4898a 100644
+index 50c162e..b5d8b7e 100644
--- a/drivers/staging/iio/accel/lis3l02dq_ring.c
+++ b/drivers/staging/iio/accel/lis3l02dq_ring.c
@@ -118,7 +118,7 @@ static int lis3l02dq_get_buffer_element(struct iio_dev *indio_dev,
@@ -57979,7 +57100,7 @@ index b892f2c..9b4898a 100644
return -ENOMEM;
ret = lis3l02dq_read_all(indio_dev, rx_array);
diff --git a/drivers/staging/iio/adc/ad7280a.c b/drivers/staging/iio/adc/ad7280a.c
-index d98e229..9c59bc2 100644
+index 35acb1a..055b04d 100644
--- a/drivers/staging/iio/adc/ad7280a.c
+++ b/drivers/staging/iio/adc/ad7280a.c
@@ -547,8 +547,8 @@ static int ad7280_attr_init(struct ad7280_state *st)
@@ -57991,10 +57112,10 @@ index d98e229..9c59bc2 100644
+ st->iio_attr = kcalloc(sizeof(*st->iio_attr) *
+ (st->slave_num + 1) * AD7280A_CELLS_PER_DEV, 2,
GFP_KERNEL);
- if (st->iio_attr == NULL)
+ if (!st->iio_attr)
return -ENOMEM;
diff --git a/drivers/staging/lustre/lnet/selftest/brw_test.c b/drivers/staging/lustre/lnet/selftest/brw_test.c
-index de11f1b..f7181cf 100644
+index 0605c65..d722199 100644
--- a/drivers/staging/lustre/lnet/selftest/brw_test.c
+++ b/drivers/staging/lustre/lnet/selftest/brw_test.c
@@ -487,13 +487,11 @@ brw_server_handle(struct srpc_server_rpc *rpc)
@@ -58017,10 +57138,10 @@ index de11f1b..f7181cf 100644
srpc_service_t brw_test_service;
diff --git a/drivers/staging/lustre/lnet/selftest/framework.c b/drivers/staging/lustre/lnet/selftest/framework.c
-index 257de35..efa188f 100644
+index f18e500..77fef26 100644
--- a/drivers/staging/lustre/lnet/selftest/framework.c
+++ b/drivers/staging/lustre/lnet/selftest/framework.c
-@@ -1630,12 +1630,10 @@ static srpc_service_t sfw_services[] = {
+@@ -1624,12 +1624,10 @@ static srpc_service_t sfw_services[] = {
extern sfw_test_client_ops_t ping_test_client;
extern srpc_service_t ping_test_service;
@@ -58032,8 +57153,8 @@ index 257de35..efa188f 100644
-extern void brw_init_test_client(void);
extern void brw_init_test_service(void);
-
-@@ -1677,12 +1675,10 @@ sfw_startup(void)
+ int
+@@ -1669,12 +1667,10 @@ sfw_startup(void)
INIT_LIST_HEAD(&sfw_data.fw_zombie_rpcs);
INIT_LIST_HEAD(&sfw_data.fw_zombie_sessions);
@@ -58047,7 +57168,7 @@ index 257de35..efa188f 100644
rc = sfw_register_test(&ping_test_service, &ping_test_client);
LASSERT(rc == 0);
diff --git a/drivers/staging/lustre/lnet/selftest/ping_test.c b/drivers/staging/lustre/lnet/selftest/ping_test.c
-index 1dab998..edfe0ac 100644
+index d426536..92f0086 100644
--- a/drivers/staging/lustre/lnet/selftest/ping_test.c
+++ b/drivers/staging/lustre/lnet/selftest/ping_test.c
@@ -211,14 +211,12 @@ ping_server_handle(struct srpc_server_rpc *rpc)
@@ -58072,10 +57193,10 @@ index 1dab998..edfe0ac 100644
srpc_service_t ping_test_service;
void ping_init_test_service(void)
diff --git a/drivers/staging/lustre/lustre/include/lustre_dlm.h b/drivers/staging/lustre/lustre/include/lustre_dlm.h
-index 3552546..ce67377 100644
+index 0e75a15..7290f30 100644
--- a/drivers/staging/lustre/lustre/include/lustre_dlm.h
+++ b/drivers/staging/lustre/lustre/include/lustre_dlm.h
-@@ -1107,7 +1107,7 @@ struct ldlm_callback_suite {
+@@ -1061,7 +1061,7 @@ struct ldlm_callback_suite {
ldlm_completion_callback lcs_completion;
ldlm_blocking_callback lcs_blocking;
ldlm_glimpse_callback lcs_glimpse;
@@ -58083,12 +57204,12 @@ index 3552546..ce67377 100644
+} __no_const;
/* ldlm_lockd.c */
- int ldlm_del_waiting_lock(struct ldlm_lock *lock);
+ int ldlm_get_ref(void);
diff --git a/drivers/staging/lustre/lustre/include/obd.h b/drivers/staging/lustre/lustre/include/obd.h
-index 9ad8c26..4e3c733 100644
+index 5e93afc..4fd41bf 100644
--- a/drivers/staging/lustre/lustre/include/obd.h
+++ b/drivers/staging/lustre/lustre/include/obd.h
-@@ -1364,7 +1364,7 @@ struct md_ops {
+@@ -1213,7 +1213,7 @@ struct md_ops {
* lprocfs_alloc_md_stats() in obdclass/lprocfs_status.c. Also, add a
* wrapper function in include/linux/obd_class.h.
*/
@@ -58098,10 +57219,10 @@ index 9ad8c26..4e3c733 100644
struct lsm_operations {
void (*lsm_free)(struct lov_stripe_md *);
diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c b/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c
-index a4c252f..b21acac 100644
+index 4310154..605d035 100644
--- a/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c
+++ b/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c
-@@ -258,7 +258,7 @@ ldlm_process_flock_lock(struct ldlm_lock *req, __u64 *flags, int first_enq,
+@@ -147,7 +147,7 @@ static int ldlm_process_flock_lock(struct ldlm_lock *req, __u64 *flags,
int added = (mode == LCK_NL);
int overlaps = 0;
int splitted = 0;
@@ -58111,11 +57232,11 @@ index a4c252f..b21acac 100644
CDEBUG(D_DLMTRACE,
"flags %#llx owner %llu pid %u mode %u start %llu end %llu\n",
diff --git a/drivers/staging/lustre/lustre/libcfs/module.c b/drivers/staging/lustre/lustre/libcfs/module.c
-index 806f974..afed877 100644
+index e7c2b26..29a29f1 100644
--- a/drivers/staging/lustre/lustre/libcfs/module.c
+++ b/drivers/staging/lustre/lustre/libcfs/module.c
-@@ -342,11 +342,11 @@ out:
-
+@@ -322,11 +322,11 @@ out:
+ }
struct cfs_psdev_ops libcfs_psdev_ops = {
- libcfs_psdev_open,
@@ -58130,12 +57251,12 @@ index 806f974..afed877 100644
+ .p_ioctl = libcfs_ioctl
};
- static int init_libcfs_module(void)
+ static int proc_call_handler(void *data, int write, loff_t *ppos,
diff --git a/drivers/staging/octeon/ethernet-rx.c b/drivers/staging/octeon/ethernet-rx.c
-index d1a33a9..86e634e 100644
+index 6aed3cf..3cdcb89 100644
--- a/drivers/staging/octeon/ethernet-rx.c
+++ b/drivers/staging/octeon/ethernet-rx.c
-@@ -363,15 +363,15 @@ static int cvm_oct_napi_poll(struct napi_struct *napi, int budget)
+@@ -365,15 +365,15 @@ static int cvm_oct_napi_poll(struct napi_struct *napi, int budget)
/* Increment RX stats for virtual ports */
if (port >= CVMX_PIP_NUM_INPUT_PORTS) {
#ifdef CONFIG_64BIT
@@ -58159,7 +57280,7 @@ index d1a33a9..86e634e 100644
#endif
}
netif_receive_skb(skb);
-@@ -382,10 +382,10 @@ static int cvm_oct_napi_poll(struct napi_struct *napi, int budget)
+@@ -384,10 +384,10 @@ static int cvm_oct_napi_poll(struct napi_struct *napi, int budget)
dev->name);
*/
#ifdef CONFIG_64BIT
@@ -58173,7 +57294,7 @@ index d1a33a9..86e634e 100644
#endif
dev_kfree_skb_irq(skb);
diff --git a/drivers/staging/octeon/ethernet.c b/drivers/staging/octeon/ethernet.c
-index 7274fda..ff5afcc 100644
+index f69fb5c..be5da97 100644
--- a/drivers/staging/octeon/ethernet.c
+++ b/drivers/staging/octeon/ethernet.c
@@ -232,11 +232,11 @@ static struct net_device_stats *cvm_oct_common_get_stats(struct net_device *dev)
@@ -58193,7 +57314,7 @@ index 7274fda..ff5afcc 100644
}
diff --git a/drivers/staging/rdma/ipath/ipath_rc.c b/drivers/staging/rdma/ipath/ipath_rc.c
-index 79b3dbc..96e5fcc 100644
+index d4aa535..022fa57 100644
--- a/drivers/staging/rdma/ipath/ipath_rc.c
+++ b/drivers/staging/rdma/ipath/ipath_rc.c
@@ -1868,7 +1868,7 @@ void ipath_rc_rcv(struct ipath_ibdev *dev, struct ipath_ib_header *hdr,
@@ -58220,10 +57341,10 @@ index 79b3dbc..96e5fcc 100644
be64_to_cpu(ateth->compare_data),
sdata);
diff --git a/drivers/staging/rdma/ipath/ipath_ruc.c b/drivers/staging/rdma/ipath/ipath_ruc.c
-index 1f95bba..9530f87 100644
+index e541a01..a41777d 100644
--- a/drivers/staging/rdma/ipath/ipath_ruc.c
+++ b/drivers/staging/rdma/ipath/ipath_ruc.c
-@@ -266,7 +266,7 @@ static void ipath_ruc_loopback(struct ipath_qp *sqp)
+@@ -265,7 +265,7 @@ static void ipath_ruc_loopback(struct ipath_qp *sqp)
unsigned long flags;
struct ib_wc wc;
u64 sdata;
@@ -58232,22 +57353,22 @@ index 1f95bba..9530f87 100644
enum ib_wc_status send_status;
/*
-@@ -382,11 +382,11 @@ again:
+@@ -381,11 +381,11 @@ again:
IB_ACCESS_REMOTE_ATOMIC)))
goto acc_err;
/* Perform atomic OP and save result. */
- maddr = (atomic64_t *) qp->r_sge.sge.vaddr;
+ maddr = (atomic64_unchecked_t *) qp->r_sge.sge.vaddr;
- sdata = wqe->wr.wr.atomic.compare_add;
+ sdata = wqe->atomic_wr.compare_add;
*(u64 *) sqp->s_sge.sge.vaddr =
(wqe->wr.opcode == IB_WR_ATOMIC_FETCH_AND_ADD) ?
- (u64) atomic64_add_return(sdata, maddr) - sdata :
+ (u64) atomic64_add_return_unchecked(sdata, maddr) - sdata :
(u64) cmpxchg((u64 *) qp->r_sge.sge.vaddr,
- sdata, wqe->wr.wr.atomic.swap);
+ sdata, wqe->atomic_wr.swap);
goto send_comp;
diff --git a/drivers/staging/rtl8188eu/include/hal_intf.h b/drivers/staging/rtl8188eu/include/hal_intf.h
-index e73c634..c835570 100644
+index 1b1c102..375e471 100644
--- a/drivers/staging/rtl8188eu/include/hal_intf.h
+++ b/drivers/staging/rtl8188eu/include/hal_intf.h
@@ -217,7 +217,7 @@ struct hal_ops {
@@ -58260,7 +57381,7 @@ index e73c634..c835570 100644
enum rt_eeprom_type {
EEPROM_93C46,
diff --git a/drivers/staging/rtl8712/rtl871x_io.h b/drivers/staging/rtl8712/rtl871x_io.h
-index 070cc03..6806e37 100644
+index 26dd24c..2eb37c9 100644
--- a/drivers/staging/rtl8712/rtl871x_io.h
+++ b/drivers/staging/rtl8712/rtl871x_io.h
@@ -108,7 +108,7 @@ struct _io_ops {
@@ -58273,10 +57394,10 @@ index 070cc03..6806e37 100644
struct io_req {
struct list_head list;
diff --git a/drivers/staging/sm750fb/sm750.c b/drivers/staging/sm750fb/sm750.c
-index 07f8afd..66ea627 100644
+index 860e1c2..609ee2a 100644
--- a/drivers/staging/sm750fb/sm750.c
+++ b/drivers/staging/sm750fb/sm750.c
-@@ -766,6 +766,7 @@ static struct fb_ops lynxfb_ops = {
+@@ -722,6 +722,7 @@ static struct fb_ops lynxfb_ops = {
.fb_set_par = lynxfb_ops_set_par,
.fb_setcolreg = lynxfb_ops_setcolreg,
.fb_blank = lynxfb_ops_blank,
@@ -58284,7 +57405,7 @@ index 07f8afd..66ea627 100644
.fb_fillrect = cfb_fillrect,
.fb_imageblit = cfb_imageblit,
.fb_copyarea = cfb_copyarea,
-@@ -811,7 +812,6 @@ static int lynxfb_set_fbinfo(struct fb_info *info, int index)
+@@ -767,7 +768,6 @@ static int lynxfb_set_fbinfo(struct fb_info *info, int index)
par->index = index;
output->channel = &crtc->channel;
sm750fb_set_drv(par);
@@ -58292,19 +57413,19 @@ index 07f8afd..66ea627 100644
/*
* set current cursor variable and proc pointer,
-@@ -834,16 +834,20 @@ static int lynxfb_set_fbinfo(struct fb_info *info, int index)
- crtc->cursor.share = share;
- memset_io(crtc->cursor.vstart, 0, crtc->cursor.size);
+@@ -784,16 +784,20 @@ static int lynxfb_set_fbinfo(struct fb_info *info, int index)
+
+ memset_io(crtc->cursor.vstart, 0, crtc->cursor.size);
if (!g_hwcursor) {
- lynxfb_ops.fb_cursor = NULL;
+ pax_open_kernel();
+ *(void **)&lynxfb_ops.fb_cursor = NULL;
+ pax_close_kernel();
- crtc->cursor.disable(&crtc->cursor);
+ hw_cursor_disable(&crtc->cursor);
}
/* set info->fbops, must be set before fb_find_mode */
- if (!share->accel_off) {
+ if (!sm750_dev->accel_off) {
/* use 2d acceleration */
- lynxfb_ops.fb_fillrect = lynxfb_ops_fillrect;
- lynxfb_ops.fb_copyarea = lynxfb_ops_copyarea;
@@ -58339,11 +57460,120 @@ index 39edd20..d860d0c 100644
/** Register functions (in the bus driver) to get called by visorchipset
* whenever a bus or device appears for which this guest is to be the
+diff --git a/drivers/staging/wilc1000/host_interface.h b/drivers/staging/wilc1000/host_interface.h
+index b854db5..4c721d5 100644
+--- a/drivers/staging/wilc1000/host_interface.h
++++ b/drivers/staging/wilc1000/host_interface.h
+@@ -10,6 +10,7 @@
+ #ifndef HOST_INT_H
+ #define HOST_INT_H
+
++#include <linux/netdevice.h>
+ #include "coreconfigurator.h"
+
+ #define IP_ALEN 4
+diff --git a/drivers/staging/wilc1000/wilc_sdio.c b/drivers/staging/wilc1000/wilc_sdio.c
+index 300c571..a39d663 100644
+--- a/drivers/staging/wilc1000/wilc_sdio.c
++++ b/drivers/staging/wilc1000/wilc_sdio.c
+@@ -993,22 +993,22 @@ static int sdio_sync_ext(int nint /* how mant interrupts to enable. */)
+ ********************************************/
+
+ wilc_hif_func_t hif_sdio = {
+- sdio_init,
+- sdio_deinit,
+- sdio_read_reg,
+- sdio_write_reg,
+- sdio_read,
+- sdio_write,
+- sdio_sync,
+- sdio_clear_int,
+- sdio_read_int,
+- sdio_clear_int_ext,
+- sdio_read_size,
+- sdio_write,
+- sdio_read,
+- sdio_sync_ext,
++ .hif_init = sdio_init,
++ .hif_deinit = sdio_deinit,
++ .hif_read_reg = sdio_read_reg,
++ .hif_write_reg = sdio_write_reg,
++ .hif_block_rx = sdio_read,
++ .hif_block_tx = sdio_write,
++ .hif_sync = sdio_sync,
++ .hif_clear_int = sdio_clear_int,
++ .hif_read_int = sdio_read_int,
++ .hif_clear_int_ext = sdio_clear_int_ext,
++ .hif_read_size = sdio_read_size,
++ .hif_block_tx_ext = sdio_write,
++ .hif_block_rx_ext = sdio_read,
++ .hif_sync_ext = sdio_sync_ext,
+
+- sdio_set_max_speed,
+- sdio_set_default_speed,
++ .hif_set_max_bus_speed = sdio_set_max_speed,
++ .hif_set_default_bus_speed = sdio_set_default_speed,
+ };
+
+diff --git a/drivers/staging/wilc1000/wilc_spi.c b/drivers/staging/wilc1000/wilc_spi.c
+index 599508b..fc69923 100644
+--- a/drivers/staging/wilc1000/wilc_spi.c
++++ b/drivers/staging/wilc1000/wilc_spi.c
+@@ -1257,20 +1257,20 @@ static int spi_sync_ext(int nint /* how mant interrupts to enable. */)
+ *
+ ********************************************/
+ wilc_hif_func_t hif_spi = {
+- spi_init,
+- spi_deinit,
+- spi_read_reg,
+- spi_write_reg,
+- spi_read,
+- spi_write,
+- spi_sync,
+- spi_clear_int,
+- spi_read_int,
+- spi_clear_int_ext,
+- spi_read_size,
+- spi_write,
+- spi_read,
+- spi_sync_ext,
+- spi_max_bus_speed,
+- spi_default_bus_speed,
++ .hif_init = spi_init,
++ .hif_deinit = spi_deinit,
++ .hif_read_reg = spi_read_reg,
++ .hif_write_reg = spi_write_reg,
++ .hif_block_rx = spi_read,
++ .hif_block_tx = spi_write,
++ .hif_sync = spi_sync,
++ .hif_clear_int = spi_clear_int,
++ .hif_read_int = spi_read_int,
++ .hif_clear_int_ext = spi_clear_int_ext,
++ .hif_read_size = spi_read_size,
++ .hif_block_tx_ext = spi_write,
++ .hif_block_rx_ext = spi_read,
++ .hif_sync_ext = spi_sync_ext,
++ .hif_set_max_bus_speed = spi_max_bus_speed,
++ .hif_set_default_bus_speed = spi_default_bus_speed,
+ };
+diff --git a/drivers/staging/wilc1000/wilc_wlan.h b/drivers/staging/wilc1000/wilc_wlan.h
+index 57e1d51..b922b75 100644
+--- a/drivers/staging/wilc1000/wilc_wlan.h
++++ b/drivers/staging/wilc1000/wilc_wlan.h
+@@ -1,7 +1,7 @@
+ #ifndef WILC_WLAN_H
+ #define WILC_WLAN_H
+
+-
++#include <linux/netdevice.h>
+
+ #define ISWILC1000(id) (((id & 0xfffff000) == 0x100000) ? 1 : 0)
+
diff --git a/drivers/target/sbp/sbp_target.c b/drivers/target/sbp/sbp_target.c
-index 0edf320..49afe95 100644
+index 35f7d31..a9928a7 100644
--- a/drivers/target/sbp/sbp_target.c
+++ b/drivers/target/sbp/sbp_target.c
-@@ -60,7 +60,7 @@ static const u32 sbp_unit_directory_template[] = {
+@@ -58,7 +58,7 @@ static const u32 sbp_unit_directory_template[] = {
#define SESSION_MAINTENANCE_INTERVAL HZ
@@ -58352,7 +57582,7 @@ index 0edf320..49afe95 100644
static void session_maintenance_work(struct work_struct *);
static int sbp_run_transaction(struct fw_card *, int, int, int, int,
-@@ -441,7 +441,7 @@ static void sbp_management_request_login(
+@@ -439,7 +439,7 @@ static void sbp_management_request_login(
login->login_lun = unpacked_lun;
login->status_fifo_addr = sbp2_pointer_to_addr(&req->orb.status_fifo);
login->exclusive = LOGIN_ORB_EXCLUSIVE(be32_to_cpu(req->orb.misc));
@@ -58361,111 +57591,11 @@ index 0edf320..49afe95 100644
login->tgt_agt = sbp_target_agent_register(login);
if (IS_ERR(login->tgt_agt)) {
-diff --git a/drivers/target/target_core_sbc.c b/drivers/target/target_core_sbc.c
-index 0b4b2a6..98698d8 100644
---- a/drivers/target/target_core_sbc.c
-+++ b/drivers/target/target_core_sbc.c
-@@ -371,7 +371,8 @@ sbc_setup_write_same(struct se_cmd *cmd, unsigned char *flags, struct sbc_ops *o
- return 0;
- }
-
--static sense_reason_t xdreadwrite_callback(struct se_cmd *cmd, bool success)
-+static sense_reason_t xdreadwrite_callback(struct se_cmd *cmd, bool success,
-+ int *post_ret)
- {
- unsigned char *buf, *addr;
- struct scatterlist *sg;
-@@ -437,7 +438,8 @@ sbc_execute_rw(struct se_cmd *cmd)
- cmd->data_direction);
- }
-
--static sense_reason_t compare_and_write_post(struct se_cmd *cmd, bool success)
-+static sense_reason_t compare_and_write_post(struct se_cmd *cmd, bool success,
-+ int *post_ret)
- {
- struct se_device *dev = cmd->se_dev;
-
-@@ -447,8 +449,10 @@ static sense_reason_t compare_and_write_post(struct se_cmd *cmd, bool success)
- * sent to the backend driver.
- */
- spin_lock_irq(&cmd->t_state_lock);
-- if ((cmd->transport_state & CMD_T_SENT) && !cmd->scsi_status)
-+ if ((cmd->transport_state & CMD_T_SENT) && !cmd->scsi_status) {
- cmd->se_cmd_flags |= SCF_COMPARE_AND_WRITE_POST;
-+ *post_ret = 1;
-+ }
- spin_unlock_irq(&cmd->t_state_lock);
-
- /*
-@@ -460,7 +464,8 @@ static sense_reason_t compare_and_write_post(struct se_cmd *cmd, bool success)
- return TCM_NO_SENSE;
- }
-
--static sense_reason_t compare_and_write_callback(struct se_cmd *cmd, bool success)
-+static sense_reason_t compare_and_write_callback(struct se_cmd *cmd, bool success,
-+ int *post_ret)
- {
- struct se_device *dev = cmd->se_dev;
- struct scatterlist *write_sg = NULL, *sg;
-@@ -556,11 +561,11 @@ static sense_reason_t compare_and_write_callback(struct se_cmd *cmd, bool succes
-
- if (block_size < PAGE_SIZE) {
- sg_set_page(&write_sg[i], m.page, block_size,
-- block_size);
-+ m.piter.sg->offset + block_size);
- } else {
- sg_miter_next(&m);
- sg_set_page(&write_sg[i], m.page, block_size,
-- 0);
-+ m.piter.sg->offset);
- }
- len -= block_size;
- i++;
-diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c
-index 5bacc7b..010b8c4 100644
---- a/drivers/target/target_core_transport.c
-+++ b/drivers/target/target_core_transport.c
-@@ -1658,7 +1658,7 @@ bool target_stop_cmd(struct se_cmd *cmd, unsigned long *flags)
- void transport_generic_request_failure(struct se_cmd *cmd,
- sense_reason_t sense_reason)
- {
-- int ret = 0;
-+ int ret = 0, post_ret = 0;
-
- pr_debug("-----[ Storage Engine Exception for cmd: %p ITT: 0x%08llx"
- " CDB: 0x%02x\n", cmd, cmd->tag, cmd->t_task_cdb[0]);
-@@ -1680,7 +1680,7 @@ void transport_generic_request_failure(struct se_cmd *cmd,
- */
- if ((cmd->se_cmd_flags & SCF_COMPARE_AND_WRITE) &&
- cmd->transport_complete_callback)
-- cmd->transport_complete_callback(cmd, false);
-+ cmd->transport_complete_callback(cmd, false, &post_ret);
-
- switch (sense_reason) {
- case TCM_NON_EXISTENT_LUN:
-@@ -2068,11 +2068,13 @@ static void target_complete_ok_work(struct work_struct *work)
- */
- if (cmd->transport_complete_callback) {
- sense_reason_t rc;
-+ bool caw = (cmd->se_cmd_flags & SCF_COMPARE_AND_WRITE);
-+ bool zero_dl = !(cmd->data_length);
-+ int post_ret = 0;
-
-- rc = cmd->transport_complete_callback(cmd, true);
-- if (!rc && !(cmd->se_cmd_flags & SCF_COMPARE_AND_WRITE_POST)) {
-- if ((cmd->se_cmd_flags & SCF_COMPARE_AND_WRITE) &&
-- !cmd->data_length)
-+ rc = cmd->transport_complete_callback(cmd, true, &post_ret);
-+ if (!rc && !post_ret) {
-+ if (caw && zero_dl)
- goto queue_rsp;
-
- return;
diff --git a/drivers/thermal/cpu_cooling.c b/drivers/thermal/cpu_cooling.c
-index 42c6f71..1c64309 100644
+index e3fbc5a..a72202c 100644
--- a/drivers/thermal/cpu_cooling.c
+++ b/drivers/thermal/cpu_cooling.c
-@@ -838,10 +838,11 @@ __cpufreq_cooling_register(struct device_node *np,
+@@ -836,10 +836,11 @@ __cpufreq_cooling_register(struct device_node *np,
cpumask_copy(&cpufreq_dev->allowed_cpus, clip_cpus);
if (capacitance) {
@@ -58481,6 +57611,52 @@ index 42c6f71..1c64309 100644
cpufreq_dev->plat_get_static_power = plat_static_func;
ret = build_dyn_power_table(cpufreq_dev, capacitance);
+diff --git a/drivers/thermal/devfreq_cooling.c b/drivers/thermal/devfreq_cooling.c
+index 01f0015..aa56551 100644
+--- a/drivers/thermal/devfreq_cooling.c
++++ b/drivers/thermal/devfreq_cooling.c
+@@ -363,6 +363,15 @@ static struct thermal_cooling_device_ops devfreq_cooling_ops = {
+ .set_cur_state = devfreq_cooling_set_cur_state,
+ };
+
++static struct thermal_cooling_device_ops devfreq_cooling_power_ops = {
++ .get_max_state = devfreq_cooling_get_max_state,
++ .get_cur_state = devfreq_cooling_get_cur_state,
++ .set_cur_state = devfreq_cooling_set_cur_state,
++ .get_requested_power = devfreq_cooling_get_requested_power,
++ .state2power = devfreq_cooling_state2power,
++ .power2state = devfreq_cooling_power2state,
++};
++
+ /**
+ * devfreq_cooling_gen_tables() - Generate power and freq tables.
+ * @dfc: Pointer to devfreq cooling device.
+@@ -482,15 +491,9 @@ of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df,
+
+ dfc->devfreq = df;
+
+- if (dfc_power) {
++ if (dfc_power)
+ dfc->power_ops = dfc_power;
+
+- devfreq_cooling_ops.get_requested_power =
+- devfreq_cooling_get_requested_power;
+- devfreq_cooling_ops.state2power = devfreq_cooling_state2power;
+- devfreq_cooling_ops.power2state = devfreq_cooling_power2state;
+- }
+-
+ err = devfreq_cooling_gen_tables(dfc);
+ if (err)
+ goto free_dfc;
+@@ -502,7 +505,7 @@ of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df,
+ snprintf(dev_name, sizeof(dev_name), "thermal-devfreq-%d", dfc->id);
+
+ cdev = thermal_of_cooling_device_register(np, dev_name, dfc,
+- &devfreq_cooling_ops);
++ dfc_power ? &devfreq_cooling_power_ops : &devfreq_cooling_ops);
+ if (IS_ERR(cdev)) {
+ err = PTR_ERR(cdev);
+ dev_err(df->dev.parent,
diff --git a/drivers/thermal/int340x_thermal/int3400_thermal.c b/drivers/thermal/int340x_thermal/int3400_thermal.c
index 5836e55..740ab89 100644
--- a/drivers/thermal/int340x_thermal/int3400_thermal.c
@@ -58499,7 +57675,7 @@ index 5836e55..740ab89 100644
priv->thermal = thermal_zone_device_register("INT3400 Thermal", 0, 0,
priv, &int3400_thermal_ops,
diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c
-index 42b7d42..d48c0db 100644
+index be4eedc..96aaf2f 100644
--- a/drivers/thermal/of-thermal.c
+++ b/drivers/thermal/of-thermal.c
@@ -31,6 +31,7 @@
@@ -58554,7 +57730,7 @@ index 7fc919f..19f23a5 100644
};
diff --git a/drivers/tty/cyclades.c b/drivers/tty/cyclades.c
-index 87f6578..905c8f8 100644
+index d4a1331..dc8fe71 100644
--- a/drivers/tty/cyclades.c
+++ b/drivers/tty/cyclades.c
@@ -1570,10 +1570,10 @@ static int cy_open(struct tty_struct *tty, struct file *filp)
@@ -58570,7 +57746,7 @@ index 87f6578..905c8f8 100644
#endif
/*
-@@ -3970,7 +3970,7 @@ static int cyclades_proc_show(struct seq_file *m, void *v)
+@@ -3961,7 +3961,7 @@ static int cyclades_proc_show(struct seq_file *m, void *v)
for (j = 0; j < cy_card[i].nports; j++) {
info = &cy_card[i].ports[j];
@@ -58580,7 +57756,7 @@ index 87f6578..905c8f8 100644
struct tty_struct *tty;
struct tty_ldisc *ld;
diff --git a/drivers/tty/hvc/hvc_console.c b/drivers/tty/hvc/hvc_console.c
-index 4e9c4cc..2199d8f 100644
+index e46d628..d826fa1 100644
--- a/drivers/tty/hvc/hvc_console.c
+++ b/drivers/tty/hvc/hvc_console.c
@@ -343,7 +343,7 @@ static int hvc_open(struct tty_struct *tty, struct file * filp)
@@ -58603,7 +57779,7 @@ index 4e9c4cc..2199d8f 100644
tty_port_tty_set(&hp->port, NULL);
@@ -420,9 +420,9 @@ static void hvc_close(struct tty_struct *tty, struct file * filp)
*/
- tty_wait_until_sent_from_close(tty, HVC_CLOSE_WAIT);
+ tty_wait_until_sent(tty, HVC_CLOSE_WAIT);
} else {
- if (hp->port.count < 0)
+ if (atomic_read(&hp->port.count) < 0)
@@ -58638,7 +57814,7 @@ index 4e9c4cc..2199d8f 100644
spin_lock_irqsave(&hp->lock, flags);
diff --git a/drivers/tty/hvc/hvcs.c b/drivers/tty/hvc/hvcs.c
-index f7ff97c..0c0ebbf 100644
+index 5997b17..6851dbc 100644
--- a/drivers/tty/hvc/hvcs.c
+++ b/drivers/tty/hvc/hvcs.c
@@ -83,6 +83,7 @@
@@ -59006,10 +58182,10 @@ index c3fe026..9cfe421 100644
dlci->modem_rx = 0;
diff --git a/drivers/tty/n_tty.c b/drivers/tty/n_tty.c
-index a0285da..e84f8de 100644
+index cf000b3..63baffa 100644
--- a/drivers/tty/n_tty.c
+++ b/drivers/tty/n_tty.c
-@@ -1514,7 +1514,7 @@ n_tty_receive_char_lnext(struct tty_struct *tty, unsigned char c, char flag)
+@@ -1507,7 +1507,7 @@ n_tty_receive_char_lnext(struct tty_struct *tty, unsigned char c, char flag)
static void
n_tty_receive_buf_real_raw(struct tty_struct *tty, const unsigned char *cp,
@@ -59018,7 +58194,7 @@ index a0285da..e84f8de 100644
{
struct n_tty_data *ldata = tty->disc_data;
size_t n, head;
-@@ -1534,7 +1534,7 @@ n_tty_receive_buf_real_raw(struct tty_struct *tty, const unsigned char *cp,
+@@ -1527,7 +1527,7 @@ n_tty_receive_buf_real_raw(struct tty_struct *tty, const unsigned char *cp,
static void
n_tty_receive_buf_raw(struct tty_struct *tty, const unsigned char *cp,
@@ -59027,7 +58203,7 @@ index a0285da..e84f8de 100644
{
struct n_tty_data *ldata = tty->disc_data;
char flag = TTY_NORMAL;
-@@ -1551,7 +1551,7 @@ n_tty_receive_buf_raw(struct tty_struct *tty, const unsigned char *cp,
+@@ -1544,7 +1544,7 @@ n_tty_receive_buf_raw(struct tty_struct *tty, const unsigned char *cp,
static void
n_tty_receive_buf_closing(struct tty_struct *tty, const unsigned char *cp,
@@ -59036,7 +58212,7 @@ index a0285da..e84f8de 100644
{
char flag = TTY_NORMAL;
-@@ -1567,7 +1567,7 @@ n_tty_receive_buf_closing(struct tty_struct *tty, const unsigned char *cp,
+@@ -1560,7 +1560,7 @@ n_tty_receive_buf_closing(struct tty_struct *tty, const unsigned char *cp,
static void
n_tty_receive_buf_standard(struct tty_struct *tty, const unsigned char *cp,
@@ -59045,7 +58221,7 @@ index a0285da..e84f8de 100644
{
struct n_tty_data *ldata = tty->disc_data;
char flag = TTY_NORMAL;
-@@ -1601,7 +1601,7 @@ n_tty_receive_buf_standard(struct tty_struct *tty, const unsigned char *cp,
+@@ -1594,7 +1594,7 @@ n_tty_receive_buf_standard(struct tty_struct *tty, const unsigned char *cp,
static void
n_tty_receive_buf_fast(struct tty_struct *tty, const unsigned char *cp,
@@ -59054,7 +58230,7 @@ index a0285da..e84f8de 100644
{
struct n_tty_data *ldata = tty->disc_data;
char flag = TTY_NORMAL;
-@@ -1626,7 +1626,7 @@ n_tty_receive_buf_fast(struct tty_struct *tty, const unsigned char *cp,
+@@ -1619,7 +1619,7 @@ n_tty_receive_buf_fast(struct tty_struct *tty, const unsigned char *cp,
}
static void __receive_buf(struct tty_struct *tty, const unsigned char *cp,
@@ -59063,7 +58239,7 @@ index a0285da..e84f8de 100644
{
struct n_tty_data *ldata = tty->disc_data;
bool preops = I_ISTRIP(tty) || (I_IUCLC(tty) && L_IEXTEN(tty));
-@@ -1704,10 +1704,10 @@ static void __receive_buf(struct tty_struct *tty, const unsigned char *cp,
+@@ -1697,10 +1697,10 @@ static void __receive_buf(struct tty_struct *tty, const unsigned char *cp,
*/
static int
n_tty_receive_buf_common(struct tty_struct *tty, const unsigned char *cp,
@@ -59076,7 +58252,7 @@ index a0285da..e84f8de 100644
down_read(&tty->termios_rwsem);
-@@ -2583,6 +2583,7 @@ void n_tty_inherit_ops(struct tty_ldisc_ops *ops)
+@@ -2550,6 +2550,7 @@ void n_tty_inherit_ops(struct tty_ldisc_ops *ops)
{
*ops = tty_ldisc_N_TTY;
ops->owner = NULL;
@@ -59086,10 +58262,10 @@ index a0285da..e84f8de 100644
}
EXPORT_SYMBOL_GPL(n_tty_inherit_ops);
diff --git a/drivers/tty/pty.c b/drivers/tty/pty.c
-index 4d5937c..d6ae539 100644
+index a45660f..8aca6ee 100644
--- a/drivers/tty/pty.c
+++ b/drivers/tty/pty.c
-@@ -857,8 +857,10 @@ static void __init unix98_pty_init(void)
+@@ -860,8 +860,10 @@ static void __init unix98_pty_init(void)
panic("Couldn't register Unix98 pts driver");
/* Now create the /dev/ptmx special device */
@@ -59102,10 +58278,10 @@ index 4d5937c..d6ae539 100644
cdev_init(&ptmx_cdev, &ptmx_fops);
if (cdev_add(&ptmx_cdev, MKDEV(TTYAUX_MAJOR, 2), 1) ||
diff --git a/drivers/tty/rocket.c b/drivers/tty/rocket.c
-index c8dd8dc..dca6cfd 100644
+index 802eac7..f5dcf07 100644
--- a/drivers/tty/rocket.c
+++ b/drivers/tty/rocket.c
-@@ -914,7 +914,7 @@ static int rp_open(struct tty_struct *tty, struct file *filp)
+@@ -906,7 +906,7 @@ static int rp_open(struct tty_struct *tty, struct file *filp)
tty->driver_data = info;
tty_port_tty_set(port, tty);
@@ -59114,7 +58290,7 @@ index c8dd8dc..dca6cfd 100644
atomic_inc(&rp_num_ports_open);
#ifdef ROCKET_DEBUG_OPEN
-@@ -923,7 +923,7 @@ static int rp_open(struct tty_struct *tty, struct file *filp)
+@@ -915,7 +915,7 @@ static int rp_open(struct tty_struct *tty, struct file *filp)
#endif
}
#ifdef ROCKET_DEBUG_OPEN
@@ -59123,17 +58299,17 @@ index c8dd8dc..dca6cfd 100644
#endif
/*
-@@ -1515,7 +1515,7 @@ static void rp_hangup(struct tty_struct *tty)
- spin_unlock_irqrestore(&info->port.lock, flags);
- return;
- }
+@@ -1502,7 +1502,7 @@ static void rp_hangup(struct tty_struct *tty)
+ #endif
+ rp_flush_buffer(tty);
+ spin_lock_irqsave(&info->port.lock, flags);
- if (info->port.count)
+ if (atomic_read(&info->port.count))
atomic_dec(&rp_num_ports_open);
clear_bit((info->aiop * 8) + info->chan, (void *) &xmit_flags[info->board]);
spin_unlock_irqrestore(&info->port.lock, flags);
diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c
-index 271d121..f2e750c 100644
+index 3912646..9a324e9 100644
--- a/drivers/tty/serial/8250/8250_core.c
+++ b/drivers/tty/serial/8250/8250_core.c
@@ -488,9 +488,9 @@ static void univ8250_release_port(struct uart_port *port)
@@ -59162,7 +58338,7 @@ index 271d121..f2e750c 100644
if (share_irqs)
irqflag = IRQF_SHARED;
diff --git a/drivers/tty/serial/ifx6x60.c b/drivers/tty/serial/ifx6x60.c
-index 536a33b..1b98f43 100644
+index 88246f7..9036604 100644
--- a/drivers/tty/serial/ifx6x60.c
+++ b/drivers/tty/serial/ifx6x60.c
@@ -649,7 +649,7 @@ static void ifx_spi_complete(void *ctx)
@@ -59327,10 +58503,10 @@ index a260cde..6b2b5ce 100644
/* This is only available if kgdboc is a built in for early debugging */
static int __init kgdboc_early_init(char *opt)
diff --git a/drivers/tty/serial/msm_serial.c b/drivers/tty/serial/msm_serial.c
-index b73889c..9f74f0a 100644
+index dcde955..920693f 100644
--- a/drivers/tty/serial/msm_serial.c
+++ b/drivers/tty/serial/msm_serial.c
-@@ -1012,7 +1012,7 @@ static struct uart_driver msm_uart_driver = {
+@@ -1530,7 +1530,7 @@ static struct uart_driver msm_uart_driver = {
.cons = MSM_CONSOLE,
};
@@ -59339,7 +58515,7 @@ index b73889c..9f74f0a 100644
static const struct of_device_id msm_uartdm_table[] = {
{ .compatible = "qcom,msm-uartdm-v1.1", .data = (void *)UARTDM_1P1 },
-@@ -1036,7 +1036,7 @@ static int msm_serial_probe(struct platform_device *pdev)
+@@ -1554,7 +1554,7 @@ static int msm_serial_probe(struct platform_device *pdev)
line = pdev->id;
if (line < 0)
@@ -59349,10 +58525,10 @@ index b73889c..9f74f0a 100644
if (unlikely(line < 0 || line >= UART_NR))
return -ENXIO;
diff --git a/drivers/tty/serial/samsung.c b/drivers/tty/serial/samsung.c
-index 856686d..cd1e114 100644
+index d72cd73..aac0435 100644
--- a/drivers/tty/serial/samsung.c
+++ b/drivers/tty/serial/samsung.c
-@@ -994,11 +994,16 @@ static void s3c24xx_serial_shutdown(struct uart_port *port)
+@@ -970,11 +970,16 @@ static void s3c24xx_serial_shutdown(struct uart_port *port)
ourport->tx_in_progress = 0;
}
@@ -59369,7 +58545,7 @@ index 856686d..cd1e114 100644
dbg("s3c24xx_serial_startup: port=%p (%08llx,%p)\n",
port, (unsigned long long)port->mapbase, port->membase);
-@@ -1705,10 +1710,6 @@ static int s3c24xx_serial_init_port(struct s3c24xx_uart_port *ourport,
+@@ -1681,10 +1686,6 @@ static int s3c24xx_serial_init_port(struct s3c24xx_uart_port *ourport,
/* setup info for port */
port->dev = &platdev->dev;
@@ -59381,7 +58557,7 @@ index 856686d..cd1e114 100644
if (cfg->uart_flags & UPF_CONS_FLOW) {
diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c
-index 603d2cc..5033f58 100644
+index def5199..34857ea 100644
--- a/drivers/tty/serial/serial_core.c
+++ b/drivers/tty/serial/serial_core.c
@@ -1384,7 +1384,7 @@ static void uart_close(struct tty_struct *tty, struct file *filp)
@@ -59402,7 +58578,7 @@ index 603d2cc..5033f58 100644
return;
/*
-@@ -1518,7 +1518,7 @@ static void uart_hangup(struct tty_struct *tty)
+@@ -1517,7 +1517,7 @@ static void uart_hangup(struct tty_struct *tty)
uart_flush_buffer(tty);
uart_shutdown(tty, state);
spin_lock_irqsave(&port->lock, flags);
@@ -59411,7 +58587,7 @@ index 603d2cc..5033f58 100644
clear_bit(ASYNCB_NORMAL_ACTIVE, &port->flags);
spin_unlock_irqrestore(&port->lock, flags);
tty_port_tty_set(port, NULL);
-@@ -1600,7 +1600,7 @@ static int uart_open(struct tty_struct *tty, struct file *filp)
+@@ -1599,7 +1599,7 @@ static int uart_open(struct tty_struct *tty, struct file *filp)
pr_debug("uart_open(%d) called\n", line);
spin_lock_irq(&port->lock);
@@ -59441,7 +58617,7 @@ index b1c6bd3..5f038e2 100644
return 0;
}
diff --git a/drivers/tty/synclink.c b/drivers/tty/synclink.c
-index 2fac712..fcd5268 100644
+index 6188059..24bff50 100644
--- a/drivers/tty/synclink.c
+++ b/drivers/tty/synclink.c
@@ -3090,7 +3090,7 @@ static void mgsl_close(struct tty_struct *tty, struct file * filp)
@@ -59486,7 +58662,7 @@ index 2fac712..fcd5268 100644
spin_unlock_irqrestore(&info->irq_spinlock, flags);
port->blocked_open++;
-@@ -3327,7 +3327,7 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp,
+@@ -3326,7 +3326,7 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp,
if (debug_level >= DEBUG_LEVEL_INFO)
printk("%s(%d):block_til_ready blocking on %s count=%d\n",
@@ -59495,7 +58671,7 @@ index 2fac712..fcd5268 100644
tty_unlock(tty);
schedule();
-@@ -3339,12 +3339,12 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp,
+@@ -3338,12 +3338,12 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp,
/* FIXME: Racy on hangup during close wait */
if (!tty_hung_up_p(filp))
@@ -59510,16 +58686,16 @@ index 2fac712..fcd5268 100644
if (!retval)
port->flags |= ASYNC_NORMAL_ACTIVE;
-@@ -3396,7 +3396,7 @@ static int mgsl_open(struct tty_struct *tty, struct file * filp)
+@@ -3395,7 +3395,7 @@ static int mgsl_open(struct tty_struct *tty, struct file * filp)
if (debug_level >= DEBUG_LEVEL_INFO)
printk("%s(%d):mgsl_open(%s), old ref count = %d\n",
- __FILE__,__LINE__,tty->driver->name, info->port.count);
+ __FILE__,__LINE__,tty->driver->name, atomic_read(&info->port.count));
- /* If port is closing, signal caller to try again */
- if (info->port.flags & ASYNC_CLOSING){
-@@ -3415,10 +3415,10 @@ static int mgsl_open(struct tty_struct *tty, struct file * filp)
+ info->port.low_latency = (info->port.flags & ASYNC_LOW_LATENCY) ? 1 : 0;
+
+@@ -3405,10 +3405,10 @@ static int mgsl_open(struct tty_struct *tty, struct file * filp)
spin_unlock_irqrestore(&info->netlock, flags);
goto cleanup;
}
@@ -59532,7 +58708,7 @@ index 2fac712..fcd5268 100644
/* 1st open on this device, init hardware */
retval = startup(info);
if (retval < 0)
-@@ -3442,8 +3442,8 @@ cleanup:
+@@ -3432,8 +3432,8 @@ cleanup:
if (retval) {
if (tty->count == 1)
info->port.tty = NULL; /* tty layer will release tty struct */
@@ -59543,7 +58719,7 @@ index 2fac712..fcd5268 100644
}
return retval;
-@@ -7662,7 +7662,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
+@@ -7652,7 +7652,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
unsigned short new_crctype;
/* return error if TTY interface open */
@@ -59552,7 +58728,7 @@ index 2fac712..fcd5268 100644
return -EBUSY;
switch (encoding)
-@@ -7758,7 +7758,7 @@ static int hdlcdev_open(struct net_device *dev)
+@@ -7748,7 +7748,7 @@ static int hdlcdev_open(struct net_device *dev)
/* arbitrate between network and tty opens */
spin_lock_irqsave(&info->netlock, flags);
@@ -59561,7 +58737,7 @@ index 2fac712..fcd5268 100644
printk(KERN_WARNING "%s: hdlc_open returning busy\n", dev->name);
spin_unlock_irqrestore(&info->netlock, flags);
return -EBUSY;
-@@ -7844,7 +7844,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+@@ -7834,7 +7834,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
printk("%s:hdlcdev_ioctl(%s)\n",__FILE__,dev->name);
/* return error if TTY interface open */
@@ -59571,7 +58747,7 @@ index 2fac712..fcd5268 100644
if (cmd != SIOCWANDEV)
diff --git a/drivers/tty/synclink_gt.c b/drivers/tty/synclink_gt.c
-index 0ea8eee..b3f1b8f 100644
+index 6fc39fb..bb25ac4 100644
--- a/drivers/tty/synclink_gt.c
+++ b/drivers/tty/synclink_gt.c
@@ -670,7 +670,7 @@ static int open(struct tty_struct *tty, struct file *filp)
@@ -59581,9 +58757,9 @@ index 0ea8eee..b3f1b8f 100644
- DBGINFO(("%s open, old ref count = %d\n", info->device_name, info->port.count));
+ DBGINFO(("%s open, old ref count = %d\n", info->device_name, atomic_read(&info->port.count)));
- /* If port is closing, signal caller to try again */
- if (info->port.flags & ASYNC_CLOSING){
-@@ -691,10 +691,10 @@ static int open(struct tty_struct *tty, struct file *filp)
+ mutex_lock(&info->port.mutex);
+ info->port.low_latency = (info->port.flags & ASYNC_LOW_LATENCY) ? 1 : 0;
+@@ -682,10 +682,10 @@ static int open(struct tty_struct *tty, struct file *filp)
mutex_unlock(&info->port.mutex);
goto cleanup;
}
@@ -59596,7 +58772,7 @@ index 0ea8eee..b3f1b8f 100644
/* 1st open on this device, init hardware */
retval = startup(info);
if (retval < 0) {
-@@ -715,8 +715,8 @@ cleanup:
+@@ -706,8 +706,8 @@ cleanup:
if (retval) {
if (tty->count == 1)
info->port.tty = NULL; /* tty layer will release tty struct */
@@ -59607,7 +58783,7 @@ index 0ea8eee..b3f1b8f 100644
}
DBGINFO(("%s open rc=%d\n", info->device_name, retval));
-@@ -729,7 +729,7 @@ static void close(struct tty_struct *tty, struct file *filp)
+@@ -720,7 +720,7 @@ static void close(struct tty_struct *tty, struct file *filp)
if (sanity_check(info, tty->name, "close"))
return;
@@ -59616,7 +58792,7 @@ index 0ea8eee..b3f1b8f 100644
if (tty_port_close_start(&info->port, tty, filp) == 0)
goto cleanup;
-@@ -746,7 +746,7 @@ static void close(struct tty_struct *tty, struct file *filp)
+@@ -737,7 +737,7 @@ static void close(struct tty_struct *tty, struct file *filp)
tty_port_close_end(&info->port, tty);
info->port.tty = NULL;
cleanup:
@@ -59625,7 +58801,7 @@ index 0ea8eee..b3f1b8f 100644
}
static void hangup(struct tty_struct *tty)
-@@ -764,7 +764,7 @@ static void hangup(struct tty_struct *tty)
+@@ -755,7 +755,7 @@ static void hangup(struct tty_struct *tty)
shutdown(info);
spin_lock_irqsave(&info->port.lock, flags);
@@ -59634,7 +58810,7 @@ index 0ea8eee..b3f1b8f 100644
info->port.flags &= ~ASYNC_NORMAL_ACTIVE;
info->port.tty = NULL;
spin_unlock_irqrestore(&info->port.lock, flags);
-@@ -1449,7 +1449,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
+@@ -1440,7 +1440,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
unsigned short new_crctype;
/* return error if TTY interface open */
@@ -59643,7 +58819,7 @@ index 0ea8eee..b3f1b8f 100644
return -EBUSY;
DBGINFO(("%s hdlcdev_attach\n", info->device_name));
-@@ -1545,7 +1545,7 @@ static int hdlcdev_open(struct net_device *dev)
+@@ -1536,7 +1536,7 @@ static int hdlcdev_open(struct net_device *dev)
/* arbitrate between network and tty opens */
spin_lock_irqsave(&info->netlock, flags);
@@ -59652,7 +58828,7 @@ index 0ea8eee..b3f1b8f 100644
DBGINFO(("%s hdlc_open busy\n", dev->name));
spin_unlock_irqrestore(&info->netlock, flags);
return -EBUSY;
-@@ -1630,7 +1630,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+@@ -1621,7 +1621,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
DBGINFO(("%s hdlcdev_ioctl\n", dev->name));
/* return error if TTY interface open */
@@ -59661,7 +58837,7 @@ index 0ea8eee..b3f1b8f 100644
return -EBUSY;
if (cmd != SIOCWANDEV)
-@@ -2417,7 +2417,7 @@ static irqreturn_t slgt_interrupt(int dummy, void *dev_id)
+@@ -2408,7 +2408,7 @@ static irqreturn_t slgt_interrupt(int dummy, void *dev_id)
if (port == NULL)
continue;
spin_lock(&port->lock);
@@ -59670,7 +58846,7 @@ index 0ea8eee..b3f1b8f 100644
port->pending_bh && !port->bh_running &&
!port->bh_requested) {
DBGISR(("%s bh queued\n", port->device_name));
-@@ -3303,7 +3303,7 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
+@@ -3294,7 +3294,7 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
add_wait_queue(&port->open_wait, &wait);
spin_lock_irqsave(&info->lock, flags);
@@ -59679,7 +58855,7 @@ index 0ea8eee..b3f1b8f 100644
spin_unlock_irqrestore(&info->lock, flags);
port->blocked_open++;
-@@ -3339,7 +3339,7 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
+@@ -3329,7 +3329,7 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
remove_wait_queue(&port->open_wait, &wait);
if (!tty_hung_up_p(filp))
@@ -59689,7 +58865,7 @@ index 0ea8eee..b3f1b8f 100644
if (!retval)
diff --git a/drivers/tty/synclinkmp.c b/drivers/tty/synclinkmp.c
-index 08633a8..3d56e14 100644
+index fb00a06..bb80abd 100644
--- a/drivers/tty/synclinkmp.c
+++ b/drivers/tty/synclinkmp.c
@@ -750,7 +750,7 @@ static int open(struct tty_struct *tty, struct file *filp)
@@ -59699,9 +58875,9 @@ index 08633a8..3d56e14 100644
- __FILE__,__LINE__,tty->driver->name, info->port.count);
+ __FILE__,__LINE__,tty->driver->name, atomic_read(&info->port.count));
- /* If port is closing, signal caller to try again */
- if (info->port.flags & ASYNC_CLOSING){
-@@ -769,10 +769,10 @@ static int open(struct tty_struct *tty, struct file *filp)
+ info->port.low_latency = (info->port.flags & ASYNC_LOW_LATENCY) ? 1 : 0;
+
+@@ -760,10 +760,10 @@ static int open(struct tty_struct *tty, struct file *filp)
spin_unlock_irqrestore(&info->netlock, flags);
goto cleanup;
}
@@ -59714,7 +58890,7 @@ index 08633a8..3d56e14 100644
/* 1st open on this device, init hardware */
retval = startup(info);
if (retval < 0)
-@@ -796,8 +796,8 @@ cleanup:
+@@ -787,8 +787,8 @@ cleanup:
if (retval) {
if (tty->count == 1)
info->port.tty = NULL; /* tty layer will release tty struct */
@@ -59725,7 +58901,7 @@ index 08633a8..3d56e14 100644
}
return retval;
-@@ -815,7 +815,7 @@ static void close(struct tty_struct *tty, struct file *filp)
+@@ -806,7 +806,7 @@ static void close(struct tty_struct *tty, struct file *filp)
if (debug_level >= DEBUG_LEVEL_INFO)
printk("%s(%d):%s close() entry, count=%d\n",
@@ -59734,7 +58910,7 @@ index 08633a8..3d56e14 100644
if (tty_port_close_start(&info->port, tty, filp) == 0)
goto cleanup;
-@@ -834,7 +834,7 @@ static void close(struct tty_struct *tty, struct file *filp)
+@@ -825,7 +825,7 @@ static void close(struct tty_struct *tty, struct file *filp)
cleanup:
if (debug_level >= DEBUG_LEVEL_INFO)
printk("%s(%d):%s close() exit, count=%d\n", __FILE__,__LINE__,
@@ -59743,7 +58919,7 @@ index 08633a8..3d56e14 100644
}
/* Called by tty_hangup() when a hangup is signaled.
-@@ -857,7 +857,7 @@ static void hangup(struct tty_struct *tty)
+@@ -848,7 +848,7 @@ static void hangup(struct tty_struct *tty)
shutdown(info);
spin_lock_irqsave(&info->port.lock, flags);
@@ -59752,7 +58928,7 @@ index 08633a8..3d56e14 100644
info->port.flags &= ~ASYNC_NORMAL_ACTIVE;
info->port.tty = NULL;
spin_unlock_irqrestore(&info->port.lock, flags);
-@@ -1565,7 +1565,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
+@@ -1556,7 +1556,7 @@ static int hdlcdev_attach(struct net_device *dev, unsigned short encoding,
unsigned short new_crctype;
/* return error if TTY interface open */
@@ -59761,7 +58937,7 @@ index 08633a8..3d56e14 100644
return -EBUSY;
switch (encoding)
-@@ -1661,7 +1661,7 @@ static int hdlcdev_open(struct net_device *dev)
+@@ -1652,7 +1652,7 @@ static int hdlcdev_open(struct net_device *dev)
/* arbitrate between network and tty opens */
spin_lock_irqsave(&info->netlock, flags);
@@ -59770,7 +58946,7 @@ index 08633a8..3d56e14 100644
printk(KERN_WARNING "%s: hdlc_open returning busy\n", dev->name);
spin_unlock_irqrestore(&info->netlock, flags);
return -EBUSY;
-@@ -1747,7 +1747,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+@@ -1738,7 +1738,7 @@ static int hdlcdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
printk("%s:hdlcdev_ioctl(%s)\n",__FILE__,dev->name);
/* return error if TTY interface open */
@@ -59779,7 +58955,7 @@ index 08633a8..3d56e14 100644
return -EBUSY;
if (cmd != SIOCWANDEV)
-@@ -2624,7 +2624,7 @@ static irqreturn_t synclinkmp_interrupt(int dummy, void *dev_id)
+@@ -2615,7 +2615,7 @@ static irqreturn_t synclinkmp_interrupt(int dummy, void *dev_id)
* do not request bottom half processing if the
* device is not open in a normal mode.
*/
@@ -59788,7 +58964,7 @@ index 08633a8..3d56e14 100644
port->pending_bh && !port->bh_running &&
!port->bh_requested ) {
if ( debug_level >= DEBUG_LEVEL_ISR )
-@@ -3321,10 +3321,10 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
+@@ -3312,10 +3312,10 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
if (debug_level >= DEBUG_LEVEL_INFO)
printk("%s(%d):%s block_til_ready() before block, count=%d\n",
@@ -59801,7 +58977,7 @@ index 08633a8..3d56e14 100644
spin_unlock_irqrestore(&info->lock, flags);
port->blocked_open++;
-@@ -3352,7 +3352,7 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
+@@ -3342,7 +3342,7 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
if (debug_level >= DEBUG_LEVEL_INFO)
printk("%s(%d):%s block_til_ready() count=%d\n",
@@ -59810,7 +58986,7 @@ index 08633a8..3d56e14 100644
tty_unlock(tty);
schedule();
-@@ -3362,12 +3362,12 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
+@@ -3352,12 +3352,12 @@ static int block_til_ready(struct tty_struct *tty, struct file *filp,
set_current_state(TASK_RUNNING);
remove_wait_queue(&port->open_wait, &wait);
if (!tty_hung_up_p(filp))
@@ -59826,10 +59002,10 @@ index 08633a8..3d56e14 100644
if (!retval)
port->flags |= ASYNC_NORMAL_ACTIVE;
diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
-index 95b330a..43dc301 100644
+index 5381a72..ad8c38f 100644
--- a/drivers/tty/sysrq.c
+++ b/drivers/tty/sysrq.c
-@@ -1079,7 +1079,7 @@ EXPORT_SYMBOL(unregister_sysrq_key);
+@@ -1083,7 +1083,7 @@ EXPORT_SYMBOL(unregister_sysrq_key);
static ssize_t write_sysrq_trigger(struct file *file, const char __user *buf,
size_t count, loff_t *ppos)
{
@@ -59839,10 +59015,28 @@ index 95b330a..43dc301 100644
if (get_user(c, buf))
diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
-index f435977..8b399ef 100644
+index 7cef543..d58dc7d 100644
--- a/drivers/tty/tty_io.c
+++ b/drivers/tty/tty_io.c
-@@ -3533,7 +3533,7 @@ EXPORT_SYMBOL(tty_devnum);
+@@ -105,6 +105,8 @@
+ #include <linux/kmod.h>
+ #include <linux/nsproxy.h>
+
++#include <linux/grsecurity.h>
++
+ #undef TTY_DEBUG_HANGUP
+ #ifdef TTY_DEBUG_HANGUP
+ # define tty_debug_hangup(tty, f, args...) tty_debug(tty, f, ##args)
+@@ -2281,6 +2283,8 @@ static int tiocsti(struct tty_struct *tty, char __user *p)
+ char ch, mbz = 0;
+ struct tty_ldisc *ld;
+
++ if (gr_handle_tiocsti(tty))
++ return -EPERM;
+ if ((current->signal->tty != tty) && !capable(CAP_SYS_ADMIN))
+ return -EPERM;
+ if (get_user(ch, p))
+@@ -3564,7 +3568,7 @@ EXPORT_SYMBOL(tty_devnum);
void tty_default_fops(struct file_operations *fops)
{
@@ -59852,7 +59046,7 @@ index f435977..8b399ef 100644
/*
diff --git a/drivers/tty/tty_ldisc.c b/drivers/tty/tty_ldisc.c
-index 71750cb..8db9583 100644
+index 629e3c8..ff89802 100644
--- a/drivers/tty/tty_ldisc.c
+++ b/drivers/tty/tty_ldisc.c
@@ -68,7 +68,7 @@ int tty_register_ldisc(int disc, struct tty_ldisc_ops *new_ldisc)
@@ -59892,10 +59086,10 @@ index 71750cb..8db9583 100644
raw_spin_unlock_irqrestore(&tty_ldiscs_lock, flags);
}
diff --git a/drivers/tty/tty_port.c b/drivers/tty/tty_port.c
-index 40b31835..94d92ae 100644
+index 482f33f..a90921e 100644
--- a/drivers/tty/tty_port.c
+++ b/drivers/tty/tty_port.c
-@@ -236,7 +236,7 @@ void tty_port_hangup(struct tty_port *port)
+@@ -235,7 +235,7 @@ void tty_port_hangup(struct tty_port *port)
unsigned long flags;
spin_lock_irqsave(&port->lock, flags);
@@ -59904,7 +59098,7 @@ index 40b31835..94d92ae 100644
port->flags &= ~ASYNC_NORMAL_ACTIVE;
tty = port->tty;
if (tty)
-@@ -398,7 +398,7 @@ int tty_port_block_til_ready(struct tty_port *port,
+@@ -387,7 +387,7 @@ int tty_port_block_til_ready(struct tty_port *port,
/* The port lock protects the port counts */
spin_lock_irqsave(&port->lock, flags);
@@ -59913,7 +59107,7 @@ index 40b31835..94d92ae 100644
port->blocked_open++;
spin_unlock_irqrestore(&port->lock, flags);
-@@ -440,7 +440,7 @@ int tty_port_block_til_ready(struct tty_port *port,
+@@ -428,7 +428,7 @@ int tty_port_block_til_ready(struct tty_port *port,
we must not mess that up further */
spin_lock_irqsave(&port->lock, flags);
if (!tty_hung_up_p(filp))
@@ -59922,7 +59116,7 @@ index 40b31835..94d92ae 100644
port->blocked_open--;
if (retval == 0)
port->flags |= ASYNC_NORMAL_ACTIVE;
-@@ -476,19 +476,19 @@ int tty_port_close_start(struct tty_port *port,
+@@ -461,19 +461,19 @@ int tty_port_close_start(struct tty_port *port,
return 0;
spin_lock_irqsave(&port->lock, flags);
@@ -59949,7 +59143,7 @@ index 40b31835..94d92ae 100644
spin_unlock_irqrestore(&port->lock, flags);
return 0;
}
-@@ -590,7 +590,7 @@ int tty_port_open(struct tty_port *port, struct tty_struct *tty,
+@@ -570,7 +570,7 @@ int tty_port_open(struct tty_port *port, struct tty_struct *tty,
struct file *filp)
{
spin_lock_irq(&port->lock);
@@ -60020,7 +59214,7 @@ index 6f0336f..5818bc1 100644
ret = -EPERM;
goto reterr;
diff --git a/drivers/uio/uio.c b/drivers/uio/uio.c
-index 8196581..aa153a5 100644
+index bcc1fc0..0d989a9 100644
--- a/drivers/uio/uio.c
+++ b/drivers/uio/uio.c
@@ -25,6 +25,7 @@
@@ -60074,9 +59268,9 @@ index 8196581..aa153a5 100644
- event_count = atomic_read(&idev->event);
+ event_count = atomic_read_unchecked(&idev->event);
if (event_count != listener->event_count) {
+ __set_current_state(TASK_RUNNING);
if (copy_to_user(buf, &event_count, count))
- retval = -EFAULT;
-@@ -579,9 +580,13 @@ static ssize_t uio_write(struct file *filep, const char __user *buf,
+@@ -580,9 +581,13 @@ static ssize_t uio_write(struct file *filep, const char __user *buf,
static int uio_find_mem_index(struct vm_area_struct *vma)
{
struct uio_device *idev = vma->vm_private_data;
@@ -60091,7 +59285,7 @@ index 8196581..aa153a5 100644
return -1;
return (int)vma->vm_pgoff;
}
-@@ -813,7 +818,7 @@ int __uio_register_device(struct module *owner,
+@@ -814,7 +819,7 @@ int __uio_register_device(struct module *owner,
idev->owner = owner;
idev->info = info;
init_waitqueue_head(&idev->wait);
@@ -60197,7 +59391,7 @@ index db322d9..f0f4bc1 100644
if (!left--) {
if (instance->disconnected)
diff --git a/drivers/usb/class/cdc-acm.h b/drivers/usb/class/cdc-acm.h
-index dd9af38..75b53e3 100644
+index ccfaba9..523f476 100644
--- a/drivers/usb/class/cdc-acm.h
+++ b/drivers/usb/class/cdc-acm.h
@@ -95,7 +95,7 @@ struct acm {
@@ -60290,10 +59484,10 @@ index 38ae877c..9bf9e7d 100644
(uurb->endpoint & USB_DIR_IN);
diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
-index 4d64e5c4..e21932a 100644
+index 1c102d6..d15688e 100644
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
-@@ -1554,7 +1554,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
+@@ -1605,7 +1605,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
*/
usb_get_urb(urb);
atomic_inc(&urb->use_count);
@@ -60302,7 +59496,7 @@ index 4d64e5c4..e21932a 100644
usbmon_urb_submit(&hcd->self, urb);
/* NOTE requirements on root-hub callers (usbfs and the hub
-@@ -1581,7 +1581,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
+@@ -1632,7 +1632,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
urb->hcpriv = NULL;
INIT_LIST_HEAD(&urb->urb_list);
atomic_dec(&urb->use_count);
@@ -60312,7 +59506,7 @@ index 4d64e5c4..e21932a 100644
wake_up(&usb_kill_urb_queue);
usb_put_urb(urb);
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
-index 6208433..fe57c7f 100644
+index 1560f3f..ba76922 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -26,6 +26,7 @@
@@ -60323,7 +59517,7 @@ index 6208433..fe57c7f 100644
#include <asm/uaccess.h>
#include <asm/byteorder.h>
-@@ -4702,6 +4703,10 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
+@@ -4711,6 +4712,10 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
goto done;
return;
}
@@ -60335,7 +59529,7 @@ index 6208433..fe57c7f 100644
unit_load = 150;
else
diff --git a/drivers/usb/core/sysfs.c b/drivers/usb/core/sysfs.c
-index c54fd8b..6e9f011 100644
+index 65b6e6b..c0afa90 100644
--- a/drivers/usb/core/sysfs.c
+++ b/drivers/usb/core/sysfs.c
@@ -244,7 +244,7 @@ static ssize_t urbnum_show(struct device *dev, struct device_attribute *attr,
@@ -60348,7 +59542,7 @@ index c54fd8b..6e9f011 100644
static DEVICE_ATTR_RO(urbnum);
diff --git a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c
-index 8d5b2f4..3896940 100644
+index f8bbd0b..85b2e6a 100644
--- a/drivers/usb/core/usb.c
+++ b/drivers/usb/core/usb.c
@@ -447,7 +447,7 @@ struct usb_device *usb_alloc_dev(struct usb_device *parent,
@@ -60402,7 +59596,7 @@ index 8cfc319..4868255 100644
return 0;
}
diff --git a/drivers/usb/gadget/function/f_uac1.c b/drivers/usb/gadget/function/f_uac1.c
-index 7856b33..8b7fe09 100644
+index 6a2346b..22dd790 100644
--- a/drivers/usb/gadget/function/f_uac1.c
+++ b/drivers/usb/gadget/function/f_uac1.c
@@ -14,6 +14,7 @@
@@ -60414,10 +59608,10 @@ index 7856b33..8b7fe09 100644
#include "u_uac1.h"
diff --git a/drivers/usb/gadget/function/u_serial.c b/drivers/usb/gadget/function/u_serial.c
-index 7ee05793..2e31e99 100644
+index f7771d8..5942693 100644
--- a/drivers/usb/gadget/function/u_serial.c
+++ b/drivers/usb/gadget/function/u_serial.c
-@@ -732,9 +732,9 @@ static int gs_open(struct tty_struct *tty, struct file *file)
+@@ -733,9 +733,9 @@ static int gs_open(struct tty_struct *tty, struct file *file)
spin_lock_irq(&port->port_lock);
/* already open? Great. */
@@ -60429,7 +59623,7 @@ index 7ee05793..2e31e99 100644
/* currently opening/closing? wait ... */
} else if (port->openclose) {
-@@ -793,7 +793,7 @@ static int gs_open(struct tty_struct *tty, struct file *file)
+@@ -794,7 +794,7 @@ static int gs_open(struct tty_struct *tty, struct file *file)
tty->driver_data = port;
port->port.tty = tty;
@@ -60438,7 +59632,7 @@ index 7ee05793..2e31e99 100644
port->openclose = false;
/* if connected, start the I/O stream */
-@@ -835,11 +835,11 @@ static void gs_close(struct tty_struct *tty, struct file *file)
+@@ -836,11 +836,11 @@ static void gs_close(struct tty_struct *tty, struct file *file)
spin_lock_irq(&port->port_lock);
@@ -60453,7 +59647,7 @@ index 7ee05793..2e31e99 100644
goto exit;
}
-@@ -849,7 +849,7 @@ static void gs_close(struct tty_struct *tty, struct file *file)
+@@ -850,7 +850,7 @@ static void gs_close(struct tty_struct *tty, struct file *file)
* and sleep if necessary
*/
port->openclose = true;
@@ -60462,7 +59656,7 @@ index 7ee05793..2e31e99 100644
gser = port->port_usb;
if (gser && gser->disconnect)
-@@ -1065,7 +1065,7 @@ static int gs_closed(struct gs_port *port)
+@@ -1066,7 +1066,7 @@ static int gs_closed(struct gs_port *port)
int cond;
spin_lock_irq(&port->port_lock);
@@ -60471,7 +59665,7 @@ index 7ee05793..2e31e99 100644
spin_unlock_irq(&port->port_lock);
return cond;
}
-@@ -1208,7 +1208,7 @@ int gserial_connect(struct gserial *gser, u8 port_num)
+@@ -1209,7 +1209,7 @@ int gserial_connect(struct gserial *gser, u8 port_num)
/* if it's already open, start I/O ... and notify the serial
* protocol about open/close status (connect/disconnect).
*/
@@ -60489,7 +59683,7 @@ index 7ee05793..2e31e99 100644
wake_up_interruptible(&port->drain_wait);
if (port->port.tty)
tty_hangup(port->port.tty);
-@@ -1271,7 +1271,7 @@ void gserial_disconnect(struct gserial *gser)
+@@ -1268,7 +1268,7 @@ void gserial_disconnect(struct gserial *gser)
/* finally, free any unused/unusable I/O buffers */
spin_lock_irqsave(&port->port_lock, flags);
@@ -60511,7 +59705,7 @@ index c78c841..48fd281 100644
#include "u_uac1.h"
diff --git a/drivers/usb/gadget/udc/dummy_hcd.c b/drivers/usb/gadget/udc/dummy_hcd.c
-index 27af0f0..c1ff952 100644
+index dde4445..f51cd5a 100644
--- a/drivers/usb/gadget/udc/dummy_hcd.c
+++ b/drivers/usb/gadget/udc/dummy_hcd.c
@@ -2463,7 +2463,7 @@ static int dummy_setup(struct usb_hcd *hcd)
@@ -60524,7 +59718,7 @@ index 27af0f0..c1ff952 100644
dum->hs_hcd = hcd_to_dummy_hcd(hcd);
dum->hs_hcd->dum = dum;
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
-index c63d82c..a7e8665 100644
+index 48c92bf..3f30f77 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -564,7 +564,7 @@ static int ehci_init(struct usb_hcd *hcd)
@@ -60575,23 +59769,10 @@ index 54f5332..8b8335c 100644
/* one buffer entry per 4K ... first might be short or unaligned */
diff --git a/drivers/usb/host/fotg210-hcd.c b/drivers/usb/host/fotg210-hcd.c
-index 000ed80..2701154 100644
+index 2341af4..ca7e7ac 100644
--- a/drivers/usb/host/fotg210-hcd.c
+++ b/drivers/usb/host/fotg210-hcd.c
-@@ -5231,7 +5231,7 @@ static int hcd_fotg210_init(struct usb_hcd *hcd)
-
- /* Accept arbitrarily long scatter-gather lists */
- if (!(hcd->driver->flags & HCD_LOCAL_MEM))
-- hcd->self.sg_tablesize = ~0;
-+ hcd->self.sg_tablesize = SG_ALL;
- return 0;
- }
-
-diff --git a/drivers/usb/host/fusbh200-hcd.c b/drivers/usb/host/fusbh200-hcd.c
-index 1fd8718..c7ff47c 100644
---- a/drivers/usb/host/fusbh200-hcd.c
-+++ b/drivers/usb/host/fusbh200-hcd.c
-@@ -5156,7 +5156,7 @@ static int hcd_fusbh200_init(struct usb_hcd *hcd)
+@@ -5036,7 +5036,7 @@ static int hcd_fotg210_init(struct usb_hcd *hcd)
/* Accept arbitrarily long scatter-gather lists */
if (!(hcd->driver->flags & HCD_LOCAL_MEM))
@@ -60679,12 +59860,12 @@ index a7de8e8..e1ef134 100644
spin_lock_init(&uhci->lock);
setup_timer(&uhci->fsbr_timer, uhci_fsbr_timeout,
diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
-index c47d3e4..35bcc1e 100644
+index c2d6520..04853a9 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
-@@ -30,7 +30,7 @@
-
- #define PORT2_SSIC_CONFIG_REG2 0x883c
+@@ -32,7 +32,7 @@
+ #define SSIC_PORT_CFG2 0x880c
+ #define SSIC_PORT_CFG2_OFFSET 0x30
#define PROG_DONE (1 << 30)
-#define SSIC_PORT_UNUSED (1 << 31)
+#define SSIC_PORT_UNUSED (1U << 31)
@@ -60692,7 +59873,7 @@ index c47d3e4..35bcc1e 100644
/* Device for a quirk */
#define PCI_VENDOR_ID_FRESCO_LOGIC 0x1b73
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index e40c300..7eb36da 100644
+index dca0a46..f07e636 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -4851,7 +4851,7 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
@@ -60819,7 +60000,7 @@ index a863a98..d272795 100644
/*
* NOTE:
diff --git a/drivers/usb/usbip/vhci_hcd.c b/drivers/usb/usbip/vhci_hcd.c
-index e9ef1ec..c3a0b04 100644
+index 7fbe19d..ac512fd 100644
--- a/drivers/usb/usbip/vhci_hcd.c
+++ b/drivers/usb/usbip/vhci_hcd.c
@@ -440,7 +440,7 @@ static void vhci_tx_urb(struct urb *urb)
@@ -60831,7 +60012,7 @@ index e9ef1ec..c3a0b04 100644
if (priv->seqnum == 0xffff)
dev_info(&urb->dev->dev, "seqnum max\n");
-@@ -685,7 +685,7 @@ static int vhci_urb_dequeue(struct usb_hcd *hcd, struct urb *urb, int status)
+@@ -687,7 +687,7 @@ static int vhci_urb_dequeue(struct usb_hcd *hcd, struct urb *urb, int status)
return -ENOMEM;
}
@@ -60840,7 +60021,7 @@ index e9ef1ec..c3a0b04 100644
if (unlink->seqnum == 0xffff)
pr_info("seqnum max\n");
-@@ -889,7 +889,7 @@ static int vhci_start(struct usb_hcd *hcd)
+@@ -891,7 +891,7 @@ static int vhci_start(struct usb_hcd *hcd)
vdev->rhport = rhport;
}
@@ -60910,19 +60091,6 @@ index 69af4fd..da390d7 100644
}
/* Return the xfer's ID. */
-diff --git a/drivers/vfio/vfio.c b/drivers/vfio/vfio.c
-index 563c510..1fcc957 100644
---- a/drivers/vfio/vfio.c
-+++ b/drivers/vfio/vfio.c
-@@ -517,7 +517,7 @@ static int vfio_group_nb_add_dev(struct vfio_group *group, struct device *dev)
- return 0;
-
- /* TODO Prevent device auto probing */
-- WARN("Device %s added to live group %d!\n", dev_name(dev),
-+ WARN(1, "Device %s added to live group %d!\n", dev_name(dev),
- iommu_group_id(group->iommu_group));
-
- return 0;
diff --git a/drivers/vhost/vringh.c b/drivers/vhost/vringh.c
index 3bb02c6..a01ff38 100644
--- a/drivers/vhost/vringh.c
@@ -64467,7 +63635,7 @@ index 3c14e43..2630570 100644
+4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+4 4 4 4 4 4
diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
-index fb23623..1edb18e 100644
+index 524c221..004dace 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1565,7 +1565,7 @@ void xen_irq_resume(void)
@@ -64497,21 +63665,6 @@ index fb23623..1edb18e 100644
.name = "xen-percpu",
.irq_disable = disable_dynirq,
-diff --git a/drivers/xen/evtchn.c b/drivers/xen/evtchn.c
-index 00f40f0..e3c0b15 100644
---- a/drivers/xen/evtchn.c
-+++ b/drivers/xen/evtchn.c
-@@ -201,8 +201,8 @@ static ssize_t evtchn_read(struct file *file, char __user *buf,
-
- /* Byte lengths of two chunks. Chunk split (if any) is at ring wrap. */
- if (((c ^ p) & EVTCHN_RING_SIZE) != 0) {
-- bytes1 = (EVTCHN_RING_SIZE - EVTCHN_RING_MASK(c)) *
-- sizeof(evtchn_port_t);
-+ bytes1 = EVTCHN_RING_SIZE - EVTCHN_RING_MASK(c);
-+ bytes1 *= sizeof(evtchn_port_t);
- bytes2 = EVTCHN_RING_MASK(p) * sizeof(evtchn_port_t);
- } else {
- bytes1 = (p - c) * sizeof(evtchn_port_t);
diff --git a/drivers/xen/xenfs/xenstored.c b/drivers/xen/xenfs/xenstored.c
index fef20db..d28b1ab 100644
--- a/drivers/xen/xenfs/xenstored.c
@@ -76894,22 +76047,6 @@ index 0000000..43d7c4f
+:1095C00080080000800E00008008008080080000F5
+:1095D00080000A8080000A00800009808000090065
+:00000001FF
-diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
-index b1dc518..2f97461 100644
---- a/fs/9p/vfs_inode.c
-+++ b/fs/9p/vfs_inode.c
-@@ -451,9 +451,9 @@ void v9fs_evict_inode(struct inode *inode)
- {
- struct v9fs_inode *v9inode = V9FS_I(inode);
-
-- truncate_inode_pages_final(inode->i_mapping);
-+ truncate_inode_pages_final(&inode->i_data);
- clear_inode(inode);
-- filemap_fdatawrite(inode->i_mapping);
-+ filemap_fdatawrite(&inode->i_data);
-
- v9fs_cache_inode_put_cookie(inode);
- /* clunk the fid stashed in writeback_fid */
diff --git a/fs/Kconfig.binfmt b/fs/Kconfig.binfmt
index 2d0cbbd..a6d61492 100644
--- a/fs/Kconfig.binfmt
@@ -77122,18 +76259,18 @@ index 4c55668..eeae150 100644
fd_offset + ex.a_text);
if (error != N_DATADDR(ex))
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c
-index 6b65996..be797cf 100644
+index 3a93755..daf2ccc 100644
--- a/fs/binfmt_elf.c
+++ b/fs/binfmt_elf.c
-@@ -35,6 +35,7 @@
- #include <linux/utsname.h>
+@@ -36,6 +36,7 @@
#include <linux/coredump.h>
#include <linux/sched.h>
+ #include <linux/dax.h>
+#include <linux/xattr.h>
#include <asm/uaccess.h>
#include <asm/param.h>
#include <asm/page.h>
-@@ -66,6 +67,14 @@ static int elf_core_dump(struct coredump_params *cprm);
+@@ -67,6 +68,14 @@ static int elf_core_dump(struct coredump_params *cprm);
#define elf_core_dump NULL
#endif
@@ -77148,7 +76285,7 @@ index 6b65996..be797cf 100644
#if ELF_EXEC_PAGESIZE > PAGE_SIZE
#define ELF_MIN_ALIGN ELF_EXEC_PAGESIZE
#else
-@@ -85,6 +94,15 @@ static struct linux_binfmt elf_format = {
+@@ -86,6 +95,15 @@ static struct linux_binfmt elf_format = {
.load_binary = load_elf_binary,
.load_shlib = load_elf_library,
.core_dump = elf_core_dump,
@@ -77164,7 +76301,7 @@ index 6b65996..be797cf 100644
.min_coredump = ELF_EXEC_PAGESIZE,
};
-@@ -92,6 +110,8 @@ static struct linux_binfmt elf_format = {
+@@ -93,6 +111,8 @@ static struct linux_binfmt elf_format = {
static int set_brk(unsigned long start, unsigned long end)
{
@@ -77173,7 +76310,7 @@ index 6b65996..be797cf 100644
start = ELF_PAGEALIGN(start);
end = ELF_PAGEALIGN(end);
if (end > start) {
-@@ -100,7 +120,7 @@ static int set_brk(unsigned long start, unsigned long end)
+@@ -101,7 +121,7 @@ static int set_brk(unsigned long start, unsigned long end)
if (BAD_ADDR(addr))
return addr;
}
@@ -77182,7 +76319,7 @@ index 6b65996..be797cf 100644
return 0;
}
-@@ -161,12 +181,13 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec,
+@@ -162,12 +182,13 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec,
elf_addr_t __user *u_rand_bytes;
const char *k_platform = ELF_PLATFORM;
const char *k_base_platform = ELF_BASE_PLATFORM;
@@ -77197,7 +76334,7 @@ index 6b65996..be797cf 100644
/*
* In some cases (e.g. Hyper-Threading), we want to avoid L1
-@@ -208,8 +229,12 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec,
+@@ -209,8 +230,12 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec,
* Generate 16 random bytes for userspace PRNG seeding.
*/
get_random_bytes(k_rand_bytes, sizeof(k_rand_bytes));
@@ -77212,7 +76349,7 @@ index 6b65996..be797cf 100644
if (__copy_to_user(u_rand_bytes, k_rand_bytes, sizeof(k_rand_bytes)))
return -EFAULT;
-@@ -324,9 +349,11 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec,
+@@ -325,9 +350,11 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec,
return -EFAULT;
current->mm->env_end = p;
@@ -77225,7 +76362,7 @@ index 6b65996..be797cf 100644
return -EFAULT;
return 0;
}
-@@ -515,14 +542,14 @@ static inline int arch_check_elf(struct elfhdr *ehdr, bool has_interp,
+@@ -516,14 +543,14 @@ static inline int arch_check_elf(struct elfhdr *ehdr, bool has_interp,
an ELF header */
static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
@@ -77243,7 +76380,7 @@ index 6b65996..be797cf 100644
unsigned long total_size;
int i;
-@@ -542,6 +569,11 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
+@@ -543,6 +570,11 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
goto out;
}
@@ -77255,7 +76392,7 @@ index 6b65996..be797cf 100644
eppnt = interp_elf_phdata;
for (i = 0; i < interp_elf_ex->e_phnum; i++, eppnt++) {
if (eppnt->p_type == PT_LOAD) {
-@@ -565,8 +597,6 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
+@@ -566,8 +598,6 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
map_addr = elf_map(interpreter, load_addr + vaddr,
eppnt, elf_prot, elf_type, total_size);
total_size = 0;
@@ -77264,7 +76401,7 @@ index 6b65996..be797cf 100644
error = map_addr;
if (BAD_ADDR(map_addr))
goto out;
-@@ -585,8 +615,8 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
+@@ -586,8 +616,8 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
k = load_addr + eppnt->p_vaddr;
if (BAD_ADDR(k) ||
eppnt->p_filesz > eppnt->p_memsz ||
@@ -77275,7 +76412,7 @@ index 6b65996..be797cf 100644
error = -ENOMEM;
goto out;
}
-@@ -625,9 +655,11 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
+@@ -626,9 +656,11 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
elf_bss = ELF_PAGESTART(elf_bss + ELF_MIN_ALIGN - 1);
/* Map the last of the bss segment */
@@ -77290,7 +76427,7 @@ index 6b65996..be797cf 100644
}
error = load_addr;
-@@ -635,6 +667,336 @@ out:
+@@ -636,6 +668,336 @@ out:
return error;
}
@@ -77627,7 +76764,7 @@ index 6b65996..be797cf 100644
/*
* These are the functions used to load ELF style executables and shared
* libraries. There is no binary dependent code anywhere else.
-@@ -648,6 +1010,11 @@ static unsigned long randomize_stack_top(unsigned long stack_top)
+@@ -649,6 +1011,11 @@ static unsigned long randomize_stack_top(unsigned long stack_top)
{
unsigned long random_variable = 0;
@@ -77639,7 +76776,7 @@ index 6b65996..be797cf 100644
if ((current->flags & PF_RANDOMIZE) &&
!(current->personality & ADDR_NO_RANDOMIZE)) {
random_variable = (unsigned long) get_random_int();
-@@ -667,7 +1034,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -668,7 +1035,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
unsigned long load_addr = 0, load_bias = 0;
int load_addr_set = 0;
char * elf_interpreter = NULL;
@@ -77648,7 +76785,7 @@ index 6b65996..be797cf 100644
struct elf_phdr *elf_ppnt, *elf_phdata, *interp_elf_phdata = NULL;
unsigned long elf_bss, elf_brk;
int retval, i;
-@@ -682,6 +1049,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -683,6 +1050,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
struct elfhdr interp_elf_ex;
} *loc;
struct arch_elf_state arch_state = INIT_ARCH_ELF_STATE;
@@ -77656,33 +76793,7 @@ index 6b65996..be797cf 100644
loc = kmalloc(sizeof(*loc), GFP_KERNEL);
if (!loc) {
-@@ -759,16 +1127,16 @@ static int load_elf_binary(struct linux_binprm *bprm)
- */
- would_dump(bprm, interpreter);
-
-- retval = kernel_read(interpreter, 0, bprm->buf,
-- BINPRM_BUF_SIZE);
-- if (retval != BINPRM_BUF_SIZE) {
-- if (retval >= 0)
-- retval = -EIO;
-- goto out_free_dentry;
-- }
--
- /* Get the exec headers */
-- loc->interp_elf_ex = *((struct elfhdr *)bprm->buf);
-+ retval = kernel_read(interpreter, 0,
-+ (void *)&loc->interp_elf_ex,
-+ sizeof(loc->interp_elf_ex));
-+ if (retval != sizeof(loc->interp_elf_ex)) {
-+ if (retval >= 0)
-+ retval = -EIO;
-+ goto out_free_dentry;
-+ }
-+
- break;
- }
- elf_ppnt++;
-@@ -840,6 +1208,77 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -841,6 +1209,77 @@ static int load_elf_binary(struct linux_binprm *bprm)
/* Do this immediately, since STACK_TOP as used in setup_arg_pages
may depend on the personality. */
SET_PERSONALITY2(loc->elf_ex, &arch_state);
@@ -77760,7 +76871,7 @@ index 6b65996..be797cf 100644
if (elf_read_implies_exec(loc->elf_ex, executable_stack))
current->personality |= READ_IMPLIES_EXEC;
-@@ -915,8 +1354,21 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -916,8 +1355,21 @@ static int load_elf_binary(struct linux_binprm *bprm)
if (current->flags & PF_RANDOMIZE)
load_bias += arch_mmap_rnd();
load_bias = ELF_PAGESTART(load_bias);
@@ -77784,7 +76895,7 @@ index 6b65996..be797cf 100644
if (!total_size) {
retval = -EINVAL;
goto out_free_dentry;
-@@ -952,9 +1404,9 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -953,9 +1405,9 @@ static int load_elf_binary(struct linux_binprm *bprm)
* allowed task size. Note that p_filesz must always be
* <= p_memsz so it is only necessary to check p_memsz.
*/
@@ -77797,7 +76908,7 @@ index 6b65996..be797cf 100644
/* set_brk can never work. Avoid overflows. */
retval = -EINVAL;
goto out_free_dentry;
-@@ -990,16 +1442,43 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -991,16 +1443,43 @@ static int load_elf_binary(struct linux_binprm *bprm)
if (retval)
goto out_free_dentry;
if (likely(elf_bss != elf_brk) && unlikely(padzero(elf_bss))) {
@@ -77846,7 +76957,7 @@ index 6b65996..be797cf 100644
load_bias, interp_elf_phdata);
if (!IS_ERR((void *)elf_entry)) {
/*
-@@ -1050,6 +1529,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -1051,6 +1530,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
current->mm->end_data = end_data;
current->mm->start_stack = bprm->p;
@@ -77854,7 +76965,7 @@ index 6b65996..be797cf 100644
if ((current->flags & PF_RANDOMIZE) && (randomize_va_space > 1)) {
current->mm->brk = current->mm->start_brk =
arch_randomize_brk(current->mm);
-@@ -1057,6 +1537,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
+@@ -1058,6 +1538,7 @@ static int load_elf_binary(struct linux_binprm *bprm)
current->brk_randomized = 1;
#endif
}
@@ -77862,7 +76973,7 @@ index 6b65996..be797cf 100644
if (current->personality & MMAP_PAGE_ZERO) {
/* Why this, you ask??? Well SVr4 maps page 0 as read-only,
-@@ -1225,7 +1706,7 @@ static bool always_dump_vma(struct vm_area_struct *vma)
+@@ -1226,7 +1707,7 @@ static bool always_dump_vma(struct vm_area_struct *vma)
* Decide what to dump of a segment, part, all or none.
*/
static unsigned long vma_dump_size(struct vm_area_struct *vma,
@@ -77871,7 +76982,7 @@ index 6b65996..be797cf 100644
{
#define FILTER(type) (mm_flags & (1UL << MMF_DUMP_##type))
-@@ -1263,7 +1744,7 @@ static unsigned long vma_dump_size(struct vm_area_struct *vma,
+@@ -1273,7 +1754,7 @@ static unsigned long vma_dump_size(struct vm_area_struct *vma,
if (vma->vm_file == NULL)
return 0;
@@ -77880,7 +76991,7 @@ index 6b65996..be797cf 100644
goto whole;
/*
-@@ -1363,7 +1844,7 @@ static void fill_elf_header(struct elfhdr *elf, int segs,
+@@ -1373,7 +1854,7 @@ static void fill_elf_header(struct elfhdr *elf, int segs,
return;
}
@@ -77889,7 +77000,7 @@ index 6b65996..be797cf 100644
{
phdr->p_type = PT_NOTE;
phdr->p_offset = offset;
-@@ -1470,9 +1951,9 @@ static void fill_auxv_note(struct memelfnote *note, struct mm_struct *mm)
+@@ -1480,9 +1961,9 @@ static void fill_auxv_note(struct memelfnote *note, struct mm_struct *mm)
{
elf_addr_t *auxv = (elf_addr_t *) mm->saved_auxv;
int i = 0;
@@ -77901,7 +77012,7 @@ index 6b65996..be797cf 100644
fill_note(note, "CORE", NT_AUXV, i * sizeof(elf_addr_t), auxv);
}
-@@ -1481,7 +1962,7 @@ static void fill_siginfo_note(struct memelfnote *note, user_siginfo_t *csigdata,
+@@ -1491,7 +1972,7 @@ static void fill_siginfo_note(struct memelfnote *note, user_siginfo_t *csigdata,
{
mm_segment_t old_fs = get_fs();
set_fs(KERNEL_DS);
@@ -77910,7 +77021,7 @@ index 6b65996..be797cf 100644
set_fs(old_fs);
fill_note(note, "CORE", NT_SIGINFO, sizeof(*csigdata), csigdata);
}
-@@ -2201,7 +2682,7 @@ static int elf_core_dump(struct coredump_params *cprm)
+@@ -2211,7 +2692,7 @@ static int elf_core_dump(struct coredump_params *cprm)
vma = next_vma(vma, gate_vma)) {
unsigned long dump_size;
@@ -77919,7 +77030,7 @@ index 6b65996..be797cf 100644
vma_filesz[i++] = dump_size;
vma_data_size += dump_size;
}
-@@ -2309,6 +2790,167 @@ out:
+@@ -2319,6 +2800,167 @@ out:
#endif /* CONFIG_ELF_CORE */
@@ -78088,10 +77199,10 @@ index 6b65996..be797cf 100644
{
register_binfmt(&elf_format);
diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c
-index d3634bf..10fc244 100644
+index b1adb92..81d396b 100644
--- a/fs/binfmt_elf_fdpic.c
+++ b/fs/binfmt_elf_fdpic.c
-@@ -1296,7 +1296,7 @@ static inline void fill_elf_fdpic_header(struct elfhdr *elf, int segs)
+@@ -1336,7 +1336,7 @@ static inline void fill_elf_fdpic_header(struct elfhdr *elf, int segs)
return;
}
@@ -78100,7 +77211,7 @@ index d3634bf..10fc244 100644
{
phdr->p_type = PT_NOTE;
phdr->p_offset = offset;
-@@ -1667,7 +1667,7 @@ static int elf_fdpic_core_dump(struct coredump_params *cprm)
+@@ -1707,7 +1707,7 @@ static int elf_fdpic_core_dump(struct coredump_params *cprm)
/* Write notes phdr entry */
{
@@ -78110,10 +77221,10 @@ index d3634bf..10fc244 100644
for (i = 0; i < numnote; i++)
sz += notesize(notes + i);
diff --git a/fs/block_dev.c b/fs/block_dev.c
-index 073bb57..7f95749 100644
+index 44d4a1e..99df269 100644
--- a/fs/block_dev.c
+++ b/fs/block_dev.c
-@@ -739,7 +739,7 @@ static bool bd_may_claim(struct block_device *bdev, struct block_device *whole,
+@@ -762,7 +762,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 */
@@ -78123,7 +77234,7 @@ index 073bb57..7f95749 100644
else if (whole->bd_holder != NULL)
return false; /* is a partition of a held device */
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
-index 5f745ea..d7ab2ab 100644
+index 5b8e235..33d31fc 100644
--- a/fs/btrfs/ctree.c
+++ b/fs/btrfs/ctree.c
@@ -357,7 +357,7 @@ static inline void tree_mod_log_write_unlock(struct btrfs_fs_info *fs_info)
@@ -78152,10 +77263,10 @@ index 5f745ea..d7ab2ab 100644
WARN_ON(trans->transid != btrfs_header_generation(parent));
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
-index 94eea1f..4bfa5d6 100644
+index 35489e7..fac96ff 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
-@@ -1542,7 +1542,7 @@ struct btrfs_fs_info {
+@@ -1576,7 +1576,7 @@ struct btrfs_fs_info {
/* this protects tree_mod_seq_list */
spinlock_t tree_mod_seq_lock;
@@ -78164,7 +77275,7 @@ index 94eea1f..4bfa5d6 100644
struct list_head tree_mod_seq_list;
/* this protects tree_mod_log */
-@@ -1847,7 +1847,7 @@ struct btrfs_root {
+@@ -1881,7 +1881,7 @@ struct btrfs_root {
struct list_head log_ctxs[2];
atomic_t log_writers;
atomic_t log_commit[2];
@@ -78174,7 +77285,7 @@ index 94eea1f..4bfa5d6 100644
/* No matter the commit succeeds or not*/
int log_transid_committed;
diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c
-index a2ae427..d028233 100644
+index e0941fb..a8126a4 100644
--- a/fs/btrfs/delayed-inode.c
+++ b/fs/btrfs/delayed-inode.c
@@ -462,7 +462,7 @@ static int __btrfs_add_delayed_deletion_item(struct btrfs_delayed_node *node,
@@ -78183,10 +77294,10 @@ index a2ae427..d028233 100644
{
- int seq = atomic_inc_return(&delayed_root->items_seq);
+ int seq = atomic_inc_return_unchecked(&delayed_root->items_seq);
- if ((atomic_dec_return(&delayed_root->items) <
- BTRFS_DELAYED_BACKGROUND || seq % BTRFS_DELAYED_BATCH == 0) &&
- waitqueue_active(&delayed_root->wait))
-@@ -1412,7 +1412,7 @@ void btrfs_assert_delayed_root_empty(struct btrfs_root *root)
+
+ /*
+ * atomic_dec_return implies a barrier for waitqueue_active
+@@ -1416,7 +1416,7 @@ void btrfs_assert_delayed_root_empty(struct btrfs_root *root)
static int could_end_wait(struct btrfs_delayed_root *delayed_root, int seq)
{
@@ -78195,7 +77306,7 @@ index a2ae427..d028233 100644
if (val < seq || val >= seq + BTRFS_DELAYED_BATCH)
return 1;
-@@ -1437,7 +1437,7 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
+@@ -1441,7 +1441,7 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
int seq;
int ret;
@@ -78204,7 +77315,7 @@ index a2ae427..d028233 100644
ret = btrfs_wq_run_delayed_node(delayed_root, fs_info, 0);
if (ret)
-@@ -1690,7 +1690,7 @@ int btrfs_should_delete_dir_index(struct list_head *del_list,
+@@ -1694,7 +1694,7 @@ int btrfs_should_delete_dir_index(struct list_head *del_list,
*
*/
int btrfs_readdir_delayed_dir_index(struct dir_context *ctx,
@@ -78213,7 +77324,7 @@ index a2ae427..d028233 100644
{
struct btrfs_dir_item *di;
struct btrfs_delayed_item *curr, *next;
-@@ -1734,6 +1734,7 @@ int btrfs_readdir_delayed_dir_index(struct dir_context *ctx,
+@@ -1738,6 +1738,7 @@ int btrfs_readdir_delayed_dir_index(struct dir_context *ctx,
if (over)
return 1;
@@ -78253,10 +77364,10 @@ index f70119f..b7d2bb4 100644
/* for init */
int __init btrfs_delayed_inode_init(void);
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
-index 7832031..28a7d67 100644
+index e06dd75a..22221aa 100644
--- a/fs/btrfs/delayed-ref.c
+++ b/fs/btrfs/delayed-ref.c
-@@ -647,7 +647,7 @@ add_delayed_tree_ref(struct btrfs_fs_info *fs_info,
+@@ -660,7 +660,7 @@ add_delayed_tree_ref(struct btrfs_fs_info *fs_info,
action = BTRFS_ADD_DELAYED_REF;
if (is_fstree(ref_root))
@@ -78265,7 +77376,7 @@ index 7832031..28a7d67 100644
delayed_refs = &trans->transaction->delayed_refs;
/* first set the basic ref node struct up */
-@@ -703,7 +703,7 @@ add_delayed_data_ref(struct btrfs_fs_info *fs_info,
+@@ -716,7 +716,7 @@ add_delayed_data_ref(struct btrfs_fs_info *fs_info,
delayed_refs = &trans->transaction->delayed_refs;
if (is_fstree(ref_root))
@@ -78275,10 +77386,10 @@ index 7832031..28a7d67 100644
/* first set the basic ref node struct up */
atomic_set(&ref->refs, 1);
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
-index 1e60d00..bc9c6ce 100644
+index 974be09..87ba00a 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
-@@ -1261,7 +1261,7 @@ static void __setup_root(u32 nodesize, u32 sectorsize, u32 stripesize,
+@@ -1263,7 +1263,7 @@ static void __setup_root(u32 nodesize, u32 sectorsize, u32 stripesize,
atomic_set(&root->log_commit[0], 0);
atomic_set(&root->log_commit[1], 0);
atomic_set(&root->log_writers, 0);
@@ -78287,7 +77398,7 @@ index 1e60d00..bc9c6ce 100644
atomic_set(&root->orphan_inodes, 0);
atomic_set(&root->refs, 1);
atomic_set(&root->will_be_snapshoted, 0);
-@@ -2562,7 +2562,7 @@ int open_ctree(struct super_block *sb,
+@@ -2565,7 +2565,7 @@ int open_ctree(struct super_block *sb,
atomic_set(&fs_info->nr_async_bios, 0);
atomic_set(&fs_info->defrag_running, 0);
atomic_set(&fs_info->qgroup_op_seq, 0);
@@ -78323,10 +77434,10 @@ index 6a98bdd..fed3da6 100644
RB_CLEAR_NODE(&merge->rb_node);
em->mod_len = (merge->mod_start + merge->mod_len) - em->mod_start;
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
-index e27ea7a..2cac1d6 100644
+index 0f09526..000f57d 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
-@@ -1896,7 +1896,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
+@@ -1912,7 +1912,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
return ret;
mutex_lock(&inode->i_mutex);
@@ -78335,7 +77446,7 @@ index e27ea7a..2cac1d6 100644
full_sync = test_bit(BTRFS_INODE_NEEDS_FULL_SYNC,
&BTRFS_I(inode)->runtime_flags);
/*
-@@ -1950,7 +1950,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
+@@ -1966,7 +1966,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
mutex_unlock(&inode->i_mutex);
goto out;
}
@@ -78345,10 +77456,10 @@ index e27ea7a..2cac1d6 100644
/*
* If the last transaction that changed this file was before the current
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
-index 396e3d5..e752d29 100644
+index a70c579..e31fac2 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
-@@ -5725,6 +5725,7 @@ static int btrfs_real_readdir(struct file *file, struct dir_context *ctx)
+@@ -5741,6 +5741,7 @@ static int btrfs_real_readdir(struct file *file, struct dir_context *ctx)
char *name_ptr;
int name_len;
int is_curr = 0; /* ctx->pos points to the current index? */
@@ -78356,7 +77467,7 @@ index 396e3d5..e752d29 100644
/* FIXME, use a real flag for deciding about the key type */
if (root->fs_info->tree_root == root)
-@@ -5753,6 +5754,7 @@ static int btrfs_real_readdir(struct file *file, struct dir_context *ctx)
+@@ -5769,6 +5770,7 @@ static int btrfs_real_readdir(struct file *file, struct dir_context *ctx)
if (ret < 0)
goto err;
@@ -78364,7 +77475,7 @@ index 396e3d5..e752d29 100644
while (1) {
leaf = path->nodes[0];
slot = path->slots[0];
-@@ -5832,6 +5834,7 @@ skip:
+@@ -5848,6 +5850,7 @@ skip:
if (over)
goto nopos;
@@ -78372,7 +77483,7 @@ index 396e3d5..e752d29 100644
di_len = btrfs_dir_name_len(leaf, di) +
btrfs_dir_data_len(leaf, di) + sizeof(*di);
di_cur += di_len;
-@@ -5844,11 +5847,20 @@ next:
+@@ -5860,11 +5863,20 @@ next:
if (key_type == BTRFS_DIR_INDEX_KEY) {
if (is_curr)
ctx->pos++;
@@ -78395,7 +77506,7 @@ index 396e3d5..e752d29 100644
ctx->pos++;
diff --git a/fs/btrfs/raid56.c b/fs/btrfs/raid56.c
-index fcf7265..275b222 100644
+index 1a33d3e..4830234 100644
--- a/fs/btrfs/raid56.c
+++ b/fs/btrfs/raid56.c
@@ -153,7 +153,7 @@ struct btrfs_raid_bio {
@@ -78407,7 +77518,7 @@ index fcf7265..275b222 100644
/*
* these are two arrays of pointers. We allocate the
* rbio big enough to hold them both and setup their
-@@ -898,7 +898,7 @@ static void raid_write_end_io(struct bio *bio)
+@@ -902,7 +902,7 @@ static void raid_write_end_io(struct bio *bio)
err = 0;
/* OK, we have read all the stripes we need to. */
@@ -78416,7 +77527,7 @@ index fcf7265..275b222 100644
err = -EIO;
rbio_orig_end_io(rbio, err);
-@@ -983,7 +983,7 @@ static struct btrfs_raid_bio *alloc_rbio(struct btrfs_root *root,
+@@ -987,7 +987,7 @@ static struct btrfs_raid_bio *alloc_rbio(struct btrfs_root *root,
rbio->faila = -1;
rbio->failb = -1;
atomic_set(&rbio->refs, 1);
@@ -78425,7 +77536,7 @@ index fcf7265..275b222 100644
atomic_set(&rbio->stripes_pending, 0);
/*
-@@ -1207,7 +1207,7 @@ static noinline void finish_rmw(struct btrfs_raid_bio *rbio)
+@@ -1211,7 +1211,7 @@ static noinline void finish_rmw(struct btrfs_raid_bio *rbio)
set_bit(RBIO_RMW_LOCKED_BIT, &rbio->flags);
spin_unlock_irq(&rbio->bio_list_lock);
@@ -78434,7 +77545,7 @@ index fcf7265..275b222 100644
/*
* now that we've set rmw_locked, run through the
-@@ -1395,11 +1395,11 @@ static int fail_rbio_index(struct btrfs_raid_bio *rbio, int failed)
+@@ -1399,11 +1399,11 @@ static int fail_rbio_index(struct btrfs_raid_bio *rbio, int failed)
if (rbio->faila == -1) {
/* first failure on this rbio */
rbio->faila = failed;
@@ -78448,7 +77559,7 @@ index fcf7265..275b222 100644
} else {
ret = -EIO;
}
-@@ -1461,7 +1461,7 @@ static void raid_rmw_end_io(struct bio *bio)
+@@ -1465,7 +1465,7 @@ static void raid_rmw_end_io(struct bio *bio)
if (!atomic_dec_and_test(&rbio->stripes_pending))
return;
@@ -78457,7 +77568,7 @@ index fcf7265..275b222 100644
goto cleanup;
/*
-@@ -1517,7 +1517,7 @@ static int raid56_rmw_stripe(struct btrfs_raid_bio *rbio)
+@@ -1521,7 +1521,7 @@ static int raid56_rmw_stripe(struct btrfs_raid_bio *rbio)
index_rbio_pages(rbio);
@@ -78466,7 +77577,7 @@ index fcf7265..275b222 100644
/*
* build a list of bios to read all the missing parts of this
* stripe
-@@ -2010,7 +2010,7 @@ static void raid_recover_end_io(struct bio *bio)
+@@ -2014,7 +2014,7 @@ static void raid_recover_end_io(struct bio *bio)
if (!atomic_dec_and_test(&rbio->stripes_pending))
return;
@@ -78475,7 +77586,7 @@ index fcf7265..275b222 100644
rbio_orig_end_io(rbio, -EIO);
else
__raid_recover_end_io(rbio);
-@@ -2040,7 +2040,7 @@ static int __raid56_parity_recover(struct btrfs_raid_bio *rbio)
+@@ -2044,7 +2044,7 @@ static int __raid56_parity_recover(struct btrfs_raid_bio *rbio)
if (ret)
goto cleanup;
@@ -78484,7 +77595,7 @@ index fcf7265..275b222 100644
/*
* read everything that hasn't failed. Thanks to the
-@@ -2049,7 +2049,7 @@ static int __raid56_parity_recover(struct btrfs_raid_bio *rbio)
+@@ -2053,7 +2053,7 @@ static int __raid56_parity_recover(struct btrfs_raid_bio *rbio)
*/
for (stripe = 0; stripe < rbio->real_stripes; stripe++) {
if (rbio->faila == stripe || rbio->failb == stripe) {
@@ -78493,7 +77604,7 @@ index fcf7265..275b222 100644
continue;
}
-@@ -2079,7 +2079,7 @@ static int __raid56_parity_recover(struct btrfs_raid_bio *rbio)
+@@ -2083,7 +2083,7 @@ static int __raid56_parity_recover(struct btrfs_raid_bio *rbio)
* were up to date, or we might have no bios to read because
* the devices were gone.
*/
@@ -78502,7 +77613,7 @@ index fcf7265..275b222 100644
__raid_recover_end_io(rbio);
goto out;
} else {
-@@ -2302,7 +2302,7 @@ static void raid_write_parity_end_io(struct bio *bio)
+@@ -2306,7 +2306,7 @@ static void raid_write_parity_end_io(struct bio *bio)
err = 0;
@@ -78511,7 +77622,7 @@ index fcf7265..275b222 100644
err = -EIO;
rbio_orig_end_io(rbio, err);
-@@ -2366,7 +2366,7 @@ static noinline void finish_parity_scrub(struct btrfs_raid_bio *rbio,
+@@ -2370,7 +2370,7 @@ static noinline void finish_parity_scrub(struct btrfs_raid_bio *rbio,
SetPageUptodate(q_page);
}
@@ -78520,7 +77631,7 @@ index fcf7265..275b222 100644
for_each_set_bit(pagenr, rbio->dbitmap, rbio->stripe_npages) {
struct page *p;
-@@ -2485,7 +2485,7 @@ static inline int is_data_stripe(struct btrfs_raid_bio *rbio, int stripe)
+@@ -2489,7 +2489,7 @@ static inline int is_data_stripe(struct btrfs_raid_bio *rbio, int stripe)
*/
static void validate_rbio_for_parity_scrub(struct btrfs_raid_bio *rbio)
{
@@ -78529,7 +77640,7 @@ index fcf7265..275b222 100644
goto cleanup;
if (rbio->faila >= 0 || rbio->failb >= 0) {
-@@ -2582,7 +2582,7 @@ static void raid56_parity_scrub_stripe(struct btrfs_raid_bio *rbio)
+@@ -2586,7 +2586,7 @@ static void raid56_parity_scrub_stripe(struct btrfs_raid_bio *rbio)
bio_list_init(&bio_list);
@@ -78539,10 +77650,10 @@ index fcf7265..275b222 100644
* build a list of bios to read all the missing parts of this
* stripe
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
-index 11d1eab..a001845 100644
+index 24154e4..ac07531 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
-@@ -265,7 +265,7 @@ void __btrfs_abort_transaction(struct btrfs_trans_handle *trans,
+@@ -248,7 +248,7 @@ void __btrfs_abort_transaction(struct btrfs_trans_handle *trans,
function, line, errstr);
return;
}
@@ -78552,7 +77663,7 @@ index 11d1eab..a001845 100644
wake_up(&root->fs_info->transaction_wait);
wake_up(&root->fs_info->transaction_blocked_wait);
diff --git a/fs/btrfs/sysfs.c b/fs/btrfs/sysfs.c
-index 603b0cc..8e3f600 100644
+index e0ac859..dc1657f 100644
--- a/fs/btrfs/sysfs.c
+++ b/fs/btrfs/sysfs.c
@@ -481,7 +481,7 @@ static int addrm_unknown_feature_attrs(struct btrfs_fs_info *fs_info, bool add)
@@ -78578,10 +77689,10 @@ index 9626252..e130203 100644
INIT_LIST_HEAD(&fs_info->dead_roots);
INIT_LIST_HEAD(&fs_info->tree_mod_seq_list);
diff --git a/fs/btrfs/tests/free-space-tests.c b/fs/btrfs/tests/free-space-tests.c
-index 2299bfd..4098e72 100644
+index 8b72b00..6c30bdc 100644
--- a/fs/btrfs/tests/free-space-tests.c
+++ b/fs/btrfs/tests/free-space-tests.c
-@@ -463,7 +463,9 @@ test_steal_space_from_bitmap_to_extent(struct btrfs_block_group_cache *cache)
+@@ -470,7 +470,9 @@ test_steal_space_from_bitmap_to_extent(struct btrfs_block_group_cache *cache)
* extent entry.
*/
use_bitmap_op = cache->free_space_ctl->op->use_bitmap;
@@ -78592,7 +77703,7 @@ index 2299bfd..4098e72 100644
/*
* Extent entry covering free space range [128Mb - 256Kb, 128Mb - 128Kb[
-@@ -870,7 +872,9 @@ test_steal_space_from_bitmap_to_extent(struct btrfs_block_group_cache *cache)
+@@ -877,7 +879,9 @@ test_steal_space_from_bitmap_to_extent(struct btrfs_block_group_cache *cache)
if (ret)
return ret;
@@ -78604,10 +77715,10 @@ index 2299bfd..4098e72 100644
return 0;
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c
-index a5b0644..522b11a 100644
+index be8eae8..f884717 100644
--- a/fs/btrfs/transaction.c
+++ b/fs/btrfs/transaction.c
-@@ -257,7 +257,7 @@ loop:
+@@ -260,7 +260,7 @@ loop:
if (!RB_EMPTY_ROOT(&fs_info->tree_mod_log))
WARN(1, KERN_ERR "BTRFS: tree_mod_log rb tree not empty when "
"creating a fresh transaction\n");
@@ -78617,7 +77728,7 @@ index a5b0644..522b11a 100644
spin_lock_init(&cur_trans->delayed_refs.lock);
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
-index 6f8af2d..c3ab0d8 100644
+index 323e12c..f9bab4a 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -172,7 +172,7 @@ static int start_log_trans(struct btrfs_trans_handle *trans,
@@ -78629,7 +77740,7 @@ index 6f8af2d..c3ab0d8 100644
atomic_inc(&root->log_writers);
if (ctx) {
int index = root->log_transid % 2;
-@@ -2752,7 +2752,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
+@@ -2754,7 +2754,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
wait_log_commit(root, log_transid - 1);
while (1) {
@@ -78638,7 +77749,7 @@ index 6f8af2d..c3ab0d8 100644
/* when we're on an ssd, just kick the log commit out */
if (!btrfs_test_opt(root, SSD) &&
test_bit(BTRFS_ROOT_MULTI_LOG_TASKS, &root->state)) {
-@@ -2761,7 +2761,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
+@@ -2763,7 +2763,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
mutex_lock(&root->log_mutex);
}
wait_for_writer(root);
@@ -78647,7 +77758,7 @@ index 6f8af2d..c3ab0d8 100644
break;
}
-@@ -2807,7 +2807,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
+@@ -2809,7 +2809,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
btrfs_init_log_ctx(&root_log_ctx);
mutex_lock(&log_root_tree->log_mutex);
@@ -78670,19 +77781,19 @@ index 6916a78..4598936 100644
static inline int btrfs_need_log_full_commit(struct btrfs_fs_info *fs_info,
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
-index 6fc73586..23b7706 100644
+index a23399e..bfac130 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
-@@ -155,7 +155,7 @@ static struct btrfs_device *__alloc_device(void)
+@@ -231,7 +231,7 @@ static struct btrfs_device *__alloc_device(void)
spin_lock_init(&dev->reada_lock);
atomic_set(&dev->reada_in_flight, 0);
- atomic_set(&dev->dev_stats_ccnt, 0);
+ atomic_set_unchecked(&dev->dev_stats_ccnt, 0);
- INIT_RADIX_TREE(&dev->reada_zones, GFP_NOFS & ~__GFP_WAIT);
- INIT_RADIX_TREE(&dev->reada_extents, GFP_NOFS & ~__GFP_WAIT);
+ INIT_RADIX_TREE(&dev->reada_zones, GFP_NOFS & ~__GFP_DIRECT_RECLAIM);
+ INIT_RADIX_TREE(&dev->reada_extents, GFP_NOFS & ~__GFP_DIRECT_RECLAIM);
-@@ -5071,7 +5071,7 @@ static struct btrfs_bio *alloc_btrfs_bio(int total_stripes, int real_stripes)
+@@ -5184,7 +5184,7 @@ static struct btrfs_bio *alloc_btrfs_bio(int total_stripes, int real_stripes)
sizeof(u64) * (total_stripes),
GFP_NOFS|__GFP_NOFAIL);
@@ -78691,7 +77802,7 @@ index 6fc73586..23b7706 100644
atomic_set(&bbio->refs, 1);
return bbio;
-@@ -5752,7 +5752,7 @@ static void btrfs_end_bio(struct bio *bio)
+@@ -5865,7 +5865,7 @@ static void btrfs_end_bio(struct bio *bio)
int is_orig_bio = 0;
if (bio->bi_error) {
@@ -78700,7 +77811,7 @@ index 6fc73586..23b7706 100644
if (bio->bi_error == -EIO || bio->bi_error == -EREMOTEIO) {
unsigned int stripe_index =
btrfs_io_bio(bio)->stripe_index;
-@@ -5790,7 +5790,7 @@ static void btrfs_end_bio(struct bio *bio)
+@@ -5903,7 +5903,7 @@ static void btrfs_end_bio(struct bio *bio)
/* only send an error to the higher layers if it is
* beyond the tolerance of the btrfs bio
*/
@@ -78709,7 +77820,7 @@ index 6fc73586..23b7706 100644
bio->bi_error = -EIO;
} else {
/*
-@@ -5901,7 +5901,7 @@ static void submit_stripe_bio(struct btrfs_root *root, struct btrfs_bio *bbio,
+@@ -6014,7 +6014,7 @@ static void submit_stripe_bio(struct btrfs_root *root, struct btrfs_bio *bbio,
static void bbio_error(struct btrfs_bio *bbio, struct bio *bio, u64 logical)
{
@@ -78718,7 +77829,7 @@ index 6fc73586..23b7706 100644
if (atomic_dec_and_test(&bbio->stripes_pending)) {
/* Shoud be the original bio. */
WARN_ON(bio != bbio->orig_bio);
-@@ -6655,10 +6655,10 @@ int btrfs_run_dev_stats(struct btrfs_trans_handle *trans,
+@@ -6768,10 +6768,10 @@ int btrfs_run_dev_stats(struct btrfs_trans_handle *trans,
if (!device->dev_stats_valid || !btrfs_dev_stats_dirty(device))
continue;
@@ -78732,7 +77843,7 @@ index 6fc73586..23b7706 100644
mutex_unlock(&fs_devices->device_list_mutex);
diff --git a/fs/btrfs/volumes.h b/fs/btrfs/volumes.h
-index 595279a..9abb7aa 100644
+index d5c84f6..0badba4 100644
--- a/fs/btrfs/volumes.h
+++ b/fs/btrfs/volumes.h
@@ -148,8 +148,8 @@ struct btrfs_device {
@@ -78755,7 +77866,7 @@ index 595279a..9abb7aa 100644
int max_errors;
int num_stripes;
int mirror_num;
-@@ -496,21 +496,21 @@ int btrfs_remove_chunk(struct btrfs_trans_handle *trans,
+@@ -507,21 +507,21 @@ int btrfs_remove_chunk(struct btrfs_trans_handle *trans,
static inline int btrfs_dev_stats_dirty(struct btrfs_device *dev)
{
@@ -78781,7 +77892,7 @@ index 595279a..9abb7aa 100644
}
static inline int btrfs_dev_stat_read_and_reset(struct btrfs_device *dev,
-@@ -518,18 +518,18 @@ static inline int btrfs_dev_stat_read_and_reset(struct btrfs_device *dev,
+@@ -529,18 +529,18 @@ static inline int btrfs_dev_stat_read_and_reset(struct btrfs_device *dev,
{
int ret;
@@ -78805,10 +77916,10 @@ index 595279a..9abb7aa 100644
static inline void btrfs_dev_stat_reset(struct btrfs_device *dev,
diff --git a/fs/buffer.c b/fs/buffer.c
-index 82283ab..dc40c76 100644
+index 4f4cd95..f19e4ab 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
-@@ -3437,7 +3437,7 @@ void __init buffer_init(void)
+@@ -3417,7 +3417,7 @@ void __init buffer_init(void)
bh_cachep = kmem_cache_create("buffer_head",
sizeof(struct buffer_head), 0,
(SLAB_RECLAIM_ACCOUNT|SLAB_PANIC|
@@ -78878,7 +77989,7 @@ index f601def..b2cf704 100644
cache->bstop_percent = bstop;
diff --git a/fs/cachefiles/internal.h b/fs/cachefiles/internal.h
-index aecd085..3584e2f 100644
+index 9c4b737..0bc3fd18 100644
--- a/fs/cachefiles/internal.h
+++ b/fs/cachefiles/internal.h
@@ -65,7 +65,7 @@ struct cachefiles_cache {
@@ -78916,7 +78027,7 @@ index aecd085..3584e2f 100644
#else
diff --git a/fs/cachefiles/namei.c b/fs/cachefiles/namei.c
-index fc1056f..501a546 100644
+index c4b8934..8c9b05c 100644
--- a/fs/cachefiles/namei.c
+++ b/fs/cachefiles/namei.c
@@ -312,7 +312,7 @@ try_again:
@@ -79058,10 +78169,10 @@ index 7febcf2..62a5721 100644
server->ops->print_stats(m, tcon);
}
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c
-index e739950..d18ac09 100644
+index cbc0f4b..230e61a 100644
--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
-@@ -1085,7 +1085,7 @@ cifs_init_request_bufs(void)
+@@ -1077,7 +1077,7 @@ cifs_init_request_bufs(void)
*/
cifs_req_cachep = kmem_cache_create("cifs_request",
CIFSMaxBufSize + max_hdr_size, 0,
@@ -79070,7 +78181,7 @@ index e739950..d18ac09 100644
if (cifs_req_cachep == NULL)
return -ENOMEM;
-@@ -1112,7 +1112,7 @@ cifs_init_request_bufs(void)
+@@ -1104,7 +1104,7 @@ cifs_init_request_bufs(void)
efficient to alloc 1 per page off the slab compared to 17K (5page)
alloc of large cifs buffers even when page debugging is on */
cifs_sm_req_cachep = kmem_cache_create("cifs_small_rq",
@@ -79079,7 +78190,7 @@ index e739950..d18ac09 100644
NULL);
if (cifs_sm_req_cachep == NULL) {
mempool_destroy(cifs_req_poolp);
-@@ -1197,8 +1197,8 @@ init_cifs(void)
+@@ -1189,8 +1189,8 @@ init_cifs(void)
atomic_set(&bufAllocCount, 0);
atomic_set(&smBufAllocCount, 0);
#ifdef CONFIG_CIFS_STATS2
@@ -79091,10 +78202,10 @@ index e739950..d18ac09 100644
atomic_set(&midCount, 0);
diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
-index b406a32..243eb1c 100644
+index 2b510c5..8962775 100644
--- a/fs/cifs/cifsglob.h
+++ b/fs/cifs/cifsglob.h
-@@ -832,35 +832,35 @@ struct cifs_tcon {
+@@ -835,35 +835,35 @@ struct cifs_tcon {
__u16 Flags; /* optional support bits */
enum statusEnum tidStatus;
#ifdef CONFIG_CIFS_STATS
@@ -79154,7 +78265,7 @@ index b406a32..243eb1c 100644
} smb2_stats;
#endif /* CONFIG_CIFS_SMB2 */
} stats;
-@@ -1207,7 +1207,7 @@ convert_delimiter(char *path, char delim)
+@@ -1213,7 +1213,7 @@ convert_delimiter(char *path, char delim)
}
#ifdef CONFIG_CIFS_STATS
@@ -79163,7 +78274,7 @@ index b406a32..243eb1c 100644
static inline void cifs_stats_bytes_written(struct cifs_tcon *tcon,
unsigned int bytes)
-@@ -1574,8 +1574,8 @@ GLOBAL_EXTERN atomic_t tconInfoReconnectCount;
+@@ -1580,8 +1580,8 @@ GLOBAL_EXTERN atomic_t tconInfoReconnectCount;
/* Various Debug counters */
GLOBAL_EXTERN atomic_t bufAllocCount; /* current number allocated */
#ifdef CONFIG_CIFS_STATS2
@@ -79175,7 +78286,7 @@ index b406a32..243eb1c 100644
GLOBAL_EXTERN atomic_t smBufAllocCount;
GLOBAL_EXTERN atomic_t midCount;
diff --git a/fs/cifs/file.c b/fs/cifs/file.c
-index 62203c3..fa2d9b3 100644
+index 0068e82..5ee5c2c 100644
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
@@ -2054,10 +2054,14 @@ static int cifs_writepages(struct address_space *mapping,
@@ -79337,7 +78448,7 @@ index fc537c2..47d654c 100644
}
diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c
-index 18da19f..38a3a79 100644
+index 53ccdde..3debfe6 100644
--- a/fs/cifs/smb2ops.c
+++ b/fs/cifs/smb2ops.c
@@ -422,8 +422,8 @@ smb2_clear_stats(struct cifs_tcon *tcon)
@@ -79458,10 +78569,10 @@ index 18da19f..38a3a79 100644
}
diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c
-index 597a417..569672f 100644
+index 7675555..9efb579 100644
--- a/fs/cifs/smb2pdu.c
+++ b/fs/cifs/smb2pdu.c
-@@ -2267,8 +2267,7 @@ SMB2_query_directory(const unsigned int xid, struct cifs_tcon *tcon,
+@@ -2386,8 +2386,7 @@ SMB2_query_directory(const unsigned int xid, struct cifs_tcon *tcon,
default:
cifs_dbg(VFS, "info level %u isn't supported\n",
srch_inf->info_level);
@@ -79658,7 +78769,7 @@ index 4d24d17..4f8c09e 100644
/*
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c
-index 48851f6..d6c96e5 100644
+index dcf2653..3b9fb0c 100644
--- a/fs/compat_ioctl.c
+++ b/fs/compat_ioctl.c
@@ -58,6 +58,8 @@
@@ -80215,7 +79326,7 @@ index 48851f6..d6c96e5 100644
return 1;
if (a < b)
diff --git a/fs/configfs/dir.c b/fs/configfs/dir.c
-index c81ce7f..f3de5fd 100644
+index a7a1b21..023d87a 100644
--- a/fs/configfs/dir.c
+++ b/fs/configfs/dir.c
@@ -1540,7 +1540,8 @@ static int configfs_readdir(struct file *file, struct dir_context *ctx)
@@ -80243,10 +79354,10 @@ index c81ce7f..f3de5fd 100644
/*
* We'll have a dentry and an inode for
diff --git a/fs/coredump.c b/fs/coredump.c
-index a8f7564..0329da8 100644
+index 1777331..d6154a2 100644
--- a/fs/coredump.c
+++ b/fs/coredump.c
-@@ -457,8 +457,8 @@ static void wait_for_dump_helpers(struct file *file)
+@@ -456,8 +456,8 @@ static void wait_for_dump_helpers(struct file *file)
struct pipe_inode_info *pipe = file->private_data;
pipe_lock(pipe);
@@ -80257,7 +79368,7 @@ index a8f7564..0329da8 100644
wake_up_interruptible_sync(&pipe->wait);
kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN);
pipe_unlock(pipe);
-@@ -467,11 +467,11 @@ static void wait_for_dump_helpers(struct file *file)
+@@ -466,11 +466,11 @@ static void wait_for_dump_helpers(struct file *file)
* We actually want wait_event_freezable() but then we need
* to clear TIF_SIGPENDING and improve dump_interrupted().
*/
@@ -80272,7 +79383,7 @@ index a8f7564..0329da8 100644
pipe_unlock(pipe);
}
-@@ -518,7 +518,9 @@ void do_coredump(const siginfo_t *siginfo)
+@@ -517,7 +517,9 @@ void do_coredump(const siginfo_t *siginfo)
/* require nonrelative corefile path and be extra careful */
bool need_suid_safe = false;
bool core_dumped = false;
@@ -80283,7 +79394,7 @@ index a8f7564..0329da8 100644
struct coredump_params cprm = {
.siginfo = siginfo,
.regs = signal_pt_regs(),
-@@ -531,12 +533,17 @@ void do_coredump(const siginfo_t *siginfo)
+@@ -530,12 +532,17 @@ void do_coredump(const siginfo_t *siginfo)
.mm_flags = mm->flags,
};
@@ -80303,7 +79414,7 @@ index a8f7564..0329da8 100644
goto fail;
cred = prepare_creds();
-@@ -554,7 +561,7 @@ void do_coredump(const siginfo_t *siginfo)
+@@ -553,7 +560,7 @@ void do_coredump(const siginfo_t *siginfo)
need_suid_safe = true;
}
@@ -80312,7 +79423,7 @@ index a8f7564..0329da8 100644
if (retval < 0)
goto fail_creds;
-@@ -597,7 +604,7 @@ void do_coredump(const siginfo_t *siginfo)
+@@ -596,7 +603,7 @@ void do_coredump(const siginfo_t *siginfo)
}
cprm.limit = RLIM_INFINITY;
@@ -80321,7 +79432,7 @@ index a8f7564..0329da8 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);
-@@ -629,6 +636,8 @@ void do_coredump(const siginfo_t *siginfo)
+@@ -628,6 +635,8 @@ void do_coredump(const siginfo_t *siginfo)
} else {
struct inode *inode;
@@ -80330,7 +79441,7 @@ index a8f7564..0329da8 100644
if (cprm.limit < binfmt->min_coredump)
goto fail_unlock;
-@@ -654,7 +663,7 @@ void do_coredump(const siginfo_t *siginfo)
+@@ -653,7 +662,7 @@ void do_coredump(const siginfo_t *siginfo)
* If it doesn't exist, that's fine. If there's some
* other problem, we'll catch it at the filp_open().
*/
@@ -80339,7 +79450,7 @@ index a8f7564..0329da8 100644
set_fs(old_fs);
}
-@@ -718,7 +727,7 @@ close_fail:
+@@ -717,7 +726,7 @@ close_fail:
filp_close(cprm.file, NULL);
fail_dropcount:
if (ispipe)
@@ -80348,7 +79459,7 @@ index a8f7564..0329da8 100644
fail_unlock:
kfree(cn.corename);
coredump_finish(mm, core_dumped);
-@@ -739,6 +748,8 @@ int dump_emit(struct coredump_params *cprm, const void *addr, int nr)
+@@ -738,6 +747,8 @@ int dump_emit(struct coredump_params *cprm, const void *addr, int nr)
struct file *file = cprm->file;
loff_t pos = file->f_pos;
ssize_t n;
@@ -80605,7 +79716,7 @@ index 5c33aeb..e8739c7 100644
dcache_init();
inode_init();
diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c
-index 9c8d233..79cf56b 100644
+index b7fcc0d..5da55c8 100644
--- a/fs/debugfs/inode.c
+++ b/fs/debugfs/inode.c
@@ -406,6 +406,10 @@ EXPORT_SYMBOL_GPL(debugfs_create_file_size);
@@ -80634,7 +79745,7 @@ index 9c8d233..79cf56b 100644
inode->i_fop = &simple_dir_operations;
diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c
-index 3c4db11..a43976f 100644
+index e2e47ba..221b0a3 100644
--- a/fs/ecryptfs/inode.c
+++ b/fs/ecryptfs/inode.c
@@ -662,7 +662,7 @@ static char *ecryptfs_readlink_lower(struct dentry *dentry, size_t *bufsiz)
@@ -80660,7 +79771,7 @@ index e4141f2..d8263e8 100644
i += packet_length_size;
if (copy_to_user(&buf[i], msg_ctx->msg, msg_ctx->msg_size))
diff --git a/fs/exec.c b/fs/exec.c
-index b06623a..10a5c14 100644
+index b06623a..784136d 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -56,8 +56,20 @@
@@ -80963,7 +80074,13 @@ index b06623a..10a5c14 100644
out:
return file;
-@@ -824,7 +902,7 @@ int kernel_read(struct file *file, loff_t offset,
+@@ -821,10 +899,13 @@ int kernel_read(struct file *file, loff_t offset,
+ loff_t pos = offset;
+ int result;
+
++ if (count > INT_MAX)
++ return -EINVAL;
++
old_fs = get_fs();
set_fs(get_ds());
/* The cast to a user pointer is valid due to the set_fs() */
@@ -80972,7 +80089,7 @@ index b06623a..10a5c14 100644
set_fs(old_fs);
return result;
}
-@@ -869,6 +947,7 @@ static int exec_mmap(struct mm_struct *mm)
+@@ -869,6 +950,7 @@ static int exec_mmap(struct mm_struct *mm)
tsk->mm = mm;
tsk->active_mm = mm;
activate_mm(active_mm, mm);
@@ -80980,7 +80097,7 @@ index b06623a..10a5c14 100644
tsk->mm->vmacache_seqnum = 0;
vmacache_flush(tsk);
task_unlock(tsk);
-@@ -1277,7 +1356,7 @@ static void check_unsafe_exec(struct linux_binprm *bprm)
+@@ -1277,7 +1359,7 @@ static void check_unsafe_exec(struct linux_binprm *bprm)
}
rcu_read_unlock();
@@ -80989,7 +80106,7 @@ index b06623a..10a5c14 100644
bprm->unsafe |= LSM_UNSAFE_SHARE;
else
p->fs->in_exec = 1;
-@@ -1478,6 +1557,31 @@ static int exec_binprm(struct linux_binprm *bprm)
+@@ -1478,6 +1560,31 @@ static int exec_binprm(struct linux_binprm *bprm)
return ret;
}
@@ -81021,7 +80138,7 @@ index b06623a..10a5c14 100644
/*
* sys_execve() executes a new program.
*/
-@@ -1486,6 +1590,11 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1486,6 +1593,11 @@ static int do_execveat_common(int fd, struct filename *filename,
struct user_arg_ptr envp,
int flags)
{
@@ -81033,7 +80150,7 @@ index b06623a..10a5c14 100644
char *pathbuf = NULL;
struct linux_binprm *bprm;
struct file *file;
-@@ -1495,6 +1604,8 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1495,6 +1607,8 @@ static int do_execveat_common(int fd, struct filename *filename,
if (IS_ERR(filename))
return PTR_ERR(filename);
@@ -81042,7 +80159,7 @@ index b06623a..10a5c14 100644
/*
* We move the actual failure in case of RLIMIT_NPROC excess from
* set*uid() to execve() because too many poorly written programs
-@@ -1532,6 +1643,11 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1532,6 +1646,11 @@ static int do_execveat_common(int fd, struct filename *filename,
if (IS_ERR(file))
goto out_unmark;
@@ -81054,7 +80171,7 @@ index b06623a..10a5c14 100644
sched_exec();
bprm->file = file;
-@@ -1558,6 +1674,11 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1558,6 +1677,11 @@ static int do_execveat_common(int fd, struct filename *filename,
}
bprm->interp = bprm->filename;
@@ -81066,7 +80183,7 @@ index b06623a..10a5c14 100644
retval = bprm_mm_init(bprm);
if (retval)
goto out_unmark;
-@@ -1574,24 +1695,70 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1574,24 +1698,70 @@ static int do_execveat_common(int fd, struct filename *filename,
if (retval < 0)
goto out;
@@ -81141,7 +80258,7 @@ index b06623a..10a5c14 100644
current->fs->in_exec = 0;
current->in_execve = 0;
acct_update_integrals(current);
-@@ -1603,6 +1770,14 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1603,6 +1773,14 @@ static int do_execveat_common(int fd, struct filename *filename,
put_files_struct(displaced);
return retval;
@@ -81156,7 +80273,7 @@ index b06623a..10a5c14 100644
out:
if (bprm->mm) {
acct_arg_size(bprm, 0);
-@@ -1749,3 +1924,319 @@ COMPAT_SYSCALL_DEFINE5(execveat, int, fd,
+@@ -1749,3 +1927,319 @@ COMPAT_SYSCALL_DEFINE5(execveat, int, fd,
argv, envp, flags);
}
#endif
@@ -81494,10 +80611,10 @@ index 9f9992b..8b59411 100644
}
return 1;
diff --git a/fs/ext2/super.c b/fs/ext2/super.c
-index 900e19c..f7dc2b8 100644
+index 748d35a..87114f0 100644
--- a/fs/ext2/super.c
+++ b/fs/ext2/super.c
-@@ -267,10 +267,8 @@ static int ext2_show_options(struct seq_file *seq, struct dentry *root)
+@@ -270,10 +270,8 @@ static int ext2_show_options(struct seq_file *seq, struct dentry *root)
#ifdef CONFIG_EXT2_FS_XATTR
if (test_opt(sb, XATTR_USER))
seq_puts(seq, ",user_xattr");
@@ -81509,7 +80626,7 @@ index 900e19c..f7dc2b8 100644
#endif
#ifdef CONFIG_EXT2_FS_POSIX_ACL
-@@ -856,8 +854,8 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent)
+@@ -861,8 +859,8 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent)
if (def_mount_opts & EXT2_DEFM_UID16)
set_opt(sbi->s_mount_opt, NO_UID32);
#ifdef CONFIG_EXT2_FS_XATTR
@@ -81521,7 +80638,7 @@ index 900e19c..f7dc2b8 100644
#ifdef CONFIG_EXT2_FS_POSIX_ACL
if (def_mount_opts & EXT2_DEFM_ACL)
diff --git a/fs/ext2/xattr.c b/fs/ext2/xattr.c
-index 0b6bfd3..93a2964 100644
+index fa70848..57b36d2 100644
--- a/fs/ext2/xattr.c
+++ b/fs/ext2/xattr.c
@@ -247,7 +247,7 @@ ext2_xattr_list(struct dentry *dentry, char *buffer, size_t buffer_size)
@@ -81533,7 +80650,7 @@ index 0b6bfd3..93a2964 100644
int error;
ea_idebug(inode, "buffer=%p, buffer_size=%ld",
-@@ -305,9 +305,10 @@ bad_block: ext2_error(inode->i_sb, "ext2_xattr_list",
+@@ -304,9 +304,10 @@ bad_block: ext2_error(inode->i_sb, "ext2_xattr_list",
buffer += size;
}
rest -= size;
@@ -81546,10 +80663,10 @@ index 0b6bfd3..93a2964 100644
cleanup:
brelse(bh);
diff --git a/fs/ext4/balloc.c b/fs/ext4/balloc.c
-index cd6ea29..1cd2a97 100644
+index ec0668a..34bccf7 100644
--- a/fs/ext4/balloc.c
+++ b/fs/ext4/balloc.c
-@@ -556,8 +556,8 @@ static int ext4_has_free_clusters(struct ext4_sb_info *sbi,
+@@ -562,8 +562,8 @@ static int ext4_has_free_clusters(struct ext4_sb_info *sbi,
/* Hm, nope. Are (enough) root reserved clusters available? */
if (uid_eq(sbi->s_resuid, current_fsuid()) ||
(!gid_eq(sbi->s_resgid, GLOBAL_ROOT_GID) && in_group_p(sbi->s_resgid)) ||
@@ -81561,10 +80678,10 @@ index cd6ea29..1cd2a97 100644
if (free_clusters >= (nclusters + dirty_clusters +
resv_clusters))
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
-index fd1f28b..eb832cf 100644
+index cc7ca4e..1973ef2 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
-@@ -1305,19 +1305,19 @@ struct ext4_sb_info {
+@@ -1351,19 +1351,19 @@ struct ext4_sb_info {
unsigned long s_mb_last_start;
/* stats for buddy allocator */
@@ -81595,10 +80712,10 @@ index fd1f28b..eb832cf 100644
/* locality groups */
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
-index 7f486e3..2d61649 100644
+index 551353b..a069cff 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
-@@ -862,7 +862,7 @@ ext4_find_extent(struct inode *inode, ext4_lblk_t block,
+@@ -863,7 +863,7 @@ ext4_find_extent(struct inode *inode, ext4_lblk_t block,
struct ext4_extent_header *eh;
struct buffer_head *bh;
struct ext4_ext_path *path = orig_path ? *orig_path : NULL;
@@ -81608,10 +80725,10 @@ index 7f486e3..2d61649 100644
eh = ext_inode_hdr(inode);
diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c
-index 34b610e..ecc47cb 100644
+index 61eaf74..01a829b 100644
--- a/fs/ext4/mballoc.c
+++ b/fs/ext4/mballoc.c
-@@ -1905,7 +1905,7 @@ void ext4_mb_simple_scan_group(struct ext4_allocation_context *ac,
+@@ -1912,7 +1912,7 @@ void ext4_mb_simple_scan_group(struct ext4_allocation_context *ac,
BUG_ON(ac->ac_b_ex.fe_len != ac->ac_g_ex.fe_len);
if (EXT4_SB(sb)->s_mb_stats)
@@ -81620,7 +80737,7 @@ index 34b610e..ecc47cb 100644
break;
}
-@@ -2228,7 +2228,7 @@ repeat:
+@@ -2235,7 +2235,7 @@ repeat:
ac->ac_status = AC_STATUS_CONTINUE;
ac->ac_flags |= EXT4_MB_HINT_FIRST;
cr = 3;
@@ -81665,7 +80782,7 @@ index 34b610e..ecc47cb 100644
}
free_percpu(sbi->s_locality_groups);
-@@ -3206,16 +3206,16 @@ static void ext4_mb_collect_stats(struct ext4_allocation_context *ac)
+@@ -3208,16 +3208,16 @@ static void ext4_mb_collect_stats(struct ext4_allocation_context *ac)
struct ext4_sb_info *sbi = EXT4_SB(ac->ac_sb);
if (sbi->s_mb_stats && ac->ac_g_ex.fe_len > 1) {
@@ -81688,7 +80805,7 @@ index 34b610e..ecc47cb 100644
}
if (ac->ac_op == EXT4_MB_HISTORY_ALLOC)
-@@ -3642,7 +3642,7 @@ ext4_mb_new_inode_pa(struct ext4_allocation_context *ac)
+@@ -3644,7 +3644,7 @@ ext4_mb_new_inode_pa(struct ext4_allocation_context *ac)
trace_ext4_mb_new_inode_pa(ac, pa);
ext4_mb_use_inode_pa(ac, pa);
@@ -81697,7 +80814,7 @@ index 34b610e..ecc47cb 100644
ei = EXT4_I(ac->ac_inode);
grp = ext4_get_group_info(sb, ac->ac_b_ex.fe_group);
-@@ -3702,7 +3702,7 @@ ext4_mb_new_group_pa(struct ext4_allocation_context *ac)
+@@ -3704,7 +3704,7 @@ ext4_mb_new_group_pa(struct ext4_allocation_context *ac)
trace_ext4_mb_new_group_pa(ac, pa);
ext4_mb_use_group_pa(ac, pa);
@@ -81706,7 +80823,7 @@ index 34b610e..ecc47cb 100644
grp = ext4_get_group_info(sb, ac->ac_b_ex.fe_group);
lg = ac->ac_lg;
-@@ -3791,7 +3791,7 @@ ext4_mb_release_inode_pa(struct ext4_buddy *e4b, struct buffer_head *bitmap_bh,
+@@ -3793,7 +3793,7 @@ ext4_mb_release_inode_pa(struct ext4_buddy *e4b, struct buffer_head *bitmap_bh,
* from the bitmap and continue.
*/
}
@@ -81715,7 +80832,7 @@ index 34b610e..ecc47cb 100644
return err;
}
-@@ -3809,7 +3809,7 @@ ext4_mb_release_group_pa(struct ext4_buddy *e4b,
+@@ -3811,7 +3811,7 @@ ext4_mb_release_group_pa(struct ext4_buddy *e4b,
ext4_get_group_no_and_offset(sb, pa->pa_pstart, &group, &bit);
BUG_ON(group != e4b->bd_group && pa->pa_len != 0);
mb_free_blocks(pa->pa_inode, e4b, bit, pa->pa_len);
@@ -81725,7 +80842,7 @@ index 34b610e..ecc47cb 100644
return 0;
diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c
-index cf0c472..ddf284d 100644
+index ad62d7a..b829af6 100644
--- a/fs/ext4/resize.c
+++ b/fs/ext4/resize.c
@@ -413,7 +413,7 @@ static int set_flexbg_block_bitmap(struct super_block *sb, handle_t *handle,
@@ -81767,10 +80884,10 @@ index cf0c472..ddf284d 100644
err = ext4_handle_dirty_metadata(handle, NULL, bh);
if (unlikely(err))
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
-index df84bd2..e6e9120 100644
+index c9ab67d..3c937171 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
-@@ -1279,7 +1279,7 @@ static ext4_fsblk_t get_sb_block(void **data)
+@@ -1274,7 +1274,7 @@ static ext4_fsblk_t get_sb_block(void **data)
}
#define DEFAULT_JOURNAL_IOPRIO (IOPRIO_PRIO_VALUE(IOPRIO_CLASS_BE, 3))
@@ -81779,17 +80896,21 @@ index df84bd2..e6e9120 100644
"Contact linux-ext4@vger.kernel.org if you think we should keep it.\n";
#ifdef CONFIG_QUOTA
-@@ -2489,7 +2489,7 @@ struct ext4_attr {
+diff --git a/fs/ext4/sysfs.c b/fs/ext4/sysfs.c
+index 1420a3c..e87523c 100644
+--- a/fs/ext4/sysfs.c
++++ b/fs/ext4/sysfs.c
+@@ -45,7 +45,7 @@ struct ext4_attr {
int offset;
- int deprecated_val;
+ void *explicit_ptr;
} u;
-};
+} __do_const;
- static int parse_strtoull(const char *buf,
- unsigned long long max, unsigned long long *value)
+ static ssize_t session_write_kbytes_show(struct ext4_attr *a,
+ struct ext4_sb_info *sbi, char *buf)
diff --git a/fs/ext4/xattr.c b/fs/ext4/xattr.c
-index 16e28c0..728c282 100644
+index 6b6b3e7..0cbeeb9 100644
--- a/fs/ext4/xattr.c
+++ b/fs/ext4/xattr.c
@@ -398,7 +398,7 @@ static int
@@ -81801,7 +80922,7 @@ index 16e28c0..728c282 100644
for (; !IS_LAST_ENTRY(entry); entry = EXT4_XATTR_NEXT(entry)) {
const struct xattr_handler *handler =
-@@ -415,9 +415,10 @@ ext4_xattr_list_entries(struct dentry *dentry, struct ext4_xattr_entry *entry,
+@@ -414,9 +414,10 @@ ext4_xattr_list_entries(struct dentry *dentry, struct ext4_xattr_entry *entry,
buffer += size;
}
rest -= size;
@@ -81869,7 +80990,7 @@ index d59712d..2c63363 100644
retval = -EFAULT;
goto out_handle;
diff --git a/fs/file.c b/fs/file.c
-index 6c672ad..3166d8c 100644
+index 39f8f15..898d887 100644
--- a/fs/file.c
+++ b/fs/file.c
@@ -16,6 +16,7 @@
@@ -81880,7 +81001,7 @@ index 6c672ad..3166d8c 100644
#include <linux/fdtable.h>
#include <linux/bitops.h>
#include <linux/interrupt.h>
-@@ -139,9 +140,10 @@ out:
+@@ -162,9 +163,10 @@ out:
* Return <0 error code on error; 1 on successful completion.
* The files->file_lock should be held on entry, and will be held on exit.
*/
@@ -81894,7 +81015,7 @@ index 6c672ad..3166d8c 100644
{
struct fdtable *new_fdt, *cur_fdt;
-@@ -184,9 +186,10 @@ static int expand_fdtable(struct files_struct *files, int nr)
+@@ -207,9 +209,10 @@ static int expand_fdtable(struct files_struct *files, int nr)
* expanded and execution may have blocked.
* The files->file_lock should be held on entry, and will be held on exit.
*/
@@ -81908,7 +81029,7 @@ index 6c672ad..3166d8c 100644
{
struct fdtable *fdt;
int expanded = 0;
-@@ -784,7 +787,9 @@ bool get_close_on_exec(unsigned int fd)
+@@ -816,7 +819,9 @@ bool get_close_on_exec(unsigned int fd)
static int do_dup2(struct files_struct *files,
struct file *file, unsigned fd, unsigned flags)
@@ -81919,7 +81040,7 @@ index 6c672ad..3166d8c 100644
{
struct file *tofree;
struct fdtable *fdt;
-@@ -834,6 +839,7 @@ int replace_fd(unsigned fd, struct file *file, unsigned flags)
+@@ -866,6 +871,7 @@ int replace_fd(unsigned fd, struct file *file, unsigned flags)
if (!file)
return __close_fd(files, fd);
@@ -81927,7 +81048,7 @@ index 6c672ad..3166d8c 100644
if (fd >= rlimit(RLIMIT_NOFILE))
return -EBADF;
-@@ -860,6 +866,7 @@ SYSCALL_DEFINE3(dup3, unsigned int, oldfd, unsigned int, newfd, int, flags)
+@@ -892,6 +898,7 @@ SYSCALL_DEFINE3(dup3, unsigned int, oldfd, unsigned int, newfd, int, flags)
if (unlikely(oldfd == newfd))
return -EINVAL;
@@ -81935,7 +81056,7 @@ index 6c672ad..3166d8c 100644
if (newfd >= rlimit(RLIMIT_NOFILE))
return -EBADF;
-@@ -915,6 +922,7 @@ SYSCALL_DEFINE1(dup, unsigned int, fildes)
+@@ -947,6 +954,7 @@ SYSCALL_DEFINE1(dup, unsigned int, fildes)
int f_dupfd(unsigned int from, struct file *file, unsigned flags)
{
int err;
@@ -81960,7 +81081,7 @@ index 5797d45..7d7d79a 100644
if (dot && fs && !(fs->fs_flags & FS_HAS_SUBTYPE)) {
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
-index 29e4599..4eaa7db 100644
+index 023f6a1..9132167 100644
--- a/fs/fs-writeback.c
+++ b/fs/fs-writeback.c
@@ -845,9 +845,9 @@ restart:
@@ -82118,7 +81239,7 @@ index 7dca743..1ff87ae 100644
.seq = SEQCNT_ZERO(init_fs.seq),
.umask = 0022,
diff --git a/fs/fscache/cookie.c b/fs/fscache/cookie.c
-index d403c69..30be0a9 100644
+index 43040721..2780191 100644
--- a/fs/fscache/cookie.c
+++ b/fs/fscache/cookie.c
@@ -19,7 +19,7 @@
@@ -82762,7 +81883,7 @@ index de67745..6a3a9b6 100644
ASSERTCMP(atomic_read(&op->usage), ==, 0);
ASSERTCMP(op->state, ==, FSCACHE_OP_ST_DEAD);
diff --git a/fs/fscache/page.c b/fs/fscache/page.c
-index 483bbc6..ba36737 100644
+index 6b35fc4..11f393e 100644
--- a/fs/fscache/page.c
+++ b/fs/fscache/page.c
@@ -74,7 +74,7 @@ try_again:
@@ -82792,7 +81913,7 @@ index 483bbc6..ba36737 100644
@@ -123,11 +123,11 @@ page_busy:
* sleeping on memory allocation, so we may need to impose a timeout
* too. */
- if (!(gfp & __GFP_WAIT) || !(gfp & __GFP_FS)) {
+ if (!(gfp & __GFP_DIRECT_RECLAIM) || !(gfp & __GFP_FS)) {
- fscache_stat(&fscache_n_store_vmscan_busy);
+ fscache_stat_unchecked(&fscache_n_store_vmscan_busy);
return false;
@@ -83065,7 +82186,7 @@ index 483bbc6..ba36737 100644
@@ -817,7 +817,7 @@ static void fscache_write_op(struct fscache_operation *_op)
page = results[0];
_debug("gang %d [%lx]", n, page->index);
- if (page->index > op->store_limit) {
+ if (page->index >= op->store_limit) {
- fscache_stat(&fscache_n_store_pages_over_limit);
+ fscache_stat_unchecked(&fscache_n_store_pages_over_limit);
goto superseded;
@@ -83548,10 +82669,10 @@ index 7cfa0aa..d5ef97b7 100644
seq_printf(m, "CacheOp: alo=%d luo=%d luc=%d gro=%d\n",
atomic_read(&fscache_n_cop_alloc_object),
diff --git a/fs/fuse/cuse.c b/fs/fuse/cuse.c
-index eae2c11..b277a45 100644
+index 8e3ee19..5a0b7b2 100644
--- a/fs/fuse/cuse.c
+++ b/fs/fuse/cuse.c
-@@ -609,10 +609,12 @@ static int __init cuse_init(void)
+@@ -611,10 +611,12 @@ static int __init cuse_init(void)
INIT_LIST_HEAD(&cuse_conntbl[i]);
/* inherit and extend fuse_dev_operations */
@@ -83591,7 +82712,7 @@ index ebb5e37..beae05b 100644
}
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
-index cf4ab89..5a00960 100644
+index 5e42546..ea321c8 100644
--- a/fs/gfs2/file.c
+++ b/fs/gfs2/file.c
@@ -781,7 +781,7 @@ static void calc_max_reserv(struct gfs2_inode *ip, loff_t *len,
@@ -83604,7 +82725,7 @@ index cf4ab89..5a00960 100644
for (tmp = max_data; tmp > sdp->sd_diptrs;) {
tmp = DIV_ROUND_UP(tmp, sdp->sd_inptrs);
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
-index 9bd1244..b8c82d9 100644
+index 32e7471..ffc6973 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -324,9 +324,9 @@ static void state_change(struct gfs2_glock *gl, unsigned int new_state)
@@ -83651,7 +82772,7 @@ index 9bd1244..b8c82d9 100644
+ __lockref_dec(&gl->gl_lockref);
}
run_queue(gl, 1);
- spin_unlock(&gl->gl_spin);
+ spin_unlock(&gl->gl_lockref.lock);
@@ -1278,7 +1278,7 @@ void gfs2_glock_complete(struct gfs2_glock *gl, int ret)
}
}
@@ -83659,7 +82780,7 @@ index 9bd1244..b8c82d9 100644
- gl->gl_lockref.count++;
+ __lockref_inc(&gl->gl_lockref);
set_bit(GLF_REPLY_PENDING, &gl->gl_flags);
- spin_unlock(&gl->gl_spin);
+ spin_unlock(&gl->gl_lockref.lock);
@@ -1337,12 +1337,12 @@ add_back_to_lru:
goto add_back_to_lru;
@@ -83673,7 +82794,7 @@ index 9bd1244..b8c82d9 100644
if (queue_delayed_work(glock_workqueue, &gl->gl_work, 0) == 0)
- gl->gl_lockref.count--;
+ __lockref_dec(&gl->gl_lockref);
- spin_unlock(&gl->gl_spin);
+ spin_unlock(&gl->gl_lockref.lock);
cond_resched_lock(&lru_lock);
}
@@ -1667,7 +1667,7 @@ void gfs2_dump_glock(struct seq_file *seq, const struct gfs2_glock *gl)
@@ -83686,7 +82807,7 @@ index 9bd1244..b8c82d9 100644
list_for_each_entry(gh, &gl->gl_holders, gh_list)
dump_holder(seq, gh);
diff --git a/fs/gfs2/glops.c b/fs/gfs2/glops.c
-index 1f6c9c3..9a651f1 100644
+index f348cfb..e4274b2 100644
--- a/fs/gfs2/glops.c
+++ b/fs/gfs2/glops.c
@@ -554,9 +554,9 @@ static void iopen_go_callback(struct gfs2_glock *gl, bool remote)
@@ -83733,7 +82854,7 @@ index 3a31226..2fffbe9 100644
spin_unlock(&qd->qd_lockref.lock);
diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c
-index 316adb9..f483eb1 100644
+index de4bdfa..1264061 100644
--- a/fs/hugetlbfs/inode.c
+++ b/fs/hugetlbfs/inode.c
@@ -174,6 +174,7 @@ hugetlb_get_unmapped_area(struct file *file, unsigned long addr,
@@ -83773,7 +82894,41 @@ index 316adb9..f483eb1 100644
info.high_limit = TASK_SIZE;
info.align_mask = PAGE_MASK & ~huge_page_mask(h);
info.align_offset = 0;
-@@ -1204,7 +1214,7 @@ static struct file_system_type hugetlbfs_fs_type = {
+@@ -463,6 +473,7 @@ hugetlb_vmdelete_list(struct rb_root *root, pgoff_t start, pgoff_t end)
+ */
+ vma_interval_tree_foreach(vma, root, start, end ? end : ULONG_MAX) {
+ unsigned long v_offset;
++ unsigned long v_end;
+
+ /*
+ * Can the expression below overflow on 32-bit arches?
+@@ -475,15 +486,17 @@ hugetlb_vmdelete_list(struct rb_root *root, pgoff_t start, pgoff_t end)
+ else
+ v_offset = 0;
+
+- if (end) {
+- end = ((end - start) << PAGE_SHIFT) +
+- vma->vm_start + v_offset;
+- if (end > vma->vm_end)
+- end = vma->vm_end;
+- } else
+- end = vma->vm_end;
++ if (!end)
++ v_end = vma->vm_end;
++ else {
++ v_end = ((end - vma->vm_pgoff) << PAGE_SHIFT)
++ + vma->vm_start;
++ if (v_end > vma->vm_end)
++ v_end = vma->vm_end;
++ }
+
+- unmap_hugepage_range(vma, vma->vm_start + v_offset, end, NULL);
++ unmap_hugepage_range(vma, vma->vm_start + v_offset, v_end,
++ NULL);
+ }
+ }
+
+@@ -1203,7 +1216,7 @@ static struct file_system_type hugetlbfs_fs_type = {
};
MODULE_ALIAS_FS("hugetlbfs");
@@ -83783,7 +82938,7 @@ index 316adb9..f483eb1 100644
static int can_do_hugetlb_shm(void)
{
diff --git a/fs/inode.c b/fs/inode.c
-index 78a17b8..fb43210 100644
+index 1be5f90..55702b0 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -844,19 +844,19 @@ unsigned int get_next_ino(void)
@@ -83850,10 +83005,10 @@ index 5d01d26..41c352e 100644
int error = -ENOTTY;
diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c
-index 362e5f6..3c562e0 100644
+index 36345fe..f2d7dac 100644
--- a/fs/jbd2/commit.c
+++ b/fs/jbd2/commit.c
-@@ -1102,7 +1102,7 @@ restart_loop:
+@@ -1096,7 +1096,7 @@ restart_loop:
*/
stats.ts_tid = commit_transaction->t_tid;
stats.run.rs_handle_count =
@@ -83863,7 +83018,7 @@ index 362e5f6..3c562e0 100644
commit_transaction->t_tid, &stats.run);
stats.ts_requested = (commit_transaction->t_requested) ? 1 : 0;
diff --git a/fs/jbd2/transaction.c b/fs/jbd2/transaction.c
-index 6b8338e..51de3f2 100644
+index ca181e8..8262e59 100644
--- a/fs/jbd2/transaction.c
+++ b/fs/jbd2/transaction.c
@@ -91,7 +91,7 @@ jbd2_get_transaction(journal_t *journal, transaction_t *transaction)
@@ -83899,7 +83054,7 @@ index 4a6cf28..d3a29d3 100644
jffs2_prealloc_raw_node_refs(c, jeb, 1);
diff --git a/fs/jffs2/wbuf.c b/fs/jffs2/wbuf.c
-index 09ed551..45684f8 100644
+index f3a4857..2542b7a 100644
--- a/fs/jffs2/wbuf.c
+++ b/fs/jffs2/wbuf.c
@@ -1023,7 +1023,8 @@ static const struct jffs2_unknown_node oob_cleanmarker =
@@ -83913,10 +83068,10 @@ index 09ed551..45684f8 100644
/*
diff --git a/fs/jfs/super.c b/fs/jfs/super.c
-index 4cd9798..8dfe86a 100644
+index 8f9176c..6f2b910 100644
--- a/fs/jfs/super.c
+++ b/fs/jfs/super.c
-@@ -901,7 +901,7 @@ static int __init init_jfs_fs(void)
+@@ -898,7 +898,7 @@ static int __init init_jfs_fs(void)
jfs_inode_cachep =
kmem_cache_create("jfs_ip", sizeof(struct jfs_inode_info), 0,
@@ -84063,7 +83218,7 @@ index c7cbfb0..fc3636d4 100644
return 0;
spin_lock(&dentry->d_lock);
diff --git a/fs/lockd/clntproc.c b/fs/lockd/clntproc.c
-index acd3947..1f896e2 100644
+index 1129520..356aeca 100644
--- a/fs/lockd/clntproc.c
+++ b/fs/lockd/clntproc.c
@@ -36,11 +36,11 @@ static const struct rpc_call_ops nlmclnt_cancel_ops;
@@ -84103,7 +83258,7 @@ index 14db05d..687f6d8 100644
#define MNT_NS_INTERNAL ERR_PTR(-EINVAL) /* distinct from any mnt_namespace */
diff --git a/fs/namei.c b/fs/namei.c
-index 33e9495..4b9d9fb 100644
+index 0c3974c..a52e0f8 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -336,17 +336,32 @@ int generic_permission(struct inode *inode, int mask)
@@ -84264,7 +83419,7 @@ index 33e9495..4b9d9fb 100644
if (nd->root.mnt && !(nd->flags & LOOKUP_ROOT)) {
path_put(&nd->root);
nd->root.mnt = NULL;
-@@ -1004,6 +1073,9 @@ const char *get_link(struct nameidata *nd)
+@@ -1001,6 +1070,9 @@ const char *get_link(struct nameidata *nd)
if (unlikely(error))
return ERR_PTR(error);
@@ -84274,7 +83429,7 @@ index 33e9495..4b9d9fb 100644
nd->last_type = LAST_BIND;
res = inode->i_link;
if (!res) {
-@@ -1692,6 +1764,23 @@ static int pick_link(struct nameidata *nd, struct path *link,
+@@ -1689,6 +1761,23 @@ static int pick_link(struct nameidata *nd, struct path *link,
}
}
@@ -84298,7 +83453,7 @@ index 33e9495..4b9d9fb 100644
last = nd->stack + nd->depth++;
last->link = *link;
last->cookie = NULL;
-@@ -1831,7 +1920,7 @@ EXPORT_SYMBOL(full_name_hash);
+@@ -1828,7 +1917,7 @@ EXPORT_SYMBOL(full_name_hash);
static inline u64 hash_name(const char *name)
{
unsigned long a, b, adata, bdata, mask, hash, len;
@@ -84307,18 +83462,18 @@ index 33e9495..4b9d9fb 100644
hash = a = 0;
len = -sizeof(unsigned long);
-@@ -1999,7 +2088,9 @@ static const char *path_init(struct nameidata *nd, unsigned flags)
+@@ -1996,6 +2085,10 @@ static const char *path_init(struct nameidata *nd, unsigned flags)
nd->last_type = LAST_ROOT; /* if there are only slashes... */
nd->flags = flags | LOOKUP_JUMPED | LOOKUP_PARENT;
nd->depth = 0;
-- nd->total_link_count = 0;
+#ifdef CONFIG_GRKERNSEC_SYMLINKOWN
+ nd->symlinkown_depth = 0;
+#endif
++
if (flags & LOOKUP_ROOT) {
struct dentry *root = nd->root.dentry;
struct inode *inode = root->d_inode;
-@@ -2137,6 +2228,11 @@ static int path_lookupat(struct nameidata *nd, unsigned flags, struct path *path
+@@ -2133,6 +2226,11 @@ static int path_lookupat(struct nameidata *nd, unsigned flags, struct path *path
if (!err)
err = complete_walk(nd);
@@ -84330,7 +83485,7 @@ index 33e9495..4b9d9fb 100644
if (!err && nd->flags & LOOKUP_DIRECTORY)
if (!d_can_lookup(nd->path.dentry))
err = -ENOTDIR;
-@@ -2185,6 +2281,10 @@ static int path_parentat(struct nameidata *nd, unsigned flags,
+@@ -2181,6 +2279,10 @@ static int path_parentat(struct nameidata *nd, unsigned flags,
err = link_path_walk(s, nd);
if (!err)
err = complete_walk(nd);
@@ -84341,7 +83496,7 @@ index 33e9495..4b9d9fb 100644
if (!err) {
*parent = nd->path;
nd->path.mnt = NULL;
-@@ -2716,6 +2816,13 @@ static int may_open(struct path *path, int acc_mode, int flag)
+@@ -2712,6 +2814,13 @@ static int may_open(struct path *path, int acc_mode, int flag)
if (flag & O_NOATIME && !inode_owner_or_capable(inode))
return -EPERM;
@@ -84355,7 +83510,7 @@ index 33e9495..4b9d9fb 100644
return 0;
}
-@@ -2982,6 +3089,18 @@ static int lookup_open(struct nameidata *nd, struct path *path,
+@@ -2978,6 +3087,18 @@ static int lookup_open(struct nameidata *nd, struct path *path,
/* Negative dentry, just create the file */
if (!dentry->d_inode && (op->open_flag & O_CREAT)) {
umode_t mode = op->mode;
@@ -84374,7 +83529,7 @@ index 33e9495..4b9d9fb 100644
if (!IS_POSIXACL(dir->d_inode))
mode &= ~current_umask();
/*
-@@ -3003,6 +3122,8 @@ static int lookup_open(struct nameidata *nd, struct path *path,
+@@ -2999,6 +3120,8 @@ static int lookup_open(struct nameidata *nd, struct path *path,
nd->flags & LOOKUP_EXCL);
if (error)
goto out_dput;
@@ -84383,7 +83538,7 @@ index 33e9495..4b9d9fb 100644
}
out_no_open:
path->dentry = dentry;
-@@ -3108,11 +3229,24 @@ retry_lookup:
+@@ -3104,11 +3227,24 @@ retry_lookup:
goto finish_open_created;
}
@@ -84409,7 +83564,7 @@ index 33e9495..4b9d9fb 100644
/*
* If atomic_open() acquired write access it is dropped now due to
-@@ -3148,6 +3282,11 @@ finish_lookup:
+@@ -3144,6 +3280,11 @@ finish_lookup:
if (unlikely(error))
return error;
@@ -84421,7 +83576,7 @@ index 33e9495..4b9d9fb 100644
if (unlikely(d_is_symlink(path.dentry)) && !(open_flag & O_PATH)) {
path_to_nameidata(&path, nd);
return -ELOOP;
-@@ -3170,6 +3309,12 @@ finish_open:
+@@ -3166,6 +3307,12 @@ finish_open:
path_put(&save_parent);
return error;
}
@@ -84434,7 +83589,7 @@ index 33e9495..4b9d9fb 100644
audit_inode(nd->name, nd->path.dentry, 0);
error = -EISDIR;
if ((open_flag & O_CREAT) && d_is_dir(nd->path.dentry))
-@@ -3436,9 +3581,11 @@ static struct dentry *filename_create(int dfd, struct filename *name,
+@@ -3432,9 +3579,11 @@ static struct dentry *filename_create(int dfd, struct filename *name,
goto unlock;
error = -EEXIST;
@@ -84448,7 +83603,7 @@ index 33e9495..4b9d9fb 100644
/*
* Special case - lookup gave negative, but... we had foo/bar/
* From the vfs_mknod() POV we just have a negative dentry -
-@@ -3492,6 +3639,20 @@ inline struct dentry *user_path_create(int dfd, const char __user *pathname,
+@@ -3488,6 +3637,20 @@ inline struct dentry *user_path_create(int dfd, const char __user *pathname,
}
EXPORT_SYMBOL(user_path_create);
@@ -84469,7 +83624,7 @@ index 33e9495..4b9d9fb 100644
int vfs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, dev_t dev)
{
int error = may_create(dir, dentry);
-@@ -3555,6 +3716,17 @@ retry:
+@@ -3551,6 +3714,17 @@ retry:
if (!IS_POSIXACL(path.dentry->d_inode))
mode &= ~current_umask();
@@ -84487,7 +83642,7 @@ index 33e9495..4b9d9fb 100644
error = security_path_mknod(&path, dentry, mode, dev);
if (error)
goto out;
-@@ -3570,6 +3742,8 @@ retry:
+@@ -3566,6 +3740,8 @@ retry:
error = vfs_mknod(path.dentry->d_inode,dentry,mode,0);
break;
}
@@ -84496,7 +83651,7 @@ index 33e9495..4b9d9fb 100644
out:
done_path_create(&path, dentry);
if (retry_estale(error, lookup_flags)) {
-@@ -3624,9 +3798,16 @@ retry:
+@@ -3620,9 +3796,16 @@ retry:
if (!IS_POSIXACL(path.dentry->d_inode))
mode &= ~current_umask();
@@ -84513,7 +83668,7 @@ index 33e9495..4b9d9fb 100644
done_path_create(&path, dentry);
if (retry_estale(error, lookup_flags)) {
lookup_flags |= LOOKUP_REVAL;
-@@ -3659,7 +3840,7 @@ void dentry_unhash(struct dentry *dentry)
+@@ -3655,7 +3838,7 @@ void dentry_unhash(struct dentry *dentry)
{
shrink_dcache_parent(dentry);
spin_lock(&dentry->d_lock);
@@ -84522,7 +83677,7 @@ index 33e9495..4b9d9fb 100644
__d_drop(dentry);
spin_unlock(&dentry->d_lock);
}
-@@ -3712,6 +3893,8 @@ static long do_rmdir(int dfd, const char __user *pathname)
+@@ -3708,6 +3891,8 @@ static long do_rmdir(int dfd, const char __user *pathname)
struct path path;
struct qstr last;
int type;
@@ -84531,7 +83686,7 @@ index 33e9495..4b9d9fb 100644
unsigned int lookup_flags = 0;
retry:
name = user_path_parent(dfd, pathname,
-@@ -3744,10 +3927,20 @@ retry:
+@@ -3740,10 +3925,20 @@ retry:
error = -ENOENT;
goto exit3;
}
@@ -84552,7 +83707,7 @@ index 33e9495..4b9d9fb 100644
exit3:
dput(dentry);
exit2:
-@@ -3842,6 +4035,8 @@ static long do_unlinkat(int dfd, const char __user *pathname)
+@@ -3838,6 +4033,8 @@ static long do_unlinkat(int dfd, const char __user *pathname)
int type;
struct inode *inode = NULL;
struct inode *delegated_inode = NULL;
@@ -84561,7 +83716,7 @@ index 33e9495..4b9d9fb 100644
unsigned int lookup_flags = 0;
retry:
name = user_path_parent(dfd, pathname,
-@@ -3868,10 +4063,21 @@ retry_deleg:
+@@ -3864,10 +4061,21 @@ retry_deleg:
if (d_is_negative(dentry))
goto slashes;
ihold(inode);
@@ -84583,7 +83738,7 @@ index 33e9495..4b9d9fb 100644
exit2:
dput(dentry);
}
-@@ -3960,9 +4166,17 @@ retry:
+@@ -3956,9 +4164,17 @@ retry:
if (IS_ERR(dentry))
goto out_putname;
@@ -84601,7 +83756,7 @@ index 33e9495..4b9d9fb 100644
done_path_create(&path, dentry);
if (retry_estale(error, lookup_flags)) {
lookup_flags |= LOOKUP_REVAL;
-@@ -4066,6 +4280,7 @@ SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,
+@@ -4062,6 +4278,7 @@ SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,
struct dentry *new_dentry;
struct path old_path, new_path;
struct inode *delegated_inode = NULL;
@@ -84609,7 +83764,7 @@ index 33e9495..4b9d9fb 100644
int how = 0;
int error;
-@@ -4089,7 +4304,7 @@ retry:
+@@ -4085,7 +4302,7 @@ retry:
if (error)
return error;
@@ -84618,7 +83773,7 @@ index 33e9495..4b9d9fb 100644
(how & LOOKUP_REVAL));
error = PTR_ERR(new_dentry);
if (IS_ERR(new_dentry))
-@@ -4101,11 +4316,26 @@ retry:
+@@ -4097,11 +4314,26 @@ retry:
error = may_linkat(&old_path);
if (unlikely(error))
goto out_dput;
@@ -84645,7 +83800,7 @@ index 33e9495..4b9d9fb 100644
done_path_create(&new_path, new_dentry);
if (delegated_inode) {
error = break_deleg_wait(&delegated_inode);
-@@ -4420,6 +4650,20 @@ retry_deleg:
+@@ -4416,6 +4648,20 @@ retry_deleg:
if (new_dentry == trap)
goto exit5;
@@ -84666,7 +83821,7 @@ index 33e9495..4b9d9fb 100644
error = security_path_rename(&old_path, old_dentry,
&new_path, new_dentry, flags);
if (error)
-@@ -4427,6 +4671,9 @@ retry_deleg:
+@@ -4423,6 +4669,9 @@ retry_deleg:
error = vfs_rename(old_path.dentry->d_inode, old_dentry,
new_path.dentry->d_inode, new_dentry,
&delegated_inode, flags);
@@ -84676,7 +83831,7 @@ index 33e9495..4b9d9fb 100644
exit5:
dput(new_dentry);
exit4:
-@@ -4483,14 +4730,24 @@ EXPORT_SYMBOL(vfs_whiteout);
+@@ -4479,14 +4728,24 @@ EXPORT_SYMBOL(vfs_whiteout);
int readlink_copy(char __user *buffer, int buflen, const char *link)
{
@@ -84832,10 +83987,10 @@ index 0570729..9de781d 100644
get_mnt_ns(mnt_ns);
diff --git a/fs/nfs/callback_xdr.c b/fs/nfs/callback_xdr.c
-index 6b1697a..6d5787c 100644
+index 646cdac..cdfa595 100644
--- a/fs/nfs/callback_xdr.c
+++ b/fs/nfs/callback_xdr.c
-@@ -51,7 +51,7 @@ struct callback_op {
+@@ -53,7 +53,7 @@ struct callback_op {
callback_decode_arg_t decode_args;
callback_encode_res_t encode_res;
long res_maxsize;
@@ -84845,10 +84000,10 @@ index 6b1697a..6d5787c 100644
static struct callback_op callback_ops[];
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
-index ffdf9b9..ca8f43e 100644
+index c7e8b87..67b19ae 100644
--- a/fs/nfs/inode.c
+++ b/fs/nfs/inode.c
-@@ -1281,16 +1281,16 @@ static int nfs_check_inode_attributes(struct inode *inode, struct nfs_fattr *fat
+@@ -1284,16 +1284,16 @@ static int nfs_check_inode_attributes(struct inode *inode, struct nfs_fattr *fat
return 0;
}
@@ -84869,10 +84024,10 @@ index ffdf9b9..ca8f43e 100644
EXPORT_SYMBOL_GPL(nfs_inc_attr_generation_counter);
diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
-index 4ce6b97..24fdd3c 100644
+index a9f096c..fa0310f 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
-@@ -1481,7 +1481,7 @@ struct nfsd4_operation {
+@@ -1485,7 +1485,7 @@ struct nfsd4_operation {
nfsd4op_rsize op_rsize_bop;
stateid_getter op_get_currentstateid;
stateid_setter op_set_currentstateid;
@@ -84895,10 +84050,10 @@ index 51c9e9c..82dc067 100644
[OP_CLOSE] = (nfsd4_dec)nfsd4_decode_close,
[OP_COMMIT] = (nfsd4_dec)nfsd4_decode_commit,
diff --git a/fs/nfsd/nfscache.c b/fs/nfsd/nfscache.c
-index 46ec934..f384e41 100644
+index 54cde9a..ff5756c 100644
--- a/fs/nfsd/nfscache.c
+++ b/fs/nfsd/nfscache.c
-@@ -541,7 +541,7 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp)
+@@ -513,7 +513,7 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp)
struct kvec *resv = &rqstp->rq_res.head[0], *cachv;
u32 hash;
struct nfsd_drc_bucket *b;
@@ -84907,7 +84062,7 @@ index 46ec934..f384e41 100644
size_t bufsize = 0;
if (!rp)
-@@ -550,11 +550,14 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp)
+@@ -522,11 +522,14 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp)
hash = nfsd_cache_hash(rp->c_xid);
b = &drc_hashtbl[hash];
@@ -84925,7 +84080,7 @@ index 46ec934..f384e41 100644
nfsd_reply_cache_free(b, rp);
return;
}
-@@ -562,7 +565,7 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp)
+@@ -534,7 +537,7 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp)
switch (cachetype) {
case RC_REPLSTAT:
if (len != 1)
@@ -84935,7 +84090,7 @@ index 46ec934..f384e41 100644
break;
case RC_REPLBUFF:
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
-index 45c0497..139d403 100644
+index 994d66f..a963779 100644
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
@@ -855,7 +855,7 @@ __be32 nfsd_readv(struct file *file, loff_t offset, struct kvec *vec, int vlen,
@@ -85208,10 +84363,10 @@ index 8251360..9c7513a 100644
/* Lists: Dirty=Empty Purge=InUse PendingASTs=Empty ... */
out += snprintf(buf + out, len - out,
diff --git a/fs/ocfs2/dlm/dlmdomain.c b/fs/ocfs2/dlm/dlmdomain.c
-index 6918f30..0e79c35 100644
+index 2ee7fe7..9cff42d 100644
--- a/fs/ocfs2/dlm/dlmdomain.c
+++ b/fs/ocfs2/dlm/dlmdomain.c
-@@ -2046,10 +2046,10 @@ static struct dlm_ctxt *dlm_alloc_ctxt(const char *domain,
+@@ -2048,10 +2048,10 @@ static struct dlm_ctxt *dlm_alloc_ctxt(const char *domain,
dlm->reco.new_master = O2NM_INVALID_NODE_NUM;
dlm->reco.dead_node = O2NM_INVALID_NODE_NUM;
@@ -85225,7 +84380,7 @@ index 6918f30..0e79c35 100644
}
diff --git a/fs/ocfs2/dlm/dlmmaster.c b/fs/ocfs2/dlm/dlmmaster.c
-index ce38b4c..c3aa42a 100644
+index 4e2162b..06d7446 100644
--- a/fs/ocfs2/dlm/dlmmaster.c
+++ b/fs/ocfs2/dlm/dlmmaster.c
@@ -303,7 +303,7 @@ static void dlm_init_mle(struct dlm_master_list_entry *mle,
@@ -85281,7 +84436,7 @@ index 7a01262..23667d1 100644
enum ocfs2_local_alloc_state
diff --git a/fs/ocfs2/suballoc.c b/fs/ocfs2/suballoc.c
-index d83d260..f6f0d79 100644
+index fc6d25f..7b72242 100644
--- a/fs/ocfs2/suballoc.c
+++ b/fs/ocfs2/suballoc.c
@@ -851,7 +851,7 @@ static int ocfs2_reserve_suballoc_bits(struct ocfs2_super *osb,
@@ -85293,7 +84448,7 @@ index d83d260..f6f0d79 100644
/* You should never ask for this much metadata */
BUG_ON(bits_wanted >
-@@ -1995,7 +1995,7 @@ int ocfs2_claim_metadata(handle_t *handle,
+@@ -1998,7 +1998,7 @@ int ocfs2_claim_metadata(handle_t *handle,
mlog_errno(status);
goto bail;
}
@@ -85302,7 +84457,7 @@ index d83d260..f6f0d79 100644
*suballoc_loc = res.sr_bg_blkno;
*suballoc_bit_start = res.sr_bit_offset;
-@@ -2161,7 +2161,7 @@ int ocfs2_claim_new_inode_at_loc(handle_t *handle,
+@@ -2164,7 +2164,7 @@ int ocfs2_claim_new_inode_at_loc(handle_t *handle,
trace_ocfs2_claim_new_inode_at_loc((unsigned long long)di_blkno,
res->sr_bits);
@@ -85311,7 +84466,7 @@ index d83d260..f6f0d79 100644
BUG_ON(res->sr_bits != 1);
-@@ -2203,7 +2203,7 @@ int ocfs2_claim_new_inode(handle_t *handle,
+@@ -2206,7 +2206,7 @@ int ocfs2_claim_new_inode(handle_t *handle,
mlog_errno(status);
goto bail;
}
@@ -85320,7 +84475,7 @@ index d83d260..f6f0d79 100644
BUG_ON(res.sr_bits != 1);
-@@ -2307,7 +2307,7 @@ int __ocfs2_claim_clusters(handle_t *handle,
+@@ -2310,7 +2310,7 @@ int __ocfs2_claim_clusters(handle_t *handle,
cluster_start,
num_clusters);
if (!status)
@@ -85329,7 +84484,7 @@ index d83d260..f6f0d79 100644
} else {
if (min_clusters > (osb->bitmap_cpg - 1)) {
/* The only paths asking for contiguousness
-@@ -2333,7 +2333,7 @@ int __ocfs2_claim_clusters(handle_t *handle,
+@@ -2336,7 +2336,7 @@ int __ocfs2_claim_clusters(handle_t *handle,
ocfs2_desc_bitmap_to_cluster_off(ac->ac_inode,
res.sr_bg_blkno,
res.sr_bit_offset);
@@ -85490,7 +84645,7 @@ index b6f1e96..3108eed 100644
}
putname(tmp);
diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c
-index 871fcb6..f038f64 100644
+index 0a89834..f2690df 100644
--- a/fs/overlayfs/copy_up.c
+++ b/fs/overlayfs/copy_up.c
@@ -142,7 +142,7 @@ static char *ovl_read_symlink(struct dentry *realdentry)
@@ -85503,28 +84658,10 @@ index 871fcb6..f038f64 100644
if (res < 0) {
free_page((unsigned long) buf);
diff --git a/fs/overlayfs/inode.c b/fs/overlayfs/inode.c
-index ec0c2a0..3a64073 100644
+index 4060ffd..2d8b5e8 100644
--- a/fs/overlayfs/inode.c
+++ b/fs/overlayfs/inode.c
-@@ -49,13 +49,13 @@ int ovl_setattr(struct dentry *dentry, struct iattr *attr)
- if (err)
- goto out;
-
-- upperdentry = ovl_dentry_upper(dentry);
-- if (upperdentry) {
-+ err = ovl_copy_up(dentry);
-+ if (!err) {
-+ upperdentry = ovl_dentry_upper(dentry);
-+
- mutex_lock(&upperdentry->d_inode->i_mutex);
- err = notify_change(upperdentry, attr, NULL);
- mutex_unlock(&upperdentry->d_inode->i_mutex);
-- } else {
-- err = ovl_copy_up_last(dentry, attr, false);
- }
- ovl_drop_write(dentry);
- out:
-@@ -346,6 +346,9 @@ struct inode *ovl_d_select_inode(struct dentry *dentry, unsigned file_flags)
+@@ -343,6 +343,9 @@ struct inode *ovl_d_select_inode(struct dentry *dentry, unsigned file_flags)
if (d_is_dir(dentry))
return d_backing_inode(dentry);
@@ -85559,7 +84696,7 @@ index e38ee0f..6fc10e4 100644
struct ovl_entry *oe;
struct ovl_fs *ufs;
diff --git a/fs/pipe.c b/fs/pipe.c
-index 8865f79..15e6391 100644
+index 42cf8dd..932cb27 100644
--- a/fs/pipe.c
+++ b/fs/pipe.c
@@ -36,7 +36,13 @@ unsigned int pipe_max_size = 1048576;
@@ -85616,7 +84753,7 @@ index 8865f79..15e6391 100644
send_sig(SIGPIPE, current, 0);
ret = -EPIPE;
goto out;
-@@ -386,7 +392,7 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
+@@ -385,7 +391,7 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
for (;;) {
int bufs;
@@ -85625,7 +84762,7 @@ index 8865f79..15e6391 100644
send_sig(SIGPIPE, current, 0);
if (!ret)
ret = -EPIPE;
-@@ -454,9 +460,9 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
+@@ -453,9 +459,9 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN);
do_wakeup = 0;
}
@@ -85637,7 +84774,7 @@ index 8865f79..15e6391 100644
}
out:
__pipe_unlock(pipe);
-@@ -511,7 +517,7 @@ pipe_poll(struct file *filp, poll_table *wait)
+@@ -510,7 +516,7 @@ pipe_poll(struct file *filp, poll_table *wait)
mask = 0;
if (filp->f_mode & FMODE_READ) {
mask = (nrbufs > 0) ? POLLIN | POLLRDNORM : 0;
@@ -85646,7 +84783,7 @@ index 8865f79..15e6391 100644
mask |= POLLHUP;
}
-@@ -521,7 +527,7 @@ pipe_poll(struct file *filp, poll_table *wait)
+@@ -520,7 +526,7 @@ pipe_poll(struct file *filp, poll_table *wait)
* Most Unices do not set POLLERR for FIFOs but on Linux they
* behave exactly like pipes for poll().
*/
@@ -85655,7 +84792,7 @@ index 8865f79..15e6391 100644
mask |= POLLERR;
}
-@@ -533,7 +539,7 @@ static void put_pipe_info(struct inode *inode, struct pipe_inode_info *pipe)
+@@ -532,7 +538,7 @@ static void put_pipe_info(struct inode *inode, struct pipe_inode_info *pipe)
int kill = 0;
spin_lock(&inode->i_lock);
@@ -85664,7 +84801,7 @@ index 8865f79..15e6391 100644
inode->i_pipe = NULL;
kill = 1;
}
-@@ -550,11 +556,11 @@ pipe_release(struct inode *inode, struct file *file)
+@@ -549,11 +555,11 @@ pipe_release(struct inode *inode, struct file *file)
__pipe_lock(pipe);
if (file->f_mode & FMODE_READ)
@@ -85679,7 +84816,7 @@ index 8865f79..15e6391 100644
wake_up_interruptible_sync_poll(&pipe->wait, POLLIN | POLLOUT | POLLRDNORM | POLLWRNORM | POLLERR | POLLHUP);
kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN);
kill_fasync(&pipe->fasync_writers, SIGIO, POLL_OUT);
-@@ -584,20 +590,49 @@ pipe_fasync(int fd, struct file *filp, int on)
+@@ -583,20 +589,49 @@ pipe_fasync(int fd, struct file *filp, int on)
return retval;
}
@@ -85731,7 +84868,7 @@ index 8865f79..15e6391 100644
kfree(pipe);
}
-@@ -608,6 +643,8 @@ void free_pipe_info(struct pipe_inode_info *pipe)
+@@ -607,6 +642,8 @@ void free_pipe_info(struct pipe_inode_info *pipe)
{
int i;
@@ -85740,7 +84877,7 @@ index 8865f79..15e6391 100644
for (i = 0; i < pipe->buffers; i++) {
struct pipe_buffer *buf = pipe->bufs + i;
if (buf->ops)
-@@ -619,7 +656,7 @@ void free_pipe_info(struct pipe_inode_info *pipe)
+@@ -618,7 +655,7 @@ void free_pipe_info(struct pipe_inode_info *pipe)
kfree(pipe);
}
@@ -85749,7 +84886,7 @@ index 8865f79..15e6391 100644
/*
* pipefs_dname() is called from d_path().
-@@ -649,8 +686,9 @@ static struct inode * get_pipe_inode(void)
+@@ -648,8 +685,9 @@ static struct inode * get_pipe_inode(void)
goto fail_iput;
inode->i_pipe = pipe;
@@ -85761,7 +84898,7 @@ index 8865f79..15e6391 100644
inode->i_fop = &pipefifo_fops;
/*
-@@ -829,17 +867,17 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -831,17 +869,17 @@ static int fifo_open(struct inode *inode, struct file *filp)
spin_lock(&inode->i_lock);
if (inode->i_pipe) {
pipe = inode->i_pipe;
@@ -85782,7 +84919,7 @@ index 8865f79..15e6391 100644
spin_unlock(&inode->i_lock);
free_pipe_info(pipe);
pipe = inode->i_pipe;
-@@ -864,10 +902,10 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -866,10 +904,10 @@ static int fifo_open(struct inode *inode, struct file *filp)
* opened, even when there is no process writing the FIFO.
*/
pipe->r_counter++;
@@ -85795,7 +84932,7 @@ index 8865f79..15e6391 100644
if ((filp->f_flags & O_NONBLOCK)) {
/* suppress POLLHUP until we have
* seen a writer */
-@@ -886,14 +924,14 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -888,14 +926,14 @@ static int fifo_open(struct inode *inode, struct file *filp)
* errno=ENXIO when there is no process reading the FIFO.
*/
ret = -ENXIO;
@@ -85813,7 +84950,7 @@ index 8865f79..15e6391 100644
if (wait_for_partner(pipe, &pipe->r_counter))
goto err_wr;
}
-@@ -907,11 +945,11 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -909,11 +947,11 @@ static int fifo_open(struct inode *inode, struct file *filp)
* the process can at least talk to itself.
*/
@@ -85828,7 +84965,7 @@ index 8865f79..15e6391 100644
wake_up_partner(pipe);
break;
-@@ -925,13 +963,13 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -927,13 +965,13 @@ static int fifo_open(struct inode *inode, struct file *filp)
return 0;
err_rd:
@@ -85844,7 +84981,7 @@ index 8865f79..15e6391 100644
wake_up_interruptible(&pipe->wait);
ret = -ERESTARTSYS;
goto err;
-@@ -996,6 +1034,7 @@ static long pipe_set_size(struct pipe_inode_info *pipe, unsigned long nr_pages)
+@@ -998,6 +1036,7 @@ static long pipe_set_size(struct pipe_inode_info *pipe, unsigned long nr_pages)
memcpy(bufs + head, pipe->bufs, tail * sizeof(struct pipe_buffer));
}
@@ -85852,7 +84989,7 @@ index 8865f79..15e6391 100644
pipe->curbuf = 0;
kfree(pipe->bufs);
pipe->bufs = bufs;
-@@ -1007,7 +1046,7 @@ static long pipe_set_size(struct pipe_inode_info *pipe, unsigned long nr_pages)
+@@ -1009,7 +1048,7 @@ static long pipe_set_size(struct pipe_inode_info *pipe, unsigned long nr_pages)
* Currently we rely on the pipe array holding a power-of-2 number
* of pages.
*/
@@ -85861,7 +84998,7 @@ index 8865f79..15e6391 100644
{
unsigned long nr_pages;
-@@ -1055,18 +1094,26 @@ long pipe_fcntl(struct file *file, unsigned int cmd, unsigned long arg)
+@@ -1057,18 +1096,26 @@ long pipe_fcntl(struct file *file, unsigned int cmd, unsigned long arg)
switch (cmd) {
case F_SETPIPE_SZ: {
@@ -85892,7 +85029,7 @@ index 8865f79..15e6391 100644
ret = pipe_set_size(pipe, nr_pages);
break;
diff --git a/fs/posix_acl.c b/fs/posix_acl.c
-index 4fb17de..13d8c0f 100644
+index 4adde1e..9311892 100644
--- a/fs/posix_acl.c
+++ b/fs/posix_acl.c
@@ -20,6 +20,7 @@
@@ -86008,7 +85145,7 @@ index 1ade120..a86f1a2 100644
help
Various /proc files exist to monitor process memory utilization:
diff --git a/fs/proc/array.c b/fs/proc/array.c
-index eed2050..fb443f2 100644
+index d73291f..ab37ad1 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -60,6 +60,7 @@
@@ -86173,7 +85310,7 @@ index eed2050..fb443f2 100644
static struct pid *
get_children_pid(struct inode *inode, struct pid *pid_prev, loff_t pos)
diff --git a/fs/proc/base.c b/fs/proc/base.c
-index 29595af..aeaaf2e 100644
+index 4bd5d31..3f4c151 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -113,6 +113,14 @@ struct pid_entry {
@@ -86424,7 +85561,7 @@ index 29595af..aeaaf2e 100644
if (src >= (mm->env_end - mm->env_start))
break;
-@@ -1561,7 +1649,7 @@ static const char *proc_pid_follow_link(struct dentry *dentry, void **cookie)
+@@ -1571,7 +1659,7 @@ static const char *proc_pid_follow_link(struct dentry *dentry, void **cookie)
int error = -EACCES;
/* Are we allowed to snoop on the tasks file descriptors? */
@@ -86433,7 +85570,7 @@ index 29595af..aeaaf2e 100644
goto out;
error = PROC_I(inode)->op.proc_get_link(dentry, &path);
-@@ -1605,8 +1693,18 @@ static int proc_pid_readlink(struct dentry * dentry, char __user * buffer, int b
+@@ -1615,8 +1703,18 @@ static int proc_pid_readlink(struct dentry * dentry, char __user * buffer, int b
struct path path;
/* Are we allowed to snoop on the tasks file descriptors? */
@@ -86454,7 +85591,7 @@ index 29595af..aeaaf2e 100644
error = PROC_I(inode)->op.proc_get_link(dentry, &path);
if (error)
-@@ -1656,7 +1754,11 @@ struct inode *proc_pid_make_inode(struct super_block * sb, struct task_struct *t
+@@ -1666,7 +1764,11 @@ struct inode *proc_pid_make_inode(struct super_block * sb, struct task_struct *t
rcu_read_lock();
cred = __task_cred(task);
inode->i_uid = cred->euid;
@@ -86466,7 +85603,7 @@ index 29595af..aeaaf2e 100644
rcu_read_unlock();
}
security_task_to_inode(task, inode);
-@@ -1692,10 +1794,19 @@ int pid_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
+@@ -1702,10 +1804,19 @@ int pid_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
return -ENOENT;
}
if ((inode->i_mode == (S_IFDIR|S_IRUGO|S_IXUGO)) ||
@@ -86486,7 +85623,7 @@ index 29595af..aeaaf2e 100644
}
}
rcu_read_unlock();
-@@ -1733,11 +1844,20 @@ int pid_revalidate(struct dentry *dentry, unsigned int flags)
+@@ -1743,11 +1854,20 @@ int pid_revalidate(struct dentry *dentry, unsigned int flags)
if (task) {
if ((inode->i_mode == (S_IFDIR|S_IRUGO|S_IXUGO)) ||
@@ -86507,7 +85644,7 @@ index 29595af..aeaaf2e 100644
rcu_read_unlock();
} else {
inode->i_uid = GLOBAL_ROOT_UID;
-@@ -1846,7 +1966,7 @@ static int map_files_d_revalidate(struct dentry *dentry, unsigned int flags)
+@@ -1856,7 +1976,7 @@ static int map_files_d_revalidate(struct dentry *dentry, unsigned int flags)
if (!task)
goto out_notask;
@@ -86516,7 +85653,7 @@ index 29595af..aeaaf2e 100644
if (IS_ERR_OR_NULL(mm))
goto out;
-@@ -1997,7 +2117,7 @@ static struct dentry *proc_map_files_lookup(struct inode *dir,
+@@ -2007,7 +2127,7 @@ static struct dentry *proc_map_files_lookup(struct inode *dir,
goto out;
result = -EACCES;
@@ -86525,7 +85662,7 @@ index 29595af..aeaaf2e 100644
goto out_put_task;
result = -ENOENT;
-@@ -2050,7 +2170,7 @@ proc_map_files_readdir(struct file *file, struct dir_context *ctx)
+@@ -2060,7 +2180,7 @@ proc_map_files_readdir(struct file *file, struct dir_context *ctx)
goto out;
ret = -EACCES;
@@ -86534,7 +85671,7 @@ index 29595af..aeaaf2e 100644
goto out_put_task;
ret = 0;
-@@ -2276,6 +2396,9 @@ static struct dentry *proc_pident_lookup(struct inode *dir,
+@@ -2286,6 +2406,9 @@ static struct dentry *proc_pident_lookup(struct inode *dir,
if (!task)
goto out_no_task;
@@ -86544,7 +85681,7 @@ index 29595af..aeaaf2e 100644
/*
* Yes, it does not scale. And it should not. Don't add
* new entries into /proc/<tgid>/ without very good reasons.
-@@ -2306,6 +2429,9 @@ static int proc_pident_readdir(struct file *file, struct dir_context *ctx,
+@@ -2316,6 +2439,9 @@ static int proc_pident_readdir(struct file *file, struct dir_context *ctx,
if (!task)
return -ENOENT;
@@ -86554,15 +85691,7 @@ index 29595af..aeaaf2e 100644
if (!dir_emit_dots(file, ctx))
goto out;
-@@ -2484,6 +2610,7 @@ static ssize_t proc_coredump_filter_write(struct file *file,
- mm = get_task_mm(task);
- if (!mm)
- goto out_no_mm;
-+ ret = 0;
-
- for (i = 0, mask = 1; i < MMF_DUMP_FILTER_BITS; i++, mask <<= 1) {
- if (val & mask)
-@@ -2519,7 +2646,7 @@ static int do_io_accounting(struct task_struct *task, struct seq_file *m, int wh
+@@ -2530,7 +2656,7 @@ static int do_io_accounting(struct task_struct *task, struct seq_file *m, int wh
if (result)
return result;
@@ -86571,7 +85700,7 @@ index 29595af..aeaaf2e 100644
result = -EACCES;
goto out_unlock;
}
-@@ -2738,7 +2865,7 @@ static const struct pid_entry tgid_base_stuff[] = {
+@@ -2749,7 +2875,7 @@ static const struct pid_entry tgid_base_stuff[] = {
REG("autogroup", S_IRUGO|S_IWUSR, proc_pid_sched_autogroup_operations),
#endif
REG("comm", S_IRUGO|S_IWUSR, proc_pid_set_comm_operations),
@@ -86580,7 +85709,7 @@ index 29595af..aeaaf2e 100644
ONE("syscall", S_IRUSR, proc_pid_syscall),
#endif
REG("cmdline", S_IRUGO, proc_pid_cmdline_ops),
-@@ -2763,10 +2890,10 @@ static const struct pid_entry tgid_base_stuff[] = {
+@@ -2774,10 +2900,10 @@ static const struct pid_entry tgid_base_stuff[] = {
#ifdef CONFIG_SECURITY
DIR("attr", S_IRUGO|S_IXUGO, proc_attr_dir_inode_operations, proc_attr_dir_operations),
#endif
@@ -86593,7 +85722,7 @@ index 29595af..aeaaf2e 100644
ONE("stack", S_IRUSR, proc_pid_stack),
#endif
#ifdef CONFIG_SCHED_INFO
-@@ -2800,6 +2927,9 @@ static const struct pid_entry tgid_base_stuff[] = {
+@@ -2811,6 +2937,9 @@ static const struct pid_entry tgid_base_stuff[] = {
#ifdef CONFIG_HARDWALL
ONE("hardwall", S_IRUGO, proc_pid_hardwall),
#endif
@@ -86603,7 +85732,7 @@ index 29595af..aeaaf2e 100644
#ifdef CONFIG_USER_NS
REG("uid_map", S_IRUGO|S_IWUSR, proc_uid_map_operations),
REG("gid_map", S_IRUGO|S_IWUSR, proc_gid_map_operations),
-@@ -2932,7 +3062,14 @@ static int proc_pid_instantiate(struct inode *dir,
+@@ -2943,7 +3072,14 @@ static int proc_pid_instantiate(struct inode *dir,
if (!inode)
goto out;
@@ -86618,7 +85747,7 @@ index 29595af..aeaaf2e 100644
inode->i_op = &proc_tgid_base_inode_operations;
inode->i_fop = &proc_tgid_base_operations;
inode->i_flags|=S_IMMUTABLE;
-@@ -2970,7 +3107,11 @@ struct dentry *proc_pid_lookup(struct inode *dir, struct dentry * dentry, unsign
+@@ -2981,7 +3117,11 @@ struct dentry *proc_pid_lookup(struct inode *dir, struct dentry * dentry, unsign
if (!task)
goto out;
@@ -86630,7 +85759,7 @@ index 29595af..aeaaf2e 100644
put_task_struct(task);
out:
return ERR_PTR(result);
-@@ -3084,7 +3225,7 @@ static const struct pid_entry tid_base_stuff[] = {
+@@ -3095,7 +3235,7 @@ static const struct pid_entry tid_base_stuff[] = {
REG("sched", S_IRUGO|S_IWUSR, proc_pid_sched_operations),
#endif
REG("comm", S_IRUGO|S_IWUSR, proc_pid_set_comm_operations),
@@ -86639,7 +85768,7 @@ index 29595af..aeaaf2e 100644
ONE("syscall", S_IRUSR, proc_pid_syscall),
#endif
REG("cmdline", S_IRUGO, proc_pid_cmdline_ops),
-@@ -3111,10 +3252,10 @@ static const struct pid_entry tid_base_stuff[] = {
+@@ -3122,10 +3262,10 @@ static const struct pid_entry tid_base_stuff[] = {
#ifdef CONFIG_SECURITY
DIR("attr", S_IRUGO|S_IXUGO, proc_attr_dir_inode_operations, proc_attr_dir_operations),
#endif
@@ -86685,7 +85814,7 @@ index 50493ed..248166b 100644
}
fs_initcall(proc_devices_init);
diff --git a/fs/proc/fd.c b/fs/proc/fd.c
-index 6e5fcd0..3841f4e 100644
+index 3c2a915..cb7934e 100644
--- a/fs/proc/fd.c
+++ b/fs/proc/fd.c
@@ -27,7 +27,8 @@ static int seq_show(struct seq_file *m, void *v)
@@ -86706,30 +85835,26 @@ index 6e5fcd0..3841f4e 100644
rcu_read_lock();
}
rcu_read_unlock();
-@@ -291,11 +293,21 @@ static struct dentry *proc_lookupfd(struct inode *dir, struct dentry *dentry,
- */
- int proc_fd_permission(struct inode *inode, int mask)
- {
-+ struct task_struct *task;
- int rv = generic_permission(inode, mask);
+@@ -295,13 +297,15 @@ int proc_fd_permission(struct inode *inode, int mask)
+ int rv;
+
+ rv = generic_permission(inode, mask);
- if (rv == 0)
-- return 0;
-+
- if (task_tgid(current) == proc_pid(inode))
- rv = 0;
-+
-+ task = get_proc_task(inode);
-+ if (task == NULL)
-+ return rv;
-+
-+ if (gr_acl_handle_procpidmem(task))
-+ rv = -EACCES;
-+
-+ put_task_struct(task);
-+
- return rv;
- }
+- return rv;
+ rcu_read_lock();
+ p = pid_task(proc_pid(inode), PIDTYPE_PID);
+- if (p && same_thread_group(p, current))
+- rv = 0;
++ if (p) {
++ if (same_thread_group(p, current))
++ rv = 0;
++ if (gr_acl_handle_procpidmem(p))
++ rv = -EACCES;
++ }
+ rcu_read_unlock();
+
+ return rv;
diff --git a/fs/proc/generic.c b/fs/proc/generic.c
index ff3ffc7..1aec0a3 100644
--- a/fs/proc/generic.c
@@ -87029,34 +86154,12 @@ index 92e6726..a600d4fa 100644
.priority = 0,
};
diff --git a/fs/proc/meminfo.c b/fs/proc/meminfo.c
-index d3ebf2e..abe1823 100644
+index 9155a5a..abe1823 100644
--- a/fs/proc/meminfo.c
+++ b/fs/proc/meminfo.c
-@@ -27,7 +27,6 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
- {
- struct sysinfo i;
- unsigned long committed;
-- struct vmalloc_info vmi;
- long cached;
- long available;
- unsigned long pagecache;
-@@ -49,8 +48,6 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
- if (cached < 0)
- cached = 0;
-
-- get_vmalloc_info(&vmi);
--
- for (lru = LRU_BASE; lru < NR_LRU_LISTS; lru++)
- pages[lru] = global_page_state(NR_LRU_BASE + lru);
-
-@@ -191,10 +188,10 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
- K(vm_commit_limit()),
- K(committed),
- (unsigned long)VMALLOC_TOTAL >> 10,
-- vmi.used >> 10,
-- vmi.largest_chunk >> 10
-+ 0ul, // used to be vmalloc 'used'
-+ 0ul // used to be vmalloc 'largest_chunk'
+@@ -191,7 +191,7 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
+ 0ul, // used to be vmalloc 'used'
+ 0ul // used to be vmalloc 'largest_chunk'
#ifdef CONFIG_MEMORY_FAILURE
- , atomic_long_read(&num_poisoned_pages) << (PAGE_SHIFT - 10)
+ , atomic_long_read_unchecked(&num_poisoned_pages) << (PAGE_SHIFT - 10)
@@ -87165,7 +86268,7 @@ index 350984a..0fb02a9 100644
net = get_proc_net(inode);
if (net == NULL)
diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c
-index fdda62e..cd7c75f 100644
+index fe5b6e6..e5f3883 100644
--- a/fs/proc/proc_sysctl.c
+++ b/fs/proc/proc_sysctl.c
@@ -11,13 +11,21 @@
@@ -87520,7 +86623,7 @@ index 510413eb..34d9a8c 100644
seq_printf(p, "softirq %llu", (unsigned long long)sum_softirq);
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
-index e2d46ad..f179260 100644
+index 187b3b5..709bb98 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -14,12 +14,19 @@
@@ -87577,10 +86680,10 @@ index e2d46ad..f179260 100644
+#endif
+
+ );
+ hugetlb_report_usage(m, mm);
}
- unsigned long task_vsize(struct mm_struct *mm)
-@@ -286,13 +310,13 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
+@@ -287,13 +311,13 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
}
@@ -87599,7 +86702,7 @@ index e2d46ad..f179260 100644
seq_setwidth(m, 25 + sizeof(void *) * 6 - 1);
seq_printf(m, "%08lx-%08lx %c%c%c%c %08llx %02x:%02x %lu ",
-@@ -302,7 +326,11 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
+@@ -303,7 +327,11 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
flags & VM_WRITE ? 'w' : '-',
flags & VM_EXEC ? 'x' : '-',
flags & VM_MAYSHARE ? 's' : 'p',
@@ -87611,7 +86714,7 @@ index e2d46ad..f179260 100644
MAJOR(dev), MINOR(dev), ino);
/*
-@@ -311,7 +339,7 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
+@@ -312,7 +340,7 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
*/
if (file) {
seq_pad(m, ' ');
@@ -87620,7 +86723,7 @@ index e2d46ad..f179260 100644
goto done;
}
-@@ -342,8 +370,9 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
+@@ -343,8 +371,9 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
* Thread stack in /proc/PID/task/TID/maps or
* the main process stack.
*/
@@ -87632,7 +86735,7 @@ index e2d46ad..f179260 100644
name = "[stack]";
} else {
/* Thread stack in /proc/PID/maps */
-@@ -363,6 +392,12 @@ done:
+@@ -364,6 +393,12 @@ done:
static int show_map(struct seq_file *m, void *v, int is_pid)
{
@@ -87645,7 +86748,7 @@ index e2d46ad..f179260 100644
show_map_vma(m, v, is_pid);
m_cache_vma(m, v);
return 0;
-@@ -598,6 +633,9 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma)
+@@ -601,6 +636,9 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma)
[ilog2(VM_RAND_READ)] = "rr",
[ilog2(VM_DONTCOPY)] = "dc",
[ilog2(VM_DONTEXPAND)] = "de",
@@ -87655,7 +86758,7 @@ index e2d46ad..f179260 100644
[ilog2(VM_ACCOUNT)] = "ac",
[ilog2(VM_NORESERVE)] = "nr",
[ilog2(VM_HUGETLB)] = "ht",
-@@ -635,9 +673,18 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
+@@ -670,9 +708,18 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
.private = &mss,
};
@@ -87676,7 +86779,7 @@ index e2d46ad..f179260 100644
show_map_vma(m, vma, is_pid);
-@@ -657,7 +704,11 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
+@@ -694,7 +741,11 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
"KernelPageSize: %8lu kB\n"
"MMUPageSize: %8lu kB\n"
"Locked: %8lu kB\n",
@@ -87688,7 +86791,7 @@ index e2d46ad..f179260 100644
mss.resident >> 10,
(unsigned long)(mss.pss >> (10 + PSS_SHIFT)),
mss.shared_clean >> 10,
-@@ -1477,6 +1528,13 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
+@@ -1517,6 +1568,13 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
char buffer[64];
int nid;
@@ -87702,7 +86805,7 @@ index e2d46ad..f179260 100644
if (!mm)
return 0;
-@@ -1491,11 +1549,15 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
+@@ -1531,11 +1589,15 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
mpol_to_str(buffer, sizeof(buffer), proc_priv->task_mempolicy);
}
@@ -88065,31 +87168,37 @@ index 0155473..29d751f 100644
return -EINVAL;
diff --git a/fs/seq_file.c b/fs/seq_file.c
-index 225586e..849e34f 100644
+index e85664b..ad62e5f 100644
--- a/fs/seq_file.c
+++ b/fs/seq_file.c
-@@ -13,6 +13,8 @@
- #include <linux/cred.h>
+@@ -14,6 +14,8 @@
#include <linux/mm.h>
#include <linux/printk.h>
+ #include <linux/string_helpers.h>
+#include <linux/sched.h>
+#include <linux/grsecurity.h>
#include <asm/uaccess.h>
#include <asm/page.h>
-@@ -30,9 +32,9 @@ static void *seq_buf_alloc(unsigned long size)
- * __GFP_NORETRY to avoid oom-killings with high-order allocations -
- * it's better to fall back to vmalloc() than to kill things.
- */
-- buf = kmalloc(size, GFP_KERNEL | __GFP_NORETRY | __GFP_NOWARN);
-+ buf = kmalloc(size, GFP_KERNEL | GFP_USERCOPY | __GFP_NORETRY | __GFP_NOWARN);
+@@ -26,7 +28,7 @@ static void seq_set_overflow(struct seq_file *m)
+ static void *seq_buf_alloc(unsigned long size)
+ {
+ void *buf;
+- gfp_t gfp = GFP_KERNEL;
++ gfp_t gfp = GFP_KERNEL | GFP_USERCOPY;
+
+ /*
+ * For high order allocations, use __GFP_NORETRY to avoid oom-killing -
+@@ -38,7 +40,7 @@ static void *seq_buf_alloc(unsigned long size)
+ gfp |= __GFP_NORETRY | __GFP_NOWARN;
+ buf = kmalloc(size, gfp);
if (!buf && size > PAGE_SIZE)
- buf = vmalloc(size);
+ buf = vmalloc_usercopy(size);
return buf;
}
-@@ -69,6 +71,9 @@ int seq_open(struct file *file, const struct seq_operations *op)
+@@ -75,6 +77,9 @@ int seq_open(struct file *file, const struct seq_operations *op)
#ifdef CONFIG_USER_NS
p->user_ns = file->f_cred->user_ns;
#endif
@@ -88099,7 +87208,7 @@ index 225586e..849e34f 100644
/*
* Wrappers around seq_open(e.g. swaps_open) need to be
-@@ -91,6 +96,16 @@ int seq_open(struct file *file, const struct seq_operations *op)
+@@ -97,6 +102,16 @@ int seq_open(struct file *file, const struct seq_operations *op)
}
EXPORT_SYMBOL(seq_open);
@@ -88116,7 +87225,7 @@ index 225586e..849e34f 100644
static int traverse(struct seq_file *m, loff_t offset)
{
loff_t pos = 0, index;
-@@ -162,7 +177,7 @@ Eoverflow:
+@@ -168,7 +183,7 @@ Eoverflow:
ssize_t seq_read(struct file *file, char __user *buf, size_t size, loff_t *ppos)
{
struct seq_file *m = file->private_data;
@@ -88125,7 +87234,7 @@ index 225586e..849e34f 100644
loff_t pos;
size_t n;
void *p;
-@@ -571,7 +586,7 @@ static void single_stop(struct seq_file *p, void *v)
+@@ -563,7 +578,7 @@ static void single_stop(struct seq_file *p, void *v)
int single_open(struct file *file, int (*show)(struct seq_file *, void *),
void *data)
{
@@ -88134,7 +87243,7 @@ index 225586e..849e34f 100644
int res = -ENOMEM;
if (op) {
-@@ -607,6 +622,17 @@ int single_open_size(struct file *file, int (*show)(struct seq_file *, void *),
+@@ -599,6 +614,17 @@ int single_open_size(struct file *file, int (*show)(struct seq_file *, void *),
}
EXPORT_SYMBOL(single_open_size);
@@ -88153,7 +87262,7 @@ index 225586e..849e34f 100644
{
const struct seq_operations *op = ((struct seq_file *)file->private_data)->op;
diff --git a/fs/splice.c b/fs/splice.c
-index 5fc1e50..fcc355d 100644
+index 4cf700d..e7216fc 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -192,7 +192,7 @@ ssize_t splice_to_pipe(struct pipe_inode_info *pipe,
@@ -88222,17 +87331,9 @@ index 5fc1e50..fcc355d 100644
sd->need_wakeup = true;
}
-@@ -809,11 +809,18 @@ static int splice_from_pipe_feed(struct pipe_inode_info *pipe, struct splice_des
- */
- static int splice_from_pipe_next(struct pipe_inode_info *pipe, struct splice_desc *sd)
- {
-+ /*
-+ * Check for signal early to make process killable when there are
-+ * always buffers available
-+ */
-+ if (signal_pending(current))
-+ return -ERESTARTSYS;
-+
+@@ -817,10 +817,10 @@ static int splice_from_pipe_next(struct pipe_inode_info *pipe, struct splice_des
+ return -ERESTARTSYS;
+
while (!pipe->nrbufs) {
- if (!pipe->writers)
+ if (!atomic_read(&pipe->writers))
@@ -88243,15 +87344,7 @@ index 5fc1e50..fcc355d 100644
return 0;
if (sd->flags & SPLICE_F_NONBLOCK)
-@@ -884,6 +891,7 @@ ssize_t __splice_from_pipe(struct pipe_inode_info *pipe, struct splice_desc *sd,
-
- splice_from_pipe_begin(sd);
- do {
-+ cond_resched();
- ret = splice_from_pipe_next(pipe, sd);
- if (ret > 0)
- ret = splice_from_pipe_feed(pipe, sd, actor);
-@@ -1028,7 +1036,7 @@ iter_file_splice_write(struct pipe_inode_info *pipe, struct file *out,
+@@ -1036,7 +1036,7 @@ iter_file_splice_write(struct pipe_inode_info *pipe, struct file *out,
ops->release(pipe, buf);
pipe->curbuf = (pipe->curbuf + 1) & (pipe->buffers - 1);
pipe->nrbufs--;
@@ -88260,7 +87353,7 @@ index 5fc1e50..fcc355d 100644
sd.need_wakeup = true;
} else {
buf->offset += ret;
-@@ -1188,7 +1196,7 @@ ssize_t splice_direct_to_actor(struct file *in, struct splice_desc *sd,
+@@ -1196,7 +1196,7 @@ ssize_t splice_direct_to_actor(struct file *in, struct splice_desc *sd,
* out of the pipe right after the splice_to_pipe(). So set
* PIPE_READERS appropriately.
*/
@@ -88269,7 +87362,7 @@ index 5fc1e50..fcc355d 100644
current->splice_pipe = pipe;
}
-@@ -1495,6 +1503,7 @@ static int get_iovec_page_array(const struct iovec __user *iov,
+@@ -1503,6 +1503,7 @@ static int get_iovec_page_array(const struct iovec __user *iov,
partial[buffers].offset = off;
partial[buffers].len = plen;
@@ -88277,7 +87370,7 @@ index 5fc1e50..fcc355d 100644
off = 0;
len -= plen;
-@@ -1726,9 +1735,9 @@ static int ipipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
+@@ -1734,9 +1735,9 @@ static int ipipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
ret = -ERESTARTSYS;
break;
}
@@ -88289,7 +87382,7 @@ index 5fc1e50..fcc355d 100644
if (flags & SPLICE_F_NONBLOCK) {
ret = -EAGAIN;
break;
-@@ -1760,7 +1769,7 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
+@@ -1768,7 +1769,7 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
pipe_lock(pipe);
while (pipe->nrbufs >= pipe->buffers) {
@@ -88298,7 +87391,7 @@ index 5fc1e50..fcc355d 100644
send_sig(SIGPIPE, current, 0);
ret = -EPIPE;
break;
-@@ -1773,9 +1782,9 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
+@@ -1781,9 +1782,9 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
ret = -ERESTARTSYS;
break;
}
@@ -88310,7 +87403,7 @@ index 5fc1e50..fcc355d 100644
}
pipe_unlock(pipe);
-@@ -1811,14 +1820,14 @@ retry:
+@@ -1819,14 +1820,14 @@ retry:
pipe_double_lock(ipipe, opipe);
do {
@@ -88327,7 +87420,7 @@ index 5fc1e50..fcc355d 100644
break;
/*
-@@ -1915,7 +1924,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
+@@ -1923,7 +1924,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
pipe_double_lock(ipipe, opipe);
do {
@@ -88336,7 +87429,7 @@ index 5fc1e50..fcc355d 100644
send_sig(SIGPIPE, current, 0);
if (!ret)
ret = -EPIPE;
-@@ -1960,7 +1969,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
+@@ -1968,7 +1969,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
* return EAGAIN if we have the potential of some data in the
* future, otherwise just return 0
*/
@@ -88346,7 +87439,7 @@ index 5fc1e50..fcc355d 100644
pipe_unlock(ipipe);
diff --git a/fs/squashfs/xattr.c b/fs/squashfs/xattr.c
-index e5e0ddf..09598c4 100644
+index 6a4cc34..acc9eef 100644
--- a/fs/squashfs/xattr.c
+++ b/fs/squashfs/xattr.c
@@ -46,8 +46,8 @@ ssize_t squashfs_listxattr(struct dentry *d, char *buffer,
@@ -88364,9 +87457,9 @@ index e5e0ddf..09598c4 100644
name_size = le16_to_cpu(entry.size);
handler = squashfs_xattr_handler(le16_to_cpu(entry.type));
if (handler)
-- prefix_size = handler->list(d, buffer, rest, NULL,
-+ prefix_size = handler->list(d, buffer, buffer ? buffer_size - used : 0, NULL,
- name_size, handler->flags);
+- prefix_size = handler->list(handler, d, buffer, rest,
++ prefix_size = handler->list(handler, d, buffer, buffer ? buffer_size - used : 0,
+ NULL, name_size);
if (prefix_size) {
if (buffer) {
- if (prefix_size + name_size + 1 > rest) {
@@ -88393,7 +87486,7 @@ index e5e0ddf..09598c4 100644
failed:
return err;
diff --git a/fs/stat.c b/fs/stat.c
-index cccc1aa..7fe8951 100644
+index d4a61d8..87dbeb3 100644
--- a/fs/stat.c
+++ b/fs/stat.c
@@ -28,8 +28,13 @@ void generic_fillattr(struct inode *inode, struct kstat *stat)
@@ -88505,28 +87598,6 @@ index 94374e4..b5da3a1 100644
return PTR_ERR(kn);
}
-diff --git a/fs/sysv/inode.c b/fs/sysv/inode.c
-index 590ad92..02fa1dc 100644
---- a/fs/sysv/inode.c
-+++ b/fs/sysv/inode.c
-@@ -162,15 +162,8 @@ void sysv_set_inode(struct inode *inode, dev_t rdev)
- inode->i_fop = &sysv_dir_operations;
- inode->i_mapping->a_ops = &sysv_aops;
- } else if (S_ISLNK(inode->i_mode)) {
-- if (inode->i_blocks) {
-- inode->i_op = &sysv_symlink_inode_operations;
-- inode->i_mapping->a_ops = &sysv_aops;
-- } else {
-- inode->i_op = &simple_symlink_inode_operations;
-- inode->i_link = (char *)SYSV_I(inode)->i_data;
-- nd_terminate_link(inode->i_link, inode->i_size,
-- sizeof(SYSV_I(inode)->i_data) - 1);
-- }
-+ inode->i_op = &sysv_symlink_inode_operations;
-+ inode->i_mapping->a_ops = &sysv_aops;
- } else
- init_special_inode(inode, inode->i_mode, rdev);
- }
diff --git a/fs/sysv/sysv.h b/fs/sysv/sysv.h
index 6c21228..9afd5fe 100644
--- a/fs/sysv/sysv.h
@@ -88541,7 +87612,7 @@ index 6c21228..9afd5fe 100644
if (sbi->s_bytesex == BYTESEX_PDP)
return PDP_swab((__force __u32)n);
diff --git a/fs/tracefs/inode.c b/fs/tracefs/inode.c
-index cbc8d5d..56d2600 100644
+index c66f242..2e8701a 100644
--- a/fs/tracefs/inode.c
+++ b/fs/tracefs/inode.c
@@ -53,7 +53,7 @@ static const struct file_operations tracefs_file_operations = {
@@ -88553,7 +87624,7 @@ index cbc8d5d..56d2600 100644
static char *get_dname(struct dentry *dentry)
{
-@@ -490,8 +490,10 @@ struct dentry *tracefs_create_instance_dir(const char *name, struct dentry *pare
+@@ -494,8 +494,10 @@ struct dentry *tracefs_create_instance_dir(const char *name, struct dentry *pare
if (!dentry)
return NULL;
@@ -88640,7 +87711,7 @@ index aa138d6..5f3a811 100644
error = notify_change(path->dentry, &newattrs, &delegated_inode);
mutex_unlock(&inode->i_mutex);
diff --git a/fs/xattr.c b/fs/xattr.c
-index 072fee1..9e497b0 100644
+index 9b932b9..31cdeb7 100644
--- a/fs/xattr.c
+++ b/fs/xattr.c
@@ -227,6 +227,27 @@ int vfs_xattr_cmp(struct dentry *dentry, const char *xattr_name,
@@ -88761,7 +87832,7 @@ index 072fee1..9e497b0 100644
}
fdput(f);
diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c
-index 8e2010d..95549ab 100644
+index 119c242..a02e8da 100644
--- a/fs/xfs/libxfs/xfs_bmap.c
+++ b/fs/xfs/libxfs/xfs_bmap.c
@@ -554,7 +554,7 @@ xfs_bmap_validate_ret(
@@ -88774,10 +87845,10 @@ index 8e2010d..95549ab 100644
/*
diff --git a/fs/xfs/libxfs/xfs_da_btree.c b/fs/xfs/libxfs/xfs_da_btree.c
-index be43248..6bb4442 100644
+index e89a0f8..3165b4a 100644
--- a/fs/xfs/libxfs/xfs_da_btree.c
+++ b/fs/xfs/libxfs/xfs_da_btree.c
-@@ -2007,6 +2007,7 @@ xfs_da_grow_inode_int(
+@@ -2011,6 +2011,7 @@ xfs_da_grow_inode_int(
struct xfs_inode *dp = args->dp;
int w = args->whichfork;
xfs_rfsblock_t nblks = dp->i_d.di_nblocks;
@@ -88785,7 +87856,7 @@ index be43248..6bb4442 100644
struct xfs_bmbt_irec map, *mapp;
int nmap, error, got, i, mapi;
-@@ -2075,7 +2076,8 @@ xfs_da_grow_inode_int(
+@@ -2079,7 +2080,8 @@ xfs_da_grow_inode_int(
}
/* account for newly allocated blocks in reserved blocks total */
@@ -88796,7 +87867,7 @@ index be43248..6bb4442 100644
out_free_map:
if (mapp != &map)
diff --git a/fs/xfs/xfs_dir2_readdir.c b/fs/xfs/xfs_dir2_readdir.c
-index a989a9c..db30c9a 100644
+index 642d55d..d8ccf82 100644
--- a/fs/xfs/xfs_dir2_readdir.c
+++ b/fs/xfs/xfs_dir2_readdir.c
@@ -140,7 +140,12 @@ xfs_dir2_sf_getdents(
@@ -88814,10 +87885,10 @@ index a989a9c..db30c9a 100644
return 0;
sfep = dp->d_ops->sf_nextentry(sfp, sfep);
diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c
-index ea7d85a..6d4b24b 100644
+index d42738d..7175979 100644
--- a/fs/xfs/xfs_ioctl.c
+++ b/fs/xfs/xfs_ioctl.c
-@@ -120,7 +120,7 @@ xfs_find_handle(
+@@ -121,7 +121,7 @@ xfs_find_handle(
}
error = -EFAULT;
@@ -88827,10 +87898,10 @@ index ea7d85a..6d4b24b 100644
goto out_put;
diff --git a/fs/xfs/xfs_linux.h b/fs/xfs/xfs_linux.h
-index 85f883d..db6eecc 100644
+index ec0e239..ab85b22 100644
--- a/fs/xfs/xfs_linux.h
+++ b/fs/xfs/xfs_linux.h
-@@ -211,7 +211,7 @@ static inline kgid_t xfs_gid_to_kgid(__uint32_t gid)
+@@ -218,7 +218,7 @@ static inline kgid_t xfs_gid_to_kgid(__uint32_t gid)
* of the compiler which do not like us using do_div in the middle
* of large functions.
*/
@@ -88839,7 +87910,7 @@ index 85f883d..db6eecc 100644
{
__u32 mod;
-@@ -267,7 +267,7 @@ static inline __u32 xfs_do_mod(void *a, __u32 b, int n)
+@@ -274,7 +274,7 @@ static inline __u32 xfs_do_mod(void *a, __u32 b, int n)
return 0;
}
#else
@@ -88850,10 +87921,10 @@ index 85f883d..db6eecc 100644
diff --git a/grsecurity/Kconfig b/grsecurity/Kconfig
new file mode 100644
-index 0000000..0841273
+index 0000000..354c5a3
--- /dev/null
+++ b/grsecurity/Kconfig
-@@ -0,0 +1,1185 @@
+@@ -0,0 +1,1203 @@
+#
+# grecurity configuration
+#
@@ -89741,6 +88812,24 @@ index 0000000..0841273
+ If the sysctl option is enabled, a sysctl option with name
+ "harden_ipc" is created.
+
++config GRKERNSEC_HARDEN_TTY
++ bool "Disallow unprivileged use of command injection"
++ default y if GRKERNSEC_CONFIG_AUTO
++ help
++ If you say Y here, the ability to use the TIOCSTI ioctl for
++ terminal command injection will be denied for unprivileged users.
++ There are very few legitimate uses for this functionality and it
++ has made vulnerabilities in several 'su'-like programs possible in
++ the past. Even without these vulnerabilities, it provides an
++ attacker with an easy mechanism to move laterally among other
++ processes within the same user's compromised session.
++ By default, Linux allows unprivileged use of command injection as
++ long as the injection is being performed into the same tty session.
++ This feature makes that case the same as attempting to inject into
++ another session, making any TIOCSTI use require CAP_SYS_ADMIN.
++ If the sysctl option is enabled, a sysctl option with name
++ "harden_tty" is created.
++
+config GRKERNSEC_TPE
+ bool "Trusted Path Execution (TPE)"
+ default y if GRKERNSEC_CONFIG_AUTO && GRKERNSEC_CONFIG_SERVER
@@ -90041,7 +89130,7 @@ index 0000000..0841273
+endmenu
diff --git a/grsecurity/Makefile b/grsecurity/Makefile
new file mode 100644
-index 0000000..6fb2175
+index 0000000..e136e5f
--- /dev/null
+++ b/grsecurity/Makefile
@@ -0,0 +1,54 @@
@@ -90068,7 +89157,7 @@ index 0000000..6fb2175
+obj-y = grsec_chdir.o grsec_chroot.o grsec_exec.o grsec_fifo.o grsec_fork.o \
+ grsec_mount.o grsec_sig.o grsec_sysctl.o \
+ grsec_time.o grsec_tpe.o grsec_link.o grsec_pax.o grsec_ptrace.o \
-+ grsec_usb.o grsec_ipc.o grsec_proc.o
++ grsec_usb.o grsec_ipc.o grsec_proc.o grsec_tty.o
+
+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 \
@@ -97869,10 +96958,10 @@ index 0000000..8ca18bf
+}
diff --git a/grsecurity/grsec_init.c b/grsecurity/grsec_init.c
new file mode 100644
-index 0000000..a364c58
+index 0000000..6822208
--- /dev/null
+++ b/grsecurity/grsec_init.c
-@@ -0,0 +1,290 @@
+@@ -0,0 +1,294 @@
+#include <linux/kernel.h>
+#include <linux/sched.h>
+#include <linux/mm.h>
@@ -97936,6 +97025,7 @@ index 0000000..a364c58
+int grsec_resource_logging __read_only;
+int grsec_disable_privio __read_only;
+int grsec_enable_log_rwxmaps __read_only;
++int grsec_enable_harden_tty __read_only;
+int grsec_lock __read_only;
+
+DEFINE_SPINLOCK(grsec_alert_lock);
@@ -98048,6 +97138,9 @@ index 0000000..a364c58
+#ifdef CONFIG_GRKERNSEC_HARDEN_IPC
+ grsec_enable_harden_ipc = 1;
+#endif
++#ifdef CONFIG_GRKERNSEC_HARDEN_TTY
++ grsec_enable_harden_tty = 1;
++#endif
+#ifdef CONFIG_GRKERNSEC_AUDIT_MOUNT
+ grsec_enable_mount = 1;
+#endif
@@ -99377,10 +98470,10 @@ index 0000000..a523bd2
+}
diff --git a/grsecurity/grsec_sysctl.c b/grsecurity/grsec_sysctl.c
new file mode 100644
-index 0000000..aaec43c
+index 0000000..4f673f8
--- /dev/null
+++ b/grsecurity/grsec_sysctl.c
-@@ -0,0 +1,488 @@
+@@ -0,0 +1,497 @@
+#include <linux/kernel.h>
+#include <linux/sched.h>
+#include <linux/sysctl.h>
@@ -99838,6 +98931,15 @@ index 0000000..aaec43c
+ .proc_handler = &proc_dointvec_secure,
+ },
+#endif
++#ifdef CONFIG_GRKERNSEC_HARDEN_TTY
++ {
++ .procname = "harden_tty",
++ .data = &grsec_enable_harden_tty,
++ .maxlen = sizeof(int),
++ .mode = 0600,
++ .proc_handler = &proc_dointvec_secure,
++ },
++#endif
+ {
+ .procname = "grsec_lock",
+ .data = &grsec_lock,
@@ -99975,6 +99077,30 @@ index 0000000..9786671
+#endif
+ return 1;
+}
+diff --git a/grsecurity/grsec_tty.c b/grsecurity/grsec_tty.c
+new file mode 100644
+index 0000000..ad8b9c5
+--- /dev/null
++++ b/grsecurity/grsec_tty.c
+@@ -0,0 +1,18 @@
++#include <linux/kernel.h>
++#include <linux/sched.h>
++#include <linux/grsecurity.h>
++#include <linux/grinternal.h>
++#include <linux/capability.h>
++#include <linux/tty.h>
++
++int gr_handle_tiocsti(struct tty_struct *tty)
++{
++#ifdef CONFIG_GRKERNSEC_HARDEN_TTY
++ if (grsec_enable_harden_tty && (current->signal->tty == tty) &&
++ !capable(CAP_SYS_ADMIN)) {
++ gr_log_noargs(GR_DONT_AUDIT, GR_TIOCSTI_MSG);
++ return 1;
++ }
++#endif
++ return 0;
++}
diff --git a/grsecurity/grsec_usb.c b/grsecurity/grsec_usb.c
new file mode 100644
index 0000000..ae02d8e
@@ -99998,10 +99124,10 @@ index 0000000..ae02d8e
+EXPORT_SYMBOL_GPL(gr_handle_new_usb);
diff --git a/grsecurity/grsum.c b/grsecurity/grsum.c
new file mode 100644
-index 0000000..158b330
+index 0000000..4fb2ce6
--- /dev/null
+++ b/grsecurity/grsum.c
-@@ -0,0 +1,64 @@
+@@ -0,0 +1,54 @@
+#include <linux/err.h>
+#include <linux/kernel.h>
+#include <linux/sched.h>
@@ -100009,7 +99135,7 @@ index 0000000..158b330
+#include <linux/scatterlist.h>
+#include <linux/crypto.h>
+#include <linux/gracl.h>
-+
++#include <crypto/algapi.h>
+
+#if !defined(CONFIG_CRYPTO) || defined(CONFIG_CRYPTO_MODULE) || !defined(CONFIG_CRYPTO_SHA256) || defined(CONFIG_CRYPTO_SHA256_MODULE)
+#error "crypto and sha256 must be built into the kernel"
@@ -100026,9 +99152,6 @@ index 0000000..158b330
+ unsigned long *sumptr = (unsigned long *)sum;
+ int cryptres;
+ int retval = 1;
-+ volatile int mismatched = 0;
-+ volatile int dummy = 0;
-+ unsigned int i;
+
+ tfm = crypto_alloc_hash("sha256", 0, CRYPTO_ALG_ASYNC);
+ if (IS_ERR(tfm)) {
@@ -100052,15 +99175,8 @@ index 0000000..158b330
+ if (cryptres)
+ goto out;
+
-+ for (i = 0; i < GR_SHA_LEN/sizeof(tmpsumptr[0]); i++)
-+ if (sumptr[i] != tmpsumptr[i])
-+ mismatched = 1;
-+ else
-+ dummy = 1; // waste a cycle
-+
-+ if (!mismatched)
-+ retval = dummy - 1;
-+
++ if (!crypto_memneq(sumptr, tmpsumptr, GR_SHA_LEN))
++ retval = 0;
+out:
+ crypto_free_hash(tfm);
+
@@ -100095,7 +99211,7 @@ index 5bdab6b..9ae82fe 100644
#define pud_none(pud) 0
#define pud_bad(pud) 0
diff --git a/include/asm-generic/atomic-long.h b/include/asm-generic/atomic-long.h
-index a94cbeb..c671578 100644
+index eb1973b..b24b581 100644
--- a/include/asm-generic/atomic-long.h
+++ b/include/asm-generic/atomic-long.h
@@ -22,6 +22,12 @@
@@ -100127,9 +99243,9 @@ index a94cbeb..c671578 100644
#endif
-#define ATOMIC_LONG_READ_OP(mo) \
--static inline long atomic_long_read##mo(atomic_long_t *l) \
+-static inline long atomic_long_read##mo(const atomic_long_t *l) \
+#define ATOMIC_LONG_READ_OP(mo, suffix) \
-+static inline long atomic_long_read##mo##suffix(atomic_long##suffix##_t *l)\
++static inline long atomic_long_read##mo##suffix(const atomic_long##suffix##_t *l)\
{ \
- ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l; \
+ ATOMIC_LONG_PFX(suffix##_t) *v = (ATOMIC_LONG_PFX(suffix##_t) *)l;\
@@ -100213,10 +99329,11 @@ index a94cbeb..c671578 100644
static inline void atomic_long_dec(atomic_long_t *l)
{
ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l;
-@@ -112,6 +137,15 @@ static inline void atomic_long_dec(atomic_long_t *l)
+@@ -112,21 +137,32 @@ static inline void atomic_long_dec(atomic_long_t *l)
ATOMIC_LONG_PFX(_dec)(v);
}
+-#define ATOMIC_LONG_OP(op) \
+#ifdef CONFIG_PAX_REFCOUNT
+static inline void atomic_long_dec_unchecked(atomic_long_unchecked_t *l)
+{
@@ -100226,58 +99343,72 @@ index a94cbeb..c671578 100644
+}
+#endif
+
- static inline void atomic_long_add(long i, atomic_long_t *l)
- {
- ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l;
-@@ -119,6 +153,15 @@ static inline void atomic_long_add(long i, atomic_long_t *l)
- ATOMIC_LONG_PFX(_add)(i, v);
++#define ATOMIC_LONG_OP(op, suffix) \
+ static inline void \
+-atomic_long_##op(long i, atomic_long_t *l) \
++atomic_long_##op##suffix(long i, atomic_long##suffix##_t *l) \
+ { \
+- ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l; \
++ ATOMIC_LONG_PFX(suffix##_t) *v = (ATOMIC_LONG_PFX(suffix##_t) *)l;\
+ \
+- ATOMIC_LONG_PFX(_##op)(i, v); \
++ ATOMIC_LONG_PFX(_##op##suffix)(i, v); \
}
-+#ifdef CONFIG_PAX_REFCOUNT
-+static inline void atomic_long_add_unchecked(long i, atomic_long_unchecked_t *l)
-+{
-+ ATOMIC_LONG_PFX(_unchecked_t) *v = (ATOMIC_LONG_PFX(_unchecked_t) *)l;
-+
-+ ATOMIC_LONG_PFX(_add_unchecked)(i, v);
-+}
-+#endif
-+
- static inline void atomic_long_sub(long i, atomic_long_t *l)
- {
- ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l;
-@@ -126,6 +169,15 @@ static inline void atomic_long_sub(long i, atomic_long_t *l)
- ATOMIC_LONG_PFX(_sub)(i, v);
- }
+-ATOMIC_LONG_OP(add)
+-ATOMIC_LONG_OP(sub)
+-ATOMIC_LONG_OP(and)
+-ATOMIC_LONG_OP(or)
+-ATOMIC_LONG_OP(xor)
+-ATOMIC_LONG_OP(andnot)
++ATOMIC_LONG_OP(add,)
++ATOMIC_LONG_OP(add,_unchecked)
++ATOMIC_LONG_OP(sub,)
++ATOMIC_LONG_OP(sub,_unchecked)
++ATOMIC_LONG_OP(and,)
++ATOMIC_LONG_OP(or,)
++ATOMIC_LONG_OP(xor,)
++ATOMIC_LONG_OP(andnot,)
-+#ifdef CONFIG_PAX_REFCOUNT
-+static inline void atomic_long_sub_unchecked(long i, atomic_long_unchecked_t *l)
-+{
-+ ATOMIC_LONG_PFX(_unchecked_t) *v = (ATOMIC_LONG_PFX(_unchecked_t) *)l;
-+
-+ ATOMIC_LONG_PFX(_sub_unchecked)(i, v);
-+}
-+#endif
-+
- static inline int atomic_long_sub_and_test(long i, atomic_long_t *l)
- {
- ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l;
-@@ -161,6 +213,15 @@ static inline long atomic_long_inc_return(atomic_long_t *l)
- return (long)ATOMIC_LONG_PFX(_inc_return)(v);
+ #undef ATOMIC_LONG_OP
+
+@@ -158,22 +194,23 @@ static inline int atomic_long_add_negative(long i, atomic_long_t *l)
+ return ATOMIC_LONG_PFX(_add_negative)(i, v);
}
-+#ifdef CONFIG_PAX_REFCOUNT
-+static inline long atomic_long_inc_return_unchecked(atomic_long_unchecked_t *l)
-+{
-+ ATOMIC_LONG_PFX(_unchecked_t) *v = (ATOMIC_LONG_PFX(_unchecked_t) *)l;
-+
-+ return (long)ATOMIC_LONG_PFX(_inc_return_unchecked)(v);
-+}
-+#endif
-+
- static inline long atomic_long_dec_return(atomic_long_t *l)
- {
- ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l;
-@@ -178,4 +239,51 @@ static inline long atomic_long_add_unless(atomic_long_t *l, long a, long u)
+-#define ATOMIC_LONG_INC_DEC_OP(op, mo) \
++#define ATOMIC_LONG_INC_DEC_OP(op, mo, suffix) \
+ static inline long \
+-atomic_long_##op##_return##mo(atomic_long_t *l) \
++atomic_long_##op##_return##mo##suffix(atomic_long##suffix##_t *l) \
+ { \
+- ATOMIC_LONG_PFX(_t) *v = (ATOMIC_LONG_PFX(_t) *)l; \
++ ATOMIC_LONG_PFX(suffix##_t) *v = (ATOMIC_LONG_PFX(suffix##_t) *)l;\
+ \
+- return (long)ATOMIC_LONG_PFX(_##op##_return##mo)(v); \
++ return (long)ATOMIC_LONG_PFX(_##op##_return##mo##suffix)(v); \
+ }
+-ATOMIC_LONG_INC_DEC_OP(inc,)
+-ATOMIC_LONG_INC_DEC_OP(inc, _relaxed)
+-ATOMIC_LONG_INC_DEC_OP(inc, _acquire)
+-ATOMIC_LONG_INC_DEC_OP(inc, _release)
+-ATOMIC_LONG_INC_DEC_OP(dec,)
+-ATOMIC_LONG_INC_DEC_OP(dec, _relaxed)
+-ATOMIC_LONG_INC_DEC_OP(dec, _acquire)
+-ATOMIC_LONG_INC_DEC_OP(dec, _release)
++ATOMIC_LONG_INC_DEC_OP(inc,,)
++ATOMIC_LONG_INC_DEC_OP(inc,,_unchecked)
++ATOMIC_LONG_INC_DEC_OP(inc, _relaxed,)
++ATOMIC_LONG_INC_DEC_OP(inc, _acquire,)
++ATOMIC_LONG_INC_DEC_OP(inc, _release,)
++ATOMIC_LONG_INC_DEC_OP(dec,,)
++ATOMIC_LONG_INC_DEC_OP(dec, _relaxed,)
++ATOMIC_LONG_INC_DEC_OP(dec, _acquire,)
++ATOMIC_LONG_INC_DEC_OP(dec, _release,)
+
+ #undef ATOMIC_LONG_INC_DEC_OP
+
+@@ -187,4 +224,51 @@ static inline long atomic_long_add_unless(atomic_long_t *l, long a, long u)
#define atomic_long_inc_not_zero(l) \
ATOMIC_LONG_PFX(_inc_not_zero)((ATOMIC_LONG_PFX(_t) *)(l))
@@ -100440,6 +99571,29 @@ index 1bfcfe5..e04c5c9 100644
+#define L1_CACHE_BYTES (1UL << L1_CACHE_SHIFT)
#endif /* __ASM_GENERIC_CACHE_H */
+diff --git a/include/asm-generic/cputime_nsecs.h b/include/asm-generic/cputime_nsecs.h
+index 0419485..0f1c6f3 100644
+--- a/include/asm-generic/cputime_nsecs.h
++++ b/include/asm-generic/cputime_nsecs.h
+@@ -75,7 +75,7 @@ typedef u64 __nocast cputime64_t;
+ */
+ static inline cputime_t timespec_to_cputime(const struct timespec *val)
+ {
+- u64 ret = val->tv_sec * NSEC_PER_SEC + val->tv_nsec;
++ u64 ret = (u64)val->tv_sec * NSEC_PER_SEC + val->tv_nsec;
+ return (__force cputime_t) ret;
+ }
+ static inline void cputime_to_timespec(const cputime_t ct, struct timespec *val)
+@@ -91,7 +91,8 @@ static inline void cputime_to_timespec(const cputime_t ct, struct timespec *val)
+ */
+ static inline cputime_t timeval_to_cputime(const struct timeval *val)
+ {
+- u64 ret = val->tv_sec * NSEC_PER_SEC + val->tv_usec * NSEC_PER_USEC;
++ u64 ret = (u64)val->tv_sec * NSEC_PER_SEC +
++ val->tv_usec * NSEC_PER_USEC;
+ return (__force cputime_t) ret;
+ }
+ static inline void cputime_to_timeval(const cputime_t ct, struct timeval *val)
diff --git a/include/asm-generic/emergency-restart.h b/include/asm-generic/emergency-restart.h
index 0d68a1e..b74a761 100644
--- a/include/asm-generic/emergency-restart.h
@@ -100594,10 +99748,10 @@ index 810431d..0ec4804f 100644
* (puds are folded into pgds so this doesn't get actually called,
* but the define is needed for a generic inline function.)
diff --git a/include/asm-generic/pgtable.h b/include/asm-generic/pgtable.h
-index 29c57b2..da571a2 100644
+index 14b0ff32..f3993a4 100644
--- a/include/asm-generic/pgtable.h
+++ b/include/asm-generic/pgtable.h
-@@ -715,6 +715,22 @@ static inline int pmd_protnone(pmd_t pmd)
+@@ -748,6 +748,22 @@ static inline int pmd_protnone(pmd_t pmd)
}
#endif /* CONFIG_NUMA_BALANCING */
@@ -100633,10 +99787,10 @@ index b58fd66..6cfae67 100644
extern char __per_cpu_load[], __per_cpu_start[], __per_cpu_end[];
extern char __kprobes_text_start[], __kprobes_text_end[];
diff --git a/include/asm-generic/uaccess.h b/include/asm-generic/uaccess.h
-index 72d8803..cb9749c 100644
+index 1bfa602..aab89b1 100644
--- a/include/asm-generic/uaccess.h
+++ b/include/asm-generic/uaccess.h
-@@ -343,4 +343,20 @@ clear_user(void __user *to, unsigned long n)
+@@ -345,4 +345,20 @@ clear_user(void __user *to, unsigned long n)
return __clear_user(to, n);
}
@@ -100658,10 +99812,10 @@ index 72d8803..cb9749c 100644
+
#endif /* __ASM_GENERIC_UACCESS_H */
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
-index 1781e54..03cc4a3 100644
+index c4bd0e2..ca4ca5a9 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
-@@ -246,6 +246,7 @@
+@@ -256,6 +256,7 @@
.rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__start_rodata) = .; \
*(.rodata) *(.rodata.*) \
@@ -100669,7 +99823,7 @@ index 1781e54..03cc4a3 100644
*(__vermagic) /* Kernel version magic */ \
. = ALIGN(8); \
VMLINUX_SYMBOL(__start___tracepoints_ptrs) = .; \
-@@ -502,6 +503,7 @@
+@@ -512,6 +513,7 @@
KERNEL_CTORS() \
MCOUNT_REC() \
*(.init.rodata) \
@@ -100677,7 +99831,7 @@ index 1781e54..03cc4a3 100644
FTRACE_EVENTS() \
TRACE_SYSCALLS() \
KPROBE_BLACKLIST() \
-@@ -523,6 +525,8 @@
+@@ -535,6 +537,8 @@
#define EXIT_DATA \
*(.exit.data) \
@@ -100686,7 +99840,7 @@ index 1781e54..03cc4a3 100644
MEM_DISCARD(exit.data) \
MEM_DISCARD(exit.rodata)
-@@ -739,17 +743,18 @@
+@@ -751,17 +755,18 @@
* section in the linker script will go there too. @phdr should have
* a leading colon.
*
@@ -100709,7 +99863,7 @@ index 1781e54..03cc4a3 100644
/**
* PERCPU_SECTION - define output section for percpu area, simple version
-@@ -811,12 +816,14 @@
+@@ -823,12 +828,14 @@
#define INIT_DATA_SECTION(initsetup_align) \
.init.data : AT(ADDR(.init.data) - LOAD_OFFSET) { \
@@ -100738,7 +99892,7 @@ index c9fe145..9fb2337 100644
struct crypto_instance {
struct crypto_alg alg;
diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index 8b5ce7c..89c5676 100644
+index 0a271ca..0e14d3d 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -59,6 +59,7 @@
@@ -100749,7 +99903,7 @@ index 8b5ce7c..89c5676 100644
#include <asm/uaccess.h>
#include <uapi/drm/drm.h>
-@@ -234,10 +235,12 @@ void drm_err(const char *format, ...);
+@@ -243,10 +244,12 @@ void drm_err(const char *format, ...);
* \param cmd command.
* \param arg argument.
*/
@@ -100764,7 +99918,7 @@ index 8b5ce7c..89c5676 100644
unsigned long arg);
#define DRM_IOCTL_NR(n) _IOC_NR(n)
-@@ -253,9 +256,9 @@ typedef int drm_ioctl_compat_t(struct file *filp, unsigned int cmd,
+@@ -262,9 +265,9 @@ typedef int drm_ioctl_compat_t(struct file *filp, unsigned int cmd,
struct drm_ioctl_desc {
unsigned int cmd;
int flags;
@@ -100776,7 +99930,7 @@ index 8b5ce7c..89c5676 100644
/**
* Creates a driver or general drm_ioctl_desc array entry for the given
-@@ -630,7 +633,8 @@ struct drm_driver {
+@@ -645,7 +648,8 @@ struct drm_driver {
/* List of devices hanging off this driver with stealth attach. */
struct list_head legacy_dev_list;
@@ -100786,7 +99940,7 @@ index 8b5ce7c..89c5676 100644
enum drm_minor_type {
DRM_MINOR_LEGACY,
-@@ -648,7 +652,8 @@ struct drm_info_list {
+@@ -663,7 +667,8 @@ struct drm_info_list {
int (*show)(struct seq_file*, void*); /** show callback */
u32 driver_features; /**< Required driver features for this entry */
void *data;
@@ -100796,7 +99950,7 @@ index 8b5ce7c..89c5676 100644
/**
* debugfs node structure. This structure represents a debugfs file.
-@@ -735,7 +740,7 @@ struct drm_device {
+@@ -752,7 +757,7 @@ struct drm_device {
/** \name Usage Counters */
/*@{ */
@@ -100885,7 +100039,7 @@ index 49a8284..9643967 100644
extern void ttm_dma_unpopulate(struct ttm_dma_tt *ttm_dma, struct device *dev);
diff --git a/include/keys/asymmetric-subtype.h b/include/keys/asymmetric-subtype.h
-index 4b840e8..155d235 100644
+index 4915d40..8b913c0 100644
--- a/include/keys/asymmetric-subtype.h
+++ b/include/keys/asymmetric-subtype.h
@@ -37,7 +37,7 @@ struct asymmetric_key_subtype {
@@ -100920,10 +100074,10 @@ index c1da539..1dcec55 100644
struct atmphy_ops {
int (*start)(struct atm_dev *dev);
diff --git a/include/linux/atomic.h b/include/linux/atomic.h
-index 00a5763..93fe7f4 100644
+index 301de78..a8efdc4 100644
--- a/include/linux/atomic.h
+++ b/include/linux/atomic.h
-@@ -335,7 +335,7 @@
+@@ -432,7 +432,7 @@
* Atomically adds @a to @v, so long as @v was not already @u.
* Returns non-zero if @v was not @u, and zero otherwise.
*/
@@ -100933,7 +100087,7 @@ index 00a5763..93fe7f4 100644
return __atomic_add_unless(v, a, u) != u;
}
diff --git a/include/linux/audit.h b/include/linux/audit.h
-index b2abc99..e08a713 100644
+index 20eba1e..40b479d 100644
--- a/include/linux/audit.h
+++ b/include/linux/audit.h
@@ -227,7 +227,7 @@ static inline void audit_ptrace(struct task_struct *t)
@@ -100997,7 +100151,7 @@ index 9653fdb..b3d3a17 100644
if (small_const_nbits(nbits))
return hweight_long(*src & BITMAP_LAST_WORD_MASK(nbits));
diff --git a/include/linux/bitops.h b/include/linux/bitops.h
-index e635533..3e89a44 100644
+index defeaac..856d23d 100644
--- a/include/linux/bitops.h
+++ b/include/linux/bitops.h
@@ -75,7 +75,7 @@ static inline int get_count_order(unsigned int count)
@@ -101009,18 +100163,15 @@ index e635533..3e89a44 100644
{
return sizeof(w) == 4 ? hweight32(w) : hweight64(w);
}
-@@ -105,9 +105,9 @@ static inline __u64 ror64(__u64 word, unsigned int shift)
+@@ -105,7 +105,7 @@ static inline __u64 ror64(__u64 word, unsigned int shift)
* @word: value to rotate
* @shift: bits to roll
*/
-static inline __u32 rol32(__u32 word, unsigned int shift)
+static inline __u32 __intentional_overflow(-1) rol32(__u32 word, unsigned int shift)
{
-- return (word << shift) | (word >> (32 - shift));
-+ return (word << shift) | (word >> ((-shift) & 31));
+ return (word << shift) | (word >> ((-shift) & 31));
}
-
- /**
@@ -115,7 +115,7 @@ static inline __u32 rol32(__u32 word, unsigned int shift)
* @word: value to rotate
* @shift: bits to roll
@@ -101030,8 +100181,8 @@ index e635533..3e89a44 100644
{
return (word >> shift) | (word << (32 - shift));
}
-@@ -171,7 +171,7 @@ static inline __s32 sign_extend32(__u32 value, int index)
- return (__s32)(value << shift) >> shift;
+@@ -184,7 +184,7 @@ static inline __s64 sign_extend64(__u64 value, int index)
+ return (__s64)(value << shift) >> shift;
}
-static inline unsigned fls_long(unsigned long l)
@@ -101135,13 +100286,13 @@ index c02e669..439bd4b 100644
}
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
-index 19c2e94..6f12b73 100644
+index c70e358..7718240 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
-@@ -1633,7 +1633,7 @@ struct block_device_operations {
- /* this callback is with swap_lock and sometimes page table lock held */
+@@ -1636,7 +1636,7 @@ struct block_device_operations {
void (*swap_slot_free_notify) (struct block_device *, unsigned long);
struct module *owner;
+ const struct pr_ops *pr_ops;
-};
+} __do_const;
@@ -101238,7 +100389,7 @@ index bda5ec0b4..51d8ea1 100644
extern int cleancache_register_ops(struct cleancache_ops *ops);
extern void __cleancache_init_fs(struct super_block *);
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
-index 3ecc07d..8e2e3f8 100644
+index c56988a..ea6c518 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -214,6 +214,7 @@ struct clk_ops {
@@ -101281,7 +100432,7 @@ index a76c917..63b52db 100644
asmlinkage long compat_sys_lookup_dcookie(u32, u32, char __user *, compat_size_t);
/*
diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h
-index 8efb40e..3228e81 100644
+index 22ab246..bfa81b0 100644
--- a/include/linux/compiler-gcc.h
+++ b/include/linux/compiler-gcc.h
@@ -116,8 +116,8 @@
@@ -101335,7 +100486,7 @@ index 8efb40e..3228e81 100644
* Mark a position in code as unreachable. This can be used to
* suppress control flow warnings after asm blocks that transfer
diff --git a/include/linux/compiler.h b/include/linux/compiler.h
-index 3d78103..96773bb 100644
+index 4dac103..0e2c40f 100644
--- a/include/linux/compiler.h
+++ b/include/linux/compiler.h
@@ -5,11 +5,14 @@
@@ -101556,8 +100707,8 @@ index 3d78103..96773bb 100644
+ __val; \
})
- /**
-@@ -415,6 +431,38 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+ #endif /* __KERNEL__ */
+@@ -399,6 +415,38 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
# define __attribute_const__ /* unimplemented */
#endif
@@ -101596,7 +100747,7 @@ index 3d78103..96773bb 100644
/*
* Tell gcc if a function is cold. The compiler will assume any path
* directly leading to the call is unlikely.
-@@ -424,6 +472,22 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+@@ -408,6 +456,22 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
#define __cold
#endif
@@ -101619,7 +100770,7 @@ index 3d78103..96773bb 100644
/* Simple shorthand for a section definition */
#ifndef __section
# define __section(S) __attribute__ ((__section__(#S)))
-@@ -438,6 +502,8 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+@@ -430,6 +494,8 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
# define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
#endif
@@ -101628,7 +100779,7 @@ index 3d78103..96773bb 100644
/* Is this type a native word size -- useful for atomic operations */
#ifndef __native_word
# define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
-@@ -517,8 +583,9 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+@@ -509,8 +575,9 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
*/
#define __ACCESS_ONCE(x) ({ \
__maybe_unused typeof(x) __var = (__force typeof(x)) 0; \
@@ -101640,23 +100791,23 @@ index 3d78103..96773bb 100644
/**
* lockless_dereference() - safely load a pointer for later dereference
diff --git a/include/linux/configfs.h b/include/linux/configfs.h
-index 63a36e8..26b0825 100644
+index 758a029..77c9e59 100644
--- a/include/linux/configfs.h
+++ b/include/linux/configfs.h
-@@ -125,7 +125,7 @@ struct configfs_attribute {
- const char *ca_name;
- struct module *ca_owner;
+@@ -127,7 +127,7 @@ struct configfs_attribute {
umode_t ca_mode;
+ ssize_t (*show)(struct config_item *, char *);
+ ssize_t (*store)(struct config_item *, const char *, size_t);
-};
+} __do_const;
- /*
- * Users often need to create attribute structures for their configurable
+ #define CONFIGFS_ATTR(_pfx, _name) \
+ static struct configfs_attribute _pfx##attr_##_name = { \
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
-index dca22de..fa1927ad5 100644
+index 177c768..663bdfb 100644
--- a/include/linux/cpufreq.h
+++ b/include/linux/cpufreq.h
-@@ -214,6 +214,7 @@ struct global_attr {
+@@ -210,6 +210,7 @@ struct global_attr {
ssize_t (*store)(struct kobject *a, struct attribute *b,
const char *c, size_t count);
};
@@ -101664,7 +100815,7 @@ index dca22de..fa1927ad5 100644
#define define_one_global_ro(_name) \
static struct global_attr _name = \
-@@ -285,7 +286,7 @@ struct cpufreq_driver {
+@@ -281,7 +282,7 @@ struct cpufreq_driver {
bool boost_supported;
bool boost_enabled;
int (*set_boost)(int state);
@@ -101900,7 +101051,7 @@ index 68030e2..c55bb73 100644
/**
* struct devfreq - Device devfreq structure
diff --git a/include/linux/device.h b/include/linux/device.h
-index 5d7bc63..7fe6331 100644
+index b8f411b..49052b0 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -342,7 +342,7 @@ struct subsys_interface {
@@ -101936,10 +101087,10 @@ index 5d7bc63..7fe6331 100644
ssize_t device_show_ulong(struct device *dev, struct device_attribute *attr,
char *buf);
diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h
-index ac07ff0..edff186 100644
+index 2e551e2..8ea30b5 100644
--- a/include/linux/dma-mapping.h
+++ b/include/linux/dma-mapping.h
-@@ -64,7 +64,7 @@ struct dma_map_ops {
+@@ -65,7 +65,7 @@ struct dma_map_ops {
u64 (*get_required_mask)(struct device *dev);
#endif
int is_phys;
@@ -101949,10 +101100,10 @@ index ac07ff0..edff186 100644
#define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
diff --git a/include/linux/efi.h b/include/linux/efi.h
-index 85ef051..2714c3b 100644
+index 569b5a8..55dbf24 100644
--- a/include/linux/efi.h
+++ b/include/linux/efi.h
-@@ -1073,6 +1073,7 @@ struct efivar_operations {
+@@ -1094,6 +1094,7 @@ struct efivar_operations {
efi_set_variable_nonblocking_t *set_variable_nonblocking;
efi_query_variable_store_t *query_variable_store;
};
@@ -102000,10 +101151,10 @@ index a729120..6ede2c9 100644
return (long) ptr;
}
diff --git a/include/linux/extcon.h b/include/linux/extcon.h
-index c0f8c4f..f1fad6f 100644
+index 7abf674..c0a73a0 100644
--- a/include/linux/extcon.h
+++ b/include/linux/extcon.h
-@@ -113,7 +113,7 @@ struct extcon_dev {
+@@ -123,7 +123,7 @@ struct extcon_dev {
/* /sys/class/extcon/.../mutually_exclusive/... */
struct attribute_group attr_g_muex;
struct attribute **attrs_muex;
@@ -102013,7 +101164,7 @@ index c0f8c4f..f1fad6f 100644
/**
diff --git a/include/linux/fb.h b/include/linux/fb.h
-index bc9afa7..15d1341 100644
+index 3d00380..ce2dbdf9 100644
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
@@ -305,7 +305,8 @@ struct fb_ops {
@@ -102027,10 +101178,10 @@ index bc9afa7..15d1341 100644
#ifdef CONFIG_FB_TILEBLITTING
#define FB_TILE_CURSOR_NONE 0
diff --git a/include/linux/fdtable.h b/include/linux/fdtable.h
-index 674e3e2..f68af19 100644
+index 5295535..9852c7e 100644
--- a/include/linux/fdtable.h
+++ b/include/linux/fdtable.h
-@@ -103,7 +103,7 @@ struct files_struct *get_files_struct(struct task_struct *);
+@@ -105,7 +105,7 @@ struct files_struct *get_files_struct(struct task_struct *);
void put_files_struct(struct files_struct *fs);
void reset_files_struct(struct files_struct *);
int unshare_files(struct files_struct **);
@@ -102040,7 +101191,7 @@ index 674e3e2..f68af19 100644
int iterate_fd(struct files_struct *, unsigned,
int (*)(const void *, struct file *, unsigned),
diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 72d8a84..d67bd25 100644
+index 3aa5142..8b8d8ee 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -439,7 +439,7 @@ struct address_space {
@@ -102088,7 +101239,7 @@ index 72d8a84..d67bd25 100644
struct file_lock_context {
spinlock_t flc_lock;
-@@ -1386,7 +1386,7 @@ struct super_block {
+@@ -1373,7 +1373,7 @@ struct super_block {
/* s_inode_list_lock protects s_inodes */
spinlock_t s_inode_list_lock ____cacheline_aligned_in_smp;
struct list_head s_inodes; /* all inodes */
@@ -102097,7 +101248,7 @@ index 72d8a84..d67bd25 100644
extern struct timespec current_fs_time(struct super_block *sb);
-@@ -1642,7 +1642,8 @@ struct file_operations {
+@@ -1629,7 +1629,8 @@ struct file_operations {
#ifndef CONFIG_MMU
unsigned (*mmap_capabilities)(struct file *);
#endif
@@ -102107,7 +101258,7 @@ index 72d8a84..d67bd25 100644
struct inode_operations {
struct dentry * (*lookup) (struct inode *,struct dentry *, unsigned int);
-@@ -2351,7 +2352,7 @@ extern int register_chrdev_region(dev_t, unsigned, const char *);
+@@ -2336,7 +2337,7 @@ extern int register_chrdev_region(dev_t, unsigned, const char *);
extern int __register_chrdev(unsigned int major, unsigned int baseminor,
unsigned int count, const char *name,
const struct file_operations *fops);
@@ -102116,7 +101267,7 @@ index 72d8a84..d67bd25 100644
unsigned int count, const char *name);
extern void unregister_chrdev_region(dev_t, unsigned);
extern void chrdev_show(struct seq_file *,off_t);
-@@ -2778,8 +2779,6 @@ extern int vfs_lstat(const char __user *, struct kstat *);
+@@ -2764,8 +2765,6 @@ extern int vfs_lstat(const char __user *, struct kstat *);
extern int vfs_fstat(unsigned int, struct kstat *);
extern int vfs_fstatat(int , const char __user *, struct kstat *, int);
@@ -102125,7 +101276,7 @@ index 72d8a84..d67bd25 100644
extern int __generic_block_fiemap(struct inode *inode,
struct fiemap_extent_info *fieinfo,
loff_t start, loff_t len,
-@@ -3040,4 +3039,14 @@ static inline bool dir_relax(struct inode *inode)
+@@ -3026,4 +3025,14 @@ static inline bool dir_relax(struct inode *inode)
extern bool path_noexec(const struct path *path);
@@ -102219,23 +101370,11 @@ index 7ee1774..72505b8 100644
}
/*
-diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
-index 6cd8c0e..47420d4 100644
---- a/include/linux/ftrace.h
-+++ b/include/linux/ftrace.h
-@@ -575,6 +575,7 @@ extern int ftrace_arch_read_dyn_info(char *buf, int size);
-
- extern int skip_trace(unsigned long ip);
- extern void ftrace_module_init(struct module *mod);
-+extern void ftrace_release_mod(struct module *mod);
-
- extern void ftrace_disable_daemon(void);
- extern void ftrace_enable_daemon(void);
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
-index 2adbfa6..abfd2e6 100644
+index 847cc1d..2d2699a 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
-@@ -195,7 +195,7 @@ struct gendisk {
+@@ -207,7 +207,7 @@ struct gendisk {
struct kobject *slave_dir;
struct timer_rand_state *random;
@@ -102243,8 +101382,8 @@ index 2adbfa6..abfd2e6 100644
+ atomic_unchecked_t sync_io; /* RAID */
struct disk_events *ev;
#ifdef CONFIG_BLK_DEV_INTEGRITY
- struct blk_integrity *integrity;
-@@ -436,7 +436,7 @@ extern void disk_flush_events(struct gendisk *disk, unsigned int mask);
+ struct kobject integrity_kobj;
+@@ -448,7 +448,7 @@ extern void disk_flush_events(struct gendisk *disk, unsigned int mask);
extern unsigned int disk_clear_events(struct gendisk *disk, unsigned int mask);
/* drivers/char/random.c */
@@ -102266,17 +101405,32 @@ index 667c311..abac2a7 100644
#include GENL_MAGIC_INCLUDE_FILE
};
+diff --git a/include/linux/genl_magic_struct.h b/include/linux/genl_magic_struct.h
+index eecd19b..391d1957 100644
+--- a/include/linux/genl_magic_struct.h
++++ b/include/linux/genl_magic_struct.h
+@@ -76,8 +76,8 @@ extern void CONCAT_(GENL_MAGIC_FAMILY, _genl_unregister)(void);
+ __field(attr_nr, attr_flag, name, NLA_U32, __u32, \
+ nla_get_u32, nla_put_u32, false)
+ #define __s32_field(attr_nr, attr_flag, name) \
+- __field(attr_nr, attr_flag, name, NLA_U32, __s32, \
+- nla_get_u32, nla_put_u32, true)
++ __field(attr_nr, attr_flag, name, NLA_S32, __s32, \
++ nla_get_s32, nla_put_s32, true)
+ #define __u64_field(attr_nr, attr_flag, name) \
+ __field(attr_nr, attr_flag, name, NLA_U64, __u64, \
+ nla_get_u64, nla_put_u64, false)
diff --git a/include/linux/gfp.h b/include/linux/gfp.h
-index f92cbd2..389d885 100644
+index 8942af0..2c247c14 100644
--- a/include/linux/gfp.h
+++ b/include/linux/gfp.h
-@@ -35,6 +35,13 @@ struct vm_area_struct;
- #define ___GFP_NO_KSWAPD 0x400000u
+@@ -36,6 +36,13 @@ struct vm_area_struct;
#define ___GFP_OTHER_NODE 0x800000u
#define ___GFP_WRITE 0x1000000u
+ #define ___GFP_KSWAPD_RECLAIM 0x2000000u
+
+#ifdef CONFIG_PAX_USERCOPY_SLABS
-+#define ___GFP_USERCOPY 0x2000000u
++#define ___GFP_USERCOPY 0x4000000u
+#else
+#define ___GFP_USERCOPY 0
+#endif
@@ -102284,32 +101438,32 @@ index f92cbd2..389d885 100644
/* If the above are modified, __GFP_BITS_SHIFT may need updating */
/*
-@@ -97,6 +104,7 @@ struct vm_area_struct;
- #define __GFP_NO_KSWAPD ((__force gfp_t)___GFP_NO_KSWAPD)
- #define __GFP_OTHER_NODE ((__force gfp_t)___GFP_OTHER_NODE) /* On behalf of other node */
- #define __GFP_WRITE ((__force gfp_t)___GFP_WRITE) /* Allocator intends to dirty page */
+@@ -78,6 +85,7 @@ struct vm_area_struct;
+ #define __GFP_WRITE ((__force gfp_t)___GFP_WRITE)
+ #define __GFP_HARDWALL ((__force gfp_t)___GFP_HARDWALL)
+ #define __GFP_THISNODE ((__force gfp_t)___GFP_THISNODE)
+#define __GFP_USERCOPY ((__force gfp_t)___GFP_USERCOPY)/* Allocator intends to copy page to/from userland */
/*
- * This may seem redundant, but it's a way of annotating false positives vs.
-@@ -104,7 +112,7 @@ struct vm_area_struct;
- */
- #define __GFP_NOTRACK_FALSE_POSITIVE (__GFP_NOTRACK)
+ * Watermark modifiers -- controls access to emergency reserves
+@@ -183,7 +191,7 @@ struct vm_area_struct;
+ #define __GFP_OTHER_NODE ((__force gfp_t)___GFP_OTHER_NODE)
--#define __GFP_BITS_SHIFT 25 /* Room for N __GFP_FOO bits */
-+#define __GFP_BITS_SHIFT 26 /* Room for N __GFP_FOO bits */
+ /* Room for N __GFP_FOO bits */
+-#define __GFP_BITS_SHIFT 26
++#define __GFP_BITS_SHIFT 27
#define __GFP_BITS_MASK ((__force gfp_t)((1 << __GFP_BITS_SHIFT) - 1))
- /* This equals 0, but use constants in case they ever change */
-@@ -149,6 +157,8 @@ struct vm_area_struct;
- /* 4GB DMA on some platforms */
- #define GFP_DMA32 __GFP_DMA32
+ /*
+@@ -250,6 +258,8 @@ struct vm_area_struct;
+ __GFP_NOMEMALLOC | __GFP_NORETRY | __GFP_NOWARN) & \
+ ~__GFP_KSWAPD_RECLAIM)
+#define GFP_USERCOPY __GFP_USERCOPY
+
/* Convert GFP flags to their corresponding migrate type */
- static inline int gfpflags_to_migratetype(const gfp_t gfp_flags)
- {
+ #define GFP_MOVABLE_MASK (__GFP_RECLAIMABLE|__GFP_MOVABLE)
+ #define GFP_MOVABLE_SHIFT 3
diff --git a/include/linux/gracl.h b/include/linux/gracl.h
new file mode 100644
index 0000000..91858e4
@@ -102983,10 +102137,10 @@ index 0000000..be66033
+#endif
diff --git a/include/linux/grinternal.h b/include/linux/grinternal.h
new file mode 100644
-index 0000000..6245f9e
+index 0000000..1dbf9c8
--- /dev/null
+++ b/include/linux/grinternal.h
-@@ -0,0 +1,230 @@
+@@ -0,0 +1,231 @@
+#ifndef __GRINTERNAL_H
+#define __GRINTERNAL_H
+
@@ -103071,6 +102225,7 @@ index 0000000..6245f9e
+extern int grsec_lastack_retries;
+extern int grsec_enable_brute;
+extern int grsec_enable_harden_ipc;
++extern int grsec_enable_harden_tty;
+extern int grsec_lock;
+
+extern spinlock_t grsec_alert_lock;
@@ -103219,10 +102374,10 @@ index 0000000..6245f9e
+#endif
diff --git a/include/linux/grmsg.h b/include/linux/grmsg.h
new file mode 100644
-index 0000000..3092b3c
+index 0000000..12028ce
--- /dev/null
+++ b/include/linux/grmsg.h
-@@ -0,0 +1,118 @@
+@@ -0,0 +1,119 @@
+#define DEFAULTSECMSG "%.256s[%.16s:%d] uid/euid:%u/%u gid/egid:%u/%u, parent %.256s[%.16s:%d] uid/euid:%u/%u gid/egid:%u/%u"
+#define GR_ACL_PROCACCT_MSG "%.256s[%.16s:%d] IP:%pI4 TTY:%.64s uid/euid:%u/%u gid/egid:%u/%u run time:[%ud %uh %um %us] cpu time:[%ud %uh %um %us] %s with exit code %ld, parent %.256s[%.16s:%d] IP:%pI4 TTY:%.64s uid/euid:%u/%u gid/egid:%u/%u"
+#define GR_PTRACE_ACL_MSG "denied ptrace of %.950s(%.16s:%d) by "
@@ -103340,18 +102495,20 @@ index 0000000..3092b3c
+#define GR_BRUTE_DAEMON_MSG "bruteforce prevention initiated for the next 30 minutes or until service restarted, stalling each fork 30 seconds. Please investigate the crash report for "
+#define GR_BRUTE_SUID_MSG "bruteforce prevention initiated due to crash of %.950s against uid %u, banning suid/sgid execs for %u minutes. Please investigate the crash report for "
+#define GR_IPC_DENIED_MSG "denied %s of overly-permissive IPC object with creator uid %u by "
++#define GR_TIOCSTI_MSG "denied unprivileged use of TIOCSTI by "
+#define GR_MSRWRITE_MSG "denied write to CPU MSR by "
diff --git a/include/linux/grsecurity.h b/include/linux/grsecurity.h
new file mode 100644
-index 0000000..0ea4a82
+index 0000000..0166061
--- /dev/null
+++ b/include/linux/grsecurity.h
-@@ -0,0 +1,255 @@
+@@ -0,0 +1,258 @@
+#ifndef GR_SECURITY_H
+#define GR_SECURITY_H
+#include <linux/fs.h>
+#include <linux/fs_struct.h>
+#include <linux/binfmts.h>
++#include <linux/tty.h>
+#include <linux/gracl.h>
+
+/* notify of brain-dead configs */
@@ -103564,6 +102721,8 @@ index 0000000..0ea4a82
+
+int gr_ptrace_readexec(struct file *file, int unsafe_flags);
+
++int gr_handle_tiocsti(struct tty_struct *tty);
++
+void gr_inc_chroot_refcnts(struct dentry *dentry, struct vfsmount *mnt);
+void gr_dec_chroot_refcnts(struct dentry *dentry, struct vfsmount *mnt);
+int gr_bad_chroot_rename(struct dentry *olddentry, struct vfsmount *oldmnt,
@@ -103628,10 +102787,10 @@ index 0000000..e7ffaaf
+
+#endif
diff --git a/include/linux/highmem.h b/include/linux/highmem.h
-index 6aefcd0..98b81dc 100644
+index bb3f329..9daed55 100644
--- a/include/linux/highmem.h
+++ b/include/linux/highmem.h
-@@ -191,6 +191,18 @@ static inline void clear_highpage(struct page *page)
+@@ -190,6 +190,18 @@ static inline void clear_highpage(struct page *page)
kunmap_atomic(kaddr);
}
@@ -103732,10 +102891,10 @@ index b449f37..61005b3 100644
#define __meminitconst __constsection(.meminit.rodata)
#define __memexit __section(.memexit.text) __exitused __cold notrace
diff --git a/include/linux/init_task.h b/include/linux/init_task.h
-index e38681f..314ff86 100644
+index 1c1ff7e..97a439f 100644
--- a/include/linux/init_task.h
+++ b/include/linux/init_task.h
-@@ -166,6 +166,12 @@ extern struct task_group root_task_group;
+@@ -159,6 +159,12 @@ extern struct task_group root_task_group;
#define INIT_TASK_COMM "swapper"
@@ -103748,7 +102907,7 @@ index e38681f..314ff86 100644
#ifdef CONFIG_RT_MUTEXES
# define INIT_RT_MUTEXES(tsk) \
.pi_waiters = RB_ROOT, \
-@@ -232,6 +238,7 @@ extern struct task_group root_task_group;
+@@ -225,6 +231,7 @@ extern struct task_group root_task_group;
RCU_POINTER_INITIALIZER(cred, &init_cred), \
.comm = INIT_TASK_COMM, \
.thread = INIT_THREAD, \
@@ -103757,10 +102916,10 @@ index e38681f..314ff86 100644
.files = &init_files, \
.signal = &init_signals, \
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index be7e75c..09bec77 100644
+index ad16809..516b54d 100644
--- a/include/linux/interrupt.h
+++ b/include/linux/interrupt.h
-@@ -433,8 +433,8 @@ extern const char * const softirq_to_name[NR_SOFTIRQS];
+@@ -435,8 +435,8 @@ extern const char * const softirq_to_name[NR_SOFTIRQS];
struct softirq_action
{
@@ -103771,7 +102930,7 @@ index be7e75c..09bec77 100644
asmlinkage void do_softirq(void);
asmlinkage void __do_softirq(void);
-@@ -448,7 +448,7 @@ static inline void do_softirq_own_stack(void)
+@@ -450,7 +450,7 @@ static inline void do_softirq_own_stack(void)
}
#endif
@@ -103781,10 +102940,10 @@ index be7e75c..09bec77 100644
extern void __raise_softirq_irqoff(unsigned int nr);
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
-index f9c1b6d..db7d6f5 100644
+index f28dff3..2f6c413 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
-@@ -192,7 +192,7 @@ struct iommu_ops {
+@@ -193,7 +193,7 @@ struct iommu_ops {
unsigned long pgsize_bitmap;
void *priv;
@@ -103794,10 +102953,10 @@ index f9c1b6d..db7d6f5 100644
#define IOMMU_GROUP_NOTIFY_ADD_DEVICE 1 /* Device added */
#define IOMMU_GROUP_NOTIFY_DEL_DEVICE 2 /* Pre Device removed */
diff --git a/include/linux/ioport.h b/include/linux/ioport.h
-index 388e3ae..d7e45a1 100644
+index 24bea08..89cafba 100644
--- a/include/linux/ioport.h
+++ b/include/linux/ioport.h
-@@ -161,7 +161,7 @@ struct resource *lookup_resource(struct resource *root, resource_size_t start);
+@@ -162,7 +162,7 @@ struct resource *lookup_resource(struct resource *root, resource_size_t start);
int adjust_resource(struct resource *res, resource_size_t start,
resource_size_t size);
resource_size_t resource_alignment(struct resource *res);
@@ -103835,10 +102994,10 @@ index 1eee6bc..9cf4912 100644
extern struct ipc_namespace init_ipc_ns;
extern atomic_t nr_ipc_ns;
diff --git a/include/linux/irq.h b/include/linux/irq.h
-index 11bf092..8d0f57f 100644
+index 3c1c967..ca8abc6 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
-@@ -399,7 +399,10 @@ struct irq_chip {
+@@ -386,7 +386,10 @@ struct irq_chip {
int (*irq_set_vcpu_affinity)(struct irq_data *data, void *vcpu_info);
unsigned long flags;
@@ -103864,10 +103023,10 @@ index a587a33..0ff712d 100644
raw_spinlock_t lock;
struct cpumask *percpu_enabled;
diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h
-index f644fdb..ae23d35 100644
+index d5e5c5b..0e779bd 100644
--- a/include/linux/irqdomain.h
+++ b/include/linux/irqdomain.h
-@@ -40,6 +40,9 @@ struct device_node;
+@@ -38,6 +38,9 @@ struct device_node;
struct irq_domain;
struct of_device_id;
struct irq_chip;
@@ -103878,10 +103037,10 @@ index f644fdb..ae23d35 100644
/* Number of irqs reserved for a legacy isa controller */
diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h
-index 1abeb82..0dcff9d 100644
+index 65407f6..a9ae0ed 100644
--- a/include/linux/jbd2.h
+++ b/include/linux/jbd2.h
-@@ -674,7 +674,7 @@ struct transaction_s
+@@ -677,7 +677,7 @@ struct transaction_s
/*
* How many handles used this transaction? [t_handle_lock]
*/
@@ -103990,10 +103149,10 @@ index 6883e19..e854fcb 100644
/* This macro allows us to keep printk typechecking */
static __printf(1, 2)
diff --git a/include/linux/key-type.h b/include/linux/key-type.h
-index ff9f1d3..77627d8 100644
+index 7463355..30de32e 100644
--- a/include/linux/key-type.h
+++ b/include/linux/key-type.h
-@@ -47,7 +47,7 @@ struct key_preparsed_payload {
+@@ -46,7 +46,7 @@ struct key_preparsed_payload {
size_t quotalen; /* Quota length for proposed payload */
time_t expiry; /* Expiry time of key */
bool trusted; /* True if key is trusted */
@@ -104002,7 +103161,7 @@ index ff9f1d3..77627d8 100644
typedef int (*request_key_actor_t)(struct key_construction *key,
const char *op, void *aux);
-@@ -152,7 +152,7 @@ struct key_type {
+@@ -151,7 +151,7 @@ struct key_type {
/* internal fields */
struct list_head link; /* link in types list */
struct lock_class_key lock_class; /* key->sem lock class */
@@ -104043,12 +103202,12 @@ index e465bb1..19f605fd 100644
extern struct kgdb_arch arch_kgdb_ops;
diff --git a/include/linux/kmemleak.h b/include/linux/kmemleak.h
-index d0a1f99..0bd8b7c 100644
+index 4894c68..7824e6a 100644
--- a/include/linux/kmemleak.h
+++ b/include/linux/kmemleak.h
@@ -27,7 +27,7 @@
- extern void kmemleak_init(void) __ref;
+ extern void kmemleak_init(void) __init;
extern void kmemleak_alloc(const void *ptr, size_t size, int min_count,
- gfp_t gfp) __ref;
+ gfp_t gfp) __ref __size_overflow(2);
@@ -104088,7 +103247,7 @@ index fcfd2bf..bc6316e 100644
char **envp;
int wait;
diff --git a/include/linux/kobject.h b/include/linux/kobject.h
-index 637f670..3d69945 100644
+index e628459..5985b6e 100644
--- a/include/linux/kobject.h
+++ b/include/linux/kobject.h
@@ -119,7 +119,7 @@ struct kobj_type {
@@ -104131,10 +103290,10 @@ index df32d25..fb52e27 100644
int kobj_ns_type_register(const struct kobj_ns_type_operations *ops);
int kobj_ns_type_registered(enum kobj_ns_type type);
diff --git a/include/linux/kref.h b/include/linux/kref.h
-index 484604d..0f6c5b6 100644
+index e15828f..531fd0a 100644
--- a/include/linux/kref.h
+++ b/include/linux/kref.h
-@@ -68,7 +68,7 @@ static inline void kref_get(struct kref *kref)
+@@ -67,7 +67,7 @@ static inline void kref_get(struct kref *kref)
static inline int kref_sub(struct kref *kref, unsigned int count,
void (*release)(struct kref *kref))
{
@@ -104144,10 +103303,10 @@ index 484604d..0f6c5b6 100644
if (atomic_sub_and_test((int) count, &kref->refcount)) {
release(kref);
diff --git a/include/linux/libata.h b/include/linux/libata.h
-index c9cfbcd..46986db 100644
+index 600c1e0..255c7b9 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
-@@ -990,7 +990,7 @@ struct ata_port_operations {
+@@ -992,7 +992,7 @@ struct ata_port_operations {
* fields must be pointers.
*/
const struct ata_port_operations *inherits;
@@ -104169,7 +103328,7 @@ index a6a42dd..6c5ebce 100644
/*
diff --git a/include/linux/list.h b/include/linux/list.h
-index 3e3e64a..42c8d8a 100644
+index 993395a..b481018 100644
--- a/include/linux/list.h
+++ b/include/linux/list.h
@@ -113,6 +113,19 @@ extern void __list_del_entry(struct list_head *entry);
@@ -104269,7 +103428,7 @@ index ec3a6ba..72c79d4 100644
/*
* Initializing a security_hook_list structure takes
diff --git a/include/linux/math64.h b/include/linux/math64.h
-index c45c089..298841c 100644
+index 6e8b5b2..8e8a37d 100644
--- a/include/linux/math64.h
+++ b/include/linux/math64.h
@@ -15,7 +15,7 @@
@@ -104317,6 +103476,19 @@ index c45c089..298841c 100644
{
u32 remainder;
return div_u64_rem(dividend, divisor, &remainder);
+diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h
+index cd0e241..ea80891 100644
+--- a/include/linux/memcontrol.h
++++ b/include/linux/memcontrol.h
+@@ -259,7 +259,7 @@ struct mem_cgroup {
+ int last_scanned_node;
+ #if MAX_NUMNODES > 1
+ nodemask_t scan_nodes;
+- atomic_t numainfo_events;
++ atomic64_t numainfo_events;
+ atomic_t numainfo_updating;
+ #endif
+
diff --git a/include/linux/mempolicy.h b/include/linux/mempolicy.h
index 3d385c8..deacb6a 100644
--- a/include/linux/mempolicy.h
@@ -104343,22 +103515,22 @@ index 3d385c8..deacb6a 100644
static inline int
vma_dup_policy(struct vm_area_struct *src, struct vm_area_struct *dst)
diff --git a/include/linux/mm.h b/include/linux/mm.h
-index 80001de..7f128d9 100644
+index 00bad77..356be09 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
-@@ -139,6 +139,11 @@ extern unsigned int kobjsize(const void *objp);
-
- #define VM_DONTCOPY 0x00020000 /* Do not copy this vma on fork */
- #define VM_DONTEXPAND 0x00040000 /* Cannot expand with mremap() */
+@@ -143,6 +143,11 @@ extern unsigned int kobjsize(const void *objp);
+ #define VM_ACCOUNT 0x00100000 /* Is a VM accounted object */
+ #define VM_NORESERVE 0x00200000 /* should the VM suppress accounting */
+ #define VM_HUGETLB 0x00400000 /* Huge TLB Page VM */
+
+#if defined(CONFIG_PAX_PAGEEXEC) && defined(CONFIG_X86_32)
-+#define VM_PAGEEXEC 0x00080000 /* vma->vm_page_prot needs special handling */
++#define VM_PAGEEXEC 0x00800000 /* vma->vm_page_prot needs special handling */
+#endif
+
- #define VM_ACCOUNT 0x00100000 /* Is a VM accounted object */
- #define VM_NORESERVE 0x00200000 /* should the VM suppress accounting */
- #define VM_HUGETLB 0x00400000 /* Huge TLB Page VM */
-@@ -264,8 +269,8 @@ struct vm_operations_struct {
+ #define VM_ARCH_1 0x01000000 /* Architecture-specific flag */
+ #define VM_ARCH_2 0x02000000
+ #define VM_DONTDUMP 0x04000000 /* Do not include in the core dump */
+@@ -268,8 +273,8 @@ struct vm_operations_struct {
/* called by access_process_vm when get_user_pages() fails, typically
* for use by special VMAs that can switch between memory and hardware
*/
@@ -104369,7 +103541,7 @@ index 80001de..7f128d9 100644
/* Called by the /proc/PID/maps code to ask the vma whether it
* has a special name. Returning non-NULL will also cause this
-@@ -303,6 +308,7 @@ struct vm_operations_struct {
+@@ -307,6 +312,7 @@ struct vm_operations_struct {
struct page *(*find_special_page)(struct vm_area_struct *vma,
unsigned long addr);
};
@@ -104377,7 +103549,7 @@ index 80001de..7f128d9 100644
struct mmu_gather;
struct inode;
-@@ -1170,8 +1176,8 @@ int follow_pfn(struct vm_area_struct *vma, unsigned long address,
+@@ -1142,8 +1148,8 @@ int follow_pfn(struct vm_area_struct *vma, unsigned long address,
unsigned long *pfn);
int follow_phys(struct vm_area_struct *vma, unsigned long address,
unsigned int flags, unsigned long *prot, resource_size_t *phys);
@@ -104388,7 +103560,7 @@ index 80001de..7f128d9 100644
static inline void unmap_shared_mapping_range(struct address_space *mapping,
loff_t const holebegin, loff_t const holelen)
-@@ -1211,9 +1217,9 @@ static inline int fixup_user_fault(struct task_struct *tsk,
+@@ -1183,9 +1189,9 @@ static inline int fixup_user_fault(struct task_struct *tsk,
}
#endif
@@ -104401,7 +103573,7 @@ index 80001de..7f128d9 100644
long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
unsigned long start, unsigned long nr_pages,
-@@ -1304,39 +1310,11 @@ int clear_page_dirty_for_io(struct page *page);
+@@ -1276,39 +1282,11 @@ int clear_page_dirty_for_io(struct page *page);
int get_cmdline(struct task_struct *task, char *buffer, int buflen);
@@ -104441,7 +103613,7 @@ index 80001de..7f128d9 100644
extern struct task_struct *task_of_stack(struct task_struct *task,
struct vm_area_struct *vma, bool in_group);
-@@ -1459,8 +1437,15 @@ static inline int __pud_alloc(struct mm_struct *mm, pgd_t *pgd,
+@@ -1431,8 +1409,15 @@ static inline int __pud_alloc(struct mm_struct *mm, pgd_t *pgd,
{
return 0;
}
@@ -104457,7 +103629,7 @@ index 80001de..7f128d9 100644
#endif
#if defined(__PAGETABLE_PMD_FOLDED) || !defined(CONFIG_MMU)
-@@ -1470,6 +1455,12 @@ static inline int __pmd_alloc(struct mm_struct *mm, pud_t *pud,
+@@ -1442,6 +1427,12 @@ static inline int __pmd_alloc(struct mm_struct *mm, pud_t *pud,
return 0;
}
@@ -104470,7 +103642,7 @@ index 80001de..7f128d9 100644
static inline void mm_nr_pmds_init(struct mm_struct *mm) {}
static inline unsigned long mm_nr_pmds(struct mm_struct *mm)
-@@ -1482,6 +1473,7 @@ static inline void mm_dec_nr_pmds(struct mm_struct *mm) {}
+@@ -1454,6 +1445,7 @@ static inline void mm_dec_nr_pmds(struct mm_struct *mm) {}
#else
int __pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long address);
@@ -104478,7 +103650,7 @@ index 80001de..7f128d9 100644
static inline void mm_nr_pmds_init(struct mm_struct *mm)
{
-@@ -1519,11 +1511,23 @@ static inline pud_t *pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long a
+@@ -1491,11 +1483,23 @@ static inline pud_t *pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long a
NULL: pud_offset(pgd, address);
}
@@ -104502,7 +103674,7 @@ index 80001de..7f128d9 100644
#endif /* CONFIG_MMU && !__ARCH_HAS_4LEVEL_HACK */
#if USE_SPLIT_PTE_PTLOCKS
-@@ -1904,12 +1908,23 @@ extern struct vm_area_struct *copy_vma(struct vm_area_struct **,
+@@ -1878,12 +1882,23 @@ extern struct vm_area_struct *copy_vma(struct vm_area_struct **,
bool *need_rmap_locks);
extern void exit_mmap(struct mm_struct *);
@@ -104526,7 +103698,7 @@ index 80001de..7f128d9 100644
if (rlim < RLIM_INFINITY) {
if (((new - start) + (end_data - start_data)) > rlim)
return -ENOSPC;
-@@ -1942,6 +1957,7 @@ extern unsigned long do_mmap(struct file *file, unsigned long addr,
+@@ -1916,6 +1931,7 @@ extern unsigned long do_mmap(struct file *file, unsigned long addr,
unsigned long len, unsigned long prot, unsigned long flags,
vm_flags_t vm_flags, unsigned long pgoff, unsigned long *populate);
extern int do_munmap(struct mm_struct *, unsigned long, size_t);
@@ -104534,7 +103706,7 @@ index 80001de..7f128d9 100644
static inline unsigned long
do_mmap_pgoff(struct file *file, unsigned long addr,
-@@ -1978,10 +1994,11 @@ struct vm_unmapped_area_info {
+@@ -1952,10 +1968,11 @@ struct vm_unmapped_area_info {
unsigned long high_limit;
unsigned long align_mask;
unsigned long align_offset;
@@ -104548,7 +103720,7 @@ index 80001de..7f128d9 100644
/*
* Search for an unmapped address range.
-@@ -1993,7 +2010,7 @@ extern unsigned long unmapped_area_topdown(struct vm_unmapped_area_info *info);
+@@ -1967,7 +1984,7 @@ extern unsigned long unmapped_area_topdown(struct vm_unmapped_area_info *info);
* - satisfies (begin_addr & align_mask) == (align_offset & align_mask)
*/
static inline unsigned long
@@ -104557,7 +103729,7 @@ index 80001de..7f128d9 100644
{
if (info->flags & VM_UNMAPPED_AREA_TOPDOWN)
return unmapped_area_topdown(info);
-@@ -2055,6 +2072,10 @@ extern struct vm_area_struct * find_vma(struct mm_struct * mm, unsigned long add
+@@ -2027,6 +2044,10 @@ extern struct vm_area_struct * find_vma(struct mm_struct * mm, unsigned long add
extern struct vm_area_struct * find_vma_prev(struct mm_struct * mm, unsigned long addr,
struct vm_area_struct **pprev);
@@ -104568,7 +103740,7 @@ index 80001de..7f128d9 100644
/* Look up the first VMA which intersects the interval start_addr..end_addr-1,
NULL if none. Assume start_addr < end_addr. */
static inline struct vm_area_struct * find_vma_intersection(struct mm_struct * mm, unsigned long start_addr, unsigned long end_addr)
-@@ -2084,10 +2105,10 @@ static inline struct vm_area_struct *find_exact_vma(struct mm_struct *mm,
+@@ -2056,10 +2077,10 @@ static inline struct vm_area_struct *find_exact_vma(struct mm_struct *mm,
}
#ifdef CONFIG_MMU
@@ -104581,7 +103753,7 @@ index 80001de..7f128d9 100644
{
return __pgprot(0);
}
-@@ -2149,6 +2170,11 @@ void vm_stat_account(struct mm_struct *, unsigned long, struct file *, long);
+@@ -2122,6 +2143,11 @@ void vm_stat_account(struct mm_struct *, unsigned long, struct file *, long);
static inline void vm_stat_account(struct mm_struct *mm,
unsigned long flags, struct file *file, long pages)
{
@@ -104593,7 +103765,7 @@ index 80001de..7f128d9 100644
mm->total_vm += pages;
}
#endif /* CONFIG_PROC_FS */
-@@ -2253,7 +2279,7 @@ extern void put_hwpoison_page(struct page *page);
+@@ -2226,7 +2252,7 @@ extern void put_hwpoison_page(struct page *page);
extern int sysctl_memory_failure_early_kill;
extern int sysctl_memory_failure_recovery;
extern void shake_page(struct page *p, int access);
@@ -104602,7 +103774,7 @@ index 80001de..7f128d9 100644
extern int soft_offline_page(struct page *page, int flags);
-@@ -2338,5 +2364,11 @@ void __init setup_nr_node_ids(void);
+@@ -2311,5 +2337,11 @@ void __init setup_nr_node_ids(void);
static inline void setup_nr_node_ids(void) {}
#endif
@@ -104615,10 +103787,10 @@ index 80001de..7f128d9 100644
#endif /* __KERNEL__ */
#endif /* _LINUX_MM_H */
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
-index 3d6baa7..6d1facb 100644
+index f8d1492..a6dfed0 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
-@@ -333,7 +333,9 @@ struct vm_area_struct {
+@@ -355,7 +355,9 @@ struct vm_area_struct {
struct mempolicy *vm_policy; /* NUMA policy for the VMA */
#endif
struct vm_userfaultfd_ctx vm_userfaultfd_ctx;
@@ -104629,9 +103801,9 @@ index 3d6baa7..6d1facb 100644
struct core_thread {
struct task_struct *task;
-@@ -486,7 +488,25 @@ struct mm_struct {
- /* address of the bounds directory */
- void __user *bd_addr;
+@@ -511,7 +513,25 @@ struct mm_struct {
+ #ifdef CONFIG_HUGETLB_PAGE
+ atomic_long_t hugetlb_usage;
#endif
-};
+
@@ -104679,10 +103851,10 @@ index 3ba327a..85cd5ce 100644
}
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
-index d943477..879f03b 100644
+index e23a9e7..75994f3 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
-@@ -530,7 +530,7 @@ struct zone {
+@@ -527,7 +527,7 @@ struct zone {
ZONE_PADDING(_pad3_)
/* Zone statistics */
@@ -104692,7 +103864,7 @@ index d943477..879f03b 100644
enum zone_flags {
diff --git a/include/linux/mod_devicetable.h b/include/linux/mod_devicetable.h
-index 688997a..a6f4711 100644
+index 64f36e0..fa7f0d8 100644
--- a/include/linux/mod_devicetable.h
+++ b/include/linux/mod_devicetable.h
@@ -139,7 +139,7 @@ struct usb_device_id {
@@ -104704,7 +103876,7 @@ index 688997a..a6f4711 100644
#define HID_BUS_ANY 0xffff
#define HID_GROUP_ANY 0x0000
-@@ -472,7 +472,7 @@ struct dmi_system_id {
+@@ -480,7 +480,7 @@ struct dmi_system_id {
const char *ident;
struct dmi_strmatch matches[4];
void *driver_data;
@@ -104930,7 +104102,7 @@ index 4d0cb9b..3169ac7 100644
}
#endif
diff --git a/include/linux/moduleparam.h b/include/linux/moduleparam.h
-index c12f214..3ef907f 100644
+index 52666d9..9701f5e 100644
--- a/include/linux/moduleparam.h
+++ b/include/linux/moduleparam.h
@@ -289,7 +289,7 @@ static inline void kernel_param_unlock(struct module *mod)
@@ -104942,7 +104114,7 @@ index c12f214..3ef907f 100644
= { len, string }; \
__module_param_call(MODULE_PARAM_PREFIX, name, \
&param_ops_string, \
-@@ -440,7 +440,7 @@ extern int param_set_bint(const char *val, const struct kernel_param *kp);
+@@ -441,7 +441,7 @@ extern int param_set_bint(const char *val, const struct kernel_param *kp);
*/
#define module_param_array_named(name, array, type, nump, perm) \
param_check_##type(name, &(array)[0]); \
@@ -104978,10 +104150,10 @@ index f3f302f..a001305 100644
/* Helper routines for sys_msgsnd and sys_msgrcv */
extern long do_msgsnd(int msqid, long mtype, void __user *mtext,
diff --git a/include/linux/net.h b/include/linux/net.h
-index 049d4b0..764243c 100644
+index 0b4ac7d..d4dc945 100644
--- a/include/linux/net.h
+++ b/include/linux/net.h
-@@ -189,7 +189,7 @@ struct net_proto_family {
+@@ -195,7 +195,7 @@ struct net_proto_family {
int (*create)(struct net *net, struct socket *sock,
int protocol, int kern);
struct module *owner;
@@ -104991,10 +104163,10 @@ index 049d4b0..764243c 100644
struct iovec;
struct kvec;
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
-index 210d11a..c5cd00e 100644
+index 3143c84..a709abf 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -1234,6 +1234,7 @@ struct net_device_ops {
+@@ -1237,6 +1237,7 @@ struct net_device_ops {
int (*ndo_fill_metadata_dst)(struct net_device *dev,
struct sk_buff *skb);
};
@@ -105002,7 +104174,7 @@ index 210d11a..c5cd00e 100644
/**
* enum net_device_priv_flags - &struct net_device priv_flags
-@@ -1542,7 +1543,7 @@ struct net_device {
+@@ -1548,7 +1549,7 @@ struct net_device {
unsigned long base_addr;
int irq;
@@ -105011,7 +104183,7 @@ index 210d11a..c5cd00e 100644
/*
* Some hardware also needs these fields (state,dev_list,
-@@ -1581,8 +1582,8 @@ struct net_device {
+@@ -1587,8 +1588,8 @@ struct net_device {
struct net_device_stats stats;
@@ -105023,10 +104195,10 @@ index 210d11a..c5cd00e 100644
#ifdef CONFIG_WIRELESS_EXT
const struct iw_handler_def * wireless_handlers;
diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h
-index 36a6525..289cd95 100644
+index 0ad5567..79b35f5a 100644
--- a/include/linux/netfilter.h
+++ b/include/linux/netfilter.h
-@@ -117,7 +117,7 @@ struct nf_sockopt_ops {
+@@ -119,7 +119,7 @@ struct nf_sockopt_ops {
#endif
/* Use the module struct to lock set/get code in place */
struct module *owner;
@@ -105036,7 +104208,7 @@ index 36a6525..289cd95 100644
/* Function to register/unregister hook points. */
int nf_register_net_hook(struct net *net, const struct nf_hook_ops *ops);
diff --git a/include/linux/netfilter/nfnetlink.h b/include/linux/netfilter/nfnetlink.h
-index e955d47..04a5338 100644
+index 5646b24..707819e 100644
--- a/include/linux/netfilter/nfnetlink.h
+++ b/include/linux/netfilter/nfnetlink.h
@@ -19,7 +19,7 @@ struct nfnl_callback {
@@ -105207,10 +104379,10 @@ index caebf2a..4c3ae9d 100644
/*
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
-index 092a0e8..36988f4 100644
+index f9828a4..d5a70ba 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
-@@ -384,8 +384,8 @@ struct perf_event {
+@@ -470,8 +470,8 @@ struct perf_event {
enum perf_event_active_state state;
unsigned int attach_state;
@@ -105221,7 +104393,7 @@ index 092a0e8..36988f4 100644
/*
* These are the total time in nanoseconds that the event
-@@ -436,8 +436,8 @@ struct perf_event {
+@@ -522,8 +522,8 @@ struct perf_event {
* These accumulate total time (in nanoseconds) that children
* events have been enabled and running, respectively.
*/
@@ -105232,7 +104404,7 @@ index 092a0e8..36988f4 100644
/*
* Protect attach/detach and child_list:
-@@ -862,7 +862,7 @@ static inline void perf_event_task_sched_out(struct task_struct *prev,
+@@ -950,7 +950,7 @@ static inline void perf_event_task_sched_out(struct task_struct *prev,
static inline u64 __perf_event_count(struct perf_event *event)
{
@@ -105241,7 +104413,7 @@ index 092a0e8..36988f4 100644
}
extern void perf_event_mmap(struct vm_area_struct *vma);
-@@ -886,7 +886,7 @@ static inline void perf_callchain_store(struct perf_callchain_entry *entry, u64
+@@ -974,7 +974,7 @@ static inline void perf_callchain_store(struct perf_callchain_entry *entry, u64
entry->ip[entry->nr++] = ip;
}
@@ -105250,7 +104422,7 @@ index 092a0e8..36988f4 100644
extern int sysctl_perf_event_mlock;
extern int sysctl_perf_event_sample_rate;
extern int sysctl_perf_cpu_time_max_percent;
-@@ -901,19 +901,24 @@ extern int perf_cpu_time_max_percent_handler(struct ctl_table *table, int write,
+@@ -989,19 +989,24 @@ extern int perf_cpu_time_max_percent_handler(struct ctl_table *table, int write,
loff_t *ppos);
@@ -105278,7 +104450,7 @@ index 092a0e8..36988f4 100644
}
extern void perf_event_init(void);
-@@ -1076,7 +1081,7 @@ struct perf_pmu_events_attr {
+@@ -1164,7 +1169,7 @@ struct perf_pmu_events_attr {
struct device_attribute attr;
u64 id;
const char *event_str;
@@ -105342,7 +104514,7 @@ index eb8b8ac..deb6089 100644
diff --git a/include/linux/pm.h b/include/linux/pm.h
-index 35d599e..c604209 100644
+index 528be67..4643a08 100644
--- a/include/linux/pm.h
+++ b/include/linux/pm.h
@@ -630,6 +630,7 @@ struct dev_pm_domain {
@@ -105354,23 +104526,18 @@ index 35d599e..c604209 100644
/*
* The PM_EVENT_ messages are also used by drivers implementing the legacy
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
-index b1cf7e7..ab02191 100644
+index ba4ced3..7ce2a56 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
-@@ -36,11 +36,11 @@ struct gpd_dev_ops {
+@@ -35,7 +35,7 @@ struct gpd_dev_ops {
int (*save_state)(struct device *dev);
int (*restore_state)(struct device *dev);
bool (*active_wakeup)(struct device *dev);
-};
+} __no_const;
- struct gpd_cpuidle_data {
- unsigned int saved_exit_latency;
-- struct cpuidle_state *idle_state;
-+ cpuidle_state_no_const *idle_state;
- };
-
struct generic_pm_domain {
+ struct dev_pm_domain domain; /* PM domain operations */
diff --git a/include/linux/pm_runtime.h b/include/linux/pm_runtime.h
index 3bdbb41..2a6f56c 100644
--- a/include/linux/pm_runtime.h
@@ -105398,7 +104565,7 @@ index 5df733b..d55f252 100644
/* config parameters */
#define PNP_CONFIG_NORMAL 0x0001
diff --git a/include/linux/poison.h b/include/linux/poison.h
-index 317e16d..c5701ff 100644
+index 317e16d..ec214cb 100644
--- a/include/linux/poison.h
+++ b/include/linux/poison.h
@@ -19,15 +19,15 @@
@@ -105407,8 +104574,8 @@ index 317e16d..c5701ff 100644
*/
-#define LIST_POISON1 ((void *) 0x100 + POISON_POINTER_DELTA)
-#define LIST_POISON2 ((void *) 0x200 + POISON_POINTER_DELTA)
-+#define LIST_POISON1 ((void *) (long)0xFFFFFF01)
-+#define LIST_POISON2 ((void *) (long)0xFFFFFF02)
++#define LIST_POISON1 ((void *) (long)0xFFFFFF02)
++#define LIST_POISON2 ((void *) (long)0xFFFFFF04)
/********** include/linux/timer.h **********/
/*
@@ -105447,10 +104614,10 @@ index 4ea1d37..80f4b33 100644
/*
* The return value from decompress routine is the length of the
diff --git a/include/linux/preempt.h b/include/linux/preempt.h
-index bea8dd8..534a23d 100644
+index 75e4e30..fcfde15 100644
--- a/include/linux/preempt.h
+++ b/include/linux/preempt.h
-@@ -140,11 +140,16 @@ extern void preempt_count_sub(int val);
+@@ -134,11 +134,16 @@ extern void preempt_count_sub(int val);
#define preempt_count_dec_and_test() __preempt_count_dec_and_test()
#endif
@@ -105465,9 +104632,9 @@ index bea8dd8..534a23d 100644
#define preempt_count_dec() preempt_count_sub(1)
+#define raw_preempt_count_dec() raw_preempt_count_sub(1)
- #define preempt_active_enter() \
- do { \
-@@ -166,6 +171,12 @@ do { \
+ #ifdef CONFIG_PREEMPT_COUNT
+
+@@ -148,6 +153,12 @@ do { \
barrier(); \
} while (0)
@@ -105480,7 +104647,7 @@ index bea8dd8..534a23d 100644
#define sched_preempt_enable_no_resched() \
do { \
barrier(); \
-@@ -174,6 +185,12 @@ do { \
+@@ -156,6 +167,12 @@ do { \
#define preempt_enable_no_resched() sched_preempt_enable_no_resched()
@@ -105493,7 +104660,7 @@ index bea8dd8..534a23d 100644
#define preemptible() (preempt_count() == 0 && !irqs_disabled())
#ifdef CONFIG_PREEMPT
-@@ -234,8 +251,10 @@ do { \
+@@ -216,8 +233,10 @@ do { \
* region.
*/
#define preempt_disable() barrier()
@@ -105504,7 +104671,7 @@ index bea8dd8..534a23d 100644
#define preempt_enable() barrier()
#define preempt_check_resched() do { } while (0)
-@@ -250,11 +269,13 @@ do { \
+@@ -232,11 +251,13 @@ do { \
/*
* Modules have no business playing preemption tricks.
*/
@@ -105610,10 +104777,10 @@ index 42dfc61..8113a99 100644
extern const struct proc_ns_operations netns_operations;
extern const struct proc_ns_operations utsns_operations;
diff --git a/include/linux/psci.h b/include/linux/psci.h
-index a682fcc..3b82c8e 100644
+index 12c4865..2cd7c41 100644
--- a/include/linux/psci.h
+++ b/include/linux/psci.h
-@@ -30,7 +30,7 @@ struct psci_operations {
+@@ -32,7 +32,7 @@ struct psci_operations {
int (*affinity_info)(unsigned long target_affinity,
unsigned long lowest_affinity_level);
int (*migrate_info_type)(void);
@@ -105670,11 +104837,57 @@ index b2505ac..5f7ab55 100644
extern qid_t from_kqid_munged(struct user_namespace *to, struct kqid qid);
extern bool qid_valid(struct kqid qid);
+diff --git a/include/linux/radix-tree.h b/include/linux/radix-tree.h
+index 33170db..5d5174b 100644
+--- a/include/linux/radix-tree.h
++++ b/include/linux/radix-tree.h
+@@ -370,12 +370,28 @@ void **radix_tree_next_chunk(struct radix_tree_root *root,
+ struct radix_tree_iter *iter, unsigned flags);
+
+ /**
++ * radix_tree_iter_retry - retry this chunk of the iteration
++ * @iter: iterator state
++ *
++ * If we iterate over a tree protected only by the RCU lock, a race
++ * against deletion or creation may result in seeing a slot for which
++ * radix_tree_deref_retry() returns true. If so, call this function
++ * and continue the iteration.
++ */
++static inline __must_check
++void **radix_tree_iter_retry(struct radix_tree_iter *iter)
++{
++ iter->next_index = iter->index;
++ return NULL;
++}
++
++/**
+ * radix_tree_chunk_size - get current chunk size
+ *
+ * @iter: pointer to radix tree iterator
+ * Returns: current chunk size
+ */
+-static __always_inline unsigned
++static __always_inline long
+ radix_tree_chunk_size(struct radix_tree_iter *iter)
+ {
+ return iter->next_index - iter->index;
+@@ -409,9 +425,9 @@ radix_tree_next_slot(void **slot, struct radix_tree_iter *iter, unsigned flags)
+ return slot + offset + 1;
+ }
+ } else {
+- unsigned size = radix_tree_chunk_size(iter) - 1;
++ long size = radix_tree_chunk_size(iter);
+
+- while (size--) {
++ while (--size > 0) {
+ slot++;
+ iter->index++;
+ if (likely(*slot))
diff --git a/include/linux/random.h b/include/linux/random.h
-index e651874..a872186 100644
+index a75840c..e7c4305 100644
--- a/include/linux/random.h
+++ b/include/linux/random.h
-@@ -16,9 +16,19 @@ struct random_ready_callback {
+@@ -18,9 +18,19 @@ struct random_ready_callback {
};
extern void add_device_randomness(const void *, unsigned int);
@@ -105696,9 +104909,9 @@ index e651874..a872186 100644
extern void get_random_bytes(void *buf, int nbytes);
extern int add_random_ready_callback(struct random_ready_callback *rdy);
-@@ -46,6 +56,11 @@ struct rnd_state {
- u32 prandom_u32_state(struct rnd_state *state);
- void prandom_bytes_state(struct rnd_state *state, void *buf, size_t nbytes);
+@@ -52,6 +62,11 @@ void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
+ #define prandom_init_once(pcpu_state) \
+ DO_ONCE(prandom_seed_full_state, (pcpu_state))
+static inline unsigned long __intentional_overflow(-1) pax_get_random_long(void)
+{
@@ -105708,7 +104921,7 @@ index e651874..a872186 100644
/**
* prandom_u32_max - returns a pseudo-random number in interval [0, ep_ro)
* @ep_ro: right open interval endpoint
-@@ -58,7 +73,7 @@ void prandom_bytes_state(struct rnd_state *state, void *buf, size_t nbytes);
+@@ -64,7 +79,7 @@ void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
*
* Returns: pseudo-random number in interval [0, ep_ro)
*/
@@ -105733,7 +104946,7 @@ index 14d7b83..a1edf56 100644
diff --git a/include/linux/rculist.h b/include/linux/rculist.h
-index 17c6b1f..a65e3f8 100644
+index 5ed5409..92c9f6a 100644
--- a/include/linux/rculist.h
+++ b/include/linux/rculist.h
@@ -59,6 +59,9 @@ void __list_add_rcu(struct list_head *new,
@@ -105781,10 +104994,10 @@ index 17c6b1f..a65e3f8 100644
* hlist_del_init_rcu - deletes entry from hash list with re-initialization
* @n: the element to delete from the hash list.
diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
-index 581abf8..31c120e 100644
+index a0189ba..7e34269 100644
--- a/include/linux/rcupdate.h
+++ b/include/linux/rcupdate.h
-@@ -851,6 +851,7 @@ static inline void rcu_preempt_sleep_check(void)
+@@ -854,6 +854,7 @@ static inline void rcu_preempt_sleep_check(void)
* read-side critical sections may be preempted and they may also block, but
* only when acquiring spinlocks that are subject to priority inheritance.
*/
@@ -105792,7 +105005,7 @@ index 581abf8..31c120e 100644
static inline void rcu_read_lock(void)
{
__rcu_read_lock();
-@@ -905,6 +906,7 @@ static inline void rcu_read_lock(void)
+@@ -908,6 +909,7 @@ static inline void rcu_read_lock(void)
*
* See rcu_read_lock() for more information.
*/
@@ -105800,7 +105013,7 @@ index 581abf8..31c120e 100644
static inline void rcu_read_unlock(void)
{
RCU_LOCKDEP_WARN(!rcu_is_watching(),
-@@ -931,6 +933,7 @@ static inline void rcu_read_unlock(void)
+@@ -934,6 +936,7 @@ static inline void rcu_read_unlock(void)
* rcu_read_unlock_bh() from one task if the matching rcu_read_lock_bh()
* was invoked from some other task.
*/
@@ -105808,7 +105021,7 @@ index 581abf8..31c120e 100644
static inline void rcu_read_lock_bh(void)
{
local_bh_disable();
-@@ -945,6 +948,7 @@ static inline void rcu_read_lock_bh(void)
+@@ -948,6 +951,7 @@ static inline void rcu_read_lock_bh(void)
*
* See rcu_read_lock_bh() for more information.
*/
@@ -105816,7 +105029,7 @@ index 581abf8..31c120e 100644
static inline void rcu_read_unlock_bh(void)
{
RCU_LOCKDEP_WARN(!rcu_is_watching(),
-@@ -967,6 +971,7 @@ static inline void rcu_read_unlock_bh(void)
+@@ -970,6 +974,7 @@ static inline void rcu_read_unlock_bh(void)
* rcu_read_unlock_sched() from process context if the matching
* rcu_read_lock_sched() was invoked from an NMI handler.
*/
@@ -105824,7 +105037,7 @@ index 581abf8..31c120e 100644
static inline void rcu_read_lock_sched(void)
{
preempt_disable();
-@@ -977,6 +982,7 @@ static inline void rcu_read_lock_sched(void)
+@@ -980,6 +985,7 @@ static inline void rcu_read_lock_sched(void)
}
/* Used by lockdep and tracing: cannot be traced, cannot call lockdep. */
@@ -105832,7 +105045,7 @@ index 581abf8..31c120e 100644
static inline notrace void rcu_read_lock_sched_notrace(void)
{
preempt_disable_notrace();
-@@ -988,6 +994,7 @@ static inline notrace void rcu_read_lock_sched_notrace(void)
+@@ -991,6 +997,7 @@ static inline notrace void rcu_read_lock_sched_notrace(void)
*
* See rcu_read_lock_sched for more information.
*/
@@ -105840,7 +105053,7 @@ index 581abf8..31c120e 100644
static inline void rcu_read_unlock_sched(void)
{
RCU_LOCKDEP_WARN(!rcu_is_watching(),
-@@ -998,6 +1005,7 @@ static inline void rcu_read_unlock_sched(void)
+@@ -1001,6 +1008,7 @@ static inline void rcu_read_unlock_sched(void)
}
/* Used by lockdep and tracing: cannot be traced, cannot call lockdep. */
@@ -105975,7 +105188,7 @@ index 556ec1e..38c19c9 100644
/*
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index f477e87..f1e65cf 100644
+index 21a6e96..25820d8 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -7,7 +7,7 @@
@@ -105995,7 +105208,7 @@ index f477e87..f1e65cf 100644
#define VMACACHE_BITS 2
#define VMACACHE_SIZE (1U << VMACACHE_BITS)
-@@ -436,6 +437,19 @@ struct nsproxy;
+@@ -437,6 +438,19 @@ struct nsproxy;
struct user_namespace;
#ifdef CONFIG_MMU
@@ -106015,7 +105228,7 @@ index f477e87..f1e65cf 100644
extern void arch_pick_mmap_layout(struct mm_struct *mm);
extern unsigned long
arch_get_unmapped_area(struct file *, unsigned long, unsigned long,
-@@ -757,6 +771,17 @@ struct signal_struct {
+@@ -769,6 +783,17 @@ struct signal_struct {
#ifdef CONFIG_TASKSTATS
struct taskstats *stats;
#endif
@@ -106065,7 +105278,7 @@ index f477e87..f1e65cf 100644
struct hlist_node uidhash_node;
kuid_t uid;
@@ -844,7 +878,7 @@ struct user_struct {
- #ifdef CONFIG_PERF_EVENTS
+ #if defined(CONFIG_PERF_EVENTS) || defined(CONFIG_BPF_SYSCALL)
atomic_long_t locked_vm;
#endif
-};
@@ -106083,7 +105296,7 @@ index f477e87..f1e65cf 100644
atomic_t usage;
unsigned int flags; /* per process flags, defined below */
unsigned int ptrace;
-@@ -1511,8 +1548,8 @@ struct task_struct {
+@@ -1514,8 +1551,8 @@ struct task_struct {
struct list_head thread_node;
struct completion *vfork_done; /* for vfork() */
@@ -106094,7 +105307,7 @@ index f477e87..f1e65cf 100644
cputime_t utime, stime, utimescaled, stimescaled;
cputime_t gtime;
-@@ -1535,11 +1572,6 @@ struct task_struct {
+@@ -1538,11 +1575,6 @@ struct task_struct {
struct task_cputime cputime_expires;
struct list_head cpu_timers[3];
@@ -106106,7 +105319,7 @@ index f477e87..f1e65cf 100644
char comm[TASK_COMM_LEN]; /* executable name excluding path
- access with [gs]et_task_comm (which lock
it with task_lock())
-@@ -1555,6 +1587,8 @@ struct task_struct {
+@@ -1558,6 +1590,8 @@ struct task_struct {
/* hung task detection */
unsigned long last_switch_count;
#endif
@@ -106115,7 +105328,7 @@ index f477e87..f1e65cf 100644
/* filesystem information */
struct fs_struct *fs;
/* open file information */
-@@ -1631,6 +1665,10 @@ struct task_struct {
+@@ -1632,6 +1666,10 @@ struct task_struct {
gfp_t lockdep_reclaim_gfp;
#endif
@@ -106126,7 +105339,7 @@ index f477e87..f1e65cf 100644
/* journalling filesystem info */
void *journal_info;
-@@ -1669,6 +1707,10 @@ struct task_struct {
+@@ -1670,6 +1708,10 @@ struct task_struct {
/* cg_list protected by css_set_lock and tsk->alloc_lock */
struct list_head cg_list;
#endif
@@ -106137,7 +105350,7 @@ index f477e87..f1e65cf 100644
#ifdef CONFIG_FUTEX
struct robust_list_head __user *robust_list;
#ifdef CONFIG_COMPAT
-@@ -1784,7 +1826,7 @@ struct task_struct {
+@@ -1785,7 +1827,7 @@ struct task_struct {
* Number of functions that haven't been traced
* because of depth overrun.
*/
@@ -106146,7 +105359,7 @@ index f477e87..f1e65cf 100644
/* Pause for the tracing */
atomic_t tracing_graph_pause;
#endif
-@@ -1813,22 +1855,89 @@ struct task_struct {
+@@ -1814,22 +1856,89 @@ struct task_struct {
unsigned long task_state_change;
#endif
int pagefault_disabled;
@@ -106246,7 +105459,7 @@ index f477e87..f1e65cf 100644
/* Future-safe accessor for struct task_struct's cpus_allowed. */
#define tsk_cpus_allowed(tsk) (&(tsk)->cpus_allowed)
-@@ -1910,7 +2019,7 @@ struct pid_namespace;
+@@ -1911,7 +2020,7 @@ struct pid_namespace;
pid_t __task_pid_nr_ns(struct task_struct *task, enum pid_type type,
struct pid_namespace *ns);
@@ -106255,7 +105468,7 @@ index f477e87..f1e65cf 100644
{
return tsk->pid;
}
-@@ -2271,6 +2380,25 @@ extern u64 sched_clock_cpu(int cpu);
+@@ -2273,6 +2382,25 @@ extern u64 sched_clock_cpu(int cpu);
extern void sched_clock_init(void);
@@ -106281,7 +105494,7 @@ index f477e87..f1e65cf 100644
#ifndef CONFIG_HAVE_UNSTABLE_SCHED_CLOCK
static inline void sched_clock_tick(void)
{
-@@ -2399,7 +2527,9 @@ extern void set_curr_task(int cpu, struct task_struct *p);
+@@ -2401,7 +2529,9 @@ extern void set_curr_task(int cpu, struct task_struct *p);
void yield(void);
union thread_union {
@@ -106291,7 +105504,7 @@ index f477e87..f1e65cf 100644
unsigned long stack[THREAD_SIZE/sizeof(long)];
};
-@@ -2432,6 +2562,7 @@ extern struct pid_namespace init_pid_ns;
+@@ -2434,6 +2564,7 @@ extern struct pid_namespace init_pid_ns;
*/
extern struct task_struct *find_task_by_vpid(pid_t nr);
@@ -106299,16 +105512,16 @@ index f477e87..f1e65cf 100644
extern struct task_struct *find_task_by_pid_ns(pid_t nr,
struct pid_namespace *ns);
-@@ -2463,7 +2594,7 @@ extern void proc_caches_init(void);
+@@ -2465,7 +2596,7 @@ extern void proc_caches_init(void);
extern void flush_signals(struct task_struct *);
extern void ignore_signals(struct task_struct *);
extern void flush_signal_handlers(struct task_struct *, int force_default);
-extern int dequeue_signal(struct task_struct *tsk, sigset_t *mask, siginfo_t *info);
+extern int dequeue_signal(struct task_struct *tsk, sigset_t *mask, siginfo_t *info) __must_hold(&tsk->sighand->siglock);
- static inline int dequeue_signal_lock(struct task_struct *tsk, sigset_t *mask, siginfo_t *info)
+ static inline int kernel_dequeue_signal(siginfo_t *info)
{
-@@ -2609,7 +2740,7 @@ extern void __cleanup_sighand(struct sighand_struct *);
+@@ -2619,7 +2750,7 @@ extern void __cleanup_sighand(struct sighand_struct *);
extern void exit_itimers(struct signal_struct *);
extern void flush_itimer_signals(void);
@@ -106317,7 +105530,7 @@ index f477e87..f1e65cf 100644
extern int do_execve(struct filename *,
const char __user * const __user *,
-@@ -2724,11 +2855,13 @@ static inline int thread_group_empty(struct task_struct *p)
+@@ -2734,11 +2865,13 @@ static inline int thread_group_empty(struct task_struct *p)
* It must not be nested with write_lock_irq(&tasklist_lock),
* neither inside nor outside.
*/
@@ -106331,7 +105544,7 @@ index f477e87..f1e65cf 100644
static inline void task_unlock(struct task_struct *p)
{
spin_unlock(&p->alloc_lock);
-@@ -2814,9 +2947,9 @@ static inline unsigned long *end_of_stack(struct task_struct *p)
+@@ -2824,9 +2957,9 @@ static inline unsigned long *end_of_stack(struct task_struct *p)
#define task_stack_end_corrupted(task) \
(*(end_of_stack(task)) != STACK_END_MAGIC)
@@ -106355,6 +105568,19 @@ index c9e4731..c716293 100644
extern unsigned int sysctl_sched_latency;
extern unsigned int sysctl_sched_min_granularity;
+diff --git a/include/linux/scif.h b/include/linux/scif.h
+index 49a35d6..c6209dd 100644
+--- a/include/linux/scif.h
++++ b/include/linux/scif.h
+@@ -156,7 +156,7 @@ struct scif_client {
+ void (*probe)(struct scif_peer_dev *spdev);
+ void (*remove)(struct scif_peer_dev *spdev);
+ struct subsys_interface si;
+-};
++} __do_const;
+
+ #define SCIF_OPEN_FAILED ((scif_epd_t)-1)
+ #define SCIF_REGISTER_FAILED ((off_t)-1)
diff --git a/include/linux/security.h b/include/linux/security.h
index 2f4c1f7..5bc05d7 100644
--- a/include/linux/security.h
@@ -106541,10 +105767,10 @@ index 50777b5..92d112a 100644
struct list_head swaplist; /* chain of maybes on swap */
struct simple_xattrs xattrs; /* list of xattrs */
diff --git a/include/linux/signal.h b/include/linux/signal.h
-index ab1e039..ad4229e 100644
+index 92557bb..53fa513 100644
--- a/include/linux/signal.h
+++ b/include/linux/signal.h
-@@ -289,7 +289,7 @@ static inline void allow_signal(int sig)
+@@ -288,7 +288,7 @@ static inline void allow_signal(int sig)
* know it'll be handled, so that they don't get converted to
* SIGKILL or just silently dropped.
*/
@@ -106554,10 +105780,10 @@ index ab1e039..ad4229e 100644
static inline void disallow_signal(int sig)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
-index 23ce309..861c28f 100644
+index 9147f9f..ad74b50 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -799,7 +799,7 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t priority, int flags,
+@@ -808,7 +808,7 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t priority, int flags,
int node);
struct sk_buff *__build_skb(void *data, unsigned int frag_size);
struct sk_buff *build_skb(void *data, unsigned int frag_size);
@@ -106566,7 +105792,7 @@ index 23ce309..861c28f 100644
gfp_t priority)
{
return __alloc_skb(size, priority, 0, NUMA_NO_NODE);
-@@ -2070,7 +2070,7 @@ static inline int skb_checksum_start_offset(const struct sk_buff *skb)
+@@ -2079,7 +2079,7 @@ static inline int skb_checksum_start_offset(const struct sk_buff *skb)
return skb->csum_start - skb_headroom(skb);
}
@@ -106575,7 +105801,7 @@ index 23ce309..861c28f 100644
{
return skb_transport_header(skb) - skb->data;
}
-@@ -2085,7 +2085,7 @@ static inline u32 skb_inner_network_header_len(const struct sk_buff *skb)
+@@ -2094,7 +2094,7 @@ static inline u32 skb_inner_network_header_len(const struct sk_buff *skb)
return skb->inner_transport_header - skb->inner_network_header;
}
@@ -106584,7 +105810,7 @@ index 23ce309..861c28f 100644
{
return skb_network_header(skb) - skb->data;
}
-@@ -2145,7 +2145,7 @@ static inline int pskb_network_may_pull(struct sk_buff *skb, unsigned int len)
+@@ -2154,7 +2154,7 @@ static inline int pskb_network_may_pull(struct sk_buff *skb, unsigned int len)
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD
@@ -106593,7 +105819,7 @@ index 23ce309..861c28f 100644
#endif
int ___pskb_trim(struct sk_buff *skb, unsigned int len);
-@@ -2785,9 +2785,9 @@ struct sk_buff *skb_recv_datagram(struct sock *sk, unsigned flags, int noblock,
+@@ -2794,9 +2794,9 @@ struct sk_buff *skb_recv_datagram(struct sock *sk, unsigned flags, int noblock,
int *err);
unsigned int datagram_poll(struct file *file, struct socket *sock,
struct poll_table_struct *wait);
@@ -106605,7 +105831,7 @@ index 23ce309..861c28f 100644
struct msghdr *msg, int size)
{
return skb_copy_datagram_iter(from, offset, &msg->msg_iter, size);
-@@ -3316,6 +3316,9 @@ static inline void nf_reset(struct sk_buff *skb)
+@@ -3325,6 +3325,9 @@ static inline void nf_reset(struct sk_buff *skb)
nf_bridge_put(skb->nf_bridge);
skb->nf_bridge = NULL;
#endif
@@ -106616,7 +105842,7 @@ index 23ce309..861c28f 100644
static inline void nf_reset_trace(struct sk_buff *skb)
diff --git a/include/linux/slab.h b/include/linux/slab.h
-index 7e37d44..a57df5e 100644
+index 2037a86..58fd323 100644
--- a/include/linux/slab.h
+++ b/include/linux/slab.h
@@ -15,14 +15,29 @@
@@ -106675,7 +105901,7 @@ index 7e37d44..a57df5e 100644
/*
* Some archs want to perform DMA into kmalloc caches and need a guaranteed
-@@ -235,6 +255,10 @@ extern struct kmem_cache *kmalloc_caches[KMALLOC_SHIFT_HIGH + 1];
+@@ -253,6 +273,10 @@ extern struct kmem_cache *kmalloc_caches[KMALLOC_SHIFT_HIGH + 1];
extern struct kmem_cache *kmalloc_dma_caches[KMALLOC_SHIFT_HIGH + 1];
#endif
@@ -106686,7 +105912,7 @@ index 7e37d44..a57df5e 100644
/*
* Figure out which kmalloc slab an allocation of a certain size
* belongs to.
-@@ -243,7 +267,7 @@ extern struct kmem_cache *kmalloc_dma_caches[KMALLOC_SHIFT_HIGH + 1];
+@@ -261,7 +285,7 @@ extern struct kmem_cache *kmalloc_dma_caches[KMALLOC_SHIFT_HIGH + 1];
* 2 = 129 .. 192 bytes
* n = 2^(n-1)+1 .. 2^n
*/
@@ -106695,25 +105921,25 @@ index 7e37d44..a57df5e 100644
{
if (!size)
return 0;
-@@ -286,7 +310,7 @@ static __always_inline int kmalloc_index(size_t size)
+@@ -304,7 +328,7 @@ static __always_inline int kmalloc_index(size_t size)
}
#endif /* !CONFIG_SLOB */
--void *__kmalloc(size_t size, gfp_t flags);
-+void *__kmalloc(size_t size, gfp_t flags) __alloc_size(1) __size_overflow(1);
- void *kmem_cache_alloc(struct kmem_cache *, gfp_t flags);
+-void *__kmalloc(size_t size, gfp_t flags) __assume_kmalloc_alignment;
++void *__kmalloc(size_t size, gfp_t flags) __assume_kmalloc_alignment __alloc_size(1) __size_overflow(1);
+ void *kmem_cache_alloc(struct kmem_cache *, gfp_t flags) __assume_slab_alignment;
void kmem_cache_free(struct kmem_cache *, void *);
-@@ -301,10 +325,10 @@ void kmem_cache_free_bulk(struct kmem_cache *, size_t, void **);
- bool kmem_cache_alloc_bulk(struct kmem_cache *, gfp_t, size_t, void **);
+@@ -319,10 +343,10 @@ void kmem_cache_free_bulk(struct kmem_cache *, size_t, void **);
+ int kmem_cache_alloc_bulk(struct kmem_cache *, gfp_t, size_t, void **);
#ifdef CONFIG_NUMA
--void *__kmalloc_node(size_t size, gfp_t flags, int node);
-+void *__kmalloc_node(size_t size, gfp_t flags, int node) __alloc_size(1) __size_overflow(1);
- void *kmem_cache_alloc_node(struct kmem_cache *, gfp_t flags, int node);
+-void *__kmalloc_node(size_t size, gfp_t flags, int node) __assume_kmalloc_alignment;
++void *__kmalloc_node(size_t size, gfp_t flags, int node) __assume_kmalloc_alignment __alloc_size(1) __size_overflow(1);
+ void *kmem_cache_alloc_node(struct kmem_cache *, gfp_t flags, int node) __assume_slab_alignment;
#else
-static __always_inline void *__kmalloc_node(size_t size, gfp_t flags, int node)
-+static __always_inline void * __size_overflow(1) __kmalloc_node(size_t size, gfp_t flags, int node)
++static __always_inline void * __alloc_size(1) __size_overflow(1) __kmalloc_node(size_t size, gfp_t flags, int node)
{
return __kmalloc(size, flags);
}
@@ -106885,7 +106111,7 @@ index 47dd0ce..3275f16 100644
{
raw_spin_unlock_irqrestore(&lock->rlock, flags);
diff --git a/include/linux/srcu.h b/include/linux/srcu.h
-index bdeb456..6412bb0 100644
+index f5f80c5..d4e916a 100644
--- a/include/linux/srcu.h
+++ b/include/linux/srcu.h
@@ -213,7 +213,8 @@ static inline int srcu_read_lock_held(struct srcu_struct *sp)
@@ -106896,9 +106122,9 @@ index bdeb456..6412bb0 100644
+static inline int srcu_read_lock(struct srcu_struct *sp) __acquires(sp);
+static inline int srcu_read_lock(struct srcu_struct *sp)
{
- int retval = __srcu_read_lock(sp);
+ int retval;
-@@ -228,8 +229,8 @@ static inline int srcu_read_lock(struct srcu_struct *sp) __acquires(sp)
+@@ -231,8 +232,8 @@ static inline int srcu_read_lock(struct srcu_struct *sp) __acquires(sp)
*
* Exit an SRCU read-side critical section.
*/
@@ -106969,7 +106195,7 @@ index cc0fc71..b70c6b1 100644
/*
* Mode for mapping cpus to pools.
diff --git a/include/linux/sunrpc/svc_rdma.h b/include/linux/sunrpc/svc_rdma.h
-index 7ccc961..78746ba 100644
+index f869807..6ab4834 100644
--- a/include/linux/sunrpc/svc_rdma.h
+++ b/include/linux/sunrpc/svc_rdma.h
@@ -53,15 +53,15 @@ extern unsigned int svcrdma_ord;
@@ -107065,7 +106291,7 @@ index e7a018e..49f8b17 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 42c36bb..ac90c15 100644
+index c2b66a2..888e225 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -102,7 +102,12 @@ union bpf_attr;
@@ -107174,7 +106400,7 @@ index fa7bc29..0d96561 100644
struct ctl_node {
struct rb_node node;
diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
-index 9f65758..487a6f1 100644
+index c6f0f0d..a34ab2d 100644
--- a/include/linux/sysfs.h
+++ b/include/linux/sysfs.h
@@ -34,7 +34,8 @@ struct attribute {
@@ -107187,8 +106413,8 @@ index 9f65758..487a6f1 100644
/**
* sysfs_attr_init - initialize a dynamically allocated sysfs attribute
-@@ -78,7 +79,8 @@ struct attribute_group {
- struct attribute *, int);
+@@ -88,7 +89,8 @@ struct attribute_group {
+ struct bin_attribute *, int);
struct attribute **attrs;
struct bin_attribute **bin_attrs;
-};
@@ -107197,7 +106423,7 @@ index 9f65758..487a6f1 100644
/**
* Use these macros to make defining attributes easier. See include/linux/device.h
-@@ -152,7 +154,8 @@ struct bin_attribute {
+@@ -162,7 +164,8 @@ struct bin_attribute {
char *, loff_t, size_t);
int (*mmap)(struct file *, struct kobject *, struct bin_attribute *attr,
struct vm_area_struct *vma);
@@ -107229,7 +106455,7 @@ index 387fa7d..3fcde6b 100644
#ifdef CONFIG_MAGIC_SYSRQ
diff --git a/include/linux/tcp.h b/include/linux/tcp.h
-index 48c3696..e7a7ba6 100644
+index b386361..cc87028 100644
--- a/include/linux/tcp.h
+++ b/include/linux/tcp.h
@@ -63,13 +63,13 @@ struct tcp_fastopen_cookie {
@@ -107250,7 +106476,7 @@ index 48c3696..e7a7ba6 100644
};
/*These are used to set the sack_ok field in struct tcp_options_received */
-@@ -153,7 +153,7 @@ struct tcp_sock {
+@@ -154,7 +154,7 @@ struct tcp_sock {
* total number of segments in.
*/
u32 rcv_nxt; /* What we want to receive next */
@@ -107259,7 +106485,7 @@ index 48c3696..e7a7ba6 100644
u32 rcv_wup; /* rcv_nxt on last window update sent */
u32 snd_nxt; /* Next sequence we send */
u32 segs_out; /* RFC4898 tcpEStatsPerfSegsOut
-@@ -248,7 +248,7 @@ struct tcp_sock {
+@@ -258,7 +258,7 @@ struct tcp_sock {
u32 prr_out; /* Total number of pkts sent during Recovery. */
u32 rcv_wnd; /* Current receiver window */
@@ -107268,7 +106494,7 @@ index 48c3696..e7a7ba6 100644
u32 notsent_lowat; /* TCP_NOTSENT_LOWAT */
u32 pushed_seq; /* Last pushed seq, required to talk to windows */
u32 lost_out; /* Lost packets */
-@@ -291,7 +291,7 @@ struct tcp_sock {
+@@ -299,7 +299,7 @@ struct tcp_sock {
int undo_retrans; /* number of undoable retransmissions. */
u32 total_retrans; /* Total retransmits for entire connection */
@@ -107296,7 +106522,7 @@ index ff307b5..f1a4468 100644
#endif /* _LINUX_THREAD_INFO_H */
diff --git a/include/linux/tty.h b/include/linux/tty.h
-index 9bddda0..c0459e6 100644
+index 6b6e811..616acad 100644
--- a/include/linux/tty.h
+++ b/include/linux/tty.h
@@ -225,7 +225,7 @@ struct tty_port {
@@ -107306,9 +106532,9 @@ index 9bddda0..c0459e6 100644
- int count; /* Usage count */
+ atomic_t count; /* Usage count */
wait_queue_head_t open_wait; /* Open waiters */
- wait_queue_head_t close_wait; /* Close waiters */
wait_queue_head_t delta_msr_wait; /* Modem status change */
-@@ -313,7 +313,7 @@ struct tty_struct {
+ unsigned long flags; /* TTY flags ASY_*/
+@@ -312,7 +312,7 @@ struct tty_struct {
/* If the tty has a pending do_SAK, queue it here - akpm */
struct work_struct SAK_work;
struct tty_port *port;
@@ -107317,7 +106543,7 @@ index 9bddda0..c0459e6 100644
/* Each of a tty's open files has private_data pointing to tty_file_private */
struct tty_file_private {
-@@ -573,7 +573,7 @@ extern int tty_port_open(struct tty_port *port,
+@@ -575,7 +575,7 @@ extern int tty_port_open(struct tty_port *port,
struct tty_struct *tty, struct file *filp);
static inline int tty_port_users(struct tty_port *port)
{
@@ -107362,7 +106588,7 @@ index 00c9d68..bc0188b 100644
struct tty_ldisc {
diff --git a/include/linux/types.h b/include/linux/types.h
-index 89f63da..66ab9c0 100644
+index 70dd3df..c61727f 100644
--- a/include/linux/types.h
+++ b/include/linux/types.h
@@ -176,10 +176,26 @@ typedef struct {
@@ -107393,24 +106619,17 @@ index 89f63da..66ab9c0 100644
struct list_head {
diff --git a/include/linux/uaccess.h b/include/linux/uaccess.h
-index d6f2c2c..dc72aff 100644
+index 558129a..0c26e08 100644
--- a/include/linux/uaccess.h
+++ b/include/linux/uaccess.h
-@@ -97,11 +97,11 @@ static inline unsigned long __copy_from_user_nocache(void *to,
- long ret; \
- mm_segment_t old_fs = get_fs(); \
- \
-- set_fs(KERNEL_DS); \
- pagefault_disable(); \
-- ret = __copy_from_user_inatomic(&(retval), (__force typeof(retval) __user *)(addr), sizeof(retval)); \
-- pagefault_enable(); \
-+ set_fs(KERNEL_DS); \
-+ ret = __copy_from_user_inatomic(&(retval), (typeof(retval) __force_user *)(addr), sizeof(retval)); \
- set_fs(old_fs); \
-+ pagefault_enable(); \
- ret; \
- })
+@@ -109,6 +109,6 @@ extern long strncpy_from_unsafe(char *dst, const void *unsafe_addr, long count);
+ * Returns 0 on success, or -EFAULT.
+ */
+ #define probe_kernel_address(addr, retval) \
+- probe_kernel_read(&retval, addr, sizeof(retval))
++ probe_kernel_read(&(retval), addr, sizeof(retval))
+ #endif /* __LINUX_UACCESS_H__ */
diff --git a/include/linux/uidgid.h b/include/linux/uidgid.h
index 0383552..a0125dd 100644
--- a/include/linux/uidgid.h
@@ -107490,10 +106709,10 @@ index 99c1b4d..562e6f3 100644
static inline void put_unaligned_le16(u16 val, void *p)
diff --git a/include/linux/usb.h b/include/linux/usb.h
-index 4aec211..0181378 100644
+index b79925d..67cf5d4 100644
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
-@@ -363,7 +363,7 @@ struct usb_bus {
+@@ -367,7 +367,7 @@ struct usb_bus {
* with the URB_SHORT_NOT_OK flag set.
*/
unsigned no_sg_constraint:1; /* no sg constraint */
@@ -107502,7 +106721,7 @@ index 4aec211..0181378 100644
int devnum_next; /* Next open device number in
* round-robin allocation */
-@@ -596,7 +596,7 @@ struct usb_device {
+@@ -600,7 +600,7 @@ struct usb_device {
int maxchild;
u32 quirks;
@@ -107511,7 +106730,7 @@ index 4aec211..0181378 100644
unsigned long active_duration;
-@@ -1789,10 +1789,10 @@ void usb_sg_wait(struct usb_sg_request *io);
+@@ -1793,10 +1793,10 @@ void usb_sg_wait(struct usb_sg_request *io);
/* NOTE: these are not the standard USB_ENDPOINT_XFER_* values!! */
/* (yet ... they're the values used by usbfs) */
@@ -107527,7 +106746,7 @@ index 4aec211..0181378 100644
#define usb_pipein(pipe) ((pipe) & USB_DIR_IN)
#define usb_pipeout(pipe) (!usb_pipein(pipe))
diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h
-index d2784c1..449a8d7 100644
+index f89c24b..843dfb8 100644
--- a/include/linux/usb/hcd.h
+++ b/include/linux/usb/hcd.h
@@ -23,6 +23,7 @@
@@ -107626,10 +106845,10 @@ index 6f8fbcf..4efc177 100644
+ MODULE_GRSEC MODULE_RANDSTRUCT_PLUGIN
diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h
-index b483abd..af305ad 100644
+index 69e1d4a1..566fa52 100644
--- a/include/linux/vga_switcheroo.h
+++ b/include/linux/vga_switcheroo.h
-@@ -63,9 +63,9 @@ int vga_switcheroo_get_client_state(struct pci_dev *dev);
+@@ -141,9 +141,9 @@ enum vga_switcheroo_state vga_switcheroo_get_client_state(struct pci_dev *dev);
void vga_switcheroo_set_dynamic_switch(struct pci_dev *pdev, enum vga_switcheroo_state dynamic);
@@ -107641,7 +106860,7 @@ index b483abd..af305ad 100644
#else
static inline void vga_switcheroo_unregister_client(struct pci_dev *dev) {}
-@@ -82,9 +82,9 @@ static inline int vga_switcheroo_get_client_state(struct pci_dev *dev) { return
+@@ -160,9 +160,9 @@ static inline enum vga_switcheroo_state vga_switcheroo_get_client_state(struct p
static inline void vga_switcheroo_set_dynamic_switch(struct pci_dev *pdev, enum vga_switcheroo_state dynamic) {}
@@ -107654,7 +106873,7 @@ index b483abd..af305ad 100644
#endif
#endif /* _LINUX_VGA_SWITCHEROO_H_ */
diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h
-index 0ec5983..66d8171 100644
+index 3bff87a..66d8171 100644
--- a/include/linux/vmalloc.h
+++ b/include/linux/vmalloc.h
@@ -18,6 +18,14 @@ struct vm_area_struct; /* vma defining user mapping in mm_types.h */
@@ -107700,31 +106919,8 @@ index 0ec5983..66d8171 100644
/*
* Internals. Dont't use..
-@@ -182,22 +195,10 @@ pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms)
- # endif
- #endif
-
--struct vmalloc_info {
-- unsigned long used;
-- unsigned long largest_chunk;
--};
--
- #ifdef CONFIG_MMU
- #define VMALLOC_TOTAL (VMALLOC_END - VMALLOC_START)
--extern void get_vmalloc_info(struct vmalloc_info *vmi);
- #else
--
- #define VMALLOC_TOTAL 0UL
--#define get_vmalloc_info(vmi) \
--do { \
-- (vmi)->used = 0; \
-- (vmi)->largest_chunk = 0; \
--} while (0)
- #endif
-
- #endif /* _LINUX_VMALLOC_H */
diff --git a/include/linux/vmstat.h b/include/linux/vmstat.h
-index 82e7db7..f8ce3d0 100644
+index 3e5d907..037e86c 100644
--- a/include/linux/vmstat.h
+++ b/include/linux/vmstat.h
@@ -108,18 +108,18 @@ static inline void vm_events_fold_cpu(int cpu)
@@ -107773,7 +106969,7 @@ index 82e7db7..f8ce3d0 100644
#ifdef CONFIG_SMP
int cpu;
-@@ -234,14 +234,14 @@ static inline void __mod_zone_page_state(struct zone *zone,
+@@ -212,14 +212,14 @@ static inline void __mod_zone_page_state(struct zone *zone,
static inline void __inc_zone_state(struct zone *zone, enum zone_stat_item item)
{
@@ -107808,19 +107004,19 @@ index b333c94..6b59f39 100644
spin_unlock(&inode->i_lock);
}
diff --git a/include/linux/xattr.h b/include/linux/xattr.h
-index 91b0a68..0e9adf6 100644
+index 89474b9..31b5dcb 100644
--- a/include/linux/xattr.h
+++ b/include/linux/xattr.h
-@@ -28,7 +28,7 @@ struct xattr_handler {
- size_t size, int handler_flags);
- int (*set)(struct dentry *dentry, const char *name, const void *buffer,
- size_t size, int flags, int handler_flags);
+@@ -30,7 +30,7 @@ struct xattr_handler {
+ int (*set)(const struct xattr_handler *, struct dentry *dentry,
+ const char *name, const void *buffer, size_t size,
+ int flags);
-};
+} __do_const;
- struct xattr {
- const char *name;
-@@ -37,6 +37,9 @@ struct xattr {
+ const char *xattr_full_name(const struct xattr_handler *, const char *);
+
+@@ -41,6 +41,9 @@ struct xattr {
};
ssize_t xattr_getsecurity(struct inode *, const char *, void *, size_t);
@@ -107891,9 +107087,20 @@ index 5122b5e..598b440 100644
void v9fs_register_trans(struct p9_trans_module *m);
void v9fs_unregister_trans(struct p9_trans_module *m);
diff --git a/include/net/af_unix.h b/include/net/af_unix.h
-index 2a91a05..127ac07 100644
+index 2a91a05..f3ff431 100644
--- a/include/net/af_unix.h
+++ b/include/net/af_unix.h
+@@ -6,8 +6,8 @@
+ #include <linux/mutex.h>
+ #include <net/sock.h>
+
+-void unix_inflight(struct file *fp);
+-void unix_notinflight(struct file *fp);
++void unix_inflight(struct user_struct *user, struct file *fp);
++void unix_notinflight(struct user_struct *user, struct file *fp);
+ void unix_gc(void);
+ void wait_for_unix_gc(void);
+ struct sock *unix_get_socket(struct file *filp);
@@ -36,7 +36,7 @@ struct unix_skb_parms {
u32 secid; /* Security ID */
#endif
@@ -107904,10 +107111,10 @@ index 2a91a05..127ac07 100644
#define UNIXCB(skb) (*(struct unix_skb_parms *)&((skb)->cb))
diff --git a/include/net/bluetooth/l2cap.h b/include/net/bluetooth/l2cap.h
-index c98afc0..a4ca3c7 100644
+index 5289929..b4c41b3 100644
--- a/include/net/bluetooth/l2cap.h
+++ b/include/net/bluetooth/l2cap.h
-@@ -611,7 +611,7 @@ struct l2cap_ops {
+@@ -613,7 +613,7 @@ struct l2cap_ops {
struct sk_buff *(*alloc_skb) (struct l2cap_chan *chan,
unsigned long hdr_len,
unsigned long len, int nb);
@@ -107954,10 +107161,10 @@ index f2ae33d..c457cf0 100644
/* Protects from simultaneous access to first_req list */
spinlock_t info_list_lock;
diff --git a/include/net/cfg802154.h b/include/net/cfg802154.h
-index 76b1ffa..d9f7571 100644
+index 171cd76..15666d6 100644
--- a/include/net/cfg802154.h
+++ b/include/net/cfg802154.h
-@@ -188,7 +188,7 @@ struct wpan_dev {
+@@ -341,7 +341,7 @@ struct wpan_dev {
/* MAC BSN field */
atomic_t bsn;
/* MAC DSN field */
@@ -107967,7 +107174,7 @@ index 76b1ffa..d9f7571 100644
u8 min_be;
u8 max_be;
diff --git a/include/net/flow.h b/include/net/flow.h
-index 9b85db8..e76e5c7 100644
+index 83969ee..ee0611d 100644
--- a/include/net/flow.h
+++ b/include/net/flow.h
@@ -243,7 +243,7 @@ void flow_cache_fini(struct net *net);
@@ -107980,7 +107187,7 @@ index 9b85db8..e76e5c7 100644
__u32 __get_hash_from_flowi6(const struct flowi6 *fl6, struct flow_keys *keys);
diff --git a/include/net/genetlink.h b/include/net/genetlink.h
-index a9af1cc..1f3fa7b 100644
+index 1b6b6dc..f6e691b 100644
--- a/include/net/genetlink.h
+++ b/include/net/genetlink.h
@@ -128,7 +128,7 @@ struct genl_ops {
@@ -108006,10 +107213,10 @@ index cf6c745..8a0cf00 100644
return;
}
diff --git a/include/net/inet_connection_sock.h b/include/net/inet_connection_sock.h
-index 0320bbb..938789c 100644
+index 481fe1c..3adeb9d 100644
--- a/include/net/inet_connection_sock.h
+++ b/include/net/inet_connection_sock.h
-@@ -63,7 +63,7 @@ struct inet_connection_sock_af_ops {
+@@ -65,7 +65,7 @@ struct inet_connection_sock_af_ops {
int (*bind_conflict)(const struct sock *sk,
const struct inet_bind_bucket *tb, bool relax);
void (*mtu_reduced)(struct sock *sk);
@@ -108019,7 +107226,7 @@ index 0320bbb..938789c 100644
/** inet_connection_sock - INET connection oriented sock
*
diff --git a/include/net/inet_sock.h b/include/net/inet_sock.h
-index 47eb67b..0e733b2 100644
+index 625bdf9..5fd982c 100644
--- a/include/net/inet_sock.h
+++ b/include/net/inet_sock.h
@@ -43,7 +43,7 @@
@@ -108045,11 +107252,11 @@ index 235c781..160d4a3 100644
struct rcu_head rcu;
struct inet_peer *gc_next;
diff --git a/include/net/ip.h b/include/net/ip.h
-index 9b9ca28..9ccd468 100644
+index 1a98f1c..2a44de6 100644
--- a/include/net/ip.h
+++ b/include/net/ip.h
-@@ -329,7 +329,7 @@ static inline unsigned int ip_skb_dst_mtu(const struct sk_buff *skb)
- }
+@@ -330,7 +330,7 @@ static inline unsigned int ip_skb_dst_mtu(const struct sk_buff *skb)
+ return min(skb_dst(skb)->dev->mtu, IP_MAX_MTU);
}
-u32 ip_idents_reserve(u32 hash, int segs);
@@ -108058,7 +107265,7 @@ index 9b9ca28..9ccd468 100644
static inline void ip_select_ident_segs(struct net *net, struct sk_buff *skb,
diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h
-index 965fa5b..7ea8bfc 100644
+index 9f4df68..f9705be 100644
--- a/include/net/ip_fib.h
+++ b/include/net/ip_fib.h
@@ -173,7 +173,7 @@ __be32 fib_info_update_nh_saddr(struct net *net, struct fib_nh *nh);
@@ -108071,10 +107278,10 @@ index 965fa5b..7ea8bfc 100644
fib_info_update_nh_saddr((net), &FIB_RES_NH(res)))
#define FIB_RES_GW(res) (FIB_RES_NH(res).nh_gw)
diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h
-index 9b9ca87..4e981a3 100644
+index 0816c87..b86fca5 100644
--- a/include/net/ip_vs.h
+++ b/include/net/ip_vs.h
-@@ -551,7 +551,7 @@ struct ip_vs_conn {
+@@ -543,7 +543,7 @@ struct ip_vs_conn {
struct ip_vs_conn *control; /* Master control connection */
atomic_t n_control; /* Number of controlled ones */
struct ip_vs_dest *dest; /* real server */
@@ -108083,7 +107290,7 @@ index 9b9ca87..4e981a3 100644
/* Packet transmitter for different forwarding methods. If it
* mangles the packet, it must return NF_DROP or better NF_STOLEN,
-@@ -699,7 +699,7 @@ struct ip_vs_dest {
+@@ -664,7 +664,7 @@ struct ip_vs_dest {
__be16 port; /* port number of the server */
union nf_inet_addr addr; /* IP address of the server */
volatile unsigned int flags; /* dest status flags */
@@ -108092,7 +107299,7 @@ index 9b9ca87..4e981a3 100644
atomic_t weight; /* server weight */
atomic_t refcnt; /* reference counter */
-@@ -957,11 +957,11 @@ struct netns_ipvs {
+@@ -924,11 +924,11 @@ struct netns_ipvs {
/* ip_vs_lblc */
int sysctl_lblc_expiration;
struct ctl_table_header *lblc_ctl_header;
@@ -108107,7 +107314,7 @@ index 9b9ca87..4e981a3 100644
struct list_head est_list; /* estimator list */
spinlock_t est_lock;
diff --git a/include/net/ipv6.h b/include/net/ipv6.h
-index b14e158..2de13df 100644
+index 9a5c9f0..929c0e3 100644
--- a/include/net/ipv6.h
+++ b/include/net/ipv6.h
@@ -756,7 +756,7 @@ static inline __be32 ip6_make_flowlabel(struct net *net, struct sk_buff *skb,
@@ -108212,19 +107419,19 @@ index c4359e2..76dbc4a 100644
struct llc_sap_state {
u8 curr_state;
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
-index bfc5694..56ba79d 100644
+index 760bc4d..84e4550 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
-@@ -1498,7 +1498,7 @@ enum ieee80211_key_flags {
+@@ -1497,7 +1497,7 @@ enum ieee80211_key_flags {
+ * @iv_len: The IV length for this key type
*/
struct ieee80211_key_conf {
- void *drv_priv;
- atomic64_t tx_pn;
+ atomic64_unchecked_t tx_pn;
u32 cipher;
u8 icv_len;
u8 iv_len;
-@@ -5111,7 +5111,7 @@ struct ieee80211_tx_rate_control {
+@@ -5142,7 +5142,7 @@ struct ieee80211_tx_rate_control {
struct sk_buff *skb;
struct ieee80211_tx_rate reported_rate;
bool rts, short_preamble;
@@ -108233,7 +107440,7 @@ index bfc5694..56ba79d 100644
u32 rate_idx_mask;
u8 *rate_idx_mcs_mask;
bool bss;
-@@ -5148,7 +5148,7 @@ struct rate_control_ops {
+@@ -5179,7 +5179,7 @@ struct rate_control_ops {
void (*remove_sta_debugfs)(void *priv, void *priv_sta);
u32 (*get_expected_throughput)(void *priv_sta);
@@ -108349,10 +107556,10 @@ index 2dcea63..31d53ba 100644
#endif /* __NET_NET_NAMESPACE_H */
diff --git a/include/net/netfilter/nf_conntrack_core.h b/include/net/netfilter/nf_conntrack_core.h
-index c03f9c4..068b836 100644
+index 788ef58..62e17d1 100644
--- a/include/net/netfilter/nf_conntrack_core.h
+++ b/include/net/netfilter/nf_conntrack_core.h
-@@ -78,12 +78,10 @@ print_tuple(struct seq_file *s, const struct nf_conntrack_tuple *tuple,
+@@ -79,12 +79,10 @@ print_tuple(struct seq_file *s, const struct nf_conntrack_tuple *tuple,
const struct nf_conntrack_l3proto *l3proto,
const struct nf_conntrack_l4proto *proto);
@@ -108369,7 +107576,7 @@ index c03f9c4..068b836 100644
extern spinlock_t nf_conntrack_expect_lock;
diff --git a/include/net/netlink.h b/include/net/netlink.h
-index 2a5dbcc..8243656 100644
+index 0e31727..2f2b511 100644
--- a/include/net/netlink.h
+++ b/include/net/netlink.h
@@ -521,7 +521,7 @@ static inline void nlmsg_trim(struct sk_buff *skb, const void *mark)
@@ -108492,7 +107699,7 @@ index d6fcc1f..ca277058 100644
#define INET6_PROTO_NOPOLICY 0x1
#define INET6_PROTO_FINAL 0x2
diff --git a/include/net/rtnetlink.h b/include/net/rtnetlink.h
-index 18fdb98..5d5b6aa 100644
+index 2f87c1b..5a03287 100644
--- a/include/net/rtnetlink.h
+++ b/include/net/rtnetlink.h
@@ -95,7 +95,7 @@ struct rtnl_link_ops {
@@ -108504,6 +107711,18 @@ index 18fdb98..5d5b6aa 100644
int __rtnl_link_register(struct rtnl_link_ops *ops);
void __rtnl_link_unregister(struct rtnl_link_ops *ops);
+diff --git a/include/net/scm.h b/include/net/scm.h
+index 262532d..59fa93c 100644
+--- a/include/net/scm.h
++++ b/include/net/scm.h
+@@ -21,6 +21,7 @@ struct scm_creds {
+ struct scm_fp_list {
+ short count;
+ short max;
++ struct user_struct *user;
+ struct file *fp[SCM_MAX_FD];
+ };
+
diff --git a/include/net/sctp/checksum.h b/include/net/sctp/checksum.h
index 4a5b9a3..ca27d73 100644
--- a/include/net/sctp/checksum.h
@@ -108542,7 +107761,7 @@ index 487ef34..d457f98 100644
/* Get the size of a DATA chunk payload. */
diff --git a/include/net/sctp/structs.h b/include/net/sctp/structs.h
-index 495c87e..5b327ff 100644
+index eea9bde..909b45c 100644
--- a/include/net/sctp/structs.h
+++ b/include/net/sctp/structs.h
@@ -513,7 +513,7 @@ struct sctp_pf {
@@ -108598,19 +107817,19 @@ index 35512ac..edbd85b 100644
#define SNMP_INC_STATS(mib, field) \
this_cpu_inc(mib->mibs[field])
diff --git a/include/net/sock.h b/include/net/sock.h
-index bca709a..75776c9 100644
+index 14d3c07..c273ad8 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
-@@ -198,7 +198,7 @@ struct sock_common {
+@@ -202,7 +202,7 @@ struct sock_common {
struct in6_addr skc_v6_rcv_saddr;
#endif
- atomic64_t skc_cookie;
+ atomic64_unchecked_t skc_cookie;
- /*
- * fields between dontcopy_begin/dontcopy_end
-@@ -364,7 +364,7 @@ struct sock {
+ /* following fields are padding to force
+ * offset(struct sock, sk_refcnt) == 128 on 64bit arches
+@@ -379,7 +379,7 @@ struct sock {
unsigned int sk_napi_id;
unsigned int sk_ll_usec;
#endif
@@ -108619,7 +107838,7 @@ index bca709a..75776c9 100644
int sk_rcvbuf;
struct sk_filter __rcu *sk_filter;
-@@ -1051,7 +1051,7 @@ struct proto {
+@@ -1067,7 +1067,7 @@ struct proto {
void (*destroy_cgroup)(struct mem_cgroup *memcg);
struct cg_proto *(*proto_cgroup)(struct mem_cgroup *memcg);
#endif
@@ -108628,7 +107847,7 @@ index bca709a..75776c9 100644
int proto_register(struct proto *prot, int alloc_slab);
void proto_unregister(struct proto *prot);
-@@ -1191,7 +1191,7 @@ static inline void memcg_memory_allocated_sub(struct cg_proto *prot,
+@@ -1207,7 +1207,7 @@ static inline void memcg_memory_allocated_sub(struct cg_proto *prot,
page_counter_uncharge(&prot->memory_allocated, amt);
}
@@ -108637,7 +107856,7 @@ index bca709a..75776c9 100644
sk_memory_allocated(const struct sock *sk)
{
struct proto *prot = sk->sk_prot;
-@@ -1772,7 +1772,7 @@ static inline void sk_nocaps_add(struct sock *sk, netdev_features_t flags)
+@@ -1799,7 +1799,7 @@ static inline void sk_nocaps_add(struct sock *sk, netdev_features_t flags)
}
static inline int skb_do_copy_data_nocache(struct sock *sk, struct sk_buff *skb,
@@ -108646,7 +107865,7 @@ index bca709a..75776c9 100644
int copy, int offset)
{
if (skb->ip_summed == CHECKSUM_NONE) {
-@@ -2019,7 +2019,7 @@ static inline void sk_stream_moderate_sndbuf(struct sock *sk)
+@@ -2050,7 +2050,7 @@ static inline void sk_stream_moderate_sndbuf(struct sock *sk)
}
}
@@ -108655,7 +107874,7 @@ index bca709a..75776c9 100644
bool force_schedule);
/**
-@@ -2095,7 +2095,7 @@ struct sock_skb_cb {
+@@ -2126,7 +2126,7 @@ struct sock_skb_cb {
static inline void
sock_skb_set_dropcount(const struct sock *sk, struct sk_buff *skb)
{
@@ -108665,10 +107884,10 @@ index bca709a..75776c9 100644
void __sock_recv_timestamp(struct msghdr *msg, struct sock *sk,
diff --git a/include/net/tcp.h b/include/net/tcp.h
-index 0cab28c..f29b35d 100644
+index f80e74c..1e64f3c 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
-@@ -548,7 +548,7 @@ void tcp_retransmit_timer(struct sock *sk);
+@@ -550,7 +550,7 @@ void tcp_retransmit_timer(struct sock *sk);
void tcp_xmit_retransmit_queue(struct sock *);
void tcp_simple_retransmit(struct sock *);
int tcp_trim_head(struct sock *, struct sk_buff *, u32);
@@ -108677,7 +107896,7 @@ index 0cab28c..f29b35d 100644
void tcp_send_probe0(struct sock *);
void tcp_send_partial(struct sock *);
-@@ -726,8 +726,8 @@ static inline u32 tcp_skb_timestamp(const struct sk_buff *skb)
+@@ -736,8 +736,8 @@ static inline u32 tcp_skb_timestamp(const struct sk_buff *skb)
* If this grows please adjust skbuff.h:skbuff->cb[xxx] size appropriately.
*/
struct tcp_skb_cb {
@@ -108688,7 +107907,7 @@ index 0cab28c..f29b35d 100644
union {
/* Note : tcp_tw_isn is used in input path only
* (isn chosen by tcp_timewait_state_process())
-@@ -755,7 +755,7 @@ struct tcp_skb_cb {
+@@ -765,7 +765,7 @@ struct tcp_skb_cb {
__u8 ip_dsfield; /* IPv4 tos or IPv6 dsfield */
/* 1 byte hole */
@@ -108698,7 +107917,7 @@ index 0cab28c..f29b35d 100644
struct inet_skb_parm h4;
#if IS_ENABLED(CONFIG_IPV6)
diff --git a/include/net/xfrm.h b/include/net/xfrm.h
-index 312e3fe..a438cf1 100644
+index d6f6e50..a173aa7 100644
--- a/include/net/xfrm.h
+++ b/include/net/xfrm.h
@@ -284,7 +284,6 @@ struct xfrm_dst;
@@ -108709,7 +107928,7 @@ index 312e3fe..a438cf1 100644
struct dst_entry *(*dst_lookup)(struct net *net,
int tos, int oif,
const xfrm_address_t *saddr,
-@@ -305,7 +304,7 @@ struct xfrm_policy_afinfo {
+@@ -303,7 +302,7 @@ struct xfrm_policy_afinfo {
struct net_device *dev,
const struct flowi *fl);
struct dst_entry *(*blackhole_route)(struct net *net, struct dst_entry *orig);
@@ -108718,7 +107937,7 @@ index 312e3fe..a438cf1 100644
int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo);
int xfrm_policy_unregister_afinfo(struct xfrm_policy_afinfo *afinfo);
-@@ -344,7 +343,7 @@ struct xfrm_state_afinfo {
+@@ -342,7 +341,7 @@ struct xfrm_state_afinfo {
int (*transport_finish)(struct sk_buff *skb,
int async);
void (*local_error)(struct sk_buff *skb, u32 mtu);
@@ -108727,7 +107946,7 @@ index 312e3fe..a438cf1 100644
int xfrm_state_register_afinfo(struct xfrm_state_afinfo *afinfo);
int xfrm_state_unregister_afinfo(struct xfrm_state_afinfo *afinfo);
-@@ -439,7 +438,7 @@ struct xfrm_mode {
+@@ -437,7 +436,7 @@ struct xfrm_mode {
struct module *owner;
unsigned int encap;
int flags;
@@ -108736,7 +107955,7 @@ index 312e3fe..a438cf1 100644
/* Flags for xfrm_mode. */
enum {
-@@ -534,7 +533,7 @@ struct xfrm_policy {
+@@ -532,7 +531,7 @@ struct xfrm_policy {
struct timer_list timer;
struct flow_cache_object flo;
@@ -108745,7 +107964,7 @@ index 312e3fe..a438cf1 100644
u32 priority;
u32 index;
struct xfrm_mark mark;
-@@ -1167,6 +1166,7 @@ static inline void xfrm_sk_free_policy(struct sock *sk)
+@@ -1172,6 +1171,7 @@ static inline void xfrm_sk_free_policy(struct sock *sk)
}
void xfrm_garbage_collect(struct net *net);
@@ -108753,7 +107972,7 @@ index 312e3fe..a438cf1 100644
#else
-@@ -1205,6 +1205,9 @@ static inline int xfrm6_policy_check_reverse(struct sock *sk, int dir,
+@@ -1210,6 +1210,9 @@ static inline int xfrm6_policy_check_reverse(struct sock *sk, int dir,
static inline void xfrm_garbage_collect(struct net *net)
{
}
@@ -108868,10 +108087,10 @@ index fa1d055..3647940 100644
/**
* struct snd_compr: Compressed device
diff --git a/include/sound/soc.h b/include/sound/soc.h
-index 26ede14..c9d6a99 100644
+index fb955e6..6ff0ea9 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
-@@ -884,7 +884,7 @@ struct snd_soc_codec_driver {
+@@ -905,7 +905,7 @@ struct snd_soc_codec_driver {
enum snd_soc_dapm_type, int);
bool ignore_pmdown_time; /* Doesn't benefit from pmdown delay */
@@ -108880,7 +108099,7 @@ index 26ede14..c9d6a99 100644
/* SoC platform interface */
struct snd_soc_platform_driver {
-@@ -911,7 +911,7 @@ struct snd_soc_platform_driver {
+@@ -932,7 +932,7 @@ struct snd_soc_platform_driver {
const struct snd_compr_ops *compr_ops;
int (*bespoke_trigger)(struct snd_pcm_substream *, int);
@@ -108889,19 +108108,6 @@ index 26ede14..c9d6a99 100644
struct snd_soc_dai_link_component {
const char *name;
-diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h
-index 5f48754..b351b46 100644
---- a/include/target/target_core_base.h
-+++ b/include/target/target_core_base.h
-@@ -474,7 +474,7 @@ struct se_cmd {
- struct completion cmd_wait_comp;
- const struct target_core_fabric_ops *se_tfo;
- sense_reason_t (*execute_cmd)(struct se_cmd *);
-- sense_reason_t (*transport_complete_callback)(struct se_cmd *, bool);
-+ sense_reason_t (*transport_complete_callback)(struct se_cmd *, bool, int *);
- void *protocol_data;
-
- unsigned char *t_task_cdb;
diff --git a/include/trace/events/fs.h b/include/trace/events/fs.h
new file mode 100644
index 0000000..fb634b7
@@ -109181,16 +108387,15 @@ index aa169c4..6a2771d 100644
/*
diff --git a/include/uapi/linux/screen_info.h b/include/uapi/linux/screen_info.h
-index 7530e74..e714828 100644
+index 8b8d39d..1ca6c07 100644
--- a/include/uapi/linux/screen_info.h
+++ b/include/uapi/linux/screen_info.h
-@@ -43,7 +43,8 @@ struct screen_info {
- __u16 pages; /* 0x32 */
+@@ -44,7 +44,7 @@ struct screen_info {
__u16 vesa_attributes; /* 0x34 */
__u32 capabilities; /* 0x36 */
-- __u8 _reserved[6]; /* 0x3a */
-+ __u16 vesapm_size; /* 0x3a */
-+ __u8 _reserved[4]; /* 0x3c */
+ __u32 ext_lfb_base; /* 0x3a */
+- __u8 _reserved[2]; /* 0x3e */
++ __u16 vesapm_size; /* 0x3e */
} __attribute__((packed));
#define VIDEO_TYPE_MDA 0x10 /* Monochrome Text Display */
@@ -109271,10 +108476,20 @@ index 30f5362..8ed8ac9 100644
void *pmi_pal;
u8 *vbe_state_orig; /*
diff --git a/init/Kconfig b/init/Kconfig
-index c24b6f7..e70c4b5 100644
+index 235c7a2..8dbf372 100644
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -633,6 +633,7 @@ config RCU_FAST_NO_HZ
+@@ -285,7 +285,8 @@ config FHANDLE
+
+ config USELIB
+ bool "uselib syscall"
+- default y
++ default n
++ depends on !GRKERNSEC
+ help
+ This option enables the uselib syscall, a system call used in the
+ dynamic linker from libc5 and earlier. glibc does not use this
+@@ -633,6 +634,7 @@ config RCU_FAST_NO_HZ
config TREE_RCU_TRACE
def_bool RCU_TRACE && ( TREE_RCU || PREEMPT_RCU )
select DEBUG_FS
@@ -109282,7 +108497,7 @@ index c24b6f7..e70c4b5 100644
help
This option provides tracing for the TREE_RCU and
PREEMPT_RCU implementations, permitting Makefile to
-@@ -1156,6 +1157,7 @@ endif # CGROUPS
+@@ -1156,6 +1158,7 @@ endif # CGROUPS
config CHECKPOINT_RESTORE
bool "Checkpoint/restore support" if EXPERT
select PROC_CHILDREN
@@ -109290,7 +108505,7 @@ index c24b6f7..e70c4b5 100644
default n
help
Enables additional kernel features in a sake of checkpoint/restore.
-@@ -1701,7 +1703,7 @@ config SLUB_DEBUG
+@@ -1701,7 +1704,7 @@ config SLUB_DEBUG
config COMPAT_BRK
bool "Disable heap randomization"
@@ -109299,15 +108514,6 @@ index c24b6f7..e70c4b5 100644
help
Randomizing heap placement makes heap exploits harder, but it
also breaks ancient binaries (including anything libc5 based).
-@@ -2033,7 +2035,7 @@ config INIT_ALL_POSSIBLE
- config STOP_MACHINE
- bool
- default y
-- depends on (SMP && MODULE_UNLOAD) || HOTPLUG_CPU
-+ depends on (SMP && MODULE_UNLOAD) || HOTPLUG_CPU || GRKERNSEC
- help
- Need stop_machine() primitive.
-
diff --git a/init/Makefile b/init/Makefile
index 7bc47ee..6da2dc7 100644
--- a/init/Makefile
@@ -109946,7 +109152,7 @@ index 1471db9..dbdcf7f 100644
seq_printf(s,
"%10d %10d %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10lu %10lu %10lu\n",
diff --git a/ipc/msgutil.c b/ipc/msgutil.c
-index 71f448e..5cb11f3 100644
+index ed81aaf..4bb6792 100644
--- a/ipc/msgutil.c
+++ b/ipc/msgutil.c
@@ -55,7 +55,7 @@ static struct msg_msg *alloc_msg(size_t len)
@@ -110000,10 +109206,10 @@ index b471e5a..cb0c603 100644
/*
diff --git a/ipc/shm.c b/ipc/shm.c
-index 4178727..fc727aa 100644
+index 4178727..b22c4d0 100644
--- a/ipc/shm.c
+++ b/ipc/shm.c
-@@ -72,6 +72,14 @@ static void shm_destroy(struct ipc_namespace *ns, struct shmid_kernel *shp);
+@@ -72,9 +72,17 @@ static void shm_destroy(struct ipc_namespace *ns, struct shmid_kernel *shp);
static int sysvipc_shm_proc_show(struct seq_file *s, void *it);
#endif
@@ -110017,7 +109223,11 @@ index 4178727..fc727aa 100644
+
void shm_init_ns(struct ipc_namespace *ns)
{
- ns->shm_ctlmax = SHMMAX;
+- ns->shm_ctlmax = SHMMAX;
++ ns->shm_ctlmax = BITS_PER_LONG == 32 ? SHMMAX : LONG_MAX;
+ ns->shm_ctlall = SHMALL;
+ ns->shm_ctlmni = SHMMNI;
+ ns->shm_rmid_forced = 0;
@@ -555,6 +563,9 @@ static int newseg(struct ipc_namespace *ns, struct ipc_params *params)
shp->shm_lprid = 0;
shp->shm_atim = shp->shm_dtim = 0;
@@ -110102,7 +109312,7 @@ index 0f401d9..049b0ff 100644
if ((requested_mode & ~granted_mode & 0007) &&
!ns_capable(ns->user_ns, CAP_IPC_OWNER))
diff --git a/kernel/audit.c b/kernel/audit.c
-index 662c007..50ad01c 100644
+index 5ffcbd3..166fa77 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -124,7 +124,7 @@ u32 audit_sig_sid = 0;
@@ -110132,7 +109342,7 @@ index 662c007..50ad01c 100644
audit_rate_limit,
audit_backlog_limit);
audit_panic(message);
-@@ -833,7 +833,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
+@@ -847,7 +847,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
s.pid = audit_pid;
s.rate_limit = audit_rate_limit;
s.backlog_limit = audit_backlog_limit;
@@ -110173,10 +109383,10 @@ index b86cc04..dfbfd4e 100644
task->sessionid = sessionid;
task->loginuid = loginuid;
diff --git a/kernel/bpf/core.c b/kernel/bpf/core.c
-index 67c380c..46c3968 100644
+index 334b1bd..67c97a2 100644
--- a/kernel/bpf/core.c
+++ b/kernel/bpf/core.c
-@@ -145,14 +145,17 @@ bpf_jit_binary_alloc(unsigned int proglen, u8 **image_ptr,
+@@ -151,14 +151,17 @@ bpf_jit_binary_alloc(unsigned int proglen, u8 **image_ptr,
* random section of illegal instructions.
*/
size = round_up(proglen + sizeof(*hdr) + 128, PAGE_SIZE);
@@ -110195,7 +109405,7 @@ index 67c380c..46c3968 100644
hole = min_t(unsigned int, size - (proglen + sizeof(*hdr)),
PAGE_SIZE - sizeof(*hdr));
start = (prandom_u32() % hole) & ~(alignment - 1);
-@@ -165,7 +168,7 @@ bpf_jit_binary_alloc(unsigned int proglen, u8 **image_ptr,
+@@ -171,7 +174,7 @@ bpf_jit_binary_alloc(unsigned int proglen, u8 **image_ptr,
void bpf_jit_binary_free(struct bpf_binary_header *hdr)
{
@@ -110205,20 +109415,20 @@ index 67c380c..46c3968 100644
#endif /* CONFIG_BPF_JIT */
diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
-index 35bac8e..8de1d69 100644
+index 3b39550..e470527 100644
--- a/kernel/bpf/syscall.c
+++ b/kernel/bpf/syscall.c
-@@ -596,11 +596,15 @@ SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, siz
+@@ -711,8 +711,16 @@ SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, siz
+ union bpf_attr attr = {};
int err;
- /* the syscall is limited to root temporarily. This restriction will be
-- * lifted when security audit is clean. Note that eBPF+tracing must have
-- * this restriction, since it may pass kernel data to user space
+- if (!capable(CAP_SYS_ADMIN) && sysctl_unprivileged_bpf_disabled)
++ /* the syscall is limited to root temporarily. This restriction will be
+ * lifted by upstream when a half-assed security audit is clean. Note
+ * that eBPF+tracing must have this restriction, since it may pass
+ * kernel data to user space
- */
- if (!capable(CAP_SYS_ADMIN))
++ */
++ if (!capable(CAP_SYS_ADMIN))
return -EPERM;
+#ifdef CONFIG_GRKERNSEC
+ return -EPERM;
@@ -110226,6 +109436,19 @@ index 35bac8e..8de1d69 100644
if (!access_ok(VERIFY_READ, uattr, 1))
return -EFAULT;
+diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c
+index d1d3e8f..2e7f7ab 100644
+--- a/kernel/bpf/verifier.c
++++ b/kernel/bpf/verifier.c
+@@ -2082,7 +2082,7 @@ static void adjust_branches(struct bpf_prog *prog, int pos, int delta)
+ /* adjust offset of jmps if necessary */
+ if (i < pos && i + insn->off + 1 > pos)
+ insn->off += delta;
+- else if (i > pos && i + insn->off + 1 < pos)
++ else if (i > pos + delta && i + insn->off + 1 <= pos + delta)
+ insn->off -= delta;
+ }
+ }
diff --git a/kernel/capability.c b/kernel/capability.c
index 45432b5..988f1e4 100644
--- a/kernel/capability.c
@@ -110325,10 +109548,10 @@ index 45432b5..988f1e4 100644
+}
+EXPORT_SYMBOL(capable_wrt_inode_uidgid_nolog);
diff --git a/kernel/cgroup.c b/kernel/cgroup.c
-index 2c9eae6..71ca037 100644
+index 470f653..1aa51fc 100644
--- a/kernel/cgroup.c
+++ b/kernel/cgroup.c
-@@ -5503,6 +5503,9 @@ static void cgroup_release_agent(struct work_struct *work)
+@@ -5725,6 +5725,9 @@ static void cgroup_release_agent(struct work_struct *work)
if (!pathbuf || !agentbuf)
goto out;
@@ -110338,7 +109561,7 @@ index 2c9eae6..71ca037 100644
path = cgroup_path(cgrp, pathbuf, PATH_MAX);
if (!path)
goto out;
-@@ -5690,7 +5693,7 @@ static int cgroup_css_links_read(struct seq_file *seq, void *v)
+@@ -5900,7 +5903,7 @@ static int cgroup_css_links_read(struct seq_file *seq, void *v)
struct task_struct *task;
int count = 0;
@@ -110757,7 +109980,7 @@ index 41213454..861e178 100644
#ifdef CONFIG_MODULE_UNLOAD
{
diff --git a/kernel/events/core.c b/kernel/events/core.c
-index b11756f..e495479 100644
+index cfc227c..d0f51f0 100644
--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -175,8 +175,15 @@ static struct srcu_struct pmus_srcu;
@@ -110777,7 +110000,7 @@ index b11756f..e495479 100644
/* Minimum for 512 kiB + 1 user control page */
int sysctl_perf_event_mlock __read_mostly = 512 + (PAGE_SIZE / 1024); /* 'free' kiB per user */
-@@ -202,7 +209,7 @@ void update_perf_cpu_limits(void)
+@@ -202,7 +209,7 @@ static void update_perf_cpu_limits(void)
tmp *= sysctl_perf_cpu_time_max_percent;
do_div(tmp, 100);
@@ -110795,7 +110018,7 @@ index b11756f..e495479 100644
static void cpu_ctx_sched_out(struct perf_cpu_context *cpuctx,
enum event_type_t event_type);
-@@ -3384,7 +3391,7 @@ find_lively_task_by_vpid(pid_t vpid)
+@@ -3434,7 +3441,7 @@ find_lively_task_by_vpid(pid_t vpid)
/* Reuse ptrace permission checks for now. */
err = -EACCES;
@@ -110804,9 +110027,9 @@ index b11756f..e495479 100644
goto errout;
return task;
-@@ -3845,9 +3852,9 @@ u64 perf_event_read_value(struct perf_event *event, u64 *enabled, u64 *running)
- mutex_lock(&event->child_mutex);
- total += perf_event_read(event);
+@@ -3898,9 +3905,9 @@ u64 perf_event_read_value(struct perf_event *event, u64 *enabled, u64 *running)
+ total += perf_event_count(event);
+
*enabled += event->total_time_enabled +
- atomic64_read(&event->child_total_time_enabled);
+ atomic64_read_unchecked(&event->child_total_time_enabled);
@@ -110815,8 +110038,23 @@ index b11756f..e495479 100644
+ atomic64_read_unchecked(&event->child_total_time_running);
list_for_each_entry(child, &event->child_list, child_list) {
- total += perf_event_read(child);
-@@ -4377,10 +4384,10 @@ void perf_event_update_userpage(struct perf_event *event)
+ (void)perf_event_read(child, false);
+@@ -3932,12 +3939,12 @@ static int __perf_read_group_add(struct perf_event *leader,
+ */
+ if (read_format & PERF_FORMAT_TOTAL_TIME_ENABLED) {
+ values[n++] += leader->total_time_enabled +
+- atomic64_read(&leader->child_total_time_enabled);
++ atomic64_read_unchecked(&leader->child_total_time_enabled);
+ }
+
+ if (read_format & PERF_FORMAT_TOTAL_TIME_RUNNING) {
+ values[n++] += leader->total_time_running +
+- atomic64_read(&leader->child_total_time_running);
++ atomic64_read_unchecked(&leader->child_total_time_running);
+ }
+
+ /*
+@@ -4478,10 +4485,10 @@ void perf_event_update_userpage(struct perf_event *event)
userpg->offset -= local64_read(&event->hw.prev_count);
userpg->time_enabled = enabled +
@@ -110829,7 +110067,7 @@ index b11756f..e495479 100644
arch_perf_update_userpage(event, userpg, now);
-@@ -5055,7 +5062,7 @@ perf_output_sample_ustack(struct perf_output_handle *handle, u64 dump_size,
+@@ -5156,7 +5163,7 @@ perf_output_sample_ustack(struct perf_output_handle *handle, u64 dump_size,
/* Data. */
sp = perf_user_stack_pointer(regs);
@@ -110838,7 +110076,7 @@ index b11756f..e495479 100644
dyn_size = dump_size - rem;
perf_output_skip(handle, rem);
-@@ -5146,11 +5153,11 @@ static void perf_output_read_one(struct perf_output_handle *handle,
+@@ -5247,11 +5254,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 +
@@ -110852,7 +110090,7 @@ index b11756f..e495479 100644
}
if (read_format & PERF_FORMAT_ID)
values[n++] = primary_event_id(event);
-@@ -7767,7 +7774,7 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu,
+@@ -7906,7 +7913,7 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu,
event->parent = parent_event;
event->ns = get_pid_ns(task_active_pid_ns(current));
@@ -110861,7 +110099,7 @@ index b11756f..e495479 100644
event->state = PERF_EVENT_STATE_INACTIVE;
-@@ -8126,6 +8133,11 @@ SYSCALL_DEFINE5(perf_event_open,
+@@ -8265,6 +8272,11 @@ SYSCALL_DEFINE5(perf_event_open,
if (flags & ~PERF_FLAG_ALL)
return -EINVAL;
@@ -110873,7 +110111,7 @@ index b11756f..e495479 100644
err = perf_copy_attr(attr_uptr, &attr);
if (err)
return err;
-@@ -8597,10 +8609,10 @@ static void sync_child_event(struct perf_event *child_event,
+@@ -8736,10 +8748,10 @@ static void sync_child_event(struct perf_event *child_event,
/*
* Add back the child's count to the parent's count:
*/
@@ -110932,7 +110170,7 @@ index 2bbad9c..056f20c 100644
/* Callchain handling */
extern struct perf_callchain_entry *
diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c
-index 4e5e979..b4d6566 100644
+index 7dad849..d4eb8a5 100644
--- a/kernel/events/uprobes.c
+++ b/kernel/events/uprobes.c
@@ -1689,7 +1689,7 @@ static int is_trap_at_addr(struct mm_struct *mm, unsigned long vaddr)
@@ -110945,7 +110183,7 @@ index 4e5e979..b4d6566 100644
pagefault_disable();
result = __copy_from_user_inatomic(&opcode, (void __user*)vaddr,
diff --git a/kernel/exit.c b/kernel/exit.c
-index ea95ee1..27177a8 100644
+index 07110c6..1125445 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -171,6 +171,10 @@ void release_task(struct task_struct *p)
@@ -110996,7 +110234,7 @@ index ea95ee1..27177a8 100644
ptrace_event(PTRACE_EVENT_EXIT, code);
-@@ -730,6 +736,9 @@ void do_exit(long code)
+@@ -732,6 +738,9 @@ void do_exit(long code)
tsk->exit_code = code;
taskstats_exit(tsk, group_dead);
@@ -111006,7 +110244,7 @@ index ea95ee1..27177a8 100644
exit_mm(tsk);
if (group_dead)
-@@ -847,7 +856,7 @@ SYSCALL_DEFINE1(exit, int, error_code)
+@@ -851,7 +860,7 @@ SYSCALL_DEFINE1(exit, int, error_code)
* Take down every thread in the group. This is called by fatal signals
* as well as by sys_exit_group (below).
*/
@@ -111015,7 +110253,7 @@ index ea95ee1..27177a8 100644
do_group_exit(int exit_code)
{
struct signal_struct *sig = current->signal;
-@@ -964,6 +973,7 @@ static int wait_noreap_copyout(struct wait_opts *wo, struct task_struct *p,
+@@ -968,6 +977,7 @@ static int wait_noreap_copyout(struct wait_opts *wo, struct task_struct *p,
* the lock and this task is uninteresting. If we return nonzero, we have
* released the lock and the system call should return.
*/
@@ -111023,7 +110261,7 @@ index ea95ee1..27177a8 100644
static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
{
int state, retval, status;
-@@ -980,6 +990,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
+@@ -984,6 +994,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
get_task_struct(p);
read_unlock(&tasklist_lock);
@@ -111031,7 +110269,7 @@ index ea95ee1..27177a8 100644
sched_annotate_sleep();
if ((exit_code & 0x7f) == 0) {
-@@ -1002,6 +1013,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
+@@ -1006,6 +1017,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
* We own this thread, nobody else can reap it.
*/
read_unlock(&tasklist_lock);
@@ -111039,7 +110277,7 @@ index ea95ee1..27177a8 100644
sched_annotate_sleep();
/*
-@@ -1145,6 +1157,8 @@ static int *task_stopped_code(struct task_struct *p, bool ptrace)
+@@ -1149,6 +1161,8 @@ static int *task_stopped_code(struct task_struct *p, bool ptrace)
* search should terminate.
*/
static int wait_task_stopped(struct wait_opts *wo,
@@ -111048,7 +110286,7 @@ index ea95ee1..27177a8 100644
int ptrace, struct task_struct *p)
{
struct siginfo __user *infop;
-@@ -1192,6 +1206,7 @@ unlock_sig:
+@@ -1196,6 +1210,7 @@ unlock_sig:
pid = task_pid_vnr(p);
why = ptrace ? CLD_TRAPPED : CLD_STOPPED;
read_unlock(&tasklist_lock);
@@ -111056,7 +110294,7 @@ index ea95ee1..27177a8 100644
sched_annotate_sleep();
if (unlikely(wo->wo_flags & WNOWAIT))
-@@ -1229,6 +1244,7 @@ unlock_sig:
+@@ -1233,6 +1248,7 @@ unlock_sig:
* the lock and this task is uninteresting. If we return nonzero, we have
* released the lock and the system call should return.
*/
@@ -111064,7 +110302,7 @@ index ea95ee1..27177a8 100644
static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
{
int retval;
-@@ -1255,6 +1271,7 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
+@@ -1259,6 +1275,7 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
pid = task_pid_vnr(p);
get_task_struct(p);
read_unlock(&tasklist_lock);
@@ -111072,7 +110310,7 @@ index ea95ee1..27177a8 100644
sched_annotate_sleep();
if (!wo->wo_info) {
-@@ -1284,6 +1301,8 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
+@@ -1288,6 +1305,8 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
* or another error from security_task_wait(), or still -ECHILD.
*/
static int wait_consider_task(struct wait_opts *wo, int ptrace,
@@ -111081,7 +110319,7 @@ index ea95ee1..27177a8 100644
struct task_struct *p)
{
/*
-@@ -1409,6 +1428,7 @@ static int wait_consider_task(struct wait_opts *wo, int ptrace,
+@@ -1413,6 +1432,7 @@ static int wait_consider_task(struct wait_opts *wo, int ptrace,
* ->notask_error is 0 if there were any eligible children,
* or another error from security_task_wait(), or still -ECHILD.
*/
@@ -111089,7 +110327,7 @@ index ea95ee1..27177a8 100644
static int do_wait_thread(struct wait_opts *wo, struct task_struct *tsk)
{
struct task_struct *p;
-@@ -1423,6 +1443,7 @@ static int do_wait_thread(struct wait_opts *wo, struct task_struct *tsk)
+@@ -1427,6 +1447,7 @@ static int do_wait_thread(struct wait_opts *wo, struct task_struct *tsk)
return 0;
}
@@ -111097,7 +110335,7 @@ index ea95ee1..27177a8 100644
static int ptrace_do_wait(struct wait_opts *wo, struct task_struct *tsk)
{
struct task_struct *p;
-@@ -1486,12 +1507,16 @@ repeat:
+@@ -1490,12 +1511,16 @@ repeat:
tsk = current;
do {
retval = do_wait_thread(wo, tsk);
@@ -111117,7 +110355,7 @@ index ea95ee1..27177a8 100644
if (wo->wo_flags & __WNOTHREAD)
break;
diff --git a/kernel/fork.c b/kernel/fork.c
-index 2845623..baaf316 100644
+index 1155eac..0c9bd1f 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -188,12 +188,54 @@ static void free_thread_info(struct thread_info *ti)
@@ -111202,7 +110440,7 @@ index 2845623..baaf316 100644
rt_mutex_debug_task_free(tsk);
ftrace_graph_exit_task(tsk);
put_seccomp_filter(tsk);
-@@ -289,7 +335,7 @@ static void set_max_threads(unsigned int max_threads_suggested)
+@@ -290,7 +336,7 @@ static void set_max_threads(unsigned int max_threads_suggested)
#ifdef CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT
/* Initialized by the architecture: */
@@ -111211,7 +110449,7 @@ index 2845623..baaf316 100644
#endif
void __init fork_init(void)
-@@ -334,6 +380,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
+@@ -335,6 +381,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
{
struct task_struct *tsk;
struct thread_info *ti;
@@ -111219,7 +110457,7 @@ index 2845623..baaf316 100644
int node = tsk_fork_get_node(orig);
int err;
-@@ -341,7 +388,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
+@@ -342,7 +389,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
if (!tsk)
return NULL;
@@ -111228,7 +110466,7 @@ index 2845623..baaf316 100644
if (!ti)
goto free_tsk;
-@@ -350,6 +397,9 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
+@@ -351,6 +398,9 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
goto free_ti;
tsk->stack = ti;
@@ -111238,7 +110476,7 @@ index 2845623..baaf316 100644
#ifdef CONFIG_SECCOMP
/*
* We must handle setting up seccomp filters once we're under
-@@ -366,7 +416,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
+@@ -367,7 +417,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
set_task_stack_end_magic(tsk);
#ifdef CONFIG_CC_STACKPROTECTOR
@@ -111247,9 +110485,9 @@ index 2845623..baaf316 100644
#endif
/*
-@@ -380,24 +430,90 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
- tsk->splice_pipe = NULL;
+@@ -382,24 +432,90 @@ static struct task_struct *dup_task_struct(struct task_struct *orig)
tsk->task_frag.page = NULL;
+ tsk->wake_q.next = NULL;
- account_kernel_stack(ti, 1);
+ account_kernel_stack(tsk, ti, 1);
@@ -111292,7 +110530,7 @@ index 2845623..baaf316 100644
+ goto fail_nomem_policy;
+ if (anon_vma_fork(tmp, mpnt))
+ goto fail_nomem_anon_vma_fork;
-+ tmp->vm_flags &= ~(VM_LOCKED|VM_UFFD_MISSING|VM_UFFD_WP);
++ tmp->vm_flags &= ~(VM_LOCKED|VM_LOCKONFAULT|VM_UFFD_MISSING|VM_UFFD_WP);
+ tmp->vm_next = tmp->vm_prev = NULL;
+ tmp->vm_mirror = NULL;
+ tmp->vm_userfaultfd_ctx = NULL_VM_UFFD_CTX;
@@ -111342,7 +110580,7 @@ index 2845623..baaf316 100644
uprobe_start_dup_mmap();
down_write(&oldmm->mmap_sem);
-@@ -428,52 +544,15 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
+@@ -430,53 +546,15 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
prev = NULL;
for (mpnt = oldmm->mmap; mpnt; mpnt = mpnt->vm_next) {
@@ -111372,7 +110610,8 @@ index 2845623..baaf316 100644
- tmp->vm_mm = mm;
- if (anon_vma_fork(tmp, mpnt))
- goto fail_nomem_anon_vma_fork;
-- tmp->vm_flags &= ~(VM_LOCKED|VM_UFFD_MISSING|VM_UFFD_WP);
+- tmp->vm_flags &=
+- ~(VM_LOCKED|VM_LOCKONFAULT|VM_UFFD_MISSING|VM_UFFD_WP);
- tmp->vm_next = tmp->vm_prev = NULL;
- tmp->vm_userfaultfd_ctx = NULL_VM_UFFD_CTX;
- file = tmp->vm_file;
@@ -111399,7 +110638,7 @@ index 2845623..baaf316 100644
}
/*
-@@ -505,6 +584,38 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
+@@ -508,6 +586,38 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
if (retval)
goto out;
}
@@ -111438,7 +110677,7 @@ index 2845623..baaf316 100644
/* a new mm has just been created */
arch_dup_mmap(oldmm, mm);
retval = 0;
-@@ -514,14 +625,6 @@ out:
+@@ -517,14 +627,6 @@ out:
up_write(&oldmm->mmap_sem);
uprobe_end_dup_mmap();
return retval;
@@ -111453,7 +110692,7 @@ index 2845623..baaf316 100644
}
static inline int mm_alloc_pgd(struct mm_struct *mm)
-@@ -796,8 +899,8 @@ struct mm_struct *mm_access(struct task_struct *task, unsigned int mode)
+@@ -799,8 +901,8 @@ struct mm_struct *mm_access(struct task_struct *task, unsigned int mode)
return ERR_PTR(err);
mm = get_task_mm(task);
@@ -111464,7 +110703,7 @@ index 2845623..baaf316 100644
mmput(mm);
mm = ERR_PTR(-EACCES);
}
-@@ -998,13 +1101,20 @@ static int copy_fs(unsigned long clone_flags, struct task_struct *tsk)
+@@ -1001,13 +1103,20 @@ static int copy_fs(unsigned long clone_flags, struct task_struct *tsk)
spin_unlock(&fs->lock);
return -EAGAIN;
}
@@ -111486,7 +110725,7 @@ index 2845623..baaf316 100644
return 0;
}
-@@ -1241,7 +1351,7 @@ init_task_pid(struct task_struct *task, enum pid_type type, struct pid *pid)
+@@ -1240,7 +1349,7 @@ init_task_pid(struct task_struct *task, enum pid_type type, struct pid *pid)
* parts of the process environment (as per the clone
* flags). The actual kick-off is left to the caller.
*/
@@ -111495,7 +110734,7 @@ index 2845623..baaf316 100644
unsigned long stack_start,
unsigned long stack_size,
int __user *child_tidptr,
-@@ -1313,6 +1423,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
+@@ -1312,6 +1421,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
#endif
retval = -EAGAIN;
@@ -111505,7 +110744,7 @@ index 2845623..baaf316 100644
if (atomic_read(&p->real_cred->user->processes) >=
task_rlimit(p, RLIMIT_NPROC)) {
if (p->real_cred->user != INIT_USER &&
-@@ -1572,6 +1685,11 @@ static struct task_struct *copy_process(unsigned long clone_flags,
+@@ -1570,6 +1682,11 @@ static struct task_struct *copy_process(unsigned long clone_flags,
goto bad_fork_cancel_cgroup;
}
@@ -111517,7 +110756,7 @@ index 2845623..baaf316 100644
if (likely(p->pid)) {
ptrace_init_task(p, (clone_flags & CLONE_PTRACE) || trace);
-@@ -1663,6 +1781,8 @@ bad_fork_cleanup_count:
+@@ -1659,6 +1776,8 @@ bad_fork_cleanup_count:
bad_fork_free:
free_task(p);
fork_out:
@@ -111526,7 +110765,7 @@ index 2845623..baaf316 100644
return ERR_PTR(retval);
}
-@@ -1725,6 +1845,7 @@ long _do_fork(unsigned long clone_flags,
+@@ -1721,6 +1840,7 @@ long _do_fork(unsigned long clone_flags,
p = copy_process(clone_flags, stack_start, stack_size,
child_tidptr, NULL, trace, tls);
@@ -111534,7 +110773,7 @@ index 2845623..baaf316 100644
/*
* Do this prior waking up the new thread - the thread pointer
* might get invalid after that point, if the thread exits quickly.
-@@ -1741,6 +1862,8 @@ long _do_fork(unsigned long clone_flags,
+@@ -1737,6 +1857,8 @@ long _do_fork(unsigned long clone_flags,
if (clone_flags & CLONE_PARENT_SETTID)
put_user(nr, parent_tidptr);
@@ -111543,7 +110782,7 @@ index 2845623..baaf316 100644
if (clone_flags & CLONE_VFORK) {
p->vfork_done = &vfork;
init_completion(&vfork);
-@@ -1873,7 +1996,7 @@ void __init proc_caches_init(void)
+@@ -1869,7 +1991,7 @@ void __init proc_caches_init(void)
mm_cachep = kmem_cache_create("mm_struct",
sizeof(struct mm_struct), ARCH_MIN_MMSTRUCT_ALIGN,
SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK, NULL);
@@ -111552,7 +110791,7 @@ index 2845623..baaf316 100644
mmap_init();
nsproxy_cache_init();
}
-@@ -1921,7 +2044,7 @@ static int unshare_fs(unsigned long unshare_flags, struct fs_struct **new_fsp)
+@@ -1917,7 +2039,7 @@ static int unshare_fs(unsigned long unshare_flags, struct fs_struct **new_fsp)
return 0;
/* don't need lock here; in the worst case we'll do useless copy */
@@ -111561,7 +110800,7 @@ index 2845623..baaf316 100644
return 0;
*new_fsp = copy_fs_struct(fs);
-@@ -2034,7 +2157,8 @@ SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags)
+@@ -2030,7 +2152,8 @@ SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags)
fs = current->fs;
spin_lock(&fs->lock);
current->fs = new_fs;
@@ -111571,7 +110810,7 @@ index 2845623..baaf316 100644
new_fs = NULL;
else
new_fs = fs;
-@@ -2098,7 +2222,7 @@ int unshare_files(struct files_struct **displaced)
+@@ -2094,7 +2217,7 @@ int unshare_files(struct files_struct **displaced)
int sysctl_max_threads(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
@@ -111581,7 +110820,7 @@ index 2845623..baaf316 100644
int threads = max_threads;
int min = MIN_THREADS;
diff --git a/kernel/futex.c b/kernel/futex.c
-index 6e443ef..a4f2f18 100644
+index 684d754..ef2bb0f 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -202,7 +202,7 @@ struct futex_pi_state {
@@ -111602,7 +110841,7 @@ index 6e443ef..a4f2f18 100644
static const struct futex_q futex_q_init = {
/* list gets initialized in queue_me()*/
-@@ -463,6 +463,11 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw)
+@@ -472,6 +472,11 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw)
struct page *page, *page_head;
int err, ro = 0;
@@ -111614,7 +110853,7 @@ index 6e443ef..a4f2f18 100644
/*
* The futex address must be "naturally" aligned.
*/
-@@ -669,7 +674,7 @@ static int cmpxchg_futex_value_locked(u32 *curval, u32 __user *uaddr,
+@@ -678,7 +683,7 @@ static int cmpxchg_futex_value_locked(u32 *curval, u32 __user *uaddr,
static int get_futex_value_locked(u32 *dest, u32 __user *from)
{
@@ -111623,7 +110862,7 @@ index 6e443ef..a4f2f18 100644
pagefault_disable();
ret = __copy_from_user_inatomic(dest, from, sizeof(u32));
-@@ -2872,7 +2877,7 @@ SYSCALL_DEFINE3(get_robust_list, int, pid,
+@@ -2881,7 +2886,7 @@ SYSCALL_DEFINE3(get_robust_list, int, pid,
}
ret = -EPERM;
@@ -111632,7 +110871,7 @@ index 6e443ef..a4f2f18 100644
goto err_unlock;
head = p->robust_list;
-@@ -3122,6 +3127,7 @@ static void __init futex_detect_cmpxchg(void)
+@@ -3131,6 +3136,7 @@ static void __init futex_detect_cmpxchg(void)
{
#ifndef CONFIG_HAVE_FUTEX_CMPXCHG
u32 curval;
@@ -111640,7 +110879,7 @@ index 6e443ef..a4f2f18 100644
/*
* This will fail and we want it. Some arch implementations do
-@@ -3133,8 +3139,11 @@ static void __init futex_detect_cmpxchg(void)
+@@ -3142,8 +3148,11 @@ static void __init futex_detect_cmpxchg(void)
* implementation, the non-functional ones will return
* -ENOSYS.
*/
@@ -111700,20 +110939,20 @@ index 7080ae1..c9b3761 100644
if (gcov_events_enabled)
gcov_event(GCOV_REMOVE, info);
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index f9a59f6..6271d2e 100644
+index 6ead200..0cdeef1 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
-@@ -939,7 +939,7 @@ static int irq_thread(void *data)
+@@ -958,7 +958,7 @@ static int irq_thread(void *data)
action_ret = handler_fn(desc, action);
if (action_ret == IRQ_HANDLED)
- atomic_inc(&desc->threads_handled);
+ atomic_inc_unchecked(&desc->threads_handled);
+ if (action_ret == IRQ_WAKE_THREAD)
+ irq_wake_secondary(desc, action);
- wake_threads_waitq(desc);
- }
diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c
-index be9149f..0ea909a 100644
+index 6b0c0b7..9314a9c 100644
--- a/kernel/irq/msi.c
+++ b/kernel/irq/msi.c
@@ -212,16 +212,18 @@ static void msi_domain_update_dom_ops(struct msi_domain_info *info)
@@ -111768,7 +111007,7 @@ index 3214417..e02594d 100644
if (handled != desc->threads_handled_last) {
action_ret = IRQ_HANDLED;
diff --git a/kernel/jump_label.c b/kernel/jump_label.c
-index f7dd15d..2c1f581 100644
+index 05254ee..a2e0725 100644
--- a/kernel/jump_label.c
+++ b/kernel/jump_label.c
@@ -14,6 +14,7 @@
@@ -111934,10 +111173,10 @@ index 0aa69ea..bcb17e3 100644
goto err_unlock;
}
diff --git a/kernel/kexec.c b/kernel/kexec.c
-index 4c5edc3..be8a589 100644
+index d873b64..61f7c59 100644
--- a/kernel/kexec.c
+++ b/kernel/kexec.c
-@@ -222,7 +222,8 @@ COMPAT_SYSCALL_DEFINE4(kexec_load, compat_ulong_t, entry,
+@@ -224,7 +224,8 @@ COMPAT_SYSCALL_DEFINE4(kexec_load, compat_ulong_t, entry,
compat_ulong_t, flags)
{
struct compat_kexec_segment in;
@@ -111948,7 +111187,7 @@ index 4c5edc3..be8a589 100644
/* Don't allow clients that don't understand the native
diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
-index 201b453..e878258 100644
+index 11b64a6..d011095 100644
--- a/kernel/kexec_core.c
+++ b/kernel/kexec_core.c
@@ -851,7 +851,7 @@ int kimage_load_segment(struct kimage *image,
@@ -111961,7 +111200,7 @@ index 201b453..e878258 100644
void crash_kexec(struct pt_regs *regs)
{
diff --git a/kernel/kmod.c b/kernel/kmod.c
-index 0277d12..c5e9cc4 100644
+index 0277d12..8c01709 100644
--- a/kernel/kmod.c
+++ b/kernel/kmod.c
@@ -66,7 +66,7 @@ static void free_modprobe_argv(struct subprocess_info *info)
@@ -112098,7 +111337,7 @@ index 0277d12..c5e9cc4 100644
if (info->cleanup)
(*info->cleanup)(info);
kfree(info);
-@@ -228,6 +285,21 @@ static int call_usermodehelper_exec_async(void *data)
+@@ -228,6 +285,22 @@ static int call_usermodehelper_exec_async(void *data)
*/
set_user_nice(current, 0);
@@ -112110,6 +111349,7 @@ index 0277d12..c5e9cc4 100644
+ if ((strncmp(sub_info->path, "/sbin/", 6) && strncmp(sub_info->path, "/usr/lib/", 9) &&
+ strncmp(sub_info->path, "/lib/", 5) && strncmp(sub_info->path, "/lib64/", 7) &&
+ strncmp(sub_info->path, "/usr/libexec/", 13) && strncmp(sub_info->path, "/usr/bin/", 9) &&
++ strncmp(sub_info->path, "/usr/sbin/", 10) &&
+ strcmp(sub_info->path, "/usr/share/apport/apport")) || strstr(sub_info->path, "..")) {
+ printk(KERN_ALERT "grsec: denied exec of usermode helper binary %.950s located outside of permitted system paths\n", sub_info->path);
+ retval = -EPERM;
@@ -112120,7 +111360,7 @@ index 0277d12..c5e9cc4 100644
retval = -ENOMEM;
new = prepare_kernel_cred(current);
if (!new)
-@@ -250,8 +322,8 @@ static int call_usermodehelper_exec_async(void *data)
+@@ -250,8 +323,8 @@ static int call_usermodehelper_exec_async(void *data)
commit_creds(new);
retval = do_execve(getname_kernel(sub_info->path),
@@ -112131,7 +111371,7 @@ index 0277d12..c5e9cc4 100644
out:
sub_info->retval = retval;
/*
-@@ -287,7 +359,7 @@ static void call_usermodehelper_exec_sync(struct subprocess_info *sub_info)
+@@ -287,7 +360,7 @@ static void call_usermodehelper_exec_sync(struct subprocess_info *sub_info)
*
* Thus the __user pointer cast is valid here.
*/
@@ -112140,7 +111380,7 @@ index 0277d12..c5e9cc4 100644
/*
* If ret is 0, either call_usermodehelper_exec_async failed and
-@@ -528,7 +600,12 @@ struct subprocess_info *call_usermodehelper_setup(char *path, char **argv,
+@@ -528,7 +601,12 @@ struct subprocess_info *call_usermodehelper_setup(char *path, char **argv,
goto out;
INIT_WORK(&sub_info->work, call_usermodehelper_exec_work);
@@ -112153,7 +111393,7 @@ index 0277d12..c5e9cc4 100644
sub_info->argv = argv;
sub_info->envp = envp;
-@@ -630,7 +707,7 @@ EXPORT_SYMBOL(call_usermodehelper);
+@@ -630,7 +708,7 @@ EXPORT_SYMBOL(call_usermodehelper);
static int proc_cap_handler(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
@@ -112163,7 +111403,7 @@ index 0277d12..c5e9cc4 100644
kernel_cap_t new_cap;
int err, i;
diff --git a/kernel/kprobes.c b/kernel/kprobes.c
-index d10ab6b..372c51c 100644
+index d10ab6b..1725fbd 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -31,6 +31,9 @@
@@ -112205,6 +111445,15 @@ index d10ab6b..372c51c 100644
p->addr, kprobe_type, p->addr);
if (!pp)
+@@ -2291,7 +2294,7 @@ static int kprobe_blacklist_seq_show(struct seq_file *m, void *v)
+ struct kprobe_blacklist_entry *ent =
+ list_entry(v, struct kprobe_blacklist_entry, list);
+
+- seq_printf(m, "0x%p-0x%p\t%ps\n", (void *)ent->start_addr,
++ seq_printf(m, "0x%pK-0x%pK\t%ps\n", (void *)ent->start_addr,
+ (void *)ent->end_addr, (void *)ent->start_addr);
+ return 0;
+ }
diff --git a/kernel/ksysfs.c b/kernel/ksysfs.c
index e83b264..d09fae1 100644
--- a/kernel/ksysfs.c
@@ -112228,7 +111477,7 @@ index e83b264..d09fae1 100644
.name = "notes",
.mode = S_IRUGO,
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
-index 4e49cc4..057b0f8 100644
+index 60ace56..8392836 100644
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -613,6 +613,10 @@ static int static_obj(void *obj)
@@ -112260,7 +111509,7 @@ index 4e49cc4..057b0f8 100644
printk("\nacquire class [%p] %s", class->key, class->name);
if (class->name_version > 1)
diff --git a/kernel/locking/lockdep_proc.c b/kernel/locking/lockdep_proc.c
-index d83d798..ea3120d 100644
+index dbb61a3..2b50dde 100644
--- a/kernel/locking/lockdep_proc.c
+++ b/kernel/locking/lockdep_proc.c
@@ -65,7 +65,7 @@ static int l_show(struct seq_file *m, void *v)
@@ -112357,10 +111606,10 @@ index 0799fd3..d06ae3b 100644
extern void debug_mutex_init(struct mutex *lock, const char *name,
struct lock_class_key *key);
diff --git a/kernel/locking/mutex.c b/kernel/locking/mutex.c
-index 4cccea6..4382db9 100644
+index 0551c21..f753f95 100644
--- a/kernel/locking/mutex.c
+++ b/kernel/locking/mutex.c
-@@ -533,7 +533,7 @@ __mutex_lock_common(struct mutex *lock, long state, unsigned int subclass,
+@@ -534,7 +534,7 @@ __mutex_lock_common(struct mutex *lock, long state, unsigned int subclass,
goto skip_wait;
debug_mutex_lock_common(lock, &waiter);
@@ -112369,7 +111618,7 @@ index 4cccea6..4382db9 100644
/* add waiting tasks to the end of the waitqueue (FIFO): */
list_add_tail(&waiter.list, &lock->wait_list);
-@@ -580,7 +580,7 @@ __mutex_lock_common(struct mutex *lock, long state, unsigned int subclass,
+@@ -581,7 +581,7 @@ __mutex_lock_common(struct mutex *lock, long state, unsigned int subclass,
}
__set_task_state(task, TASK_RUNNING);
@@ -112378,7 +111627,7 @@ index 4cccea6..4382db9 100644
/* set it to 0 if there are no waiters left: */
if (likely(list_empty(&lock->wait_list)))
atomic_set(&lock->count, 0);
-@@ -601,7 +601,7 @@ skip_wait:
+@@ -602,7 +602,7 @@ skip_wait:
return 0;
err:
@@ -112388,7 +111637,7 @@ index 4cccea6..4382db9 100644
debug_mutex_free_waiter(&waiter);
mutex_release(&lock->dep_map, 1, ip);
diff --git a/kernel/module.c b/kernel/module.c
-index 8f051a1..e1be102 100644
+index 38c7bd5..e1be102 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -59,6 +59,7 @@
@@ -113308,16 +112557,9 @@ index 8f051a1..e1be102 100644
free_unload:
module_unload_free(mod);
unlink_mod:
-@@ -3571,8 +3756,15 @@ static int load_module(struct load_info *info, const char __user *uargs,
- synchronize_sched();
- mutex_unlock(&module_mutex);
- free_module:
-+ /*
-+ * Ftrace needs to clean up what it initialized.
-+ * This does nothing if ftrace_module_init() wasn't called,
-+ * but it must be called outside of module_mutex.
-+ */
-+ ftrace_release_mod(mod);
+@@ -3578,7 +3763,8 @@ static int load_module(struct load_info *info, const char __user *uargs,
+ */
+ ftrace_release_mod(mod);
/* Free lock-classes; relies on the preceding sync_rcu() */
- lockdep_free_key_range(mod->module_core, mod->core_size);
+ lockdep_free_key_range(mod->module_core_rx, mod->core_size_rx);
@@ -113325,7 +112567,7 @@ index 8f051a1..e1be102 100644
module_deallocate(mod, info);
free_copy:
-@@ -3649,10 +3841,16 @@ static const char *get_ksymbol(struct module *mod,
+@@ -3655,10 +3841,16 @@ static const char *get_ksymbol(struct module *mod,
unsigned long nextval;
/* At worse, next value is at end of module */
@@ -113345,7 +112587,7 @@ index 8f051a1..e1be102 100644
/* Scan for closest preceding symbol, and next symbol. (ELF
starts real symbols at 1). */
-@@ -3899,7 +4097,7 @@ static int m_show(struct seq_file *m, void *p)
+@@ -3905,7 +4097,7 @@ static int m_show(struct seq_file *m, void *p)
return 0;
seq_printf(m, "%s %u",
@@ -113354,7 +112596,7 @@ index 8f051a1..e1be102 100644
print_unload_info(m, mod);
/* Informative for users. */
-@@ -3908,7 +4106,7 @@ static int m_show(struct seq_file *m, void *p)
+@@ -3914,7 +4106,7 @@ static int m_show(struct seq_file *m, void *p)
mod->state == MODULE_STATE_COMING ? "Loading" :
"Live");
/* Used by oprofile and other similar tools. */
@@ -113363,7 +112605,7 @@ index 8f051a1..e1be102 100644
/* Taints info */
if (mod->taints)
-@@ -3944,7 +4142,17 @@ static const struct file_operations proc_modules_operations = {
+@@ -3950,7 +4142,17 @@ static const struct file_operations proc_modules_operations = {
static int __init proc_modules_init(void)
{
@@ -113381,7 +112623,7 @@ index 8f051a1..e1be102 100644
return 0;
}
module_init(proc_modules_init);
-@@ -4005,7 +4213,8 @@ struct module *__module_address(unsigned long addr)
+@@ -4011,7 +4213,8 @@ struct module *__module_address(unsigned long addr)
{
struct module *mod;
@@ -113391,7 +112633,7 @@ index 8f051a1..e1be102 100644
return NULL;
module_assert_mutex_or_preempt();
-@@ -4048,11 +4257,20 @@ bool is_module_text_address(unsigned long addr)
+@@ -4054,11 +4257,20 @@ bool is_module_text_address(unsigned long addr)
*/
struct module *__module_text_address(unsigned long addr)
{
@@ -113494,10 +112736,10 @@ index b38bea9..91acfbe 100644
atomic_set(&pd->refcnt, 0);
pd->pinst = pinst;
diff --git a/kernel/panic.c b/kernel/panic.c
-index 04e91ff..2419384 100644
+index 41e2b54..5292098 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
-@@ -54,7 +54,7 @@ EXPORT_SYMBOL(panic_blink);
+@@ -55,7 +55,7 @@ EXPORT_SYMBOL(panic_blink);
/*
* Stop ourself in panic -- architecture code may override this
*/
@@ -113506,7 +112748,7 @@ index 04e91ff..2419384 100644
{
while (1)
cpu_relax();
-@@ -426,7 +426,7 @@ static void warn_slowpath_common(const char *file, int line, void *caller,
+@@ -438,7 +438,7 @@ static void warn_slowpath_common(const char *file, int line, void *caller,
disable_trace_on_warning();
pr_warn("------------[ cut here ]------------\n");
@@ -113515,7 +112757,7 @@ index 04e91ff..2419384 100644
raw_smp_processor_id(), current->pid, file, line, caller);
if (args)
-@@ -491,7 +491,8 @@ EXPORT_SYMBOL(warn_slowpath_null);
+@@ -503,7 +503,8 @@ EXPORT_SYMBOL(warn_slowpath_null);
*/
__visible void __stack_chk_fail(void)
{
@@ -113526,7 +112768,7 @@ index 04e91ff..2419384 100644
}
EXPORT_SYMBOL(__stack_chk_fail);
diff --git a/kernel/pid.c b/kernel/pid.c
-index ca36879..1f368d5 100644
+index 78b3d9f..1f368d5 100644
--- a/kernel/pid.c
+++ b/kernel/pid.c
@@ -33,6 +33,7 @@
@@ -113565,7 +112807,7 @@ index ca36879..1f368d5 100644
}
struct task_struct *find_task_by_vpid(pid_t vnr)
-@@ -461,13 +470,20 @@ struct task_struct *find_task_by_vpid(pid_t vnr)
+@@ -461,6 +470,13 @@ struct task_struct *find_task_by_vpid(pid_t vnr)
return find_task_by_pid_ns(vnr, task_active_pid_ns(current));
}
@@ -113579,23 +112821,6 @@ index ca36879..1f368d5 100644
struct pid *get_task_pid(struct task_struct *task, enum pid_type type)
{
struct pid *pid;
- rcu_read_lock();
- if (type != PIDTYPE_PID)
- task = task->group_leader;
-- pid = get_pid(task->pids[type].pid);
-+ pid = get_pid(rcu_dereference(task->pids[type].pid));
- rcu_read_unlock();
- return pid;
- }
-@@ -528,7 +544,7 @@ pid_t __task_pid_nr_ns(struct task_struct *task, enum pid_type type,
- if (likely(pid_alive(task))) {
- if (type != PIDTYPE_PID)
- task = task->group_leader;
-- nr = pid_nr_ns(task->pids[type].pid, ns);
-+ nr = pid_nr_ns(rcu_dereference(task->pids[type].pid), ns);
- }
- rcu_read_unlock();
-
diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c
index a65ba13..f600dbb 100644
--- a/kernel/pid_namespace.c
@@ -113666,20 +112891,10 @@ index 564f786..361a18e 100644
if (pm_wakeup_pending()) {
diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
-index 8f0324e..6416846 100644
+index c048e34..8ef7f71 100644
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
-@@ -269,6 +269,9 @@ static u32 clear_idx;
- #define PREFIX_MAX 32
- #define LOG_LINE_MAX (1024 - PREFIX_MAX)
-
-+#define LOG_LEVEL(v) ((v) & 0x07)
-+#define LOG_FACILITY(v) ((v) >> 3 & 0xff)
-+
- /* record buffer */
- #if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS)
- #define LOG_ALIGN 4
-@@ -475,7 +478,7 @@ static int log_store(int facility, int level,
+@@ -478,7 +478,7 @@ static int log_store(int facility, int level,
return msg->text_len;
}
@@ -113688,7 +112903,7 @@ index 8f0324e..6416846 100644
static int syslog_action_restricted(int type)
{
-@@ -498,6 +501,11 @@ int check_syslog_permissions(int type, int source)
+@@ -501,6 +501,11 @@ int check_syslog_permissions(int type, int source)
if (source == SYSLOG_FROM_PROC && type != SYSLOG_ACTION_OPEN)
goto ok;
@@ -113700,32 +112915,6 @@ index 8f0324e..6416846 100644
if (syslog_action_restricted(type)) {
if (capable(CAP_SYSLOG))
goto ok;
-@@ -611,7 +619,6 @@ struct devkmsg_user {
- static ssize_t devkmsg_write(struct kiocb *iocb, struct iov_iter *from)
- {
- char *buf, *line;
-- int i;
- int level = default_message_loglevel;
- int facility = 1; /* LOG_USER */
- size_t len = iov_iter_count(from);
-@@ -641,12 +648,13 @@ static ssize_t devkmsg_write(struct kiocb *iocb, struct iov_iter *from)
- line = buf;
- if (line[0] == '<') {
- char *endp = NULL;
-+ unsigned int u;
-
-- i = simple_strtoul(line+1, &endp, 10);
-+ u = simple_strtoul(line + 1, &endp, 10);
- if (endp && endp[0] == '>') {
-- level = i & 7;
-- if (i >> 3)
-- facility = i >> 3;
-+ level = LOG_LEVEL(u);
-+ if (LOG_FACILITY(u) != 0)
-+ facility = LOG_FACILITY(u);
- endp++;
- len -= endp - line;
- line = endp;
diff --git a/kernel/profile.c b/kernel/profile.c
index 99513e1..0caa643 100644
--- a/kernel/profile.c
@@ -113788,7 +112977,7 @@ index 99513e1..0caa643 100644
}
diff --git a/kernel/ptrace.c b/kernel/ptrace.c
-index 787320d..64d61aa 100644
+index b760bae..fe8f48d 100644
--- a/kernel/ptrace.c
+++ b/kernel/ptrace.c
@@ -207,18 +207,46 @@ static int ptrace_check_attach(struct task_struct *child, bool ignore_state)
@@ -113930,7 +113119,7 @@ index 787320d..64d61aa 100644
unsigned long __user *datalp = datavp;
unsigned long flags;
-@@ -1061,14 +1104,21 @@ SYSCALL_DEFINE4(ptrace, long, request, long, pid, unsigned long, addr,
+@@ -1066,14 +1109,21 @@ SYSCALL_DEFINE4(ptrace, long, request, long, pid, unsigned long, addr,
goto out;
}
@@ -113953,7 +113142,7 @@ index 787320d..64d61aa 100644
goto out_put_task_struct;
}
-@@ -1096,7 +1146,7 @@ int generic_ptrace_peekdata(struct task_struct *tsk, unsigned long addr,
+@@ -1101,7 +1151,7 @@ int generic_ptrace_peekdata(struct task_struct *tsk, unsigned long addr,
copied = access_process_vm(tsk, addr, &tmp, sizeof(tmp), 0);
if (copied != sizeof(tmp))
return -EIO;
@@ -113962,7 +113151,7 @@ index 787320d..64d61aa 100644
}
int generic_ptrace_pokedata(struct task_struct *tsk, unsigned long addr,
-@@ -1189,7 +1239,7 @@ int compat_ptrace_request(struct task_struct *child, compat_long_t request,
+@@ -1194,7 +1244,7 @@ int compat_ptrace_request(struct task_struct *child, compat_long_t request,
}
COMPAT_SYSCALL_DEFINE4(ptrace, compat_long_t, request, compat_long_t, pid,
@@ -113971,7 +113160,7 @@ index 787320d..64d61aa 100644
{
struct task_struct *child;
long ret;
-@@ -1205,14 +1255,21 @@ COMPAT_SYSCALL_DEFINE4(ptrace, compat_long_t, request, compat_long_t, pid,
+@@ -1210,14 +1260,21 @@ COMPAT_SYSCALL_DEFINE4(ptrace, compat_long_t, request, compat_long_t, pid,
goto out;
}
@@ -113995,7 +113184,7 @@ index 787320d..64d61aa 100644
}
diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
-index 7719295..54d5fc7 100644
+index d89328e..a2c42e2 100644
--- a/kernel/rcu/rcutorture.c
+++ b/kernel/rcu/rcutorture.c
@@ -134,12 +134,12 @@ static DEFINE_PER_CPU(long [RCU_TORTURE_PIPE_LEN + 1],
@@ -114058,7 +113247,7 @@ index 7719295..54d5fc7 100644
if (++rp->rtort_pipe_count >= RCU_TORTURE_PIPE_LEN) {
rp->rtort_mbtest = 0;
return true;
-@@ -840,7 +840,7 @@ rcu_torture_cbflood(void *arg)
+@@ -839,7 +839,7 @@ rcu_torture_cbflood(void *arg)
VERBOSE_TOROUT_STRING("rcu_torture_cbflood task started");
do {
schedule_timeout_interruptible(cbflood_inter_holdoff);
@@ -114067,7 +113256,7 @@ index 7719295..54d5fc7 100644
WARN_ON(signal_pending(current));
for (i = 0; i < cbflood_n_burst; i++) {
for (j = 0; j < cbflood_n_per_burst; j++) {
-@@ -968,7 +968,7 @@ rcu_torture_writer(void *arg)
+@@ -967,7 +967,7 @@ rcu_torture_writer(void *arg)
i = old_rp->rtort_pipe_count;
if (i > RCU_TORTURE_PIPE_LEN)
i = RCU_TORTURE_PIPE_LEN;
@@ -114076,7 +113265,7 @@ index 7719295..54d5fc7 100644
old_rp->rtort_pipe_count++;
switch (synctype[torture_random(&rand) % nsynctypes]) {
case RTWS_DEF_FREE:
-@@ -1107,7 +1107,7 @@ static void rcu_torture_timer(unsigned long unused)
+@@ -1106,7 +1106,7 @@ static void rcu_torture_timer(unsigned long unused)
return;
}
if (p->rtort_mbtest == 0)
@@ -114085,7 +113274,7 @@ index 7719295..54d5fc7 100644
spin_lock(&rand_lock);
cur_ops->read_delay(&rand);
n_rcu_torture_timers++;
-@@ -1183,7 +1183,7 @@ rcu_torture_reader(void *arg)
+@@ -1182,7 +1182,7 @@ rcu_torture_reader(void *arg)
continue;
}
if (p->rtort_mbtest == 0)
@@ -114094,7 +113283,7 @@ index 7719295..54d5fc7 100644
cur_ops->read_delay(&rand);
preempt_disable();
pipe_count = p->rtort_pipe_count;
-@@ -1252,11 +1252,11 @@ rcu_torture_stats_print(void)
+@@ -1250,11 +1250,11 @@ rcu_torture_stats_print(void)
rcu_torture_current,
rcu_torture_current_version,
list_empty(&rcu_torture_freelist),
@@ -114110,7 +113299,7 @@ index 7719295..54d5fc7 100644
n_rcu_torture_boost_ktrerror,
n_rcu_torture_boost_rterror);
pr_cont("rtbf: %ld rtb: %ld nt: %ld ",
-@@ -1268,17 +1268,17 @@ rcu_torture_stats_print(void)
+@@ -1266,17 +1266,17 @@ rcu_torture_stats_print(void)
n_barrier_successes,
n_barrier_attempts,
n_rcu_torture_barrier_error);
@@ -114131,7 +113320,7 @@ index 7719295..54d5fc7 100644
WARN_ON_ONCE(1);
}
pr_cont("Reader Pipe: ");
-@@ -1295,7 +1295,7 @@ rcu_torture_stats_print(void)
+@@ -1293,7 +1293,7 @@ rcu_torture_stats_print(void)
pr_alert("%s%s ", torture_type, TORTURE_FLAG);
pr_cont("Free-Block Circulation: ");
for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) {
@@ -114140,7 +113329,7 @@ index 7719295..54d5fc7 100644
}
pr_cont("\n");
-@@ -1649,7 +1649,7 @@ rcu_torture_cleanup(void)
+@@ -1647,7 +1647,7 @@ rcu_torture_cleanup(void)
rcu_torture_stats_print(); /* -After- the stats thread is stopped! */
@@ -114149,7 +113338,7 @@ index 7719295..54d5fc7 100644
rcu_torture_print_module_parms(cur_ops, "End of test: FAILURE");
else if (torture_onoff_failures())
rcu_torture_print_module_parms(cur_ops,
-@@ -1774,18 +1774,18 @@ rcu_torture_init(void)
+@@ -1772,18 +1772,18 @@ rcu_torture_init(void)
rcu_torture_current = NULL;
rcu_torture_current_version = 0;
@@ -114175,7 +113364,7 @@ index 7719295..54d5fc7 100644
for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) {
per_cpu(rcu_torture_count, cpu)[i] = 0;
diff --git a/kernel/rcu/tiny.c b/kernel/rcu/tiny.c
-index d047105..f9f9ed9 100644
+index 944b1b4..45d1d75 100644
--- a/kernel/rcu/tiny.c
+++ b/kernel/rcu/tiny.c
@@ -42,7 +42,7 @@
@@ -114185,7 +113374,7 @@ index d047105..f9f9ed9 100644
-static void rcu_process_callbacks(struct softirq_action *unused);
+static void rcu_process_callbacks(void);
static void __call_rcu(struct rcu_head *head,
- void (*func)(struct rcu_head *rcu),
+ rcu_callback_t func,
struct rcu_ctrlblk *rcp);
@@ -170,7 +170,7 @@ static void __rcu_process_callbacks(struct rcu_ctrlblk *rcp)
false));
@@ -114197,10 +113386,10 @@ index d047105..f9f9ed9 100644
__rcu_process_callbacks(&rcu_sched_ctrlblk);
__rcu_process_callbacks(&rcu_bh_ctrlblk);
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
-index 775d36c..d3542c61 100644
+index f07343b..d59d264 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
-@@ -323,7 +323,7 @@ static void rcu_momentary_dyntick_idle(void)
+@@ -336,7 +336,7 @@ static void rcu_momentary_dyntick_idle(void)
*/
rdtp = this_cpu_ptr(&rcu_dynticks);
smp_mb__before_atomic(); /* Earlier stuff before QS. */
@@ -114209,7 +113398,7 @@ index 775d36c..d3542c61 100644
smp_mb__after_atomic(); /* Later stuff after QS. */
break;
}
-@@ -636,10 +636,10 @@ static void rcu_eqs_enter_common(long long oldval, bool user)
+@@ -658,10 +658,10 @@ static void rcu_eqs_enter_common(long long oldval, bool user)
rcu_prepare_for_idle();
/* CPUs seeing atomic_inc() must see prior RCU read-side crit sects */
smp_mb__before_atomic(); /* See above. */
@@ -114222,7 +113411,7 @@ index 775d36c..d3542c61 100644
rcu_dynticks_task_enter();
/*
-@@ -762,11 +762,11 @@ static void rcu_eqs_exit_common(long long oldval, int user)
+@@ -784,11 +784,11 @@ static void rcu_eqs_exit_common(long long oldval, int user)
rcu_dynticks_task_exit();
smp_mb__before_atomic(); /* Force ordering w/previous sojourn. */
@@ -114236,7 +113425,7 @@ index 775d36c..d3542c61 100644
rcu_cleanup_after_idle();
trace_rcu_dyntick(TPS("End"), oldval, rdtp->dynticks_nesting);
if (IS_ENABLED(CONFIG_RCU_EQS_DEBUG) &&
-@@ -902,12 +902,12 @@ void rcu_nmi_enter(void)
+@@ -924,12 +924,12 @@ void rcu_nmi_enter(void)
* to be in the outermost NMI handler that interrupted an RCU-idle
* period (observation due to Andy Lutomirski).
*/
@@ -114252,7 +113441,7 @@ index 775d36c..d3542c61 100644
incby = 1;
}
rdtp->dynticks_nmi_nesting += incby;
-@@ -932,7 +932,7 @@ void rcu_nmi_exit(void)
+@@ -954,7 +954,7 @@ void rcu_nmi_exit(void)
* to us!)
*/
WARN_ON_ONCE(rdtp->dynticks_nmi_nesting <= 0);
@@ -114261,7 +113450,7 @@ index 775d36c..d3542c61 100644
/*
* If the nesting level is not 1, the CPU wasn't RCU-idle, so
-@@ -947,9 +947,9 @@ void rcu_nmi_exit(void)
+@@ -969,9 +969,9 @@ void rcu_nmi_exit(void)
rdtp->dynticks_nmi_nesting = 0;
/* CPUs seeing atomic_inc() must see prior RCU read-side crit sects */
smp_mb__before_atomic(); /* See above. */
@@ -114273,7 +113462,7 @@ index 775d36c..d3542c61 100644
}
/**
-@@ -962,7 +962,7 @@ void rcu_nmi_exit(void)
+@@ -984,7 +984,7 @@ void rcu_nmi_exit(void)
*/
bool notrace __rcu_is_watching(void)
{
@@ -114282,7 +113471,7 @@ index 775d36c..d3542c61 100644
}
/**
-@@ -1045,7 +1045,7 @@ static int rcu_is_cpu_rrupt_from_idle(void)
+@@ -1067,7 +1067,7 @@ static int rcu_is_cpu_rrupt_from_idle(void)
static int dyntick_save_progress_counter(struct rcu_data *rdp,
bool *isidle, unsigned long *maxj)
{
@@ -114291,7 +113480,7 @@ index 775d36c..d3542c61 100644
rcu_sysidle_check_cpu(rdp, isidle, maxj);
if ((rdp->dynticks_snap & 0x1) == 0) {
trace_rcu_fqs(rdp->rsp->name, rdp->gpnum, rdp->cpu, TPS("dti"));
-@@ -1071,7 +1071,7 @@ static int rcu_implicit_dynticks_qs(struct rcu_data *rdp,
+@@ -1093,7 +1093,7 @@ static int rcu_implicit_dynticks_qs(struct rcu_data *rdp,
int *rcrmp;
unsigned int snap;
@@ -114300,7 +113489,7 @@ index 775d36c..d3542c61 100644
snap = (unsigned int)rdp->dynticks_snap;
/*
-@@ -2914,7 +2914,7 @@ __rcu_process_callbacks(struct rcu_state *rsp)
+@@ -2934,7 +2934,7 @@ __rcu_process_callbacks(struct rcu_state *rsp)
/*
* Do RCU core processing for the current CPU.
*/
@@ -114309,7 +113498,7 @@ index 775d36c..d3542c61 100644
{
struct rcu_state *rsp;
-@@ -3382,7 +3382,7 @@ static bool rcu_exp_gp_seq_done(struct rcu_state *rsp, unsigned long s)
+@@ -3587,7 +3587,7 @@ static void rcu_report_exp_rdp(struct rcu_state *rsp, struct rcu_data *rdp,
/* Common code for synchronize_{rcu,sched}_expedited() work-done checking. */
static bool sync_exp_work_done(struct rcu_state *rsp, struct rcu_node *rnp,
struct rcu_data *rdp,
@@ -114318,7 +113507,7 @@ index 775d36c..d3542c61 100644
{
if (rcu_exp_gp_seq_done(rsp, s)) {
if (rnp)
-@@ -3391,7 +3391,7 @@ static bool sync_exp_work_done(struct rcu_state *rsp, struct rcu_node *rnp,
+@@ -3596,7 +3596,7 @@ static bool sync_exp_work_done(struct rcu_state *rsp, struct rcu_node *rnp,
mutex_unlock(&rdp->exp_funnel_mutex);
/* Ensure test happens before caller kfree(). */
smp_mb__before_atomic(); /* ^^^ */
@@ -114327,25 +113516,16 @@ index 775d36c..d3542c61 100644
return true;
}
return false;
-@@ -3542,7 +3542,7 @@ void synchronize_sched_expedited(void)
- if (!try_get_online_cpus()) {
- /* CPU hotplug operation in flight, fall back to normal GP. */
- wait_rcu_gp(call_rcu_sched);
-- atomic_long_inc(&rsp->expedited_normal);
-+ atomic_long_inc_unchecked(&rsp->expedited_normal);
- return;
- }
- WARN_ON_ONCE(cpu_is_offline(raw_smp_processor_id()));
-@@ -3566,7 +3566,7 @@ void synchronize_sched_expedited(void)
+@@ -3718,7 +3718,7 @@ static void sync_rcu_exp_select_cpus(struct rcu_state *rsp,
+ struct rcu_dynticks *rdtp = &per_cpu(rcu_dynticks, cpu);
- /* Skip our CPU and any idle CPUs. */
- if (raw_smp_processor_id() == cpu ||
-- !(atomic_add_return(0, &rdtp->dynticks) & 0x1))
-+ !(atomic_add_return_unchecked(0, &rdtp->dynticks) & 0x1))
- continue;
- atomic_inc(&rsp->expedited_need_qs);
- stop_one_cpu_nowait(cpu, synchronize_sched_expedited_cpu_stop,
-@@ -3878,7 +3878,7 @@ rcu_boot_init_percpu_data(int cpu, struct rcu_state *rsp)
+ if (raw_smp_processor_id() == cpu ||
+- !(atomic_add_return(0, &rdtp->dynticks) & 0x1))
++ !(atomic_add_return_unchecked(0, &rdtp->dynticks) & 0x1))
+ mask_ofl_test |= rdp->grpmask;
+ }
+ mask_ofl_ipi = rnp->expmask & ~mask_ofl_test;
+@@ -4156,7 +4156,7 @@ rcu_boot_init_percpu_data(int cpu, struct rcu_state *rsp)
rdp->grpmask = 1UL << (cpu - rdp->mynode->grplo);
rdp->dynticks = &per_cpu(rcu_dynticks, cpu);
WARN_ON_ONCE(rdp->dynticks->dynticks_nesting != DYNTICK_TASK_EXIT_IDLE);
@@ -114354,7 +113534,7 @@ index 775d36c..d3542c61 100644
rdp->cpu = cpu;
rdp->rsp = rsp;
mutex_init(&rdp->exp_funnel_mutex);
-@@ -3914,8 +3914,8 @@ rcu_init_percpu_data(int cpu, struct rcu_state *rsp)
+@@ -4187,8 +4187,8 @@ rcu_init_percpu_data(int cpu, struct rcu_state *rsp)
init_callback_list(rdp); /* Re-enable callbacks on this CPU. */
rdp->dynticks->dynticks_nesting = DYNTICK_TASK_EXIT_IDLE;
rcu_sysidle_init_percpu_data(rdp->dynticks);
@@ -114366,10 +113546,10 @@ index 775d36c..d3542c61 100644
/*
diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h
-index 2e991f8..66aea20 100644
+index 9fb4e23..e47417d 100644
--- a/kernel/rcu/tree.h
+++ b/kernel/rcu/tree.h
-@@ -122,11 +122,11 @@ struct rcu_dynticks {
+@@ -114,11 +114,11 @@ struct rcu_dynticks {
long long dynticks_nesting; /* Track irq/process nesting level. */
/* Process level is worth LLONG_MAX/2. */
int dynticks_nmi_nesting; /* Track NMI nesting level. */
@@ -114383,7 +113563,7 @@ index 2e991f8..66aea20 100644
/* "Idle" excludes userspace execution. */
unsigned long dynticks_idle_jiffies;
/* End of last non-NMI non-idle period. */
-@@ -501,11 +501,11 @@ struct rcu_state {
+@@ -498,12 +498,12 @@ struct rcu_state {
/* End of fields guarded by barrier_mutex. */
unsigned long expedited_sequence; /* Take a ticket. */
@@ -114392,19 +113572,21 @@ index 2e991f8..66aea20 100644
- atomic_long_t expedited_workdone2; /* # done by others #2. */
- atomic_long_t expedited_workdone3; /* # done by others #3. */
- atomic_long_t expedited_normal; /* # fallbacks to normal. */
+- atomic_t expedited_need_qs; /* # CPUs left to check in. */
+ atomic_long_unchecked_t expedited_workdone0; /* # done by others #0. */
+ atomic_long_unchecked_t expedited_workdone1; /* # done by others #1. */
+ atomic_long_unchecked_t expedited_workdone2; /* # done by others #2. */
+ atomic_long_unchecked_t expedited_workdone3; /* # done by others #3. */
+ atomic_long_unchecked_t expedited_normal; /* # fallbacks to normal. */
- atomic_t expedited_need_qs; /* # CPUs left to check in. */
++ atomic_unchecked_t expedited_need_qs; /* # CPUs left to check in. */
wait_queue_head_t expedited_wq; /* Wait for check-ins. */
+ int ncpus_snap; /* # CPUs seen last time. */
diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h
-index b2bf396..beb28db 100644
+index 630c197..1db30ad 100644
--- a/kernel/rcu/tree_plugin.h
+++ b/kernel/rcu/tree_plugin.h
-@@ -1235,7 +1235,7 @@ static void rcu_boost_kthread_setaffinity(struct rcu_node *rnp, int outgoingcpu)
+@@ -1276,7 +1276,7 @@ static void rcu_boost_kthread_setaffinity(struct rcu_node *rnp, int outgoingcpu)
free_cpumask_var(cm);
}
@@ -114413,16 +113595,16 @@ index b2bf396..beb28db 100644
.store = &rcu_cpu_kthread_task,
.thread_should_run = rcu_cpu_kthread_should_run,
.thread_fn = rcu_cpu_kthread,
-@@ -1704,7 +1704,7 @@ static void print_cpu_stall_info(struct rcu_state *rsp, int cpu)
- print_cpu_stall_fast_no_hz(fast_no_hz, cpu);
- pr_err("\t%d: (%lu %s) idle=%03x/%llx/%d softirq=%u/%u fqs=%ld %s\n",
- cpu, ticks_value, ticks_title,
+@@ -1749,7 +1749,7 @@ static void print_cpu_stall_info(struct rcu_state *rsp, int cpu)
+ "o."[!!(rdp->grpmask & rdp->mynode->qsmaskinit)],
+ "N."[!!(rdp->grpmask & rdp->mynode->qsmaskinitnext)],
+ ticks_value, ticks_title,
- atomic_read(&rdtp->dynticks) & 0xfff,
+ atomic_read_unchecked(&rdtp->dynticks) & 0xfff,
rdtp->dynticks_nesting, rdtp->dynticks_nmi_nesting,
rdp->softirq_snap, kstat_softirqs_cpu(RCU_SOFTIRQ, cpu),
READ_ONCE(rsp->n_force_qs) - rsp->n_force_qs_gpstart,
-@@ -2234,8 +2234,8 @@ static int rcu_nocb_kthread(void *arg)
+@@ -2279,8 +2279,8 @@ static int rcu_nocb_kthread(void *arg)
}
trace_rcu_batch_end(rdp->rsp->name, c, !!list, 0, 0, 1);
smp_mb__before_atomic(); /* _add after CB invocation. */
@@ -114433,7 +113615,7 @@ index b2bf396..beb28db 100644
rdp->n_nocbs_invoked += c;
}
return 0;
-@@ -2585,9 +2585,9 @@ static void rcu_sysidle_enter(int irq)
+@@ -2630,9 +2630,9 @@ static void rcu_sysidle_enter(int irq)
j = jiffies;
WRITE_ONCE(rdtp->dynticks_idle_jiffies, j);
smp_mb__before_atomic();
@@ -114445,7 +113627,7 @@ index b2bf396..beb28db 100644
}
/*
-@@ -2658,9 +2658,9 @@ static void rcu_sysidle_exit(int irq)
+@@ -2703,9 +2703,9 @@ static void rcu_sysidle_exit(int irq)
/* Record end of idle period. */
smp_mb__before_atomic();
@@ -114457,7 +113639,7 @@ index b2bf396..beb28db 100644
/*
* If we are the timekeeping CPU, we are permitted to be non-idle
-@@ -2706,7 +2706,7 @@ static void rcu_sysidle_check_cpu(struct rcu_data *rdp, bool *isidle,
+@@ -2751,7 +2751,7 @@ static void rcu_sysidle_check_cpu(struct rcu_data *rdp, bool *isidle,
WARN_ON_ONCE(smp_processor_id() != tick_do_timer_cpu);
/* Pick up current idle and NMI-nesting counter and check. */
@@ -114467,19 +113649,19 @@ index b2bf396..beb28db 100644
*isidle = false; /* We are not idle! */
return;
diff --git a/kernel/rcu/tree_trace.c b/kernel/rcu/tree_trace.c
-index 6fc4c5f..76c6577 100644
+index ef7093c..1cc3d0f 100644
--- a/kernel/rcu/tree_trace.c
+++ b/kernel/rcu/tree_trace.c
@@ -125,7 +125,7 @@ static void print_one_rcu_data(struct seq_file *m, struct rcu_data *rdp)
rdp->rcu_qs_ctr_snap == per_cpu(rcu_qs_ctr, rdp->cpu),
- rdp->qs_pending);
+ rdp->core_needs_qs);
seq_printf(m, " dt=%d/%llx/%d df=%lu",
- atomic_read(&rdp->dynticks->dynticks),
+ atomic_read_unchecked(&rdp->dynticks->dynticks),
rdp->dynticks->dynticks_nesting,
rdp->dynticks->dynticks_nmi_nesting,
rdp->dynticks_fqs);
-@@ -187,11 +187,11 @@ static int show_rcuexp(struct seq_file *m, void *v)
+@@ -187,12 +187,12 @@ static int show_rcuexp(struct seq_file *m, void *v)
seq_printf(m, "s=%lu wd0=%lu wd1=%lu wd2=%lu wd3=%lu n=%lu enq=%d sc=%lu\n",
rsp->expedited_sequence,
@@ -114488,14 +113670,16 @@ index 6fc4c5f..76c6577 100644
- atomic_long_read(&rsp->expedited_workdone2),
- atomic_long_read(&rsp->expedited_workdone3),
- atomic_long_read(&rsp->expedited_normal),
+- atomic_read(&rsp->expedited_need_qs),
+ atomic_long_read_unchecked(&rsp->expedited_workdone0),
+ atomic_long_read_unchecked(&rsp->expedited_workdone1),
+ atomic_long_read_unchecked(&rsp->expedited_workdone2),
+ atomic_long_read_unchecked(&rsp->expedited_workdone3),
+ atomic_long_read_unchecked(&rsp->expedited_normal),
- atomic_read(&rsp->expedited_need_qs),
++ atomic_read_unchecked(&rsp->expedited_need_qs),
rsp->expedited_sequence / 2);
return 0;
+ }
diff --git a/kernel/resource.c b/kernel/resource.c
index f150dbb..33735c2 100644
--- a/kernel/resource.c
@@ -114562,19 +113746,19 @@ index 750ed60..eb01466 100644
#ifdef CONFIG_RT_GROUP_SCHED
/*
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
-index bcd214e..4459c83 100644
+index eb70592..d5c8eb1 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
-@@ -2136,7 +2136,7 @@ void set_numabalancing_state(bool enabled)
+@@ -2162,7 +2162,7 @@ void set_numabalancing_state(bool enabled)
int sysctl_numa_balancing(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
- struct ctl_table t;
+ ctl_table_no_const t;
int err;
- int state = numabalancing_enabled;
+ int state = static_branch_likely(&sched_numa_balancing);
-@@ -2635,8 +2635,10 @@ context_switch(struct rq *rq, struct task_struct *prev,
+@@ -2683,8 +2683,10 @@ context_switch(struct rq *rq, struct task_struct *prev,
next->active_mm = oldmm;
atomic_inc(&oldmm->mm_count);
enter_lazy_tlb(oldmm, next);
@@ -114586,7 +113770,7 @@ index bcd214e..4459c83 100644
if (!prev->mm) {
prev->active_mm = NULL;
-@@ -3455,6 +3457,8 @@ int can_nice(const struct task_struct *p, const int nice)
+@@ -3506,6 +3508,8 @@ int can_nice(const struct task_struct *p, const int nice)
/* convert nice value [19,-20] to rlimit style value [1,40] */
int nice_rlim = nice_to_rlimit(nice);
@@ -114595,7 +113779,7 @@ index bcd214e..4459c83 100644
return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) ||
capable(CAP_SYS_NICE));
}
-@@ -3481,7 +3485,8 @@ SYSCALL_DEFINE1(nice, int, increment)
+@@ -3532,7 +3536,8 @@ SYSCALL_DEFINE1(nice, int, increment)
nice = task_nice(current) + increment;
nice = clamp_val(nice, MIN_NICE, MAX_NICE);
@@ -114605,7 +113789,7 @@ index bcd214e..4459c83 100644
return -EPERM;
retval = security_task_setnice(current, nice);
-@@ -3793,6 +3798,7 @@ recheck:
+@@ -3841,6 +3846,7 @@ recheck:
if (policy != p->policy && !rlim_rtprio)
return -EPERM;
@@ -114613,7 +113797,7 @@ index bcd214e..4459c83 100644
/* can't increase priority */
if (attr->sched_priority > p->rt_priority &&
attr->sched_priority > rlim_rtprio)
-@@ -5127,6 +5133,7 @@ void idle_task_exit(void)
+@@ -5180,6 +5186,7 @@ void idle_task_exit(void)
if (mm != &init_mm) {
switch_mm(mm, &init_mm, current);
@@ -114621,7 +113805,7 @@ index bcd214e..4459c83 100644
finish_arch_post_lock_switch();
}
mmdrop(mm);
-@@ -5252,7 +5259,7 @@ static void migrate_tasks(struct rq *dead_rq)
+@@ -5305,7 +5312,7 @@ static void migrate_tasks(struct rq *dead_rq)
#if defined(CONFIG_SCHED_DEBUG) && defined(CONFIG_SYSCTL)
@@ -114630,7 +113814,7 @@ index bcd214e..4459c83 100644
{
.procname = "sched_domain",
.mode = 0555,
-@@ -5269,17 +5276,17 @@ static struct ctl_table sd_ctl_root[] = {
+@@ -5322,17 +5329,17 @@ static struct ctl_table sd_ctl_root[] = {
{}
};
@@ -114652,7 +113836,7 @@ index bcd214e..4459c83 100644
/*
* In the intermediate directories, both the child directory and
-@@ -5287,22 +5294,25 @@ static void sd_free_ctl_entry(struct ctl_table **tablep)
+@@ -5340,22 +5347,25 @@ static void sd_free_ctl_entry(struct ctl_table **tablep)
* will always be set. In the lowest directory the names are
* static strings and all have proc handlers.
*/
@@ -114684,7 +113868,7 @@ index bcd214e..4459c83 100644
const char *procname, void *data, int maxlen,
umode_t mode, proc_handler *proc_handler,
bool load_idx)
-@@ -5322,7 +5332,7 @@ set_table_entry(struct ctl_table *entry,
+@@ -5375,7 +5385,7 @@ set_table_entry(struct ctl_table *entry,
static struct ctl_table *
sd_alloc_ctl_domain_table(struct sched_domain *sd)
{
@@ -114693,7 +113877,7 @@ index bcd214e..4459c83 100644
if (table == NULL)
return NULL;
-@@ -5360,9 +5370,9 @@ sd_alloc_ctl_domain_table(struct sched_domain *sd)
+@@ -5413,9 +5423,9 @@ sd_alloc_ctl_domain_table(struct sched_domain *sd)
return table;
}
@@ -114705,7 +113889,7 @@ index bcd214e..4459c83 100644
struct sched_domain *sd;
int domain_num = 0, i;
char buf[32];
-@@ -5389,11 +5399,13 @@ static struct ctl_table_header *sd_sysctl_header;
+@@ -5442,11 +5452,13 @@ static struct ctl_table_header *sd_sysctl_header;
static void register_sched_domain_sysctl(void)
{
int i, cpu_num = num_possible_cpus();
@@ -114720,7 +113904,7 @@ index bcd214e..4459c83 100644
if (entry == NULL)
return;
-@@ -5415,8 +5427,12 @@ static void unregister_sched_domain_sysctl(void)
+@@ -5468,8 +5480,12 @@ static void unregister_sched_domain_sysctl(void)
{
unregister_sysctl_table(sd_sysctl_header);
sd_sysctl_header = NULL;
@@ -114736,10 +113920,10 @@ index bcd214e..4459c83 100644
#else
static void register_sched_domain_sysctl(void)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
-index 9a5e60f..c4ee2d8 100644
+index cfdc0e6..71f2abd 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
-@@ -7746,7 +7746,7 @@ static void nohz_idle_balance(struct rq *this_rq, enum cpu_idle_type idle) { }
+@@ -7817,7 +7817,7 @@ static void nohz_idle_balance(struct rq *this_rq, enum cpu_idle_type idle) { }
* run_rebalance_domains is triggered when needed from the scheduler tick.
* Also triggered for nohz idle balancing (with nohz_balancing_kick set).
*/
@@ -114749,12 +113933,12 @@ index 9a5e60f..c4ee2d8 100644
struct rq *this_rq = this_rq();
enum cpu_idle_type idle = this_rq->idle_balance ?
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
-index 6d2a119..ac24f34 100644
+index b242775..b497b69 100644
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
-@@ -1229,7 +1229,7 @@ struct sched_class {
+@@ -1228,7 +1228,7 @@ struct sched_class {
#ifdef CONFIG_FAIR_GROUP_SCHED
- void (*task_move_group) (struct task_struct *p, int on_rq);
+ void (*task_move_group) (struct task_struct *p);
#endif
-};
+} __do_const;
@@ -114762,7 +113946,7 @@ index 6d2a119..ac24f34 100644
static inline void put_prev_task(struct rq *rq, struct task_struct *prev)
{
diff --git a/kernel/seccomp.c b/kernel/seccomp.c
-index 5bd4779..6bf906d 100644
+index 580ac2d..15a1795 100644
--- a/kernel/seccomp.c
+++ b/kernel/seccomp.c
@@ -316,24 +316,24 @@ static inline void seccomp_sync_threads(void)
@@ -114802,7 +113986,7 @@ index 5bd4779..6bf906d 100644
}
diff --git a/kernel/signal.c b/kernel/signal.c
-index 0f6bbbe..4791c7d 100644
+index f3f1f7a..d2e7863 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -53,12 +53,12 @@ static struct kmem_cache *sigqueue_cachep;
@@ -114848,7 +114032,7 @@ index 0f6bbbe..4791c7d 100644
if (is_global_init(tsk))
return 1;
if (handler != SIG_IGN && handler != SIG_DFL)
-@@ -602,6 +605,7 @@ static int __dequeue_signal(struct sigpending *pending, sigset_t *mask,
+@@ -556,6 +559,7 @@ static int __dequeue_signal(struct sigpending *pending, sigset_t *mask,
*
* All callers have to hold the siglock.
*/
@@ -114856,7 +114040,7 @@ index 0f6bbbe..4791c7d 100644
int dequeue_signal(struct task_struct *tsk, sigset_t *mask, siginfo_t *info)
{
int signr;
-@@ -788,6 +792,13 @@ static int check_kill_permission(int sig, struct siginfo *info,
+@@ -742,6 +746,13 @@ static int check_kill_permission(int sig, struct siginfo *info,
}
}
@@ -114870,7 +114054,7 @@ index 0f6bbbe..4791c7d 100644
return security_task_kill(t, info, sig, 0);
}
-@@ -1171,7 +1182,7 @@ __group_send_sig_info(int sig, struct siginfo *info, struct task_struct *p)
+@@ -1125,7 +1136,7 @@ __group_send_sig_info(int sig, struct siginfo *info, struct task_struct *p)
return send_signal(sig, info, p, 1);
}
@@ -114879,7 +114063,7 @@ index 0f6bbbe..4791c7d 100644
specific_send_sig_info(int sig, struct siginfo *info, struct task_struct *t)
{
return send_signal(sig, info, t, 0);
-@@ -1208,6 +1219,7 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
+@@ -1162,6 +1173,7 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
unsigned long int flags;
int ret, blocked, ignored;
struct k_sigaction *action;
@@ -114887,7 +114071,7 @@ index 0f6bbbe..4791c7d 100644
spin_lock_irqsave(&t->sighand->siglock, flags);
action = &t->sighand->action[sig-1];
-@@ -1222,9 +1234,18 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
+@@ -1176,9 +1188,18 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
}
if (action->sa.sa_handler == SIG_DFL)
t->signal->flags &= ~SIGNAL_UNKILLABLE;
@@ -114906,7 +114090,7 @@ index 0f6bbbe..4791c7d 100644
return ret;
}
-@@ -1305,8 +1326,11 @@ int group_send_sig_info(int sig, struct siginfo *info, struct task_struct *p)
+@@ -1259,8 +1280,11 @@ int group_send_sig_info(int sig, struct siginfo *info, struct task_struct *p)
ret = check_kill_permission(sig, info, p);
rcu_read_unlock();
@@ -114919,7 +114103,7 @@ index 0f6bbbe..4791c7d 100644
return ret;
}
-@@ -1820,9 +1844,8 @@ static int sigkill_pending(struct task_struct *tsk)
+@@ -1774,9 +1798,8 @@ static int sigkill_pending(struct task_struct *tsk)
* If we actually decide not to stop at all because the tracer
* is gone, we keep current->exit_code unless clear_code.
*/
@@ -114930,7 +114114,7 @@ index 0f6bbbe..4791c7d 100644
{
bool gstop_done = false;
-@@ -1942,6 +1965,7 @@ static void ptrace_stop(int exit_code, int why, int clear_code, siginfo_t *info)
+@@ -1896,6 +1919,7 @@ static void ptrace_stop(int exit_code, int why, int clear_code, siginfo_t *info)
recalc_sigpending_tsk(current);
}
@@ -114938,7 +114122,7 @@ index 0f6bbbe..4791c7d 100644
static void ptrace_do_notify(int signr, int exit_code, int why)
{
siginfo_t info;
-@@ -1989,8 +2013,8 @@ void ptrace_notify(int exit_code)
+@@ -1943,8 +1967,8 @@ void ptrace_notify(int exit_code)
* %false if group stop is already cancelled or ptrace trap is scheduled.
* %true if participated in group stop.
*/
@@ -114948,7 +114132,7 @@ index 0f6bbbe..4791c7d 100644
{
struct signal_struct *sig = current->signal;
-@@ -2002,8 +2026,10 @@ static bool do_signal_stop(int signr)
+@@ -1956,8 +1980,10 @@ static bool do_signal_stop(int signr)
WARN_ON_ONCE(signr & ~JOBCTL_STOP_SIGMASK);
if (!likely(current->jobctl & JOBCTL_STOP_DEQUEUED) ||
@@ -114960,7 +114144,7 @@ index 0f6bbbe..4791c7d 100644
/*
* There is no group stop already in progress. We must
* initiate one now.
-@@ -2087,6 +2113,7 @@ static bool do_signal_stop(int signr)
+@@ -2041,6 +2067,7 @@ static bool do_signal_stop(int signr)
* Schedule it and let the caller deal with it.
*/
task_set_jobctl_pending(current, JOBCTL_TRAP_STOP);
@@ -114968,7 +114152,7 @@ index 0f6bbbe..4791c7d 100644
return false;
}
}
-@@ -2913,7 +2940,15 @@ do_send_specific(pid_t tgid, pid_t pid, int sig, struct siginfo *info)
+@@ -2864,7 +2891,15 @@ do_send_specific(pid_t tgid, pid_t pid, int sig, struct siginfo *info)
int error = -ESRCH;
rcu_read_lock();
@@ -114985,7 +114169,7 @@ index 0f6bbbe..4791c7d 100644
if (p && (tgid <= 0 || task_tgid_vnr(p) == tgid)) {
error = check_kill_permission(sig, info, p);
/*
-@@ -3242,8 +3277,8 @@ COMPAT_SYSCALL_DEFINE2(sigaltstack,
+@@ -3193,8 +3228,8 @@ COMPAT_SYSCALL_DEFINE2(sigaltstack,
}
seg = get_fs();
set_fs(KERNEL_DS);
@@ -114997,10 +114181,10 @@ index 0f6bbbe..4791c7d 100644
set_fs(seg);
if (ret >= 0 && uoss_ptr) {
diff --git a/kernel/smpboot.c b/kernel/smpboot.c
-index a818cbc..1b218b9 100644
+index d264f59..48b8da3 100644
--- a/kernel/smpboot.c
+++ b/kernel/smpboot.c
-@@ -302,7 +302,7 @@ int smpboot_register_percpu_thread_cpumask(struct smp_hotplug_thread *plug_threa
+@@ -301,7 +301,7 @@ int smpboot_register_percpu_thread_cpumask(struct smp_hotplug_thread *plug_threa
if (cpumask_test_cpu(cpu, cpumask))
smpboot_unpark_thread(plug_thread, cpu);
}
@@ -115009,7 +114193,7 @@ index a818cbc..1b218b9 100644
out:
mutex_unlock(&smpboot_threads_lock);
put_online_cpus();
-@@ -320,7 +320,7 @@ void smpboot_unregister_percpu_thread(struct smp_hotplug_thread *plug_thread)
+@@ -319,7 +319,7 @@ void smpboot_unregister_percpu_thread(struct smp_hotplug_thread *plug_thread)
{
get_online_cpus();
mutex_lock(&smpboot_threads_lock);
@@ -115077,7 +114261,7 @@ index 479e443..66d845e1 100644
.thread_should_run = ksoftirqd_should_run,
.thread_fn = run_ksoftirqd,
diff --git a/kernel/sys.c b/kernel/sys.c
-index fa2f2f6..3682023 100644
+index 6af9212..e1f1adf 100644
--- a/kernel/sys.c
+++ b/kernel/sys.c
@@ -160,6 +160,12 @@ static int set_one_prio(struct task_struct *p, int niceval, int error)
@@ -115260,10 +114444,10 @@ index fa2f2f6..3682023 100644
if (!retval) {
if (old_rlim)
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
-index e69201d..57f7b12 100644
+index dc6858d..93aa01c 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
-@@ -94,7 +94,6 @@
+@@ -95,7 +95,6 @@
#endif
#if defined(CONFIG_SYSCTL)
@@ -115271,7 +114455,7 @@ index e69201d..57f7b12 100644
/* External variables not in a header file. */
extern int suid_dumpable;
#ifdef CONFIG_COREDUMP
-@@ -111,22 +110,24 @@ extern int sysctl_nr_open_min, sysctl_nr_open_max;
+@@ -112,22 +111,24 @@ extern int sysctl_nr_open_min, sysctl_nr_open_max;
#ifndef CONFIG_MMU
extern int sysctl_nr_trim_pages;
#endif
@@ -115305,7 +114489,7 @@ index e69201d..57f7b12 100644
#endif
/* this is needed for the proc_doulongvec_minmax of vm_dirty_bytes */
-@@ -180,10 +181,8 @@ static int proc_taint(struct ctl_table *table, int write,
+@@ -181,10 +182,8 @@ static int proc_taint(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos);
#endif
@@ -115317,7 +114501,7 @@ index e69201d..57f7b12 100644
static int proc_dointvec_minmax_coredump(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos);
-@@ -214,6 +213,8 @@ static int sysrq_sysctl_handler(struct ctl_table *table, int write,
+@@ -215,6 +214,8 @@ static int sysrq_sysctl_handler(struct ctl_table *table, int write,
#endif
@@ -115326,7 +114510,7 @@ index e69201d..57f7b12 100644
static struct ctl_table kern_table[];
static struct ctl_table vm_table[];
static struct ctl_table fs_table[];
-@@ -228,6 +229,20 @@ extern struct ctl_table epoll_table[];
+@@ -229,6 +230,20 @@ extern struct ctl_table epoll_table[];
int sysctl_legacy_va_layout;
#endif
@@ -115347,7 +114531,7 @@ index e69201d..57f7b12 100644
/* The default sysctl tables: */
static struct ctl_table sysctl_base_table[] = {
-@@ -276,6 +291,22 @@ static int max_extfrag_threshold = 1000;
+@@ -277,6 +292,22 @@ static int max_extfrag_threshold = 1000;
#endif
static struct ctl_table kern_table[] = {
@@ -115370,7 +114554,7 @@ index e69201d..57f7b12 100644
{
.procname = "sched_child_runs_first",
.data = &sysctl_sched_child_runs_first,
-@@ -628,7 +659,7 @@ static struct ctl_table kern_table[] = {
+@@ -629,7 +660,7 @@ static struct ctl_table kern_table[] = {
.maxlen = sizeof(int),
.mode = 0644,
/* only handle a transition from default "0" to "1" */
@@ -115379,7 +114563,7 @@ index e69201d..57f7b12 100644
.extra1 = &one,
.extra2 = &one,
},
-@@ -639,7 +670,7 @@ static struct ctl_table kern_table[] = {
+@@ -640,7 +671,7 @@ static struct ctl_table kern_table[] = {
.data = &modprobe_path,
.maxlen = KMOD_PATH_LEN,
.mode = 0644,
@@ -115388,7 +114572,7 @@ index e69201d..57f7b12 100644
},
{
.procname = "modules_disabled",
-@@ -647,7 +678,7 @@ static struct ctl_table kern_table[] = {
+@@ -648,7 +679,7 @@ static struct ctl_table kern_table[] = {
.maxlen = sizeof(int),
.mode = 0644,
/* only handle a transition from default "0" to "1" */
@@ -115397,7 +114581,7 @@ index e69201d..57f7b12 100644
.extra1 = &one,
.extra2 = &one,
},
-@@ -802,20 +833,24 @@ static struct ctl_table kern_table[] = {
+@@ -803,20 +834,24 @@ static struct ctl_table kern_table[] = {
.data = &dmesg_restrict,
.maxlen = sizeof(int),
.mode = 0644,
@@ -115425,7 +114609,7 @@ index e69201d..57f7b12 100644
{
.procname = "ngroups_max",
.data = &ngroups_max,
-@@ -960,6 +995,17 @@ static struct ctl_table kern_table[] = {
+@@ -981,6 +1016,17 @@ static struct ctl_table kern_table[] = {
.mode = 0644,
.proc_handler = proc_dointvec,
},
@@ -115443,7 +114627,7 @@ index e69201d..57f7b12 100644
#endif
#if defined(CONFIG_MMU)
{
-@@ -1082,10 +1128,17 @@ static struct ctl_table kern_table[] = {
+@@ -1103,10 +1149,17 @@ static struct ctl_table kern_table[] = {
*/
{
.procname = "perf_event_paranoid",
@@ -115464,7 +114648,7 @@ index e69201d..57f7b12 100644
},
{
.procname = "perf_event_mlock_kb",
-@@ -1376,6 +1429,13 @@ static struct ctl_table vm_table[] = {
+@@ -1409,6 +1462,13 @@ static struct ctl_table vm_table[] = {
.proc_handler = proc_dointvec_minmax,
.extra1 = &zero,
},
@@ -115478,7 +114662,7 @@ index e69201d..57f7b12 100644
#else
{
.procname = "nr_trim_pages",
-@@ -1702,6 +1762,20 @@ static struct ctl_table fs_table[] = {
+@@ -1735,6 +1795,20 @@ static struct ctl_table fs_table[] = {
.proc_handler = &pipe_proc_fn,
.extra1 = &pipe_min_size,
},
@@ -115499,7 +114683,7 @@ index e69201d..57f7b12 100644
{ }
};
-@@ -1852,6 +1926,16 @@ int proc_dostring(struct ctl_table *table, int write,
+@@ -1885,6 +1959,16 @@ int proc_dostring(struct ctl_table *table, int write,
(char __user *)buffer, lenp, ppos);
}
@@ -115516,7 +114700,7 @@ index e69201d..57f7b12 100644
static size_t proc_skip_spaces(char **buf)
{
size_t ret;
-@@ -1957,6 +2041,8 @@ static int proc_put_long(void __user **buf, size_t *size, unsigned long val,
+@@ -1990,6 +2074,8 @@ static int proc_put_long(void __user **buf, size_t *size, unsigned long val,
len = strlen(tmp);
if (len > *size)
len = *size;
@@ -115525,7 +114709,7 @@ index e69201d..57f7b12 100644
if (copy_to_user(*buf, tmp, len))
return -EFAULT;
*size -= len;
-@@ -2135,6 +2221,44 @@ int proc_dointvec(struct ctl_table *table, int write,
+@@ -2168,6 +2254,44 @@ int proc_dointvec(struct ctl_table *table, int write,
NULL,NULL);
}
@@ -115570,7 +114754,7 @@ index e69201d..57f7b12 100644
/*
* Taint values can only be increased
* This means we can safely use a temporary.
-@@ -2142,7 +2266,7 @@ int proc_dointvec(struct ctl_table *table, int write,
+@@ -2175,7 +2299,7 @@ int proc_dointvec(struct ctl_table *table, int write,
static int proc_taint(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
@@ -115579,7 +114763,7 @@ index e69201d..57f7b12 100644
unsigned long tmptaint = get_taint();
int err;
-@@ -2170,16 +2294,14 @@ static int proc_taint(struct ctl_table *table, int write,
+@@ -2203,16 +2327,14 @@ static int proc_taint(struct ctl_table *table, int write,
return err;
}
@@ -115598,7 +114782,7 @@ index e69201d..57f7b12 100644
struct do_proc_dointvec_minmax_conv_param {
int *min;
-@@ -2210,6 +2332,32 @@ static int do_proc_dointvec_minmax_conv(bool *negp, unsigned long *lvalp,
+@@ -2243,6 +2365,32 @@ static int do_proc_dointvec_minmax_conv(bool *negp, unsigned long *lvalp,
return 0;
}
@@ -115631,7 +114815,7 @@ index e69201d..57f7b12 100644
/**
* proc_dointvec_minmax - read a vector of integers with min/max values
* @table: the sysctl table
-@@ -2237,6 +2385,17 @@ int proc_dointvec_minmax(struct ctl_table *table, int write,
+@@ -2270,6 +2418,17 @@ int proc_dointvec_minmax(struct ctl_table *table, int write,
do_proc_dointvec_minmax_conv, &param);
}
@@ -115649,7 +114833,7 @@ index e69201d..57f7b12 100644
static void validate_coredump_safety(void)
{
#ifdef CONFIG_COREDUMP
-@@ -2739,6 +2898,12 @@ int proc_dostring(struct ctl_table *table, int write,
+@@ -2772,6 +2931,12 @@ int proc_dostring(struct ctl_table *table, int write,
return -ENOSYS;
}
@@ -115662,7 +114846,7 @@ index e69201d..57f7b12 100644
int proc_dointvec(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
-@@ -2795,5 +2960,6 @@ EXPORT_SYMBOL(proc_dointvec_minmax);
+@@ -2828,5 +2993,6 @@ EXPORT_SYMBOL(proc_dointvec_minmax);
EXPORT_SYMBOL(proc_dointvec_userhz_jiffies);
EXPORT_SYMBOL(proc_dointvec_ms_jiffies);
EXPORT_SYMBOL(proc_dostring);
@@ -115710,10 +114894,10 @@ index 7fbba635..7cc64ae 100644
.clock_get = alarm_clock_get,
.timer_create = alarm_timer_create,
diff --git a/kernel/time/posix-cpu-timers.c b/kernel/time/posix-cpu-timers.c
-index 892e3da..cb71aa5 100644
+index f5e86d2..33a4099 100644
--- a/kernel/time/posix-cpu-timers.c
+++ b/kernel/time/posix-cpu-timers.c
-@@ -1470,14 +1470,14 @@ struct k_clock clock_posix_cpu = {
+@@ -1497,14 +1497,14 @@ struct k_clock clock_posix_cpu = {
static __init int init_posix_cpu_timers(void)
{
@@ -115863,7 +115047,7 @@ index 86751c6..7875536 100644
update_vsyscall_tz();
if (firsttime) {
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
-index 44d2cc0..337ccab 100644
+index d563c19..5108cb0 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -15,6 +15,7 @@
@@ -115884,10 +115068,10 @@ index 44d2cc0..337ccab 100644
write_seqcount_begin(&tk_core.seq);
diff --git a/kernel/time/timer.c b/kernel/time/timer.c
-index 101240b..f2822a4 100644
+index bbc5d11..6141050 100644
--- a/kernel/time/timer.c
+++ b/kernel/time/timer.c
-@@ -1422,7 +1422,7 @@ void update_process_times(int user_tick)
+@@ -1429,7 +1429,7 @@ void update_process_times(int user_tick)
/*
* This function runs timers and the timer-tq in bottom half context.
*/
@@ -115897,7 +115081,7 @@ index 101240b..f2822a4 100644
struct tvec_base *base = this_cpu_ptr(&tvec_bases);
diff --git a/kernel/time/timer_list.c b/kernel/time/timer_list.c
-index f75e35b..f488695 100644
+index ba7d8b2..aa301b0 100644
--- a/kernel/time/timer_list.c
+++ b/kernel/time/timer_list.c
@@ -50,12 +50,16 @@ static void SEQ_printf(struct seq_file *m, const char *fmt, ...)
@@ -116018,7 +115202,7 @@ index 1adecb4..b4fb631 100644
return -ENOMEM;
return 0;
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
-index 1153c43..32fada6 100644
+index e45db6b..1fb429b 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -120,6 +120,7 @@ config TRACING_SUPPORT
@@ -116038,7 +115222,7 @@ index 1153c43..32fada6 100644
select GENERIC_TRACER
select STACKTRACE
diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
-index 90e72a0..a155f16 100644
+index a990824..9c8e7ad 100644
--- a/kernel/trace/blktrace.c
+++ b/kernel/trace/blktrace.c
@@ -328,7 +328,7 @@ static ssize_t blk_dropped_read(struct file *filp, char __user *buffer,
@@ -116069,10 +115253,10 @@ index 90e72a0..a155f16 100644
ret = -EIO;
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
-index b0623ac..73379bc 100644
+index 3f743b1..a3e3588 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
-@@ -2418,12 +2418,17 @@ ftrace_code_disable(struct module *mod, struct dyn_ftrace *rec)
+@@ -2423,12 +2423,17 @@ ftrace_code_disable(struct module *mod, struct dyn_ftrace *rec)
if (unlikely(ftrace_disabled))
return 0;
@@ -116092,18 +115276,18 @@ index b0623ac..73379bc 100644
}
/*
-@@ -4812,8 +4817,10 @@ static int ftrace_process_locs(struct module *mod,
+@@ -4813,8 +4818,10 @@ static int ftrace_process_locs(struct module *mod,
if (!count)
return 0;
+ pax_open_kernel();
sort(start, count, sizeof(*start),
- ftrace_cmp_ips, ftrace_swap_ips);
+ ftrace_cmp_ips, NULL);
+ pax_close_kernel();
start_pg = ftrace_allocate_pages(count);
if (!start_pg)
-@@ -5680,7 +5687,7 @@ static int alloc_retstack_tasklist(struct ftrace_ret_stack **ret_stack_list)
+@@ -5691,7 +5698,7 @@ static int alloc_retstack_tasklist(struct ftrace_ret_stack **ret_stack_list)
if (t->ret_stack == NULL) {
atomic_set(&t->tracing_graph_pause, 0);
@@ -116112,7 +115296,7 @@ index b0623ac..73379bc 100644
t->curr_ret_stack = -1;
/* Make sure the tasks see the -1 first: */
smp_wmb();
-@@ -5903,7 +5910,7 @@ static void
+@@ -5914,7 +5921,7 @@ static void
graph_init_task(struct task_struct *t, struct ftrace_ret_stack *ret_stack)
{
atomic_set(&t->tracing_graph_pause, 0);
@@ -116122,7 +115306,7 @@ index b0623ac..73379bc 100644
/* make curr_ret_stack visible before we add the ret_stack */
smp_wmb();
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
-index fc347f8..4301ecb 100644
+index 9c6045a..927be25 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -296,9 +296,9 @@ struct buffer_data_page {
@@ -116199,7 +115383,7 @@ index fc347f8..4301ecb 100644
local_sub(BUF_PAGE_SIZE, &cpu_buffer->entries_bytes);
}
-@@ -1957,7 +1957,7 @@ rb_handle_head_page(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -1951,7 +1951,7 @@ rb_handle_head_page(struct ring_buffer_per_cpu *cpu_buffer,
* it is our responsibility to update
* the counters.
*/
@@ -116208,7 +115392,7 @@ index fc347f8..4301ecb 100644
local_sub(BUF_PAGE_SIZE, &cpu_buffer->entries_bytes);
/*
-@@ -2091,7 +2091,7 @@ rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2085,7 +2085,7 @@ rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer,
if (tail == BUF_PAGE_SIZE)
tail_page->real_end = 0;
@@ -116217,7 +115401,7 @@ index fc347f8..4301ecb 100644
return;
}
-@@ -2126,7 +2126,7 @@ rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2120,7 +2120,7 @@ rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer,
rb_event_set_padding(event);
/* Set the write back to the previous setting */
@@ -116226,7 +115410,7 @@ index fc347f8..4301ecb 100644
return;
}
-@@ -2138,7 +2138,7 @@ rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2132,7 +2132,7 @@ rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer,
/* Set write to end of buffer */
length = (tail + length) - BUF_PAGE_SIZE;
@@ -116235,7 +115419,7 @@ index fc347f8..4301ecb 100644
}
/*
-@@ -2165,7 +2165,7 @@ rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2159,7 +2159,7 @@ rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer,
* about it.
*/
if (unlikely(next_page == commit_page)) {
@@ -116244,7 +115428,7 @@ index fc347f8..4301ecb 100644
goto out_reset;
}
-@@ -2195,7 +2195,7 @@ rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2189,7 +2189,7 @@ rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer,
* this is easy, just stop here.
*/
if (!(buffer->flags & RB_FL_OVERWRITE)) {
@@ -116253,7 +115437,7 @@ index fc347f8..4301ecb 100644
goto out_reset;
}
-@@ -2221,7 +2221,7 @@ rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2215,7 +2215,7 @@ rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer,
cpu_buffer->tail_page) &&
(cpu_buffer->commit_page ==
cpu_buffer->reader_page))) {
@@ -116262,7 +115446,7 @@ index fc347f8..4301ecb 100644
goto out_reset;
}
}
-@@ -2372,7 +2372,7 @@ rb_try_to_discard(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2366,7 +2366,7 @@ rb_try_to_discard(struct ring_buffer_per_cpu *cpu_buffer,
if (bpage->page == (void *)addr && rb_page_write(bpage) == old_index) {
unsigned long write_mask =
@@ -116271,7 +115455,7 @@ index fc347f8..4301ecb 100644
unsigned long event_length = rb_event_length(event);
/*
* This is on the tail page. It is possible that
-@@ -2382,7 +2382,7 @@ rb_try_to_discard(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2376,7 +2376,7 @@ rb_try_to_discard(struct ring_buffer_per_cpu *cpu_buffer,
*/
old_index += write_mask;
new_index += write_mask;
@@ -116280,7 +115464,7 @@ index fc347f8..4301ecb 100644
if (index == old_index) {
/* update counters */
local_sub(event_length, &cpu_buffer->entries_bytes);
-@@ -2397,7 +2397,7 @@ rb_try_to_discard(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2391,7 +2391,7 @@ rb_try_to_discard(struct ring_buffer_per_cpu *cpu_buffer,
static void rb_start_commit(struct ring_buffer_per_cpu *cpu_buffer)
{
local_inc(&cpu_buffer->committing);
@@ -116289,7 +115473,7 @@ index fc347f8..4301ecb 100644
}
static void
-@@ -2462,7 +2462,7 @@ static inline void rb_end_commit(struct ring_buffer_per_cpu *cpu_buffer)
+@@ -2456,7 +2456,7 @@ static inline void rb_end_commit(struct ring_buffer_per_cpu *cpu_buffer)
return;
again:
@@ -116298,7 +115482,7 @@ index fc347f8..4301ecb 100644
/* synchronize with interrupts */
barrier();
if (local_read(&cpu_buffer->committing) == 1)
-@@ -2478,7 +2478,7 @@ static inline void rb_end_commit(struct ring_buffer_per_cpu *cpu_buffer)
+@@ -2472,7 +2472,7 @@ static inline void rb_end_commit(struct ring_buffer_per_cpu *cpu_buffer)
* updating of the commit page and the clearing of the
* committing counter.
*/
@@ -116307,7 +115491,7 @@ index fc347f8..4301ecb 100644
!local_read(&cpu_buffer->committing)) {
local_inc(&cpu_buffer->committing);
goto again;
-@@ -2706,7 +2706,7 @@ __rb_reserve_next(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2700,7 +2700,7 @@ __rb_reserve_next(struct ring_buffer_per_cpu *cpu_buffer,
info->length += RB_LEN_TIME_EXTEND;
tail_page = info->tail_page = cpu_buffer->tail_page;
@@ -116316,7 +115500,7 @@ index fc347f8..4301ecb 100644
/* set write to only the index of the write */
write &= RB_WRITE_MASK;
-@@ -2729,7 +2729,7 @@ __rb_reserve_next(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2723,7 +2723,7 @@ __rb_reserve_next(struct ring_buffer_per_cpu *cpu_buffer,
kmemcheck_annotate_bitfield(event, bitfield);
rb_update_event(cpu_buffer, event, info);
@@ -116325,7 +115509,7 @@ index fc347f8..4301ecb 100644
/*
* If this is the first commit on the page, then update
-@@ -2766,7 +2766,7 @@ rb_reserve_next_event(struct ring_buffer *buffer,
+@@ -2760,7 +2760,7 @@ rb_reserve_next_event(struct ring_buffer *buffer,
barrier();
if (unlikely(ACCESS_ONCE(cpu_buffer->buffer) != buffer)) {
local_dec(&cpu_buffer->committing);
@@ -116334,7 +115518,7 @@ index fc347f8..4301ecb 100644
return NULL;
}
#endif
-@@ -2892,7 +2892,7 @@ rb_decrement_entry(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2889,7 +2889,7 @@ rb_decrement_entry(struct ring_buffer_per_cpu *cpu_buffer,
/* Do the likely case first */
if (likely(bpage->page == (void *)addr)) {
@@ -116343,7 +115527,7 @@ index fc347f8..4301ecb 100644
return;
}
-@@ -2904,7 +2904,7 @@ rb_decrement_entry(struct ring_buffer_per_cpu *cpu_buffer,
+@@ -2901,7 +2901,7 @@ rb_decrement_entry(struct ring_buffer_per_cpu *cpu_buffer,
start = bpage;
do {
if (bpage->page == (void *)addr) {
@@ -116352,7 +115536,7 @@ index fc347f8..4301ecb 100644
return;
}
rb_inc_page(cpu_buffer, &bpage);
-@@ -3192,7 +3192,7 @@ static inline unsigned long
+@@ -3189,7 +3189,7 @@ static inline unsigned long
rb_num_of_entries(struct ring_buffer_per_cpu *cpu_buffer)
{
return local_read(&cpu_buffer->entries) -
@@ -116361,7 +115545,7 @@ index fc347f8..4301ecb 100644
}
/**
-@@ -3281,7 +3281,7 @@ unsigned long ring_buffer_overrun_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3278,7 +3278,7 @@ unsigned long ring_buffer_overrun_cpu(struct ring_buffer *buffer, int cpu)
return 0;
cpu_buffer = buffer->buffers[cpu];
@@ -116370,7 +115554,7 @@ index fc347f8..4301ecb 100644
return ret;
}
-@@ -3304,7 +3304,7 @@ ring_buffer_commit_overrun_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3301,7 +3301,7 @@ ring_buffer_commit_overrun_cpu(struct ring_buffer *buffer, int cpu)
return 0;
cpu_buffer = buffer->buffers[cpu];
@@ -116379,7 +115563,7 @@ index fc347f8..4301ecb 100644
return ret;
}
-@@ -3326,7 +3326,7 @@ ring_buffer_dropped_events_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3323,7 +3323,7 @@ ring_buffer_dropped_events_cpu(struct ring_buffer *buffer, int cpu)
return 0;
cpu_buffer = buffer->buffers[cpu];
@@ -116388,7 +115572,7 @@ index fc347f8..4301ecb 100644
return ret;
}
-@@ -3389,7 +3389,7 @@ unsigned long ring_buffer_overruns(struct ring_buffer *buffer)
+@@ -3386,7 +3386,7 @@ unsigned long ring_buffer_overruns(struct ring_buffer *buffer)
/* if you care about this being correct, lock the buffer */
for_each_buffer_cpu(buffer, cpu) {
cpu_buffer = buffer->buffers[cpu];
@@ -116397,7 +115581,7 @@ index fc347f8..4301ecb 100644
}
return overruns;
-@@ -3560,8 +3560,8 @@ rb_get_reader_page(struct ring_buffer_per_cpu *cpu_buffer)
+@@ -3557,8 +3557,8 @@ rb_get_reader_page(struct ring_buffer_per_cpu *cpu_buffer)
/*
* Reset the reader page to size zero.
*/
@@ -116408,7 +115592,7 @@ index fc347f8..4301ecb 100644
local_set(&cpu_buffer->reader_page->page->commit, 0);
cpu_buffer->reader_page->real_end = 0;
-@@ -3595,7 +3595,7 @@ rb_get_reader_page(struct ring_buffer_per_cpu *cpu_buffer)
+@@ -3592,7 +3592,7 @@ rb_get_reader_page(struct ring_buffer_per_cpu *cpu_buffer)
* want to compare with the last_overrun.
*/
smp_mb();
@@ -116417,7 +115601,7 @@ index fc347f8..4301ecb 100644
/*
* Here's the tricky part.
-@@ -4177,8 +4177,8 @@ rb_reset_cpu(struct ring_buffer_per_cpu *cpu_buffer)
+@@ -4178,8 +4178,8 @@ rb_reset_cpu(struct ring_buffer_per_cpu *cpu_buffer)
cpu_buffer->head_page
= list_entry(cpu_buffer->pages, struct buffer_page, list);
@@ -116428,7 +115612,7 @@ index fc347f8..4301ecb 100644
local_set(&cpu_buffer->head_page->page->commit, 0);
cpu_buffer->head_page->read = 0;
-@@ -4188,18 +4188,18 @@ rb_reset_cpu(struct ring_buffer_per_cpu *cpu_buffer)
+@@ -4189,18 +4189,18 @@ rb_reset_cpu(struct ring_buffer_per_cpu *cpu_buffer)
INIT_LIST_HEAD(&cpu_buffer->reader_page->list);
INIT_LIST_HEAD(&cpu_buffer->new_pages);
@@ -116453,7 +115637,7 @@ index fc347f8..4301ecb 100644
cpu_buffer->read = 0;
cpu_buffer->read_bytes = 0;
-@@ -4589,8 +4589,8 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
+@@ -4590,8 +4590,8 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
rb_init_page(bpage);
bpage = reader->page;
reader->page = *data_page;
@@ -116465,10 +115649,10 @@ index fc347f8..4301ecb 100644
*data_page = bpage;
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
-index 6e79408..bc64ae3 100644
+index d929340..e0e84ca 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
-@@ -3539,7 +3539,7 @@ int trace_keep_overwrite(struct tracer *tracer, u32 mask, int set)
+@@ -3546,7 +3546,7 @@ int trace_keep_overwrite(struct tracer *tracer, u32 mask, int set)
return 0;
}
@@ -116476,12 +115660,12 @@ index 6e79408..bc64ae3 100644
+int set_tracer_flag(struct trace_array *tr, unsigned long mask, int enabled)
{
/* do nothing if flag is already set */
- if (!!(trace_flags & mask) == !!enabled)
+ if (!!(tr->trace_flags & mask) == !!enabled)
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
-index 74bde81..f9abfd4 100644
+index 919d9d0..8db0243 100644
--- a/kernel/trace/trace.h
+++ b/kernel/trace/trace.h
-@@ -1272,7 +1272,7 @@ extern const char *__stop___tracepoint_str[];
+@@ -1335,7 +1335,7 @@ void trace_printk_control(bool enabled);
void trace_printk_init_buffers(void);
void trace_printk_start_comm(void);
int trace_keep_overwrite(struct tracer *tracer, u32 mask, int set);
@@ -116511,10 +115695,10 @@ index 0f06532..247c8e7 100644
+ return atomic64_inc_return_unchecked(&trace_counter);
}
diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
-index 7ca09cd..bda797e 100644
+index 4f6ef69..90c3b0f 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
-@@ -1909,7 +1909,6 @@ __trace_early_add_new_event(struct trace_event_call *call,
+@@ -2366,7 +2366,6 @@ __trace_early_add_new_event(struct trace_event_call *call,
return 0;
}
@@ -116523,10 +115707,10 @@ index 7ca09cd..bda797e 100644
/* Add an additional event_call dynamically */
diff --git a/kernel/trace/trace_functions_graph.c b/kernel/trace/trace_functions_graph.c
-index ca98445..53a8094 100644
+index a663cbb..64fcf73 100644
--- a/kernel/trace/trace_functions_graph.c
+++ b/kernel/trace/trace_functions_graph.c
-@@ -132,7 +132,7 @@ ftrace_push_return_trace(unsigned long ret, unsigned long func, int *depth,
+@@ -137,7 +137,7 @@ ftrace_push_return_trace(unsigned long ret, unsigned long func, int *depth,
/* The return trace stack is full */
if (current->curr_ret_stack == FTRACE_RETFUNC_DEPTH - 1) {
@@ -116535,7 +115719,7 @@ index ca98445..53a8094 100644
return -EBUSY;
}
-@@ -229,7 +229,7 @@ ftrace_pop_return_trace(struct ftrace_graph_ret *trace, unsigned long *ret,
+@@ -234,7 +234,7 @@ ftrace_pop_return_trace(struct ftrace_graph_ret *trace, unsigned long *ret,
*ret = current->ret_stack[index].ret;
trace->func = current->ret_stack[index].func;
trace->calltime = current->ret_stack[index].calltime;
@@ -116545,7 +115729,7 @@ index ca98445..53a8094 100644
}
diff --git a/kernel/trace/trace_mmiotrace.c b/kernel/trace/trace_mmiotrace.c
-index 638e110..99b73b2 100644
+index 2be8c4f..444ecfb 100644
--- a/kernel/trace/trace_mmiotrace.c
+++ b/kernel/trace/trace_mmiotrace.c
@@ -24,7 +24,7 @@ struct header_iter {
@@ -116585,10 +115769,10 @@ index 638e110..99b73b2 100644
}
entry = ring_buffer_event_data(event);
diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c
-index 8e481a8..a90b4ad 100644
+index 2829821..a290dc8 100644
--- a/kernel/trace/trace_output.c
+++ b/kernel/trace/trace_output.c
-@@ -754,14 +754,16 @@ int register_trace_event(struct trace_event *event)
+@@ -713,14 +713,16 @@ int register_trace_event(struct trace_event *event)
goto out;
}
@@ -116609,18 +115793,6 @@ index 8e481a8..a90b4ad 100644
key = event->type & (EVENT_HASHSIZE - 1);
-diff --git a/kernel/trace/trace_printk.c b/kernel/trace/trace_printk.c
-index 36c1455..2dbffe2 100644
---- a/kernel/trace/trace_printk.c
-+++ b/kernel/trace/trace_printk.c
-@@ -267,6 +267,7 @@ static const char **find_next(void *v, loff_t *pos)
- if (*pos < last_index + start_index)
- return __start___tracepoint_str + (*pos - last_index);
-
-+ start_index += last_index;
- return find_next_mod_format(start_index, v, fmt, pos);
- }
-
diff --git a/kernel/trace/trace_seq.c b/kernel/trace/trace_seq.c
index e694c9f..6775a38 100644
--- a/kernel/trace/trace_seq.c
@@ -116635,10 +115807,10 @@ index e694c9f..6775a38 100644
if (unlikely(seq_buf_has_overflowed(&s->seq))) {
s->seq.len = save_len;
diff --git a/kernel/trace/trace_stack.c b/kernel/trace/trace_stack.c
-index 8abf1ba..695c0c4 100644
+index 202df6c..58bab5d 100644
--- a/kernel/trace/trace_stack.c
+++ b/kernel/trace/trace_stack.c
-@@ -82,7 +82,7 @@ check_stack(unsigned long ip, unsigned long *stack)
+@@ -88,7 +88,7 @@ check_stack(unsigned long ip, unsigned long *stack)
return;
/* we do not handle interrupt stacks yet */
@@ -116648,10 +115820,10 @@ index 8abf1ba..695c0c4 100644
/* Can't do this from NMI context (can cause deadlocks) */
diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c
-index 7d567a4..407a28d 100644
+index 0655afb..bfb4b48 100644
--- a/kernel/trace/trace_syscalls.c
+++ b/kernel/trace/trace_syscalls.c
-@@ -590,6 +590,8 @@ static int perf_sysenter_enable(struct trace_event_call *call)
+@@ -591,6 +591,8 @@ static int perf_sysenter_enable(struct trace_event_call *call)
int num;
num = ((struct syscall_metadata *)call->data)->syscall_nr;
@@ -116660,7 +115832,7 @@ index 7d567a4..407a28d 100644
mutex_lock(&syscall_trace_lock);
if (!sys_perf_refcount_enter)
-@@ -610,6 +612,8 @@ static void perf_sysenter_disable(struct trace_event_call *call)
+@@ -611,6 +613,8 @@ static void perf_sysenter_disable(struct trace_event_call *call)
int num;
num = ((struct syscall_metadata *)call->data)->syscall_nr;
@@ -116669,7 +115841,7 @@ index 7d567a4..407a28d 100644
mutex_lock(&syscall_trace_lock);
sys_perf_refcount_enter--;
-@@ -662,6 +666,8 @@ static int perf_sysexit_enable(struct trace_event_call *call)
+@@ -663,6 +667,8 @@ static int perf_sysexit_enable(struct trace_event_call *call)
int num;
num = ((struct syscall_metadata *)call->data)->syscall_nr;
@@ -116678,7 +115850,7 @@ index 7d567a4..407a28d 100644
mutex_lock(&syscall_trace_lock);
if (!sys_perf_refcount_exit)
-@@ -682,6 +688,8 @@ static void perf_sysexit_disable(struct trace_event_call *call)
+@@ -683,6 +689,8 @@ static void perf_sysexit_disable(struct trace_event_call *call)
int num;
num = ((struct syscall_metadata *)call->data)->syscall_nr;
@@ -116750,10 +115922,10 @@ index c8eac43..4b5f08f 100644
memcpy(&uts_table, table, sizeof(uts_table));
uts_table.data = get_uts(table, write);
diff --git a/kernel/watchdog.c b/kernel/watchdog.c
-index 64ed1c3..25fc969 100644
+index 18f34cf..e7513f2 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
-@@ -638,7 +638,7 @@ static int watchdog_nmi_enable(unsigned int cpu) { return 0; }
+@@ -664,7 +664,7 @@ static int watchdog_nmi_enable(unsigned int cpu) { return 0; }
static void watchdog_nmi_disable(unsigned int cpu) { return; }
#endif /* CONFIG_HARDLOCKUP_DETECTOR */
@@ -116763,7 +115935,7 @@ index 64ed1c3..25fc969 100644
.thread_should_run = watchdog_should_run,
.thread_fn = watchdog,
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index bcb14ca..4ed936b 100644
+index c579dba..8c0345d 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -1856,9 +1856,8 @@ static void pool_mayday_timeout(unsigned long __pool)
@@ -116788,7 +115960,7 @@ index bcb14ca..4ed936b 100644
{
struct pool_workqueue *pwq = get_work_pwq(work);
struct worker_pool *pool = worker->pool;
-@@ -4450,7 +4448,7 @@ static void rebind_workers(struct worker_pool *pool)
+@@ -4452,7 +4450,7 @@ static void rebind_workers(struct worker_pool *pool)
WARN_ON_ONCE(!(worker_flags & WORKER_UNBOUND));
worker_flags |= WORKER_REBOUND;
worker_flags &= ~WORKER_UNBOUND;
@@ -116798,7 +115970,7 @@ index bcb14ca..4ed936b 100644
spin_unlock_irq(&pool->lock);
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
-index 1d1521c..bd1af61 100644
+index 8c15b29..fc52e8e 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -243,6 +243,7 @@ config PAGE_OWNER
@@ -116817,7 +115989,7 @@ index 1d1521c..bd1af61 100644
help
debugfs is a virtual file system that kernel developers use to put
debugging files into. Enable this option to be able to read and
-@@ -489,6 +491,7 @@ config DEBUG_KMEMLEAK
+@@ -498,6 +500,7 @@ config DEBUG_KMEMLEAK
bool "Kernel memory leak detector"
depends on DEBUG_KERNEL && HAVE_DEBUG_KMEMLEAK
select DEBUG_FS
@@ -116825,7 +115997,7 @@ index 1d1521c..bd1af61 100644
select STACKTRACE if STACKTRACE_SUPPORT
select KALLSYMS
select CRC32
-@@ -936,7 +939,7 @@ config DEBUG_MUTEXES
+@@ -945,7 +948,7 @@ config DEBUG_MUTEXES
config DEBUG_WW_MUTEX_SLOWPATH
bool "Wait/wound mutex debugging: Slowpath testing"
@@ -116834,7 +116006,7 @@ index 1d1521c..bd1af61 100644
select DEBUG_LOCK_ALLOC
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
-@@ -953,7 +956,7 @@ config DEBUG_WW_MUTEX_SLOWPATH
+@@ -962,7 +965,7 @@ config DEBUG_WW_MUTEX_SLOWPATH
config DEBUG_LOCK_ALLOC
bool "Lock debugging: detect incorrect freeing of live locks"
@@ -116843,7 +116015,7 @@ index 1d1521c..bd1af61 100644
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
select LOCKDEP
-@@ -967,7 +970,7 @@ config DEBUG_LOCK_ALLOC
+@@ -976,7 +979,7 @@ config DEBUG_LOCK_ALLOC
config PROVE_LOCKING
bool "Lock debugging: prove locking correctness"
@@ -116852,7 +116024,7 @@ index 1d1521c..bd1af61 100644
select LOCKDEP
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
-@@ -1018,7 +1021,7 @@ config LOCKDEP
+@@ -1027,7 +1030,7 @@ config LOCKDEP
config LOCK_STAT
bool "Lock usage statistics"
@@ -116861,7 +116033,7 @@ index 1d1521c..bd1af61 100644
select LOCKDEP
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
-@@ -1403,6 +1406,7 @@ config NOTIFIER_ERROR_INJECTION
+@@ -1412,6 +1415,7 @@ config NOTIFIER_ERROR_INJECTION
tristate "Notifier error injection"
depends on DEBUG_KERNEL
select DEBUG_FS
@@ -116869,7 +116041,7 @@ index 1d1521c..bd1af61 100644
help
This option provides the ability to inject artificial errors to
specified notifier chain callbacks. It is useful to test the error
-@@ -1515,6 +1519,7 @@ config FAIL_IO_TIMEOUT
+@@ -1524,6 +1528,7 @@ config FAIL_IO_TIMEOUT
config FAIL_MMC_REQUEST
bool "Fault-injection capability for MMC IO"
select DEBUG_FS
@@ -116877,7 +116049,7 @@ index 1d1521c..bd1af61 100644
depends on FAULT_INJECTION && MMC
help
Provide fault-injection capability for MMC IO.
-@@ -1526,6 +1531,7 @@ config FAIL_MMC_REQUEST
+@@ -1535,6 +1540,7 @@ config FAIL_MMC_REQUEST
config FAIL_FUTEX
bool "Fault-injection capability for futexes"
select DEBUG_FS
@@ -116885,7 +116057,7 @@ index 1d1521c..bd1af61 100644
depends on FAULT_INJECTION && FUTEX
help
Provide fault-injection capability for futexes.
-@@ -1551,6 +1557,7 @@ config LATENCYTOP
+@@ -1560,6 +1566,7 @@ config LATENCYTOP
depends on DEBUG_KERNEL
depends on STACKTRACE_SUPPORT
depends on PROC_FS
@@ -116893,7 +116065,7 @@ index 1d1521c..bd1af61 100644
select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM_UNWIND && !ARC
select KALLSYMS
select KALLSYMS_ALL
-@@ -1567,7 +1574,7 @@ config ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
+@@ -1576,7 +1583,7 @@ config ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
config DEBUG_STRICT_USER_COPY_CHECKS
bool "Strict user copy size checks"
depends on ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
@@ -116902,7 +116074,7 @@ index 1d1521c..bd1af61 100644
help
Enabling this option turns a certain set of sanity checks for user
copy operations into compile time failures.
-@@ -1698,7 +1705,7 @@ endmenu # runtime tests
+@@ -1710,7 +1717,7 @@ endmenu # runtime tests
config PROVIDE_OHCI1394_DMA_INIT
bool "Remote debugging over FireWire early on boot"
@@ -116912,7 +116084,7 @@ index 1d1521c..bd1af61 100644
If you want to debug problems which hang or crash the kernel early
on boot and the crashing machine has a FireWire port, you can use
diff --git a/lib/Kconfig.kasan b/lib/Kconfig.kasan
-index 39f24d6..cf80221 100644
+index 0fee5ac..b2b159d 100644
--- a/lib/Kconfig.kasan
+++ b/lib/Kconfig.kasan
@@ -5,7 +5,7 @@ if HAVE_ARCH_KASAN
@@ -116925,10 +116097,10 @@ index 39f24d6..cf80221 100644
help
Enables kernel address sanitizer - runtime memory debugger,
diff --git a/lib/Makefile b/lib/Makefile
-index 13a7c6a..c0d23a7 100644
+index 7f1de26..ab68f1a 100644
--- a/lib/Makefile
+++ b/lib/Makefile
-@@ -64,7 +64,7 @@ obj-$(CONFIG_BTREE) += btree.o
+@@ -66,7 +66,7 @@ obj-$(CONFIG_BTREE) += btree.o
obj-$(CONFIG_INTERVAL_TREE) += interval_tree.o
obj-$(CONFIG_ASSOCIATIVE_ARRAY) += assoc_array.o
obj-$(CONFIG_DEBUG_PREEMPT) += smp_processor_id.o
@@ -117035,7 +116207,7 @@ index ed7a1fd..44a1a62 100644
for (i = 0; i < size; i++)
ret = (ret << 8) | ptr[size-i-1];
diff --git a/lib/div64.c b/lib/div64.c
-index 19ea7ed..20cac21 100644
+index 62a698a..32327d08 100644
--- a/lib/div64.c
+++ b/lib/div64.c
@@ -59,7 +59,7 @@ uint32_t __attribute__((weak)) __div64_32(uint64_t *n, uint32_t base)
@@ -117057,7 +116229,7 @@ index 19ea7ed..20cac21 100644
u32 high = divisor >> 32;
u64 quot;
diff --git a/lib/dma-debug.c b/lib/dma-debug.c
-index dace71f..13da37b 100644
+index d34bd24..77b953c 100644
--- a/lib/dma-debug.c
+++ b/lib/dma-debug.c
@@ -982,7 +982,7 @@ static int dma_debug_device_change(struct notifier_block *nb, unsigned long acti
@@ -117114,7 +116286,7 @@ index 86c8911..f5bfc34 100644
return -ENOMEM;
do {
diff --git a/lib/is_single_threaded.c b/lib/is_single_threaded.c
-index bd2bea9..6b3c95e 100644
+index 391fd23..96e17b6 100644
--- a/lib/is_single_threaded.c
+++ b/lib/is_single_threaded.c
@@ -22,6 +22,9 @@ bool current_is_single_threaded(void)
@@ -117128,10 +116300,10 @@ index bd2bea9..6b3c95e 100644
return false;
diff --git a/lib/kobject.c b/lib/kobject.c
-index 3e3a5c3..4a121091 100644
+index 7cbccd2..37f089d 100644
--- a/lib/kobject.c
+++ b/lib/kobject.c
-@@ -935,9 +935,9 @@ EXPORT_SYMBOL_GPL(kset_create_and_add);
+@@ -954,9 +954,9 @@ EXPORT_SYMBOL_GPL(kset_create_and_add);
static DEFINE_SPINLOCK(kobj_ns_type_lock);
@@ -117523,7 +116695,7 @@ index 6111bcb..02e816b 100644
static DECLARE_WAIT_QUEUE_HEAD(percpu_ref_switch_waitq);
diff --git a/lib/radix-tree.c b/lib/radix-tree.c
-index f9ebe1c..e985666 100644
+index fcf5d98..4811f49 100644
--- a/lib/radix-tree.c
+++ b/lib/radix-tree.c
@@ -68,7 +68,7 @@ struct radix_tree_preload {
@@ -117535,8 +116707,38 @@ index f9ebe1c..e985666 100644
static inline void *ptr_to_indirect(void *ptr)
{
+@@ -1019,9 +1019,13 @@ radix_tree_gang_lookup(struct radix_tree_root *root, void **results,
+ return 0;
+
+ radix_tree_for_each_slot(slot, root, &iter, first_index) {
+- results[ret] = indirect_to_ptr(rcu_dereference_raw(*slot));
++ results[ret] = rcu_dereference_raw(*slot);
+ if (!results[ret])
+ continue;
++ if (radix_tree_is_indirect_ptr(results[ret])) {
++ slot = radix_tree_iter_retry(&iter);
++ continue;
++ }
+ if (++ret == max_items)
+ break;
+ }
+@@ -1098,9 +1102,13 @@ radix_tree_gang_lookup_tag(struct radix_tree_root *root, void **results,
+ return 0;
+
+ radix_tree_for_each_tagged(slot, root, &iter, first_index, tag) {
+- results[ret] = indirect_to_ptr(rcu_dereference_raw(*slot));
++ results[ret] = rcu_dereference_raw(*slot);
+ if (!results[ret])
+ continue;
++ if (radix_tree_is_indirect_ptr(results[ret])) {
++ slot = radix_tree_iter_retry(&iter);
++ continue;
++ }
+ if (++ret == max_items)
+ break;
+ }
diff --git a/lib/random32.c b/lib/random32.c
-index 0bee183..526f12f 100644
+index 1211191..63e8a83 100644
--- a/lib/random32.c
+++ b/lib/random32.c
@@ -47,7 +47,7 @@ static inline void prandom_state_selftest(void)
@@ -117564,10 +116766,10 @@ index 1356454..70ce6c6 100644
void rb_insert_color(struct rb_node *node, struct rb_root *root)
diff --git a/lib/rhashtable.c b/lib/rhashtable.c
-index aa388a7..3172ae42 100644
+index 51282f5..471b337 100644
--- a/lib/rhashtable.c
+++ b/lib/rhashtable.c
-@@ -543,8 +543,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_exit);
+@@ -558,8 +558,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_exit);
* will rewind back to the beginning and you may use it immediately
* by calling rhashtable_walk_next.
*/
@@ -117577,7 +116779,7 @@ index aa388a7..3172ae42 100644
{
struct rhashtable *ht = iter->ht;
-@@ -628,8 +628,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_next);
+@@ -643,8 +643,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_next);
*
* Finish a hash table walk.
*/
@@ -117653,7 +116855,7 @@ index 4f5b1dd..7cab418 100644
+}
+EXPORT_SYMBOL(copy_to_user_overflow);
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
-index 95cd63b..e5f0eee 100644
+index f9cee8e..f0ed0f1 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -16,6 +16,9 @@
@@ -117699,7 +116901,7 @@ index 95cd63b..e5f0eee 100644
* - '[FfSs]R' as above with __builtin_extract_return_addr() translation
* - 'B' For backtraced symbolic direct pointers with offset
* - 'R' For decoded struct resource, e.g., [mem 0x0-0x1f 64bit pref]
-@@ -1461,12 +1470,12 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
+@@ -1463,12 +1472,12 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
if (!ptr && *fmt != 'K') {
/*
@@ -117714,7 +116916,7 @@ index 95cd63b..e5f0eee 100644
}
switch (*fmt) {
-@@ -1476,6 +1485,14 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
+@@ -1478,6 +1487,14 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
/* Fallthrough */
case 'S':
case 's':
@@ -117729,7 +116931,7 @@ index 95cd63b..e5f0eee 100644
case 'B':
return symbol_string(buf, end, ptr, spec, fmt);
case 'R':
-@@ -1540,6 +1557,8 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
+@@ -1542,6 +1559,8 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
va_end(va);
return buf;
}
@@ -117738,7 +116940,7 @@ index 95cd63b..e5f0eee 100644
case 'K':
/*
* %pK cannot be used in IRQ context because its test
-@@ -1599,6 +1618,22 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
+@@ -1601,6 +1620,22 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
((const struct file *)ptr)->f_path.dentry,
spec, fmt);
}
@@ -117761,7 +116963,7 @@ index 95cd63b..e5f0eee 100644
spec.flags |= SMALL;
if (spec.field_width == -1) {
spec.field_width = default_width;
-@@ -2297,11 +2332,11 @@ int bstr_printf(char *buf, size_t size, const char *fmt, const u32 *bin_buf)
+@@ -2282,11 +2317,11 @@ int bstr_printf(char *buf, size_t size, const char *fmt, const u32 *bin_buf)
typeof(type) value; \
if (sizeof(type) == 8) { \
args = PTR_ALIGN(args, sizeof(u32)); \
@@ -117776,7 +116978,7 @@ index 95cd63b..e5f0eee 100644
} \
args += sizeof(type); \
value; \
-@@ -2364,7 +2399,7 @@ int bstr_printf(char *buf, size_t size, const char *fmt, const u32 *bin_buf)
+@@ -2349,7 +2384,7 @@ int bstr_printf(char *buf, size_t size, const char *fmt, const u32 *bin_buf)
case FORMAT_TYPE_STR: {
const char *str_arg = args;
args += strlen(str_arg) + 1;
@@ -117793,10 +116995,10 @@ index 0000000..7cd6065
@@ -0,0 +1 @@
+-grsec
diff --git a/mm/Kconfig b/mm/Kconfig
-index 0d9fdcd..7fc4acb 100644
+index 97a4e06..b20ba55 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
-@@ -336,10 +336,11 @@ config KSM
+@@ -324,10 +324,11 @@ config KSM
root has set /sys/kernel/mm/ksm/run to 1 (if CONFIG_SYSFS is set).
config DEFAULT_MMAP_MIN_ADDR
@@ -117811,7 +117013,7 @@ index 0d9fdcd..7fc4acb 100644
This is the portion of low virtual memory which should be protected
from userspace allocation. Keeping a user from writing to low pages
can help reduce the impact of kernel NULL pointer bugs.
-@@ -371,8 +372,9 @@ config MEMORY_FAILURE
+@@ -359,8 +360,9 @@ config MEMORY_FAILURE
config HWPOISON_INJECT
tristate "HWPoison pages injector"
@@ -117822,7 +117024,7 @@ index 0d9fdcd..7fc4acb 100644
config NOMMU_INITIAL_TRIM_EXCESS
int "Turn on mmap() excess space trimming before booting"
-@@ -533,6 +535,7 @@ config MEM_SOFT_DIRTY
+@@ -521,6 +523,7 @@ config MEM_SOFT_DIRTY
bool "Track memory changes"
depends on CHECKPOINT_RESTORE && HAVE_ARCH_SOFT_DIRTY && PROC_FS
select PROC_PAGE_MONITOR
@@ -117830,7 +117032,7 @@ index 0d9fdcd..7fc4acb 100644
help
This option enables memory changes tracking by introducing a
soft-dirty bit on pte-s. This bit it set when someone writes
-@@ -607,6 +610,7 @@ config ZSMALLOC_STAT
+@@ -595,6 +598,7 @@ config ZSMALLOC_STAT
bool "Export zsmalloc statistics"
depends on ZSMALLOC
select DEBUG_FS
@@ -117851,7 +117053,7 @@ index 957d3da..1d34e20 100644
depends on !KMEMCHECK
select PAGE_EXTENSION
diff --git a/mm/backing-dev.c b/mm/backing-dev.c
-index 619984f..2790176 100644
+index cbe6f0b..200caf3 100644
--- a/mm/backing-dev.c
+++ b/mm/backing-dev.c
@@ -12,7 +12,7 @@
@@ -117873,10 +117075,10 @@ index 619984f..2790176 100644
bdi_destroy(bdi);
return err;
diff --git a/mm/debug.c b/mm/debug.c
-index 6c1b3ea..a578362 100644
+index 668aa35..1b35d47 100644
--- a/mm/debug.c
+++ b/mm/debug.c
-@@ -131,6 +131,9 @@ static const struct trace_print_flags vmaflags_names[] = {
+@@ -127,6 +127,9 @@ static const struct trace_print_flags vmaflags_names[] = {
{VM_RAND_READ, "randread" },
{VM_DONTCOPY, "dontcopy" },
{VM_DONTEXPAND, "dontexpand" },
@@ -117887,10 +117089,10 @@ index 6c1b3ea..a578362 100644
{VM_NORESERVE, "noreserve" },
{VM_HUGETLB, "hugetlb" },
diff --git a/mm/filemap.c b/mm/filemap.c
-index 327910c..73ee06f 100644
+index 1bb0076..6244c1d 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
-@@ -2122,7 +2122,7 @@ int generic_file_mmap(struct file * file, struct vm_area_struct * vma)
+@@ -2161,7 +2161,7 @@ int generic_file_mmap(struct file * file, struct vm_area_struct * vma)
struct address_space *mapping = file->f_mapping;
if (!mapping->a_ops->readpage)
@@ -117899,7 +117101,7 @@ index 327910c..73ee06f 100644
file_accessed(file);
vma->vm_ops = &generic_file_vm_ops;
return 0;
-@@ -2303,6 +2303,7 @@ inline ssize_t generic_write_checks(struct kiocb *iocb, struct iov_iter *from)
+@@ -2342,6 +2342,7 @@ inline ssize_t generic_write_checks(struct kiocb *iocb, struct iov_iter *from)
pos = iocb->ki_pos;
if (limit != RLIM_INFINITY) {
@@ -117908,13 +117110,13 @@ index 327910c..73ee06f 100644
send_sig(SIGXFSZ, current, 0);
return -EFBIG;
diff --git a/mm/gup.c b/mm/gup.c
-index a798293..98a67dd 100644
+index deafa2c..1a4e46a 100644
--- a/mm/gup.c
+++ b/mm/gup.c
-@@ -299,11 +299,6 @@ static int faultin_page(struct task_struct *tsk, struct vm_area_struct *vma,
- unsigned int fault_flags = 0;
- int ret;
-
+@@ -302,11 +302,6 @@ static int faultin_page(struct task_struct *tsk, struct vm_area_struct *vma,
+ /* mlock all present pages, but do not fault in new pages */
+ if ((*flags & (FOLL_POPULATE | FOLL_MLOCK)) == FOLL_MLOCK)
+ return -ENOENT;
- /* For mm_populate(), just skip the stack guard page. */
- if ((*flags & FOLL_POPULATE) &&
- (stack_guard_page_start(vma, address) ||
@@ -117923,7 +117125,7 @@ index a798293..98a67dd 100644
if (*flags & FOLL_WRITE)
fault_flags |= FAULT_FLAG_WRITE;
if (nonblocking)
-@@ -469,14 +464,14 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
+@@ -472,14 +467,14 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
if (!(gup_flags & FOLL_FORCE))
gup_flags |= FOLL_NUMA;
@@ -117940,7 +117142,7 @@ index a798293..98a67dd 100644
if (!vma && in_gate_area(mm, start)) {
int ret;
ret = get_gate_page(mm, start & PAGE_MASK,
-@@ -488,7 +483,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
+@@ -491,7 +486,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
goto next_page;
}
@@ -117949,7 +117151,7 @@ index a798293..98a67dd 100644
return i ? : -EFAULT;
if (is_vm_hugetlb_page(vma)) {
i = follow_hugetlb_page(mm, vma, pages, vmas,
-@@ -549,7 +544,7 @@ next_page:
+@@ -552,7 +547,7 @@ next_page:
i += page_increm;
start += page_increm * PAGE_SIZE;
nr_pages -= page_increm;
@@ -117986,10 +117188,10 @@ index 123bcd3..c2c85db 100644
pkmap_count[last_pkmap_nr] = 1;
set_page_address(page, (void *)vaddr);
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
-index 9cc7734..f329b79 100644
+index ef6963b..753a1e6 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
-@@ -2670,6 +2670,7 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
+@@ -2780,6 +2780,7 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
struct ctl_table *table, int write,
void __user *buffer, size_t *length, loff_t *ppos)
{
@@ -117997,7 +117199,7 @@ index 9cc7734..f329b79 100644
struct hstate *h = &default_hstate;
unsigned long tmp = h->max_huge_pages;
int ret;
-@@ -2677,9 +2678,10 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
+@@ -2787,9 +2788,10 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
if (!hugepages_supported())
return -ENOTSUPP;
@@ -118011,7 +117213,7 @@ index 9cc7734..f329b79 100644
if (ret)
goto out;
-@@ -2714,6 +2716,7 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
+@@ -2824,6 +2826,7 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
struct hstate *h = &default_hstate;
unsigned long tmp;
int ret;
@@ -118019,7 +117221,7 @@ index 9cc7734..f329b79 100644
if (!hugepages_supported())
return -ENOTSUPP;
-@@ -2723,9 +2726,10 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
+@@ -2833,9 +2836,10 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
if (write && hstate_is_gigantic(h))
return -EINVAL;
@@ -118033,7 +117235,7 @@ index 9cc7734..f329b79 100644
if (ret)
goto out;
-@@ -3223,6 +3227,27 @@ static void unmap_ref_private(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -3341,6 +3345,27 @@ static void unmap_ref_private(struct mm_struct *mm, struct vm_area_struct *vma,
i_mmap_unlock_write(mapping);
}
@@ -118061,7 +117263,7 @@ index 9cc7734..f329b79 100644
/*
* Hugetlb_cow() should be called with page lock of the original hugepage held.
* Called with hugetlb_instantiation_mutex held and pte_page locked so we
-@@ -3336,6 +3361,11 @@ retry_avoidcopy:
+@@ -3454,6 +3479,11 @@ retry_avoidcopy:
make_huge_pte(vma, new_page, 1));
page_remove_rmap(old_page);
hugepage_add_new_anon_rmap(new_page, vma, address);
@@ -118073,7 +117275,7 @@ index 9cc7734..f329b79 100644
/* Make the old page be freed below */
new_page = old_page;
}
-@@ -3509,6 +3539,10 @@ retry:
+@@ -3627,6 +3657,10 @@ retry:
&& (vma->vm_flags & VM_SHARED)));
set_huge_pte_at(mm, address, ptep, new_pte);
@@ -118081,10 +117283,10 @@ index 9cc7734..f329b79 100644
+ pax_mirror_huge_pte(vma, address, page);
+#endif
+
+ hugetlb_count_add(pages_per_huge_page(h), mm);
if ((flags & FAULT_FLAG_WRITE) && !(vma->vm_flags & VM_SHARED)) {
/* Optimization, do the COW without a second fault */
- ret = hugetlb_cow(mm, vma, address, ptep, new_pte, page, ptl);
-@@ -3576,6 +3610,10 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -3695,6 +3729,10 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
struct address_space *mapping;
int need_wait_lock = 0;
@@ -118095,8 +117297,8 @@ index 9cc7734..f329b79 100644
address &= huge_page_mask(h);
ptep = huge_pte_offset(mm, address);
-@@ -3589,6 +3627,26 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
- VM_FAULT_SET_HINDEX(hstate_index(h));
+@@ -3712,6 +3750,26 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
+ return VM_FAULT_OOM;
}
+#ifdef CONFIG_PAX_SEGMEXEC
@@ -118119,23 +117321,23 @@ index 9cc7734..f329b79 100644
+ }
+#endif
+
- ptep = huge_pte_alloc(mm, address, huge_page_size(h));
- if (!ptep)
- return VM_FAULT_OOM;
+ mapping = vma->vm_file->f_mapping;
+ idx = vma_hugecache_offset(h, vma, address);
+
diff --git a/mm/internal.h b/mm/internal.h
-index bc0fa9a..ecd7e26 100644
+index 38e24b8..73ff43d 100644
--- a/mm/internal.h
+++ b/mm/internal.h
-@@ -157,6 +157,7 @@ __find_buddy_index(unsigned long page_idx, unsigned int order)
+@@ -177,6 +177,7 @@ __find_buddy_index(unsigned long page_idx, unsigned int order)
extern int __isolate_free_page(struct page *page, unsigned int order);
extern void __free_pages_bootmem(struct page *page, unsigned long pfn,
unsigned int order);
+extern void free_compound_page(struct page *page);
- extern void prep_compound_page(struct page *page, unsigned long order);
+ extern void prep_compound_page(struct page *page, unsigned int order);
#ifdef CONFIG_MEMORY_FAILURE
extern bool is_free_buddy_page(struct page *page);
diff --git a/mm/kmemleak.c b/mm/kmemleak.c
-index 77191ec..efdebce 100644
+index 19423a4..f591ad4 100644
--- a/mm/kmemleak.c
+++ b/mm/kmemleak.c
@@ -366,7 +366,7 @@ static void print_unreferenced(struct seq_file *seq,
@@ -118157,27 +117359,40 @@ index 77191ec..efdebce 100644
if (!dentry)
pr_warning("Failed to create the debugfs kmemleak file\n");
diff --git a/mm/maccess.c b/mm/maccess.c
-index 34fe247..f98d44f 100644
+index d159b1c..7655796 100644
--- a/mm/maccess.c
+++ b/mm/maccess.c
-@@ -26,7 +26,7 @@ long __probe_kernel_read(void *dst, const void *src, size_t size)
- set_fs(KERNEL_DS);
+@@ -28,12 +28,12 @@ long __probe_kernel_read(void *dst, const void *src, size_t size)
+ long ret;
+ mm_segment_t old_fs = get_fs();
+
+- set_fs(KERNEL_DS);
pagefault_disable();
++ set_fs(KERNEL_DS);
ret = __copy_from_user_inatomic(dst,
- (__force const void __user *)src, size);
+- pagefault_enable();
+ (const void __force_user *)src, size);
- pagefault_enable();
set_fs(old_fs);
++ pagefault_enable();
-@@ -53,7 +53,7 @@ long __probe_kernel_write(void *dst, const void *src, size_t size)
+ return ret ? -EFAULT : 0;
+ }
+@@ -56,11 +56,11 @@ long __probe_kernel_write(void *dst, const void *src, size_t size)
+ long ret;
+ mm_segment_t old_fs = get_fs();
- set_fs(KERNEL_DS);
+- set_fs(KERNEL_DS);
pagefault_disable();
- ret = __copy_to_user_inatomic((__force void __user *)dst, src, size);
+- pagefault_enable();
++ set_fs(KERNEL_DS);
+ ret = __copy_to_user_inatomic((void __force_user *)dst, src, size);
- pagefault_enable();
set_fs(old_fs);
++ pagefault_enable();
+ return ret ? -EFAULT : 0;
+ }
diff --git a/mm/madvise.c b/mm/madvise.c
index c889fcb..f181221 100644
--- a/mm/madvise.c
@@ -118252,11 +117467,42 @@ index c889fcb..f181221 100644
error = 0;
if (end == start)
return error;
+diff --git a/mm/memcontrol.c b/mm/memcontrol.c
+index fc10620..cfa8635 100644
+--- a/mm/memcontrol.c
++++ b/mm/memcontrol.c
+@@ -809,7 +809,7 @@ static void memcg_check_events(struct mem_cgroup *memcg, struct page *page)
+ mem_cgroup_update_tree(memcg, page);
+ #if MAX_NUMNODES > 1
+ if (unlikely(do_numainfo))
+- atomic_inc(&memcg->numainfo_events);
++ atomic64_inc(&memcg->numainfo_events);
+ #endif
+ }
+ }
+@@ -1450,7 +1450,7 @@ static void mem_cgroup_may_update_nodemask(struct mem_cgroup *memcg)
+ * numainfo_events > 0 means there was at least NUMAINFO_EVENTS_TARGET
+ * pagein/pageout changes since the last update.
+ */
+- if (!atomic_read(&memcg->numainfo_events))
++ if (!atomic64_read(&memcg->numainfo_events))
+ return;
+ if (atomic_inc_return(&memcg->numainfo_updating) > 1)
+ return;
+@@ -1464,7 +1464,7 @@ static void mem_cgroup_may_update_nodemask(struct mem_cgroup *memcg)
+ node_clear(nid, memcg->scan_nodes);
+ }
+
+- atomic_set(&memcg->numainfo_events, 0);
++ atomic64_set(&memcg->numainfo_events, 0);
+ atomic_set(&memcg->numainfo_updating, 0);
+ }
+
diff --git a/mm/memory-failure.c b/mm/memory-failure.c
-index 9588269..a8f966a 100644
+index 8424b64..4bc9d7d 100644
--- a/mm/memory-failure.c
+++ b/mm/memory-failure.c
-@@ -63,7 +63,7 @@ int sysctl_memory_failure_early_kill __read_mostly = 0;
+@@ -64,7 +64,7 @@ int sysctl_memory_failure_early_kill __read_mostly = 0;
int sysctl_memory_failure_recovery __read_mostly = 1;
@@ -118265,7 +117511,7 @@ index 9588269..a8f966a 100644
#if defined(CONFIG_HWPOISON_INJECT) || defined(CONFIG_HWPOISON_INJECT_MODULE)
-@@ -188,7 +188,7 @@ static int kill_proc(struct task_struct *t, unsigned long addr, int trapno,
+@@ -189,7 +189,7 @@ static int kill_proc(struct task_struct *t, unsigned long addr, int trapno,
pfn, t->comm, t->pid);
si.si_signo = SIGBUS;
si.si_errno = 0;
@@ -118274,7 +117520,7 @@ index 9588269..a8f966a 100644
#ifdef __ARCH_SI_TRAPNO
si.si_trapno = trapno;
#endif
-@@ -785,7 +785,7 @@ static struct page_state {
+@@ -784,7 +784,7 @@ static struct page_state {
unsigned long res;
enum mf_action_page_type type;
int (*action)(struct page *p, unsigned long pfn);
@@ -118284,7 +117530,7 @@ index 9588269..a8f966a 100644
/*
* free pages are specially detected outside this table:
diff --git a/mm/memory.c b/mm/memory.c
-index deb679c..40ab640 100644
+index c387430..119fd96 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -415,6 +415,7 @@ static inline void free_pmd_range(struct mmu_gather *tlb, pud_t *pud,
@@ -119033,10 +118279,10 @@ index 87a1779..ebf95d4 100644
capable(CAP_SYS_NICE) ? MPOL_MF_MOVE_ALL : MPOL_MF_MOVE);
diff --git a/mm/migrate.c b/mm/migrate.c
-index 842ecd7..c8f2fc5 100644
+index 7890d0b..00200c6 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
-@@ -1502,8 +1502,7 @@ SYSCALL_DEFINE6(move_pages, pid_t, pid, unsigned long, nr_pages,
+@@ -1505,8 +1505,7 @@ SYSCALL_DEFINE6(move_pages, pid_t, pid, unsigned long, nr_pages,
*/
tcred = __task_cred(task);
if (!uid_eq(cred->euid, tcred->suid) && !uid_eq(cred->euid, tcred->uid) &&
@@ -119047,7 +118293,7 @@ index 842ecd7..c8f2fc5 100644
err = -EPERM;
goto out;
diff --git a/mm/mlock.c b/mm/mlock.c
-index 25936680..1770c1d 100644
+index 339d9e0..03bc5fa 100644
--- a/mm/mlock.c
+++ b/mm/mlock.c
@@ -14,6 +14,7 @@
@@ -119058,16 +118304,16 @@ index 25936680..1770c1d 100644
#include <linux/sched.h>
#include <linux/export.h>
#include <linux/rmap.h>
-@@ -558,7 +559,7 @@ static int do_mlock(unsigned long start, size_t len, int on)
+@@ -560,7 +561,7 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
{
unsigned long nstart, end, tmp;
struct vm_area_struct * vma, * prev;
- int error;
+ int error = 0;
- VM_BUG_ON(start & ~PAGE_MASK);
+ VM_BUG_ON(offset_in_page(start));
VM_BUG_ON(len != PAGE_ALIGN(len));
-@@ -567,6 +568,9 @@ static int do_mlock(unsigned long start, size_t len, int on)
+@@ -569,6 +570,9 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
return -EINVAL;
if (end == start)
return 0;
@@ -119077,19 +118323,23 @@ index 25936680..1770c1d 100644
vma = find_vma(current->mm, start);
if (!vma || vma->vm_start > start)
return -ENOMEM;
-@@ -578,6 +582,11 @@ static int do_mlock(unsigned long start, size_t len, int on)
+@@ -578,8 +582,14 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
+ prev = vma;
+
for (nstart = start ; ; ) {
- vm_flags_t newflags;
+- vm_flags_t newflags = vma->vm_flags & VM_LOCKED_CLEAR_MASK;
++ vm_flags_t newflags;
+#ifdef CONFIG_PAX_SEGMEXEC
+ if ((current->mm->pax_flags & MF_PAX_SEGMEXEC) && (vma->vm_start >= SEGMEXEC_TASK_SIZE))
+ break;
+#endif
+
- /* Here we know that vma->vm_start <= nstart < vma->vm_end. */
++ newflags = vma->vm_flags & VM_LOCKED_CLEAR_MASK;
+ newflags |= flags;
- newflags = vma->vm_flags & ~VM_LOCKED;
-@@ -628,6 +637,10 @@ SYSCALL_DEFINE2(mlock, unsigned long, start, size_t, len)
+ /* Here we know that vma->vm_start <= nstart < vma->vm_end. */
+@@ -627,6 +637,10 @@ static int do_mlock(unsigned long start, size_t len, vm_flags_t flags)
locked += current->mm->locked_vm;
/* check against resource limits */
@@ -119098,9 +118348,9 @@ index 25936680..1770c1d 100644
+ else
+ gr_learn_resource(current, RLIMIT_MEMLOCK, locked << PAGE_SHIFT, 1);
if ((locked <= lock_limit) || capable(CAP_IPC_LOCK))
- error = do_mlock(start, len, 1);
+ error = apply_vma_lock_flags(start, len, flags);
-@@ -669,6 +682,11 @@ static int do_mlockall(int flags)
+@@ -707,6 +721,11 @@ static int apply_mlockall_flags(int flags)
for (vma = current->mm->mmap; vma ; vma = prev->vm_next) {
vm_flags_t newflags;
@@ -119109,10 +118359,10 @@ index 25936680..1770c1d 100644
+ break;
+#endif
+
- newflags = vma->vm_flags & ~VM_LOCKED;
- if (flags & MCL_CURRENT)
- newflags |= VM_LOCKED;
-@@ -700,8 +718,12 @@ SYSCALL_DEFINE1(mlockall, int, flags)
+ newflags = vma->vm_flags & VM_LOCKED_CLEAR_MASK;
+ newflags |= to_add;
+
+@@ -736,8 +755,12 @@ SYSCALL_DEFINE1(mlockall, int, flags)
lock_limit >>= PAGE_SHIFT;
ret = -ENOMEM;
@@ -119125,7 +118375,7 @@ index 25936680..1770c1d 100644
+ gr_learn_resource(current, RLIMIT_MEMLOCK, current->mm->total_vm << PAGE_SHIFT, 1);
if (!(flags & MCL_CURRENT) || (current->mm->total_vm <= lock_limit) ||
capable(CAP_IPC_LOCK))
- ret = do_mlockall(flags);
+ ret = apply_mlockall_flags(flags);
diff --git a/mm/mm_init.c b/mm/mm_init.c
index fdadf91..5f527d1 100644
--- a/mm/mm_init.c
@@ -119140,7 +118390,7 @@ index fdadf91..5f527d1 100644
.priority = IPC_CALLBACK_PRI, /* use lowest priority */
};
diff --git a/mm/mmap.c b/mm/mmap.c
-index 79bcc9f..ee68a7e 100644
+index 2ce04a6..c085c24 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -42,6 +42,7 @@
@@ -119396,7 +118646,7 @@ index 79bcc9f..ee68a7e 100644
*/
- addr = get_unmapped_area(file, addr, len, pgoff, flags);
+ addr = get_unmapped_area(file, addr, len, pgoff, flags | ((prot & PROT_EXEC) ? MAP_EXECUTABLE : 0));
- if (addr & ~PAGE_MASK)
+ if (offset_in_page(addr))
return addr;
@@ -1312,6 +1405,43 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
@@ -119453,7 +118703,7 @@ index 79bcc9f..ee68a7e 100644
addr = mmap_region(file, addr, len, vm_flags, pgoff);
if (!IS_ERR_VALUE(addr) &&
((vm_flags & VM_LOCKED) ||
-@@ -1493,7 +1626,7 @@ int vma_wants_writenotify(struct vm_area_struct *vma)
+@@ -1492,7 +1625,7 @@ int vma_wants_writenotify(struct vm_area_struct *vma)
const struct vm_operations_struct *vm_ops = vma->vm_ops;
/* If it was private or non-writable, the write bit is already clear */
@@ -119462,7 +118712,7 @@ index 79bcc9f..ee68a7e 100644
return 0;
/* The backer wishes to know when pages are first written to? */
-@@ -1544,7 +1677,22 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1543,7 +1676,22 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
struct rb_node **rb_link, *rb_parent;
unsigned long charged = 0;
@@ -119485,7 +118735,7 @@ index 79bcc9f..ee68a7e 100644
if (!may_expand_vm(mm, len >> PAGE_SHIFT)) {
unsigned long nr_pages;
-@@ -1567,6 +1715,7 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1565,6 +1713,7 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
&rb_parent)) {
if (do_munmap(mm, addr, len))
return -ENOMEM;
@@ -119493,7 +118743,7 @@ index 79bcc9f..ee68a7e 100644
}
/*
-@@ -1598,6 +1747,16 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1596,6 +1745,16 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
goto unacct_error;
}
@@ -119510,7 +118760,7 @@ index 79bcc9f..ee68a7e 100644
vma->vm_mm = mm;
vma->vm_start = addr;
vma->vm_end = addr + len;
-@@ -1628,6 +1787,13 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1626,6 +1785,13 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
if (error)
goto unmap_and_free_vma;
@@ -119524,7 +118774,7 @@ index 79bcc9f..ee68a7e 100644
/* Can addr have changed??
*
* Answer: Yes, several device drivers can do it in their
-@@ -1646,6 +1812,12 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1644,6 +1810,12 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
}
vma_link(mm, vma, prev, rb_link, rb_parent);
@@ -119537,7 +118787,7 @@ index 79bcc9f..ee68a7e 100644
/* Once vma denies write, undo our temporary denial count */
if (file) {
if (vm_flags & VM_SHARED)
-@@ -1658,6 +1830,7 @@ out:
+@@ -1656,6 +1828,7 @@ out:
perf_event_mmap(vma);
vm_stat_account(mm, vm_flags, file, len >> PAGE_SHIFT);
@@ -119545,7 +118795,7 @@ index 79bcc9f..ee68a7e 100644
if (vm_flags & VM_LOCKED) {
if (!((vm_flags & VM_SPECIAL) || is_vm_hugetlb_page(vma) ||
vma == get_gate_vma(current->mm)))
-@@ -1695,6 +1868,12 @@ allow_write_and_free_vma:
+@@ -1693,6 +1866,12 @@ allow_write_and_free_vma:
if (vm_flags & VM_DENYWRITE)
allow_write_access(file);
free_vma:
@@ -119558,7 +118808,7 @@ index 79bcc9f..ee68a7e 100644
kmem_cache_free(vm_area_cachep, vma);
unacct_error:
if (charged)
-@@ -1702,7 +1881,63 @@ unacct_error:
+@@ -1700,7 +1879,63 @@ unacct_error:
return error;
}
@@ -119623,7 +118873,7 @@ index 79bcc9f..ee68a7e 100644
{
/*
* We implement the search by looking for an rbtree node that
-@@ -1750,11 +1985,29 @@ unsigned long unmapped_area(struct vm_unmapped_area_info *info)
+@@ -1748,11 +1983,29 @@ unsigned long unmapped_area(struct vm_unmapped_area_info *info)
}
}
@@ -119654,7 +118904,7 @@ index 79bcc9f..ee68a7e 100644
if (gap_end >= low_limit && gap_end - gap_start >= length)
goto found;
-@@ -1804,7 +2057,7 @@ found:
+@@ -1802,7 +2055,7 @@ found:
return gap_start;
}
@@ -119663,7 +118913,7 @@ index 79bcc9f..ee68a7e 100644
{
struct mm_struct *mm = current->mm;
struct vm_area_struct *vma;
-@@ -1858,6 +2111,24 @@ check_current:
+@@ -1856,6 +2109,24 @@ check_current:
gap_end = vma->vm_start;
if (gap_end < low_limit)
return -ENOMEM;
@@ -119688,7 +118938,7 @@ index 79bcc9f..ee68a7e 100644
if (gap_start <= high_limit && gap_end - gap_start >= length)
goto found;
-@@ -1921,6 +2192,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -1919,6 +2190,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
struct mm_struct *mm = current->mm;
struct vm_area_struct *vma;
struct vm_unmapped_area_info info;
@@ -119696,7 +118946,7 @@ index 79bcc9f..ee68a7e 100644
if (len > TASK_SIZE - mmap_min_addr)
return -ENOMEM;
-@@ -1928,11 +2200,15 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -1926,11 +2198,15 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
if (flags & MAP_FIXED)
return addr;
@@ -119713,7 +118963,7 @@ index 79bcc9f..ee68a7e 100644
return addr;
}
-@@ -1941,6 +2217,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -1939,6 +2215,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
info.low_limit = mm->mmap_base;
info.high_limit = TASK_SIZE;
info.align_mask = 0;
@@ -119721,7 +118971,7 @@ index 79bcc9f..ee68a7e 100644
return vm_unmapped_area(&info);
}
#endif
-@@ -1959,6 +2236,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -1957,6 +2234,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
struct mm_struct *mm = current->mm;
unsigned long addr = addr0;
struct vm_unmapped_area_info info;
@@ -119729,7 +118979,7 @@ index 79bcc9f..ee68a7e 100644
/* requested length too big for entire address space */
if (len > TASK_SIZE - mmap_min_addr)
-@@ -1967,12 +2245,16 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -1965,12 +2243,16 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
if (flags & MAP_FIXED)
return addr;
@@ -119747,7 +118997,7 @@ index 79bcc9f..ee68a7e 100644
return addr;
}
-@@ -1981,6 +2263,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -1979,6 +2261,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
info.low_limit = max(PAGE_SIZE, mmap_min_addr);
info.high_limit = mm->mmap_base;
info.align_mask = 0;
@@ -119755,7 +119005,7 @@ index 79bcc9f..ee68a7e 100644
addr = vm_unmapped_area(&info);
/*
-@@ -1993,6 +2276,12 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -1991,6 +2274,12 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
VM_BUG_ON(addr != -ENOMEM);
info.flags = 0;
info.low_limit = TASK_UNMAPPED_BASE;
@@ -119768,7 +119018,7 @@ index 79bcc9f..ee68a7e 100644
info.high_limit = TASK_SIZE;
addr = vm_unmapped_area(&info);
}
-@@ -2093,6 +2382,28 @@ find_vma_prev(struct mm_struct *mm, unsigned long addr,
+@@ -2090,6 +2379,28 @@ find_vma_prev(struct mm_struct *mm, unsigned long addr,
return vma;
}
@@ -119797,7 +119047,7 @@ index 79bcc9f..ee68a7e 100644
/*
* Verify that the stack growth is acceptable and
* update accounting. This is shared with both the
-@@ -2110,8 +2421,7 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
+@@ -2107,8 +2418,7 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
/* Stack limit test */
actual_size = size;
@@ -119807,7 +119057,7 @@ index 79bcc9f..ee68a7e 100644
if (actual_size > READ_ONCE(rlim[RLIMIT_STACK].rlim_cur))
return -ENOMEM;
-@@ -2122,6 +2432,10 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
+@@ -2119,6 +2429,10 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
locked = mm->locked_vm + grow;
limit = READ_ONCE(rlim[RLIMIT_MEMLOCK].rlim_cur);
limit >>= PAGE_SHIFT;
@@ -119818,7 +119068,7 @@ index 79bcc9f..ee68a7e 100644
if (locked > limit && !capable(CAP_IPC_LOCK))
return -ENOMEM;
}
-@@ -2151,37 +2465,48 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
+@@ -2144,38 +2458,49 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
* PA-RISC uses this for its stack; IA64 for its Register Backing Store.
* vma is the last one with address > vma->vm_end. Have to extend vma.
*/
@@ -119827,6 +119077,7 @@ index 79bcc9f..ee68a7e 100644
+#endif
int expand_upwards(struct vm_area_struct *vma, unsigned long address)
{
+ struct mm_struct *mm = vma->vm_mm;
int error;
+ bool locknext;
@@ -119876,7 +119127,7 @@ index 79bcc9f..ee68a7e 100644
unsigned long size, grow;
size = address - vma->vm_start;
-@@ -2216,6 +2541,8 @@ int expand_upwards(struct vm_area_struct *vma, unsigned long address)
+@@ -2214,6 +2539,8 @@ int expand_upwards(struct vm_area_struct *vma, unsigned long address)
}
}
}
@@ -119884,17 +119135,17 @@ index 79bcc9f..ee68a7e 100644
+ vma_unlock_anon_vma(vma->vm_next);
vma_unlock_anon_vma(vma);
khugepaged_enter_vma_merge(vma, vma->vm_flags);
- validate_mm(vma->vm_mm);
-@@ -2230,6 +2557,8 @@ int expand_downwards(struct vm_area_struct *vma,
- unsigned long address)
+ validate_mm(mm);
+@@ -2229,6 +2556,8 @@ int expand_downwards(struct vm_area_struct *vma,
{
+ struct mm_struct *mm = vma->vm_mm;
int error;
+ bool lockprev = false;
+ struct vm_area_struct *prev;
/*
* We must make sure the anon_vma is allocated
-@@ -2243,6 +2572,15 @@ int expand_downwards(struct vm_area_struct *vma,
+@@ -2242,6 +2571,15 @@ int expand_downwards(struct vm_area_struct *vma,
if (error)
return error;
@@ -119910,7 +119161,7 @@ index 79bcc9f..ee68a7e 100644
vma_lock_anon_vma(vma);
/*
-@@ -2252,9 +2590,17 @@ int expand_downwards(struct vm_area_struct *vma,
+@@ -2251,9 +2589,17 @@ int expand_downwards(struct vm_area_struct *vma,
*/
/* Somebody else might have raced and expanded it already */
@@ -119929,7 +119180,7 @@ index 79bcc9f..ee68a7e 100644
size = vma->vm_end - address;
grow = (vma->vm_start - address) >> PAGE_SHIFT;
-@@ -2279,13 +2625,27 @@ int expand_downwards(struct vm_area_struct *vma,
+@@ -2282,13 +2628,27 @@ int expand_downwards(struct vm_area_struct *vma,
vma->vm_pgoff -= grow;
anon_vma_interval_tree_post_update_vma(vma);
vma_gap_update(vma);
@@ -119944,7 +119195,7 @@ index 79bcc9f..ee68a7e 100644
+ }
+#endif
+
- spin_unlock(&vma->vm_mm->page_table_lock);
+ spin_unlock(&mm->page_table_lock);
+ track_exec_limit(vma->vm_mm, vma->vm_start, vma->vm_end, vma->vm_flags);
perf_event_mmap(vma);
@@ -119955,9 +119206,9 @@ index 79bcc9f..ee68a7e 100644
+ if (lockprev)
+ vma_unlock_anon_vma(prev);
khugepaged_enter_vma_merge(vma, vma->vm_flags);
- validate_mm(vma->vm_mm);
+ validate_mm(mm);
return error;
-@@ -2385,6 +2745,13 @@ static void remove_vma_list(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2388,6 +2748,13 @@ static void remove_vma_list(struct mm_struct *mm, struct vm_area_struct *vma)
do {
long nrpages = vma_pages(vma);
@@ -119971,7 +119222,7 @@ index 79bcc9f..ee68a7e 100644
if (vma->vm_flags & VM_ACCOUNT)
nr_accounted += nrpages;
vm_stat_account(mm, vma->vm_flags, vma->vm_file, -nrpages);
-@@ -2429,6 +2796,16 @@ detach_vmas_to_be_unmapped(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2432,6 +2799,16 @@ detach_vmas_to_be_unmapped(struct mm_struct *mm, struct vm_area_struct *vma,
insertion_point = (prev ? &prev->vm_next : &mm->mmap);
vma->vm_prev = NULL;
do {
@@ -119988,7 +119239,7 @@ index 79bcc9f..ee68a7e 100644
vma_rb_erase(vma, &mm->mm_rb);
mm->map_count--;
tail_vma = vma;
-@@ -2456,14 +2833,33 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2459,14 +2836,33 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
struct vm_area_struct *new;
int err;
@@ -120022,7 +119273,7 @@ index 79bcc9f..ee68a7e 100644
/* most fields are the same, copy all, and then fixup */
*new = *vma;
-@@ -2476,6 +2872,22 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2479,6 +2875,22 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
new->vm_pgoff += ((addr - vma->vm_start) >> PAGE_SHIFT);
}
@@ -120045,7 +119296,7 @@ index 79bcc9f..ee68a7e 100644
err = vma_dup_policy(vma, new);
if (err)
goto out_free_vma;
-@@ -2496,6 +2908,38 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2499,6 +2911,38 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
else
err = vma_adjust(vma, vma->vm_start, addr, vma->vm_pgoff, new);
@@ -120084,7 +119335,7 @@ index 79bcc9f..ee68a7e 100644
/* Success. */
if (!err)
return 0;
-@@ -2505,10 +2949,18 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2508,10 +2952,18 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
new->vm_ops->close(new);
if (new->vm_file)
fput(new->vm_file);
@@ -120104,7 +119355,7 @@ index 79bcc9f..ee68a7e 100644
kmem_cache_free(vm_area_cachep, new);
return err;
}
-@@ -2520,6 +2972,15 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2523,6 +2975,15 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
unsigned long addr, int new_below)
{
@@ -120120,7 +119371,7 @@ index 79bcc9f..ee68a7e 100644
if (mm->map_count >= sysctl_max_map_count)
return -ENOMEM;
-@@ -2531,11 +2992,30 @@ int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2534,11 +2995,30 @@ int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
* work. This now handles partial unmappings.
* Jeremy Fitzhardinge <jeremy@goop.org>
*/
@@ -120148,10 +119399,10 @@ index 79bcc9f..ee68a7e 100644
+ */
+ verify_mm_writelocked(mm);
+
- if ((start & ~PAGE_MASK) || start > TASK_SIZE || len > TASK_SIZE-start)
+ if ((offset_in_page(start)) || start > TASK_SIZE || len > TASK_SIZE-start)
return -EINVAL;
-@@ -2613,6 +3093,8 @@ int do_munmap(struct mm_struct *mm, unsigned long start, size_t len)
+@@ -2616,6 +3096,8 @@ int do_munmap(struct mm_struct *mm, unsigned long start, size_t len)
/* Fix up all other VM information */
remove_vma_list(mm, vma);
@@ -120160,7 +119411,7 @@ index 79bcc9f..ee68a7e 100644
return 0;
}
-@@ -2621,6 +3103,13 @@ int vm_munmap(unsigned long start, size_t len)
+@@ -2624,6 +3106,13 @@ int vm_munmap(unsigned long start, size_t len)
int ret;
struct mm_struct *mm = current->mm;
@@ -120174,7 +119425,7 @@ index 79bcc9f..ee68a7e 100644
down_write(&mm->mmap_sem);
ret = do_munmap(mm, start, len);
up_write(&mm->mmap_sem);
-@@ -2667,6 +3156,11 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
+@@ -2670,6 +3159,11 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
down_write(&mm->mmap_sem);
vma = find_vma(mm, start);
@@ -120186,7 +119437,7 @@ index 79bcc9f..ee68a7e 100644
if (!vma || !(vma->vm_flags & VM_SHARED))
goto out;
-@@ -2703,16 +3197,6 @@ out:
+@@ -2706,16 +3200,6 @@ out:
return ret;
}
@@ -120203,7 +119454,7 @@ index 79bcc9f..ee68a7e 100644
/*
* this is really a simplified "do_mmap". it only handles
* anonymous maps. eventually we may be able to do some
-@@ -2726,6 +3210,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
+@@ -2729,6 +3213,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
struct rb_node **rb_link, *rb_parent;
pgoff_t pgoff = addr >> PAGE_SHIFT;
int error;
@@ -120211,7 +119462,7 @@ index 79bcc9f..ee68a7e 100644
len = PAGE_ALIGN(len);
if (!len)
-@@ -2733,10 +3218,24 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
+@@ -2736,10 +3221,24 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
flags = VM_DATA_DEFAULT_FLAGS | VM_ACCOUNT | mm->def_flags;
@@ -120228,7 +119479,7 @@ index 79bcc9f..ee68a7e 100644
+#endif
+
error = get_unmapped_area(NULL, addr, len, 0, MAP_FIXED);
- if (error & ~PAGE_MASK)
+ if (offset_in_page(error))
return error;
+ charged = len >> PAGE_SHIFT;
@@ -120236,7 +119487,7 @@ index 79bcc9f..ee68a7e 100644
error = mlock_future_check(mm, mm->def_flags, len);
if (error)
return error;
-@@ -2754,16 +3253,17 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
+@@ -2757,16 +3256,17 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
&rb_parent)) {
if (do_munmap(mm, addr, len))
return -ENOMEM;
@@ -120256,7 +119507,7 @@ index 79bcc9f..ee68a7e 100644
return -ENOMEM;
/* Can we just expand an old private anonymous mapping? */
-@@ -2777,7 +3277,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
+@@ -2780,7 +3280,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
*/
vma = kmem_cache_zalloc(vm_area_cachep, GFP_KERNEL);
if (!vma) {
@@ -120265,7 +119516,7 @@ index 79bcc9f..ee68a7e 100644
return -ENOMEM;
}
-@@ -2791,10 +3291,11 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
+@@ -2794,10 +3294,11 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
vma_link(mm, vma, prev, rb_link, rb_parent);
out:
perf_event_mmap(vma);
@@ -120279,7 +119530,7 @@ index 79bcc9f..ee68a7e 100644
return addr;
}
-@@ -2856,6 +3357,7 @@ void exit_mmap(struct mm_struct *mm)
+@@ -2859,6 +3360,7 @@ void exit_mmap(struct mm_struct *mm)
while (vma) {
if (vma->vm_flags & VM_ACCOUNT)
nr_accounted += vma_pages(vma);
@@ -120287,7 +119538,7 @@ index 79bcc9f..ee68a7e 100644
vma = remove_vma(vma);
}
vm_unacct_memory(nr_accounted);
-@@ -2870,6 +3372,10 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2873,6 +3375,10 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
struct vm_area_struct *prev;
struct rb_node **rb_link, *rb_parent;
@@ -120298,7 +119549,7 @@ index 79bcc9f..ee68a7e 100644
if (find_vma_links(mm, vma->vm_start, vma->vm_end,
&prev, &rb_link, &rb_parent))
return -ENOMEM;
-@@ -2877,6 +3383,9 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2880,6 +3386,9 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
security_vm_enough_memory_mm(mm, vma_pages(vma)))
return -ENOMEM;
@@ -120308,7 +119559,7 @@ index 79bcc9f..ee68a7e 100644
/*
* The vm_pgoff of a purely anonymous vma should be irrelevant
* until its first write fault, when page's anon_vma and index
-@@ -2894,7 +3403,21 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2897,7 +3406,21 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
vma->vm_pgoff = vma->vm_start >> PAGE_SHIFT;
}
@@ -120330,7 +119581,7 @@ index 79bcc9f..ee68a7e 100644
return 0;
}
-@@ -2913,6 +3436,8 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
+@@ -2916,6 +3439,8 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
struct rb_node **rb_link, *rb_parent;
bool faulted_in_anon_vma = true;
@@ -120339,7 +119590,7 @@ index 79bcc9f..ee68a7e 100644
/*
* If anonymous vma has not yet been faulted, update new pgoff
* to match new location, to increase its chance of merging.
-@@ -2979,6 +3504,39 @@ out:
+@@ -2982,6 +3507,39 @@ out:
return NULL;
}
@@ -120379,7 +119630,7 @@ index 79bcc9f..ee68a7e 100644
/*
* Return true if the calling process may expand its vm space by the passed
* number of pages
-@@ -2990,6 +3548,11 @@ int may_expand_vm(struct mm_struct *mm, unsigned long npages)
+@@ -2993,6 +3551,11 @@ int may_expand_vm(struct mm_struct *mm, unsigned long npages)
lim = rlimit(RLIMIT_AS) >> PAGE_SHIFT;
@@ -120391,7 +119642,7 @@ index 79bcc9f..ee68a7e 100644
if (cur + npages > lim)
return 0;
return 1;
-@@ -3064,6 +3627,22 @@ static struct vm_area_struct *__install_special_mapping(
+@@ -3067,6 +3630,22 @@ static struct vm_area_struct *__install_special_mapping(
vma->vm_start = addr;
vma->vm_end = addr + len;
@@ -120644,7 +119895,7 @@ index ef5be8e..811ccb0 100644
if (nstart < prev->vm_end)
diff --git a/mm/mremap.c b/mm/mremap.c
-index 5a71cce..9f9889c 100644
+index c25bc62..900ca7f 100644
--- a/mm/mremap.c
+++ b/mm/mremap.c
@@ -143,6 +143,12 @@ static void move_ptes(struct vm_area_struct *vma, pmd_t *old_pmd,
@@ -120678,7 +119929,7 @@ index 5a71cce..9f9889c 100644
unsigned long map_flags;
+ unsigned long pax_task_size = TASK_SIZE;
- if (new_addr & ~PAGE_MASK)
+ if (offset_in_page(new_addr))
goto out;
- if (new_len > TASK_SIZE || new_addr > TASK_SIZE - new_len)
@@ -120739,9 +119990,9 @@ index 5a71cce..9f9889c 100644
+ }
}
out:
- if (ret & ~PAGE_MASK) {
+ if (offset_in_page(ret)) {
diff --git a/mm/nommu.c b/mm/nommu.c
-index ab14a20..4f3754c 100644
+index 92be862..30dc573 100644
--- a/mm/nommu.c
+++ b/mm/nommu.c
@@ -56,7 +56,6 @@ int sysctl_max_map_count = DEFAULT_MAX_MAP_COUNT;
@@ -120808,47 +120059,22 @@ index ab14a20..4f3754c 100644
struct mm_struct *mm;
diff --git a/mm/oom_kill.c b/mm/oom_kill.c
-index 1ecc0bc..bcce7aa 100644
+index c126809..02f1d52 100644
--- a/mm/oom_kill.c
+++ b/mm/oom_kill.c
-@@ -571,18 +571,24 @@ void oom_kill_process(struct oom_control *oc, struct task_struct *p,
- * pending fatal signal.
- */
- rcu_read_lock();
-- for_each_process(p)
-- if (p->mm == mm && !same_thread_group(p, victim) &&
-- !(p->flags & PF_KTHREAD)) {
-- if (p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN)
-- continue;
-+ for_each_process(p) {
-+ if (p->mm != mm)
-+ continue;
-+ if (same_thread_group(p, victim))
-+ continue;
-+ if (unlikely(p->flags & PF_KTHREAD))
-+ continue;
-+ if (is_global_init(p))
-+ continue;
-+ if (p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN)
-+ continue;
+@@ -613,6 +613,10 @@ void oom_kill_process(struct oom_control *oc, struct task_struct *p,
+ if (p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN)
+ continue;
-- task_lock(p); /* Protect ->comm from prctl() */
-- pr_err("Kill process %d (%s) sharing same memory\n",
-- task_pid_nr(p), p->comm);
-- task_unlock(p);
-- do_send_sig_info(SIGKILL, SEND_SIG_FORCED, p, true);
-- }
+ task_lock(p); /* Protect ->comm from prctl() */
+ pr_err("Kill process %d (%s) sharing same memory\n",
+ task_pid_nr(p), p->comm);
+ task_unlock(p);
-+ do_send_sig_info(SIGKILL, SEND_SIG_FORCED, p, true);
-+ }
+ do_send_sig_info(SIGKILL, SEND_SIG_FORCED, p, true);
+ }
rcu_read_unlock();
-
- do_send_sig_info(SIGKILL, SEND_SIG_FORCED, victim, true);
diff --git a/mm/page-writeback.c b/mm/page-writeback.c
-index 2c90357..f453b93 100644
+index d15d88c..4316955 100644
--- a/mm/page-writeback.c
+++ b/mm/page-writeback.c
@@ -860,7 +860,7 @@ static long long pos_ratio_polynom(unsigned long setpoint,
@@ -120861,7 +120087,7 @@ index 2c90357..f453b93 100644
struct bdi_writeback *wb = dtc->wb;
unsigned long write_bw = wb->avg_write_bandwidth;
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 48aaf7b..cf4f701 100644
+index 9d666df..dfa2193 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -62,6 +62,7 @@
@@ -120872,7 +120098,15 @@ index 48aaf7b..cf4f701 100644
#include <asm/sections.h>
#include <asm/tlbflush.h>
-@@ -448,7 +449,7 @@ out:
+@@ -229,7 +230,6 @@ static char * const zone_names[MAX_NR_ZONES] = {
+ #endif
+ };
+
+-static void free_compound_page(struct page *page);
+ compound_page_dtor * const compound_page_dtors[] = {
+ NULL,
+ free_compound_page,
+@@ -457,7 +457,7 @@ out:
* This usage means that zero-order pages may not be compound.
*/
@@ -120881,7 +120115,7 @@ index 48aaf7b..cf4f701 100644
{
__free_pages_ok(page, compound_order(page));
}
-@@ -557,7 +558,7 @@ static inline void clear_page_guard(struct zone *zone, struct page *page,
+@@ -563,7 +563,7 @@ static inline void clear_page_guard(struct zone *zone, struct page *page,
__mod_zone_freepage_state(zone, (1 << order), migratetype);
}
#else
@@ -120890,7 +120124,7 @@ index 48aaf7b..cf4f701 100644
static inline void set_page_guard(struct zone *zone, struct page *page,
unsigned int order, int migratetype) {}
static inline void clear_page_guard(struct zone *zone, struct page *page,
-@@ -933,6 +934,10 @@ static bool free_pages_prepare(struct page *page, unsigned int order)
+@@ -955,6 +955,10 @@ static bool free_pages_prepare(struct page *page, unsigned int order)
bool compound = PageCompound(page);
int i, bad = 0;
@@ -120901,7 +120135,7 @@ index 48aaf7b..cf4f701 100644
VM_BUG_ON_PAGE(PageTail(page), page);
VM_BUG_ON_PAGE(compound && compound_order(page) != order, page);
-@@ -959,6 +964,12 @@ static bool free_pages_prepare(struct page *page, unsigned int order)
+@@ -981,6 +985,12 @@ static bool free_pages_prepare(struct page *page, unsigned int order)
debug_check_no_obj_freed(page_address(page),
PAGE_SIZE << order);
}
@@ -120914,7 +120148,7 @@ index 48aaf7b..cf4f701 100644
arch_free_page(page, order);
kernel_map_pages(page, 1 << order, 0);
-@@ -981,6 +992,20 @@ static void __free_pages_ok(struct page *page, unsigned int order)
+@@ -1003,6 +1013,20 @@ static void __free_pages_ok(struct page *page, unsigned int order)
local_irq_restore(flags);
}
@@ -120935,7 +120169,7 @@ index 48aaf7b..cf4f701 100644
static void __init __free_pages_boot_core(struct page *page,
unsigned long pfn, unsigned int order)
{
-@@ -997,6 +1022,19 @@ static void __init __free_pages_boot_core(struct page *page,
+@@ -1019,6 +1043,19 @@ static void __init __free_pages_boot_core(struct page *page,
__ClearPageReserved(p);
set_page_count(p, 0);
@@ -120955,7 +120189,7 @@ index 48aaf7b..cf4f701 100644
page_zone(page)->managed_pages += nr_pages;
set_page_refcounted(page);
__free_pages(page, order);
-@@ -1053,7 +1091,6 @@ static inline bool __meminit meminit_pfn_in_nid(unsigned long pfn, int node,
+@@ -1075,7 +1112,6 @@ static inline bool __meminit meminit_pfn_in_nid(unsigned long pfn, int node,
}
#endif
@@ -120963,7 +120197,7 @@ index 48aaf7b..cf4f701 100644
void __init __free_pages_bootmem(struct page *page, unsigned long pfn,
unsigned int order)
{
-@@ -1357,9 +1394,11 @@ static int prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags,
+@@ -1379,9 +1415,11 @@ static int prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags,
kernel_map_pages(page, 1 << order, 1);
kasan_alloc_pages(page, order);
@@ -120975,7 +120209,7 @@ index 48aaf7b..cf4f701 100644
if (order && (gfp_flags & __GFP_COMP))
prep_compound_page(page, order);
-@@ -2138,7 +2177,7 @@ struct page *buffered_rmqueue(struct zone *preferred_zone,
+@@ -2250,7 +2288,7 @@ struct page *buffered_rmqueue(struct zone *preferred_zone,
}
__mod_zone_page_state(zone, NR_ALLOC_BATCH, -(1 << order));
@@ -120984,7 +120218,7 @@ index 48aaf7b..cf4f701 100644
!test_bit(ZONE_FAIR_DEPLETED, &zone->flags))
set_bit(ZONE_FAIR_DEPLETED, &zone->flags);
-@@ -2457,7 +2496,7 @@ static void reset_alloc_batches(struct zone *preferred_zone)
+@@ -2467,7 +2505,7 @@ static void reset_alloc_batches(struct zone *preferred_zone)
do {
mod_zone_page_state(zone, NR_ALLOC_BATCH,
high_wmark_pages(zone) - low_wmark_pages(zone) -
@@ -120993,17 +120227,17 @@ index 48aaf7b..cf4f701 100644
clear_bit(ZONE_FAIR_DEPLETED, &zone->flags);
} while (zone++ != preferred_zone);
}
-@@ -6207,7 +6246,7 @@ static void __setup_per_zone_wmarks(void)
+@@ -6059,7 +6097,7 @@ static void __setup_per_zone_wmarks(void)
__mod_zone_page_state(zone, NR_ALLOC_BATCH,
high_wmark_pages(zone) - low_wmark_pages(zone) -
- atomic_long_read(&zone->vm_stat[NR_ALLOC_BATCH]));
+ atomic_long_read_unchecked(&zone->vm_stat[NR_ALLOC_BATCH]));
- setup_zone_migrate_reserve(zone);
spin_unlock_irqrestore(&zone->lock, flags);
+ }
diff --git a/mm/percpu.c b/mm/percpu.c
-index a63b4d8..87b2f23 100644
+index 8a943b9..29d8b8d 100644
--- a/mm/percpu.c
+++ b/mm/percpu.c
@@ -131,7 +131,7 @@ static unsigned int pcpu_low_unit_cpu __read_mostly;
@@ -121069,7 +120303,7 @@ index e88d071..4043093 100644
rc = IS_ERR(mm) ? PTR_ERR(mm) : -ESRCH;
/*
diff --git a/mm/rmap.c b/mm/rmap.c
-index f5b5c1f..289c3dcb 100644
+index b577fbb..ccd4d4e 100644
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -171,6 +171,10 @@ int anon_vma_prepare(struct vm_area_struct *vma)
@@ -121173,7 +120407,7 @@ index f5b5c1f..289c3dcb 100644
/*
diff --git a/mm/shmem.c b/mm/shmem.c
-index 48ce829..a5a01a2 100644
+index 2afcdbb..4b38523 100644
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@ -33,7 +33,7 @@
@@ -121185,7 +120419,7 @@ index 48ce829..a5a01a2 100644
#ifdef CONFIG_SHMEM
/*
-@@ -80,7 +80,7 @@ static struct vfsmount *shm_mnt;
+@@ -82,7 +82,7 @@ static struct vfsmount *shm_mnt;
#define BOGO_DIRENT_SIZE 20
/* Symlink up to this size is kmalloc'ed instead of using a swappable page */
@@ -121194,7 +120428,7 @@ index 48ce829..a5a01a2 100644
/*
* shmem_fallocate communicates with shmem_fault or shmem_writepage via
-@@ -612,8 +612,7 @@ static void shmem_evict_inode(struct inode *inode)
+@@ -620,8 +620,7 @@ static void shmem_evict_inode(struct inode *inode)
list_del_init(&info->swaplist);
mutex_unlock(&shmem_swaplist_mutex);
}
@@ -121204,81 +120438,7 @@ index 48ce829..a5a01a2 100644
simple_xattrs_free(&info->xattrs);
WARN_ON(inode->i_blocks);
-@@ -835,14 +834,14 @@ static int shmem_writepage(struct page *page, struct writeback_control *wbc)
- list_add_tail(&info->swaplist, &shmem_swaplist);
-
- if (add_to_swap_cache(page, swap, GFP_ATOMIC) == 0) {
-+ spin_lock(&info->lock);
-+ shmem_recalc_inode(inode);
-+ info->swapped++;
-+ spin_unlock(&info->lock);
-+
- swap_shmem_alloc(swap);
- shmem_delete_from_page_cache(page, swp_to_radix_entry(swap));
-
-- spin_lock(&info->lock);
-- info->swapped++;
-- shmem_recalc_inode(inode);
-- spin_unlock(&info->lock);
--
- mutex_unlock(&shmem_swaplist_mutex);
- BUG_ON(page_mapped(page));
- swap_writepage(page, wbc);
-@@ -1070,7 +1069,7 @@ repeat:
- if (sgp != SGP_WRITE && sgp != SGP_FALLOC &&
- ((loff_t)index << PAGE_CACHE_SHIFT) >= i_size_read(inode)) {
- error = -EINVAL;
-- goto failed;
-+ goto unlock;
- }
-
- if (page && sgp == SGP_WRITE)
-@@ -1238,11 +1237,15 @@ clear:
- /* Perhaps the file has been truncated since we checked */
- if (sgp != SGP_WRITE && sgp != SGP_FALLOC &&
- ((loff_t)index << PAGE_CACHE_SHIFT) >= i_size_read(inode)) {
-+ if (alloced) {
-+ ClearPageDirty(page);
-+ delete_from_page_cache(page);
-+ spin_lock(&info->lock);
-+ shmem_recalc_inode(inode);
-+ spin_unlock(&info->lock);
-+ }
- error = -EINVAL;
-- if (alloced)
-- goto trunc;
-- else
-- goto failed;
-+ goto unlock;
- }
- *pagep = page;
- return 0;
-@@ -1250,23 +1253,13 @@ clear:
- /*
- * Error recovery.
- */
--trunc:
-- info = SHMEM_I(inode);
-- ClearPageDirty(page);
-- delete_from_page_cache(page);
-- spin_lock(&info->lock);
-- info->alloced--;
-- inode->i_blocks -= BLOCKS_PER_PAGE;
-- spin_unlock(&info->lock);
- decused:
-- sbinfo = SHMEM_SB(inode->i_sb);
- if (sbinfo->max_blocks)
- percpu_counter_add(&sbinfo->used_blocks, -1);
- unacct:
- shmem_unacct_blocks(info->flags, 1);
- failed:
-- if (swap.val && error != -EINVAL &&
-- !shmem_confirm_swap(mapping, index, swap))
-+ if (swap.val && !shmem_confirm_swap(mapping, index, swap))
- error = -EEXIST;
- unlock:
- if (page) {
-@@ -2460,13 +2453,12 @@ static int shmem_symlink(struct inode *dir, struct dentry *dentry, const char *s
+@@ -2462,13 +2461,12 @@ static int shmem_symlink(struct inode *dir, struct dentry *dentry, const char *s
info = SHMEM_I(inode);
inode->i_size = len-1;
if (len <= SHORT_SYMLINK_LEN) {
@@ -121294,7 +120454,7 @@ index 48ce829..a5a01a2 100644
} else {
error = shmem_getpage(inode, 0, &page, SGP_WRITE, NULL);
if (error) {
-@@ -2564,6 +2556,11 @@ static const struct xattr_handler *shmem_xattr_handlers[] = {
+@@ -2566,6 +2564,11 @@ static const struct xattr_handler *shmem_xattr_handlers[] = {
static int shmem_xattr_validate(const char *name)
{
struct { const char *prefix; size_t len; } arr[] = {
@@ -121306,7 +120466,7 @@ index 48ce829..a5a01a2 100644
{ XATTR_SECURITY_PREFIX, XATTR_SECURITY_PREFIX_LEN },
{ XATTR_TRUSTED_PREFIX, XATTR_TRUSTED_PREFIX_LEN }
};
-@@ -2619,6 +2616,15 @@ static int shmem_setxattr(struct dentry *dentry, const char *name,
+@@ -2621,6 +2624,15 @@ static int shmem_setxattr(struct dentry *dentry, const char *name,
if (err)
return err;
@@ -121322,7 +120482,7 @@ index 48ce829..a5a01a2 100644
return simple_xattr_set(&info->xattrs, name, value, size, flags);
}
-@@ -3002,8 +3008,7 @@ int shmem_fill_super(struct super_block *sb, void *data, int silent)
+@@ -3004,8 +3016,7 @@ int shmem_fill_super(struct super_block *sb, void *data, int silent)
int err = -ENOMEM;
/* Round up to L1_CACHE_BYTES to resist false sharing */
@@ -121332,7 +120492,7 @@ index 48ce829..a5a01a2 100644
if (!sbinfo)
return -ENOMEM;
-@@ -3081,6 +3086,7 @@ static struct inode *shmem_alloc_inode(struct super_block *sb)
+@@ -3083,6 +3094,7 @@ static struct inode *shmem_alloc_inode(struct super_block *sb)
static void shmem_destroy_callback(struct rcu_head *head)
{
struct inode *inode = container_of(head, struct inode, i_rcu);
@@ -121341,7 +120501,7 @@ index 48ce829..a5a01a2 100644
}
diff --git a/mm/slab.c b/mm/slab.c
-index 4fcc5dd..8fb1a86 100644
+index 4765c97..26f5c11 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -116,6 +116,7 @@
@@ -121352,7 +120512,7 @@ index 4fcc5dd..8fb1a86 100644
#include <net/sock.h>
-@@ -314,10 +315,12 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
+@@ -315,10 +316,12 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
if ((x)->max_freeable < i) \
(x)->max_freeable = i; \
} while (0)
@@ -121369,7 +120529,7 @@ index 4fcc5dd..8fb1a86 100644
#else
#define STATS_INC_ACTIVE(x) do { } while (0)
#define STATS_DEC_ACTIVE(x) do { } while (0)
-@@ -334,6 +337,8 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
+@@ -335,6 +338,8 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
#define STATS_INC_ALLOCMISS(x) do { } while (0)
#define STATS_INC_FREEHIT(x) do { } while (0)
#define STATS_INC_FREEMISS(x) do { } while (0)
@@ -121378,7 +120538,7 @@ index 4fcc5dd..8fb1a86 100644
#endif
#if DEBUG
-@@ -450,7 +455,7 @@ static inline void *index_to_obj(struct kmem_cache *cache, struct page *page,
+@@ -451,7 +456,7 @@ static inline void *index_to_obj(struct kmem_cache *cache, struct page *page,
* reciprocal_divide(offset, cache->reciprocal_buffer_size)
*/
static inline unsigned int obj_to_index(const struct kmem_cache *cache,
@@ -121387,7 +120547,7 @@ index 4fcc5dd..8fb1a86 100644
{
u32 offset = (obj - page->s_mem);
return reciprocal_divide(offset, cache->reciprocal_buffer_size);
-@@ -1452,7 +1457,7 @@ void __init kmem_cache_init(void)
+@@ -1453,7 +1458,7 @@ void __init kmem_cache_init(void)
* structures first. Without this, further allocations will bug.
*/
kmalloc_caches[INDEX_NODE] = create_kmalloc_cache("kmalloc-node",
@@ -121396,7 +120556,7 @@ index 4fcc5dd..8fb1a86 100644
slab_state = PARTIAL_NODE;
setup_kmalloc_cache_index_table();
-@@ -1691,7 +1696,7 @@ static void store_stackinfo(struct kmem_cache *cachep, unsigned long *addr,
+@@ -1692,7 +1697,7 @@ static void store_stackinfo(struct kmem_cache *cachep, unsigned long *addr,
while (!kstack_end(sptr)) {
svalue = *sptr++;
@@ -121405,7 +120565,7 @@ index 4fcc5dd..8fb1a86 100644
*addr++ = svalue;
size -= sizeof(unsigned long);
if (size <= sizeof(unsigned long))
-@@ -2074,7 +2079,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
+@@ -2064,7 +2069,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
cachep = find_mergeable(size, align, flags, name, ctor);
if (cachep) {
@@ -121414,7 +120574,7 @@ index 4fcc5dd..8fb1a86 100644
/*
* Adjust the object sizes so that we clear
-@@ -3379,6 +3384,20 @@ static inline void __cache_free(struct kmem_cache *cachep, void *objp,
+@@ -3369,6 +3374,20 @@ static inline void __cache_free(struct kmem_cache *cachep, void *objp,
struct array_cache *ac = cpu_cache_get(cachep);
check_irq_off();
@@ -121435,7 +120595,7 @@ index 4fcc5dd..8fb1a86 100644
kmemleak_free_recursive(objp, cachep->flags);
objp = cache_free_debugcheck(cachep, objp, caller);
-@@ -3504,7 +3523,7 @@ __do_kmalloc_node(size_t size, gfp_t flags, int node, unsigned long caller)
+@@ -3494,7 +3513,7 @@ __do_kmalloc_node(size_t size, gfp_t flags, int node, unsigned long caller)
return kmem_cache_alloc_node_trace(cachep, flags, node, size);
}
@@ -121444,7 +120604,7 @@ index 4fcc5dd..8fb1a86 100644
{
return __do_kmalloc_node(size, flags, node, _RET_IP_);
}
-@@ -3524,7 +3543,7 @@ EXPORT_SYMBOL(__kmalloc_node_track_caller);
+@@ -3514,7 +3533,7 @@ EXPORT_SYMBOL(__kmalloc_node_track_caller);
* @flags: the type of memory to allocate (see kmalloc).
* @caller: function caller for debug tracking of the caller
*/
@@ -121453,7 +120613,7 @@ index 4fcc5dd..8fb1a86 100644
unsigned long caller)
{
struct kmem_cache *cachep;
-@@ -3597,6 +3616,7 @@ void kfree(const void *objp)
+@@ -3587,6 +3606,7 @@ void kfree(const void *objp)
if (unlikely(ZERO_OR_NULL_PTR(objp)))
return;
@@ -121461,7 +120621,7 @@ index 4fcc5dd..8fb1a86 100644
local_irq_save(flags);
kfree_debugcheck(objp);
c = virt_to_cache(objp);
-@@ -4016,14 +4036,22 @@ void slabinfo_show_stats(struct seq_file *m, struct kmem_cache *cachep)
+@@ -4006,14 +4026,22 @@ void slabinfo_show_stats(struct seq_file *m, struct kmem_cache *cachep)
}
/* cpu stats */
{
@@ -121488,7 +120648,7 @@ index 4fcc5dd..8fb1a86 100644
#endif
}
-@@ -4231,13 +4259,80 @@ static const struct file_operations proc_slabstats_operations = {
+@@ -4221,13 +4249,80 @@ static const struct file_operations proc_slabstats_operations = {
static int __init slab_proc_init(void)
{
#ifdef CONFIG_DEBUG_SLAB_LEAK
@@ -121571,7 +120731,7 @@ index 4fcc5dd..8fb1a86 100644
* ksize - get the actual amount of memory allocated for a given object
* @objp: Pointer to the object
diff --git a/mm/slab.h b/mm/slab.h
-index a3a967d..592bb29 100644
+index 7b60871..dd645ce1 100644
--- a/mm/slab.h
+++ b/mm/slab.h
@@ -22,7 +22,7 @@ struct kmem_cache {
@@ -121614,7 +120774,7 @@ index a3a967d..592bb29 100644
#if defined(CONFIG_DEBUG_SLAB)
#define SLAB_DEBUG_FLAGS (SLAB_RED_ZONE | SLAB_POISON | SLAB_STORE_USER)
-@@ -325,6 +340,9 @@ static inline struct kmem_cache *cache_from_obj(struct kmem_cache *s, void *x)
+@@ -309,6 +324,9 @@ static inline struct kmem_cache *cache_from_obj(struct kmem_cache *s, void *x)
return s;
page = virt_to_head_page(x);
@@ -121625,7 +120785,7 @@ index a3a967d..592bb29 100644
if (slab_equal_or_root(cachep, s))
return cachep;
diff --git a/mm/slab_common.c b/mm/slab_common.c
-index 5ce4fae..45e9b4e 100644
+index 3c6a86b..f143a66 100644
--- a/mm/slab_common.c
+++ b/mm/slab_common.c
@@ -25,11 +25,35 @@
@@ -121683,7 +120843,7 @@ index 5ce4fae..45e9b4e 100644
return 1;
return 0;
-@@ -343,7 +367,7 @@ do_kmem_cache_create(const char *name, size_t object_size, size_t size,
+@@ -343,7 +367,7 @@ static struct kmem_cache *create_cache(const char *name,
if (err)
goto out_free_cache;
@@ -121692,7 +120852,7 @@ index 5ce4fae..45e9b4e 100644
list_add(&s->list, &slab_caches);
out:
if (err)
-@@ -408,6 +432,13 @@ kmem_cache_create(const char *name, size_t size, size_t align,
+@@ -407,6 +431,13 @@ kmem_cache_create(const char *name, size_t size, size_t align,
*/
flags &= CACHE_CREATE_MASK;
@@ -121706,7 +120866,7 @@ index 5ce4fae..45e9b4e 100644
s = __kmem_cache_alias(name, size, align, flags, ctor);
if (s)
goto out_unlock;
-@@ -478,7 +509,7 @@ static void do_kmem_cache_release(struct list_head *release,
+@@ -468,7 +499,7 @@ static void release_caches(struct list_head *release, bool need_rcu_barrier)
rcu_barrier();
list_for_each_entry_safe(s, s2, release, list) {
@@ -121715,7 +120875,7 @@ index 5ce4fae..45e9b4e 100644
sysfs_slab_remove(s);
#else
slab_kmem_cache_release(s);
-@@ -650,8 +681,7 @@ void kmem_cache_destroy(struct kmem_cache *s)
+@@ -711,8 +742,7 @@ void kmem_cache_destroy(struct kmem_cache *s)
mutex_lock(&slab_mutex);
@@ -121724,8 +120884,8 @@ index 5ce4fae..45e9b4e 100644
+ if (!atomic_dec_and_test(&s->refcount))
goto out_unlock;
- for_each_memcg_cache_safe(c, c2, s) {
-@@ -716,7 +746,7 @@ void __init create_boot_cache(struct kmem_cache *s, const char *name, size_t siz
+ err = shutdown_memcg_caches(s, &release, &need_rcu_barrier);
+@@ -778,7 +808,7 @@ void __init create_boot_cache(struct kmem_cache *s, const char *name, size_t siz
panic("Creation of kmalloc slab %s size=%zu failed. Reason %d\n",
name, size, err);
@@ -121734,7 +120894,7 @@ index 5ce4fae..45e9b4e 100644
}
struct kmem_cache *__init create_kmalloc_cache(const char *name, size_t size,
-@@ -729,7 +759,7 @@ struct kmem_cache *__init create_kmalloc_cache(const char *name, size_t size,
+@@ -791,7 +821,7 @@ struct kmem_cache *__init create_kmalloc_cache(const char *name, size_t size,
create_boot_cache(s, name, size, flags);
list_add(&s->list, &slab_caches);
@@ -121743,7 +120903,7 @@ index 5ce4fae..45e9b4e 100644
return s;
}
-@@ -741,6 +771,11 @@ struct kmem_cache *kmalloc_dma_caches[KMALLOC_SHIFT_HIGH + 1];
+@@ -803,6 +833,11 @@ struct kmem_cache *kmalloc_dma_caches[KMALLOC_SHIFT_HIGH + 1];
EXPORT_SYMBOL(kmalloc_dma_caches);
#endif
@@ -121755,7 +120915,7 @@ index 5ce4fae..45e9b4e 100644
/*
* Conversion table for small slabs sizes / 8 to the index in the
* kmalloc array. This is necessary for slabs < 192 since we have non power
-@@ -805,6 +840,13 @@ struct kmem_cache *kmalloc_slab(size_t size, gfp_t flags)
+@@ -867,6 +902,13 @@ struct kmem_cache *kmalloc_slab(size_t size, gfp_t flags)
return kmalloc_dma_caches[index];
#endif
@@ -121769,7 +120929,7 @@ index 5ce4fae..45e9b4e 100644
return kmalloc_caches[index];
}
-@@ -897,7 +939,7 @@ void __init create_kmalloc_caches(unsigned long flags)
+@@ -959,7 +1001,7 @@ void __init create_kmalloc_caches(unsigned long flags)
for (i = KMALLOC_SHIFT_LOW; i <= KMALLOC_SHIFT_HIGH; i++) {
if (!kmalloc_caches[i])
@@ -121778,7 +120938,7 @@ index 5ce4fae..45e9b4e 100644
/*
* Caches that are not of the two-to-the-power-of size.
-@@ -905,9 +947,9 @@ void __init create_kmalloc_caches(unsigned long flags)
+@@ -967,9 +1009,9 @@ void __init create_kmalloc_caches(unsigned long flags)
* earlier power of two caches
*/
if (KMALLOC_MIN_SIZE <= 32 && !kmalloc_caches[1] && i == 6)
@@ -121790,7 +120950,7 @@ index 5ce4fae..45e9b4e 100644
}
/* Kmalloc array is now usable */
-@@ -928,6 +970,23 @@ void __init create_kmalloc_caches(unsigned long flags)
+@@ -990,6 +1032,23 @@ void __init create_kmalloc_caches(unsigned long flags)
}
}
#endif
@@ -121814,7 +120974,7 @@ index 5ce4fae..45e9b4e 100644
}
#endif /* !CONFIG_SLOB */
-@@ -987,6 +1046,9 @@ static void print_slabinfo_header(struct seq_file *m)
+@@ -1049,6 +1108,9 @@ static void print_slabinfo_header(struct seq_file *m)
seq_puts(m, " : globalstat <listallocs> <maxobjs> <grown> <reaped> "
"<error> <maxfreeable> <nodeallocs> <remotefrees> <alienoverflow>");
seq_puts(m, " : cpustat <allochit> <allocmiss> <freehit> <freemiss>");
@@ -121824,7 +120984,7 @@ index 5ce4fae..45e9b4e 100644
#endif
seq_putc(m, '\n');
}
-@@ -1116,7 +1178,7 @@ static int __init slab_proc_init(void)
+@@ -1178,7 +1240,7 @@ static int __init slab_proc_init(void)
module_init(slab_proc_init);
#endif /* CONFIG_SLABINFO */
@@ -121834,7 +120994,7 @@ index 5ce4fae..45e9b4e 100644
{
void *ret;
diff --git a/mm/slob.c b/mm/slob.c
-index 0d7e5df..2f9306b 100644
+index 17e8f8c..56d3370 100644
--- a/mm/slob.c
+++ b/mm/slob.c
@@ -67,6 +67,7 @@
@@ -122257,7 +121417,7 @@ index 0d7e5df..2f9306b 100644
EXPORT_SYMBOL(kmem_cache_free);
diff --git a/mm/slub.c b/mm/slub.c
-index f614b5d..043029b 100644
+index 4699751..ac3f662 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -34,6 +34,7 @@
@@ -122277,7 +121437,7 @@ index f614b5d..043029b 100644
static int sysfs_slab_add(struct kmem_cache *);
static int sysfs_slab_alias(struct kmem_cache *, const char *);
static void memcg_propagate_slab_attrs(struct kmem_cache *s);
-@@ -556,7 +557,7 @@ static void print_track(const char *s, struct track *t)
+@@ -558,7 +559,7 @@ static void print_track(const char *s, struct track *t)
if (!t->addr)
return;
@@ -122286,22 +121446,29 @@ index f614b5d..043029b 100644
s, (void *)t->addr, jiffies - t->when, t->cpu, t->pid);
#ifdef CONFIG_STACKTRACE
{
-@@ -2704,6 +2705,14 @@ static __always_inline void slab_free(struct kmem_cache *s,
+@@ -2771,6 +2772,21 @@ static __always_inline void slab_free(struct kmem_cache *s, struct page *page,
- slab_free_hook(s, x);
+ slab_free_freelist_hook(s, head, tail);
+#ifdef CONFIG_PAX_MEMORY_SANITIZE
+ if (!(s->flags & SLAB_NO_SANITIZE)) {
-+ memset(x, PAX_MEMORY_SANITIZE_VALUE, s->object_size);
-+ if (s->ctor)
-+ s->ctor(x);
++ void *x = head;
++
++ while (1) {
++ memset(x, PAX_MEMORY_SANITIZE_VALUE, s->object_size);
++ if (s->ctor)
++ s->ctor(x);
++ if (x == tail_obj)
++ break;
++ x = get_freepointer(s, x);
++ }
+ }
+#endif
+
redo:
/*
* Determine the currently cpus per cpu slab.
-@@ -3152,6 +3161,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order)
+@@ -3262,6 +3278,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order)
s->inuse = size;
if (((flags & (SLAB_DESTROY_BY_RCU | SLAB_POISON)) ||
@@ -122311,7 +121478,7 @@ index f614b5d..043029b 100644
s->ctor)) {
/*
* Relocate free pointer after the object if it is not
-@@ -3406,7 +3418,7 @@ static int __init setup_slub_min_objects(char *str)
+@@ -3516,7 +3535,7 @@ static int __init setup_slub_min_objects(char *str)
__setup("slub_min_objects=", setup_slub_min_objects);
@@ -122320,7 +121487,7 @@ index f614b5d..043029b 100644
{
struct kmem_cache *s;
void *ret;
-@@ -3444,7 +3456,7 @@ static void *kmalloc_large_node(size_t size, gfp_t flags, int node)
+@@ -3554,7 +3573,7 @@ static void *kmalloc_large_node(size_t size, gfp_t flags, int node)
return ptr;
}
@@ -122329,7 +121496,7 @@ index f614b5d..043029b 100644
{
struct kmem_cache *s;
void *ret;
-@@ -3492,6 +3504,70 @@ static size_t __ksize(const void *object)
+@@ -3602,6 +3621,70 @@ static size_t __ksize(const void *object)
return slab_ksize(page->slab_cache);
}
@@ -122400,7 +121567,7 @@ index f614b5d..043029b 100644
size_t ksize(const void *object)
{
size_t size = __ksize(object);
-@@ -3512,6 +3588,7 @@ void kfree(const void *x)
+@@ -3622,6 +3705,7 @@ void kfree(const void *x)
if (unlikely(ZERO_OR_NULL_PTR(x)))
return;
@@ -122408,7 +121575,7 @@ index f614b5d..043029b 100644
page = virt_to_head_page(x);
if (unlikely(!PageSlab(page))) {
BUG_ON(!PageCompound(page));
-@@ -3829,7 +3906,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
+@@ -3939,7 +4023,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
s = find_mergeable(size, align, flags, name, ctor);
if (s) {
@@ -122417,7 +121584,7 @@ index f614b5d..043029b 100644
/*
* Adjust the object sizes so that we clear
-@@ -3845,7 +3922,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
+@@ -3955,7 +4039,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
}
if (sysfs_slab_alias(s, name)) {
@@ -122426,7 +121593,7 @@ index f614b5d..043029b 100644
s = NULL;
}
}
-@@ -3962,7 +4039,7 @@ void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags,
+@@ -4072,7 +4156,7 @@ void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags,
}
#endif
@@ -122435,7 +121602,7 @@ index f614b5d..043029b 100644
static int count_inuse(struct page *page)
{
return page->inuse;
-@@ -4243,7 +4320,11 @@ static int list_locations(struct kmem_cache *s, char *buf,
+@@ -4353,7 +4437,11 @@ static int list_locations(struct kmem_cache *s, char *buf,
len += sprintf(buf + len, "%7ld ", l->count);
if (l->addr)
@@ -122447,7 +121614,7 @@ index f614b5d..043029b 100644
else
len += sprintf(buf + len, "<not-available>");
-@@ -4341,12 +4422,12 @@ static void __init resiliency_test(void)
+@@ -4451,12 +4539,12 @@ static void __init resiliency_test(void)
validate_slab_cache(kmalloc_caches[9]);
}
#else
@@ -122462,7 +121629,7 @@ index f614b5d..043029b 100644
enum slab_stat_type {
SL_ALL, /* All slabs */
SL_PARTIAL, /* Only partially allocated slabs */
-@@ -4583,13 +4664,17 @@ static ssize_t ctor_show(struct kmem_cache *s, char *buf)
+@@ -4693,13 +4781,17 @@ static ssize_t ctor_show(struct kmem_cache *s, char *buf)
{
if (!s->ctor)
return 0;
@@ -122481,7 +121648,7 @@ index f614b5d..043029b 100644
}
SLAB_ATTR_RO(aliases);
-@@ -4677,6 +4762,22 @@ static ssize_t cache_dma_show(struct kmem_cache *s, char *buf)
+@@ -4787,6 +4879,22 @@ static ssize_t cache_dma_show(struct kmem_cache *s, char *buf)
SLAB_ATTR_RO(cache_dma);
#endif
@@ -122504,7 +121671,7 @@ index f614b5d..043029b 100644
static ssize_t destroy_by_rcu_show(struct kmem_cache *s, char *buf)
{
return sprintf(buf, "%d\n", !!(s->flags & SLAB_DESTROY_BY_RCU));
-@@ -4732,7 +4833,7 @@ static ssize_t trace_store(struct kmem_cache *s, const char *buf,
+@@ -4842,7 +4950,7 @@ static ssize_t trace_store(struct kmem_cache *s, const char *buf,
* as well as cause other issues like converting a mergeable
* cache into an umergeable one.
*/
@@ -122513,7 +121680,7 @@ index f614b5d..043029b 100644
return -EINVAL;
s->flags &= ~SLAB_TRACE;
-@@ -4852,7 +4953,7 @@ static ssize_t failslab_show(struct kmem_cache *s, char *buf)
+@@ -4962,7 +5070,7 @@ static ssize_t failslab_show(struct kmem_cache *s, char *buf)
static ssize_t failslab_store(struct kmem_cache *s, const char *buf,
size_t length)
{
@@ -122522,7 +121689,7 @@ index f614b5d..043029b 100644
return -EINVAL;
s->flags &= ~SLAB_FAILSLAB;
-@@ -5019,6 +5120,12 @@ static struct attribute *slab_attrs[] = {
+@@ -5129,6 +5237,12 @@ static struct attribute *slab_attrs[] = {
#ifdef CONFIG_ZONE_DMA
&cache_dma_attr.attr,
#endif
@@ -122535,7 +121702,7 @@ index f614b5d..043029b 100644
#ifdef CONFIG_NUMA
&remote_node_defrag_ratio_attr.attr,
#endif
-@@ -5260,6 +5367,7 @@ static char *create_unique_id(struct kmem_cache *s)
+@@ -5370,6 +5484,7 @@ static char *create_unique_id(struct kmem_cache *s)
return name;
}
@@ -122543,7 +121710,7 @@ index f614b5d..043029b 100644
static int sysfs_slab_add(struct kmem_cache *s)
{
int err;
-@@ -5331,6 +5439,7 @@ void sysfs_slab_remove(struct kmem_cache *s)
+@@ -5441,6 +5556,7 @@ void sysfs_slab_remove(struct kmem_cache *s)
kobject_del(&s->kobj);
kobject_put(&s->kobj);
}
@@ -122551,7 +121718,7 @@ index f614b5d..043029b 100644
/*
* Need to buffer aliases during bootup until sysfs becomes
-@@ -5344,6 +5453,7 @@ struct saved_alias {
+@@ -5454,6 +5570,7 @@ struct saved_alias {
static struct saved_alias *alias_list;
@@ -122559,7 +121726,7 @@ index f614b5d..043029b 100644
static int sysfs_slab_alias(struct kmem_cache *s, const char *name)
{
struct saved_alias *al;
-@@ -5366,6 +5476,7 @@ static int sysfs_slab_alias(struct kmem_cache *s, const char *name)
+@@ -5476,6 +5593,7 @@ static int sysfs_slab_alias(struct kmem_cache *s, const char *name)
alias_list = al;
return 0;
}
@@ -122603,7 +121770,7 @@ index d1b48b6..6e8590e 100644
}
}
diff --git a/mm/swap.c b/mm/swap.c
-index 983f692..f21d403 100644
+index 39395fb..addaf53 100644
--- a/mm/swap.c
+++ b/mm/swap.c
@@ -86,6 +86,8 @@ static void __put_compound_page(struct page *page)
@@ -122667,7 +121834,7 @@ index 5887731..e23a30e 100644
if (S_ISREG(inode->i_mode))
diff --git a/mm/util.c b/mm/util.c
-index 68ff8a5..40c7a70 100644
+index 9af1c12..d58f645 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -233,6 +233,12 @@ struct task_struct *task_of_stack(struct task_struct *task,
@@ -122694,10 +121861,10 @@ index 68ff8a5..40c7a70 100644
if (len > buflen)
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
-index 2faaa29..b4893f8 100644
+index 8e3c9c5..a4b63af 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
-@@ -40,20 +40,65 @@ struct vfree_deferred {
+@@ -42,20 +42,65 @@ struct vfree_deferred {
struct work_struct wq;
};
static DEFINE_PER_CPU(struct vfree_deferred, vfree_deferred);
@@ -122766,7 +121933,7 @@ index 2faaa29..b4893f8 100644
/*** Page table manipulation functions ***/
static void vunmap_pte_range(pmd_t *pmd, unsigned long addr, unsigned long end)
-@@ -61,10 +106,23 @@ static void vunmap_pte_range(pmd_t *pmd, unsigned long addr, unsigned long end)
+@@ -63,10 +108,23 @@ static void vunmap_pte_range(pmd_t *pmd, unsigned long addr, unsigned long end)
pte_t *pte;
pte = pte_offset_kernel(pmd, addr);
@@ -122792,7 +121959,7 @@ index 2faaa29..b4893f8 100644
}
static void vunmap_pmd_range(pud_t *pud, unsigned long addr, unsigned long end)
-@@ -127,16 +185,29 @@ static int vmap_pte_range(pmd_t *pmd, unsigned long addr,
+@@ -129,16 +187,29 @@ static int vmap_pte_range(pmd_t *pmd, unsigned long addr,
pte = pte_alloc_kernel(pmd, addr);
if (!pte)
return -ENOMEM;
@@ -122824,7 +121991,7 @@ index 2faaa29..b4893f8 100644
return 0;
}
-@@ -146,7 +217,7 @@ static int vmap_pmd_range(pud_t *pud, unsigned long addr,
+@@ -148,7 +219,7 @@ static int vmap_pmd_range(pud_t *pud, unsigned long addr,
pmd_t *pmd;
unsigned long next;
@@ -122833,7 +122000,7 @@ index 2faaa29..b4893f8 100644
if (!pmd)
return -ENOMEM;
do {
-@@ -163,7 +234,7 @@ static int vmap_pud_range(pgd_t *pgd, unsigned long addr,
+@@ -165,7 +236,7 @@ static int vmap_pud_range(pgd_t *pgd, unsigned long addr,
pud_t *pud;
unsigned long next;
@@ -122842,7 +122009,7 @@ index 2faaa29..b4893f8 100644
if (!pud)
return -ENOMEM;
do {
-@@ -223,6 +294,12 @@ int is_vmalloc_or_module_addr(const void *x)
+@@ -225,6 +296,12 @@ int is_vmalloc_or_module_addr(const void *x)
if (addr >= MODULES_VADDR && addr < MODULES_END)
return 1;
#endif
@@ -122855,7 +122022,7 @@ index 2faaa29..b4893f8 100644
return is_vmalloc_addr(x);
}
-@@ -243,8 +320,14 @@ struct page *vmalloc_to_page(const void *vmalloc_addr)
+@@ -245,8 +322,14 @@ struct page *vmalloc_to_page(const void *vmalloc_addr)
if (!pgd_none(*pgd)) {
pud_t *pud = pud_offset(pgd, addr);
@@ -122870,7 +122037,7 @@ index 2faaa29..b4893f8 100644
if (!pmd_none(*pmd)) {
pte_t *ptep, pte;
-@@ -346,7 +429,7 @@ static void purge_vmap_area_lazy(void);
+@@ -348,7 +431,7 @@ static void purge_vmap_area_lazy(void);
* Allocate a region of KVA of the specified size and alignment, within the
* vstart and vend.
*/
@@ -122879,7 +122046,7 @@ index 2faaa29..b4893f8 100644
unsigned long align,
unsigned long vstart, unsigned long vend,
int node, gfp_t gfp_mask)
-@@ -1202,13 +1285,27 @@ void __init vmalloc_init(void)
+@@ -1204,13 +1287,27 @@ void __init vmalloc_init(void)
for_each_possible_cpu(i) {
struct vmap_block_queue *vbq;
struct vfree_deferred *p;
@@ -122908,7 +122075,7 @@ index 2faaa29..b4893f8 100644
}
/* Import existing vmlist entries. */
-@@ -1333,6 +1430,16 @@ static struct vm_struct *__get_vm_area_node(unsigned long size,
+@@ -1335,6 +1432,16 @@ static struct vm_struct *__get_vm_area_node(unsigned long size,
struct vm_struct *area;
BUG_ON(in_interrupt());
@@ -122925,7 +122092,7 @@ index 2faaa29..b4893f8 100644
if (flags & VM_IOREMAP)
align = 1ul << clamp_t(int, fls_long(size),
PAGE_SHIFT, IOREMAP_MAX_ORDER);
-@@ -1345,7 +1452,9 @@ static struct vm_struct *__get_vm_area_node(unsigned long size,
+@@ -1347,7 +1454,9 @@ static struct vm_struct *__get_vm_area_node(unsigned long size,
if (unlikely(!area))
return NULL;
@@ -122935,7 +122102,7 @@ index 2faaa29..b4893f8 100644
size += PAGE_SIZE;
va = alloc_vmap_area(size, align, start, end, node, gfp_mask);
-@@ -1531,13 +1640,36 @@ EXPORT_SYMBOL(vfree);
+@@ -1532,13 +1641,36 @@ EXPORT_SYMBOL(vfree);
*/
void vunmap(const void *addr)
{
@@ -122975,7 +122142,7 @@ index 2faaa29..b4893f8 100644
/**
* vmap - map an array of pages into virtually contiguous space
* @pages: array of page pointers
-@@ -1558,6 +1690,11 @@ void *vmap(struct page **pages, unsigned int count,
+@@ -1559,6 +1691,11 @@ void *vmap(struct page **pages, unsigned int count,
if (count > totalram_pages)
return NULL;
@@ -122987,7 +122154,7 @@ index 2faaa29..b4893f8 100644
area = get_vm_area_caller((count << PAGE_SHIFT), flags,
__builtin_return_address(0));
if (!area)
-@@ -1662,6 +1799,14 @@ void *__vmalloc_node_range(unsigned long size, unsigned long align,
+@@ -1663,6 +1800,14 @@ void *__vmalloc_node_range(unsigned long size, unsigned long align,
if (!size || (size >> PAGE_SHIFT) > totalram_pages)
goto fail;
@@ -123002,7 +122169,7 @@ index 2faaa29..b4893f8 100644
area = __get_vm_area_node(size, align, VM_ALLOC | VM_UNINITIALIZED |
vm_flags, start, end, node, gfp_mask, caller);
if (!area)
-@@ -1715,6 +1860,14 @@ static void *__vmalloc_node(unsigned long size, unsigned long align,
+@@ -1716,6 +1861,14 @@ static void *__vmalloc_node(unsigned long size, unsigned long align,
gfp_mask, prot, 0, node, caller);
}
@@ -123017,7 +122184,7 @@ index 2faaa29..b4893f8 100644
void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot)
{
return __vmalloc_node(size, 1, gfp_mask, prot, NUMA_NO_NODE,
-@@ -1838,10 +1991,9 @@ EXPORT_SYMBOL(vzalloc_node);
+@@ -1839,10 +1992,9 @@ EXPORT_SYMBOL(vzalloc_node);
* For tight control over page level allocator and protection flags
* use __vmalloc() instead.
*/
@@ -123029,7 +122196,7 @@ index 2faaa29..b4893f8 100644
NUMA_NO_NODE, __builtin_return_address(0));
}
-@@ -2148,6 +2300,8 @@ int remap_vmalloc_range_partial(struct vm_area_struct *vma, unsigned long uaddr,
+@@ -2149,6 +2301,8 @@ int remap_vmalloc_range_partial(struct vm_area_struct *vma, unsigned long uaddr,
{
struct vm_struct *area;
@@ -123038,7 +122205,7 @@ index 2faaa29..b4893f8 100644
size = PAGE_ALIGN(size);
if (!PAGE_ALIGNED(uaddr) || !PAGE_ALIGNED(kaddr))
-@@ -2630,7 +2784,11 @@ static int s_show(struct seq_file *m, void *p)
+@@ -2631,7 +2785,11 @@ static int s_show(struct seq_file *m, void *p)
v->addr, v->addr + v->size, v->size);
if (v->caller)
@@ -123050,61 +122217,8 @@ index 2faaa29..b4893f8 100644
if (v->nr_pages)
seq_printf(m, " pages=%d", v->nr_pages);
-@@ -2688,52 +2846,5 @@ static int __init proc_vmalloc_init(void)
- }
- module_init(proc_vmalloc_init);
-
--void get_vmalloc_info(struct vmalloc_info *vmi)
--{
-- struct vmap_area *va;
-- unsigned long free_area_size;
-- unsigned long prev_end;
--
-- vmi->used = 0;
-- vmi->largest_chunk = 0;
--
-- prev_end = VMALLOC_START;
--
-- rcu_read_lock();
--
-- if (list_empty(&vmap_area_list)) {
-- vmi->largest_chunk = VMALLOC_TOTAL;
-- goto out;
-- }
--
-- list_for_each_entry_rcu(va, &vmap_area_list, list) {
-- unsigned long addr = va->va_start;
--
-- /*
-- * Some archs keep another range for modules in vmalloc space
-- */
-- if (addr < VMALLOC_START)
-- continue;
-- if (addr >= VMALLOC_END)
-- break;
--
-- if (va->flags & (VM_LAZY_FREE | VM_LAZY_FREEING))
-- continue;
--
-- vmi->used += (va->va_end - va->va_start);
--
-- free_area_size = addr - prev_end;
-- if (vmi->largest_chunk < free_area_size)
-- vmi->largest_chunk = free_area_size;
--
-- prev_end = va->va_end;
-- }
--
-- if (VMALLOC_END - prev_end > vmi->largest_chunk)
-- vmi->largest_chunk = VMALLOC_END - prev_end;
--
--out:
-- rcu_read_unlock();
--}
- #endif
-
diff --git a/mm/vmstat.c b/mm/vmstat.c
-index fbf1448..3e614e2 100644
+index c54fd29..c37890c 100644
--- a/mm/vmstat.c
+++ b/mm/vmstat.c
@@ -27,6 +27,7 @@
@@ -123162,7 +122276,7 @@ index fbf1448..3e614e2 100644
}
}
#endif
-@@ -1293,10 +1294,22 @@ static void *vmstat_start(struct seq_file *m, loff_t *pos)
+@@ -1315,10 +1316,22 @@ static void *vmstat_start(struct seq_file *m, loff_t *pos)
stat_items_size += sizeof(struct vm_event_state);
#endif
@@ -123186,7 +122300,7 @@ index fbf1448..3e614e2 100644
for (i = 0; i < NR_VM_ZONE_STAT_ITEMS; i++)
v[i] = global_page_state(i);
v += NR_VM_ZONE_STAT_ITEMS;
-@@ -1529,10 +1542,16 @@ static int __init setup_vmstat(void)
+@@ -1553,10 +1566,16 @@ static int __init setup_vmstat(void)
cpu_notifier_register_done();
#endif
#ifdef CONFIG_PROC_FS
@@ -123517,7 +122631,7 @@ index 700c96c..637df49 100644
frag_header.no = 0;
frag_header.total_size = htons(skb->len);
diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
-index 8d990b0..44a0966 100644
+index 3207667..c281989 100644
--- a/net/batman-adv/routing.c
+++ b/net/batman-adv/routing.c
@@ -665,7 +665,7 @@ batadv_reroute_unicast_packet(struct batadv_priv *bat_priv,
@@ -123581,10 +122695,10 @@ index ac4d08d..76780fe 100644
.priv_size = sizeof(struct batadv_priv),
.setup = batadv_softif_init_early,
diff --git a/net/batman-adv/translation-table.c b/net/batman-adv/translation-table.c
-index 900e94b..5bd0030 100644
+index 83b0ca2..6ebbdf4 100644
--- a/net/batman-adv/translation-table.c
+++ b/net/batman-adv/translation-table.c
-@@ -605,7 +605,7 @@ bool batadv_tt_local_add(struct net_device *soft_iface, const u8 *addr,
+@@ -607,7 +607,7 @@ bool batadv_tt_local_add(struct net_device *soft_iface, const u8 *addr,
batadv_dbg(BATADV_DBG_TT, bat_priv,
"Creating new local tt entry: %pM (vid: %d, ttvn: %d)\n",
addr, BATADV_PRINT_VID(vid),
@@ -123593,7 +122707,7 @@ index 900e94b..5bd0030 100644
ether_addr_copy(tt_local->common.addr, addr);
/* The local entry has to be marked as NEW to avoid to send it in
-@@ -835,7 +835,7 @@ batadv_tt_prepare_tvlv_local_data(struct batadv_priv *bat_priv,
+@@ -837,7 +837,7 @@ batadv_tt_prepare_tvlv_local_data(struct batadv_priv *bat_priv,
}
(*tt_data)->flags = BATADV_NO_FLAGS;
@@ -123602,7 +122716,7 @@ index 900e94b..5bd0030 100644
(*tt_data)->num_vlan = htons(num_vlan);
tt_vlan = (struct batadv_tvlv_tt_vlan_data *)(*tt_data + 1);
-@@ -954,7 +954,7 @@ int batadv_tt_local_seq_print_text(struct seq_file *seq, void *offset)
+@@ -956,7 +956,7 @@ int batadv_tt_local_seq_print_text(struct seq_file *seq, void *offset)
seq_printf(seq,
"Locally retrieved addresses (from %s) announced via TT (TTVN: %u):\n",
@@ -123611,7 +122725,7 @@ index 900e94b..5bd0030 100644
seq_printf(seq, " %-13s %s %-8s %-9s (%-10s)\n", "Client", "VID",
"Flags", "Last seen", "CRC");
-@@ -2725,7 +2725,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
+@@ -2733,7 +2733,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
spin_lock_bh(&bat_priv->tt.commit_lock);
@@ -123620,7 +122734,7 @@ index 900e94b..5bd0030 100644
req_ttvn = tt_data->ttvn;
orig_node = batadv_orig_hash_find(bat_priv, req_src);
-@@ -2764,7 +2764,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
+@@ -2772,7 +2772,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
bat_priv->tt.last_changeset_len);
spin_unlock_bh(&bat_priv->tt.last_changeset_lock);
} else {
@@ -123629,7 +122743,7 @@ index 900e94b..5bd0030 100644
/* allocate the tvlv, put the tt_data and all the tt_vlan_data
* in the initial part
-@@ -3286,10 +3286,10 @@ static void batadv_tt_local_commit_changes_nolock(struct batadv_priv *bat_priv)
+@@ -3294,10 +3294,10 @@ static void batadv_tt_local_commit_changes_nolock(struct batadv_priv *bat_priv)
batadv_tt_local_update_crc(bat_priv);
/* Increment the TTVN only once per OGM interval */
@@ -123683,10 +122797,10 @@ index d260efd..1548fb3 100644
atomic_t batman_queue_left;
char num_ifaces;
diff --git a/net/bluetooth/hci_sock.c b/net/bluetooth/hci_sock.c
-index f2d30d1..0573933 100644
+index b1eb8c0..266b4100 100644
--- a/net/bluetooth/hci_sock.c
+++ b/net/bluetooth/hci_sock.c
-@@ -1253,7 +1253,7 @@ static int hci_sock_setsockopt(struct socket *sock, int level, int optname,
+@@ -1332,7 +1332,7 @@ static int hci_sock_setsockopt(struct socket *sock, int level, int optname,
uf.event_mask[1] = *((u32 *) f->event_mask + 1);
}
@@ -123696,7 +122810,7 @@ index f2d30d1..0573933 100644
err = -EFAULT;
break;
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
-index 7c65ee2..b4dd40a 100644
+index 66e8b6e..6b53602 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -3537,8 +3537,10 @@ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len,
@@ -123713,7 +122827,7 @@ index 7c65ee2..b4dd40a 100644
if (test_bit(CONF_STATE2_DEVICE, &chan->conf_state) &&
rfc.mode != chan->mode)
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c
-index 586b3d5..0544d2a 100644
+index 1bb5515..17f48c6 100644
--- a/net/bluetooth/l2cap_sock.c
+++ b/net/bluetooth/l2cap_sock.c
@@ -633,7 +633,8 @@ static int l2cap_sock_setsockopt_old(struct socket *sock, int optname,
@@ -123808,11 +122922,11 @@ index 8e385a0..a5bdd8e 100644
tty_port_close(&dev->port, tty, filp);
}
diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c
-index ea748c9..79056c3 100644
+index 40197ff..58633af 100644
--- a/net/bridge/br_netlink.c
+++ b/net/bridge/br_netlink.c
-@@ -878,7 +878,7 @@ static struct rtnl_af_ops br_af_ops __read_mostly = {
- .get_link_af_size = br_get_link_af_size,
+@@ -1220,7 +1220,7 @@ static struct rtnl_af_ops br_af_ops __read_mostly = {
+ .get_link_af_size = br_get_link_af_size_filtered,
};
-struct rtnl_link_ops br_link_ops __read_mostly = {
@@ -123821,10 +122935,10 @@ index ea748c9..79056c3 100644
.priv_size = sizeof(struct net_bridge),
.setup = br_dev_setup,
diff --git a/net/bridge/netfilter/ebtables.c b/net/bridge/netfilter/ebtables.c
-index 48b6b01..cf544f3 100644
+index f46ca41..c4a7eea 100644
--- a/net/bridge/netfilter/ebtables.c
+++ b/net/bridge/netfilter/ebtables.c
-@@ -1533,7 +1533,7 @@ static int do_ebt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
+@@ -1535,7 +1535,7 @@ static int do_ebt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
tmp.valid_hooks = t->table->valid_hooks;
}
mutex_unlock(&ebt_mutex);
@@ -123833,7 +122947,7 @@ index 48b6b01..cf544f3 100644
BUGPRINT("c2u Didn't work\n");
ret = -EFAULT;
break;
-@@ -2339,7 +2339,7 @@ static int compat_do_ebt_get_ctl(struct sock *sk, int cmd,
+@@ -2341,7 +2341,7 @@ static int compat_do_ebt_get_ctl(struct sock *sk, int cmd,
goto out;
tmp.valid_hooks = t->valid_hooks;
@@ -123842,7 +122956,7 @@ index 48b6b01..cf544f3 100644
ret = -EFAULT;
break;
}
-@@ -2350,7 +2350,7 @@ static int compat_do_ebt_get_ctl(struct sock *sk, int cmd,
+@@ -2352,7 +2352,7 @@ static int compat_do_ebt_get_ctl(struct sock *sk, int cmd,
tmp.entries_size = t->table->entries_size;
tmp.valid_hooks = t->table->valid_hooks;
@@ -123921,10 +123035,10 @@ index 166d436..2920816 100644
};
diff --git a/net/can/bcm.c b/net/can/bcm.c
-index a1ba687..aafaec5 100644
+index 6863310..78bd4c6 100644
--- a/net/can/bcm.c
+++ b/net/can/bcm.c
-@@ -1620,7 +1620,7 @@ static int __init bcm_module_init(void)
+@@ -1625,7 +1625,7 @@ static int __init bcm_module_init(void)
}
/* create /proc/net/can-bcm directory */
@@ -123978,7 +123092,7 @@ index 1a19b98..df2b4ec 100644
if (!can_dir) {
printk(KERN_INFO "can: failed to create /proc/net/can . "
diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c
-index b9b0e3b..adb8b18 100644
+index 9981039..d1f9f35 100644
--- a/net/ceph/messenger.c
+++ b/net/ceph/messenger.c
@@ -190,7 +190,7 @@ static void con_fault(struct ceph_connection *con);
@@ -124118,7 +123232,7 @@ index 5cfd26a..3c50cb0 100644
a0 = a[0];
a1 = a[1];
diff --git a/net/core/datagram.c b/net/core/datagram.c
-index 617088a..0364f4f 100644
+index d62af69..2e07b22 100644
--- a/net/core/datagram.c
+++ b/net/core/datagram.c
@@ -338,7 +338,7 @@ int skb_kill_datagram(struct sock *sk, struct sk_buff *skb, unsigned int flags)
@@ -124131,7 +123245,7 @@ index 617088a..0364f4f 100644
return err;
diff --git a/net/core/dev.c b/net/core/dev.c
-index 6369c45..86ce9a7 100644
+index 7f00f24..db000e2 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -1748,7 +1748,7 @@ int __dev_forward_skb(struct net_device *dev, struct sk_buff *skb)
@@ -124143,7 +123257,7 @@ index 6369c45..86ce9a7 100644
kfree_skb(skb);
return NET_RX_DROP;
}
-@@ -3167,7 +3167,7 @@ recursion_alert:
+@@ -3173,7 +3173,7 @@ recursion_alert:
drop:
rcu_read_unlock_bh();
@@ -124152,7 +123266,7 @@ index 6369c45..86ce9a7 100644
kfree_skb_list(skb);
return rc;
out:
-@@ -3519,7 +3519,7 @@ drop:
+@@ -3525,7 +3525,7 @@ drop:
local_irq_restore(flags);
@@ -124161,7 +123275,7 @@ index 6369c45..86ce9a7 100644
kfree_skb(skb);
return NET_RX_DROP;
}
-@@ -3596,7 +3596,7 @@ int netif_rx_ni(struct sk_buff *skb)
+@@ -3602,7 +3602,7 @@ int netif_rx_ni(struct sk_buff *skb)
}
EXPORT_SYMBOL(netif_rx_ni);
@@ -124170,7 +123284,7 @@ index 6369c45..86ce9a7 100644
{
struct softnet_data *sd = this_cpu_ptr(&softnet_data);
-@@ -3934,7 +3934,7 @@ ncls:
+@@ -3948,7 +3948,7 @@ ncls:
ret = pt_prev->func(skb, skb->dev, pt_prev, orig_dev);
} else {
drop:
@@ -124179,7 +123293,7 @@ index 6369c45..86ce9a7 100644
kfree_skb(skb);
/* Jamal, now you will not able to escape explaining
* me how you were going to use this. :-)
-@@ -4827,7 +4827,7 @@ out_unlock:
+@@ -4841,7 +4841,7 @@ out_unlock:
return work;
}
@@ -124188,7 +123302,7 @@ index 6369c45..86ce9a7 100644
{
struct softnet_data *sd = this_cpu_ptr(&softnet_data);
unsigned long time_limit = jiffies + 2;
-@@ -6919,8 +6919,8 @@ struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev,
+@@ -7001,8 +7001,8 @@ struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev,
} else {
netdev_stats_to_stats64(storage, &dev->stats);
}
@@ -124219,10 +123333,10 @@ index b94b1d2..da3ed7c 100644
EXPORT_SYMBOL(dev_load);
diff --git a/net/core/filter.c b/net/core/filter.c
-index 49b4487..a0c92a7 100644
+index 37157c4..3cdff69 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
-@@ -584,7 +584,11 @@ do_pass:
+@@ -580,7 +580,11 @@ do_pass:
/* Unknown instruction. */
default:
@@ -124235,7 +123349,7 @@ index 49b4487..a0c92a7 100644
}
insn++;
-@@ -628,7 +632,7 @@ static int check_load_and_stores(const struct sock_filter *filter, int flen)
+@@ -624,7 +628,7 @@ static int check_load_and_stores(const struct sock_filter *filter, int flen)
u16 *masks, memvalid = 0; /* One bit per cell, 16 cells */
int pc, ret = 0;
@@ -124244,7 +123358,7 @@ index 49b4487..a0c92a7 100644
masks = kmalloc_array(flen, sizeof(*masks), GFP_KERNEL);
if (!masks)
-@@ -1062,7 +1066,7 @@ int bpf_prog_create(struct bpf_prog **pfp, struct sock_fprog_kern *fprog)
+@@ -1058,7 +1062,7 @@ int bpf_prog_create(struct bpf_prog **pfp, struct sock_fprog_kern *fprog)
if (!fp)
return -ENOMEM;
@@ -124285,11 +123399,11 @@ index 1033725..340f65d 100644
fle->object = flo;
else
diff --git a/net/core/neighbour.c b/net/core/neighbour.c
-index c169bba..02b1405 100644
+index f18ae91..f033693 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -860,7 +860,7 @@ static void neigh_probe(struct neighbour *neigh)
- skb = skb_copy(skb, GFP_ATOMIC);
+ skb = skb_clone(skb, GFP_ATOMIC);
write_unlock(&neigh->lock);
neigh->ops->solicit(neigh, skb);
- atomic_inc(&neigh->probes);
@@ -124351,7 +123465,7 @@ index c169bba..02b1405 100644
nla_put(skb, NDA_CACHEINFO, sizeof(ci), &ci))
goto nla_put_failure;
-@@ -2827,7 +2827,7 @@ static int proc_unres_qlen(struct ctl_table *ctl, int write,
+@@ -2870,7 +2870,7 @@ static int proc_unres_qlen(struct ctl_table *ctl, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
int size, ret;
@@ -124360,7 +123474,7 @@ index c169bba..02b1405 100644
tmp.extra1 = &zero;
tmp.extra2 = &unres_qlen_max;
-@@ -2889,7 +2889,7 @@ static int neigh_proc_dointvec_zero_intmax(struct ctl_table *ctl, int write,
+@@ -2932,7 +2932,7 @@ static int neigh_proc_dointvec_zero_intmax(struct ctl_table *ctl, int write,
void __user *buffer,
size_t *lenp, loff_t *ppos)
{
@@ -124421,7 +123535,7 @@ index 2bf8329..2eb1423 100644
return 0;
diff --git a/net/core/net-sysfs.c b/net/core/net-sysfs.c
-index 830f8a7..91caf1c 100644
+index f88a62ab..ba29125 100644
--- a/net/core/net-sysfs.c
+++ b/net/core/net-sysfs.c
@@ -287,7 +287,7 @@ static ssize_t carrier_changes_show(struct device *dev,
@@ -124474,10 +123588,10 @@ index 2c2eb1b..a53be3e 100644
return error;
}
diff --git a/net/core/netpoll.c b/net/core/netpoll.c
-index 8bdada2..d7048c2 100644
+index 94acfc8..01545c0 100644
--- a/net/core/netpoll.c
+++ b/net/core/netpoll.c
-@@ -383,7 +383,7 @@ void netpoll_send_udp(struct netpoll *np, const char *msg, int len)
+@@ -382,7 +382,7 @@ void netpoll_send_udp(struct netpoll *np, const char *msg, int len)
struct udphdr *udph;
struct iphdr *iph;
struct ethhdr *eth;
@@ -124486,7 +123600,7 @@ index 8bdada2..d7048c2 100644
struct ipv6hdr *ip6h;
WARN_ON_ONCE(!irqs_disabled());
-@@ -456,7 +456,7 @@ void netpoll_send_udp(struct netpoll *np, const char *msg, int len)
+@@ -455,7 +455,7 @@ void netpoll_send_udp(struct netpoll *np, const char *msg, int len)
put_unaligned(0x45, (unsigned char *)iph);
iph->tos = 0;
put_unaligned(htons(ip_len), &(iph->tot_len));
@@ -124509,7 +123623,7 @@ index 4da4d51..ef1aa60 100644
pr_warn("cannot create /proc/net/%s\n", PG_PROC_DIR);
return -ENODEV;
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
-index 0ec4840..58bf730 100644
+index 34ba7a0..5ebb8ef 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -61,7 +61,7 @@ struct rtnl_link {
@@ -124547,7 +123661,7 @@ index 0ec4840..58bf730 100644
}
EXPORT_SYMBOL_GPL(__rtnl_link_unregister);
-@@ -1090,7 +1093,7 @@ static int rtnl_fill_ifinfo(struct sk_buff *skb, struct net_device *dev,
+@@ -1233,7 +1236,7 @@ static int rtnl_fill_ifinfo(struct sk_buff *skb, struct net_device *dev,
(dev->ifalias &&
nla_put_string(skb, IFLA_IFALIAS, dev->ifalias)) ||
nla_put_u32(skb, IFLA_CARRIER_CHANGES,
@@ -124556,7 +123670,7 @@ index 0ec4840..58bf730 100644
nla_put_u8(skb, IFLA_PROTO_DOWN, dev->proto_down))
goto nla_put_failure;
-@@ -3336,7 +3339,7 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
+@@ -3385,7 +3388,7 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
__rtnl_unlock();
rtnl = net->rtnl;
{
@@ -124566,10 +123680,37 @@ index 0ec4840..58bf730 100644
.min_dump_alloc = min_dump_alloc,
};
diff --git a/net/core/scm.c b/net/core/scm.c
-index 8a1741b..20d20e7 100644
+index 8a1741b..69f6cac 100644
--- a/net/core/scm.c
+++ b/net/core/scm.c
-@@ -209,9 +209,9 @@ EXPORT_SYMBOL(__scm_send);
+@@ -87,6 +87,7 @@ static int scm_fp_copy(struct cmsghdr *cmsg, struct scm_fp_list **fplp)
+ *fplp = fpl;
+ fpl->count = 0;
+ fpl->max = SCM_MAX_FD;
++ fpl->user = NULL;
+ }
+ fpp = &fpl->fp[fpl->count];
+
+@@ -107,6 +108,10 @@ static int scm_fp_copy(struct cmsghdr *cmsg, struct scm_fp_list **fplp)
+ *fpp++ = file;
+ fpl->count++;
+ }
++
++ if (!fpl->user)
++ fpl->user = get_uid(current_user());
++
+ return num;
+ }
+
+@@ -119,6 +124,7 @@ void __scm_destroy(struct scm_cookie *scm)
+ scm->fp = NULL;
+ for (i=fpl->count-1; i>=0; i--)
+ fput(fpl->fp[i]);
++ free_uid(fpl->user);
+ kfree(fpl);
+ }
+ }
+@@ -209,9 +215,9 @@ EXPORT_SYMBOL(__scm_send);
int put_cmsg(struct msghdr * msg, int level, int type, int len, void *data)
{
struct cmsghdr __user *cm
@@ -124581,7 +123722,7 @@ index 8a1741b..20d20e7 100644
int err;
if (MSG_CMSG_COMPAT & msg->msg_flags)
-@@ -232,7 +232,7 @@ int put_cmsg(struct msghdr * msg, int level, int type, int len, void *data)
+@@ -232,7 +238,7 @@ int put_cmsg(struct msghdr * msg, int level, int type, int len, void *data)
err = -EFAULT;
if (copy_to_user(cm, &cmhdr, sizeof cmhdr))
goto out;
@@ -124590,7 +123731,7 @@ index 8a1741b..20d20e7 100644
goto out;
cmlen = CMSG_SPACE(len);
if (msg->msg_controllen < cmlen)
-@@ -248,7 +248,7 @@ EXPORT_SYMBOL(put_cmsg);
+@@ -248,7 +254,7 @@ EXPORT_SYMBOL(put_cmsg);
void scm_detach_fds(struct msghdr *msg, struct scm_cookie *scm)
{
struct cmsghdr __user *cm
@@ -124599,7 +123740,7 @@ index 8a1741b..20d20e7 100644
int fdmax = 0;
int fdnum = scm->fp->count;
-@@ -268,7 +268,7 @@ void scm_detach_fds(struct msghdr *msg, struct scm_cookie *scm)
+@@ -268,7 +274,7 @@ void scm_detach_fds(struct msghdr *msg, struct scm_cookie *scm)
if (fdnum < fdmax)
fdmax = fdnum;
@@ -124608,7 +123749,7 @@ index 8a1741b..20d20e7 100644
i++, cmfptr++)
{
struct socket *sock;
-@@ -297,7 +297,7 @@ void scm_detach_fds(struct msghdr *msg, struct scm_cookie *scm)
+@@ -297,7 +303,7 @@ void scm_detach_fds(struct msghdr *msg, struct scm_cookie *scm)
if (i > 0)
{
@@ -124617,8 +123758,16 @@ index 8a1741b..20d20e7 100644
err = put_user(SOL_SOCKET, &cm->cmsg_level);
if (!err)
err = put_user(SCM_RIGHTS, &cm->cmsg_type);
+@@ -336,6 +342,7 @@ struct scm_fp_list *scm_fp_dup(struct scm_fp_list *fpl)
+ for (i = 0; i < fpl->count; i++)
+ get_file(fpl->fp[i]);
+ new_fpl->max = new_fpl->count;
++ new_fpl->user = get_uid(fpl->user);
+ }
+ return new_fpl;
+ }
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
-index 1c1f87c..aa15378 100644
+index b2df375..f54b133 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -969,7 +969,8 @@ static void skb_headers_offset_update(struct sk_buff *skb, int off)
@@ -124658,10 +123807,10 @@ index 1c1f87c..aa15378 100644
}
diff --git a/net/core/sock.c b/net/core/sock.c
-index dbbda99..41406c3 100644
+index 0d91f7d..47dcbc8 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
-@@ -439,7 +439,7 @@ int sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
+@@ -451,7 +451,7 @@ int sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
struct sk_buff_head *list = &sk->sk_receive_queue;
if (atomic_read(&sk->sk_rmem_alloc) >= sk->sk_rcvbuf) {
@@ -124670,7 +123819,7 @@ index dbbda99..41406c3 100644
trace_sock_rcvqueue_full(sk, skb);
return -ENOMEM;
}
-@@ -449,7 +449,7 @@ int sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
+@@ -461,7 +461,7 @@ int sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
return err;
if (!sk_rmem_schedule(sk, skb, skb->truesize)) {
@@ -124679,7 +123828,7 @@ index dbbda99..41406c3 100644
return -ENOBUFS;
}
-@@ -482,7 +482,7 @@ int sk_receive_skb(struct sock *sk, struct sk_buff *skb, const int nested)
+@@ -494,7 +494,7 @@ int sk_receive_skb(struct sock *sk, struct sk_buff *skb, const int nested)
skb->dev = NULL;
if (sk_rcvqueues_full(sk, sk->sk_rcvbuf)) {
@@ -124688,7 +123837,7 @@ index dbbda99..41406c3 100644
goto discard_and_relse;
}
if (nested)
-@@ -500,7 +500,7 @@ int sk_receive_skb(struct sock *sk, struct sk_buff *skb, const int nested)
+@@ -512,7 +512,7 @@ int sk_receive_skb(struct sock *sk, struct sk_buff *skb, const int nested)
mutex_release(&sk->sk_lock.dep_map, 1, _RET_IP_);
} else if (sk_add_backlog(sk, skb, sk->sk_rcvbuf)) {
bh_unlock_sock(sk);
@@ -124697,7 +123846,7 @@ index dbbda99..41406c3 100644
goto discard_and_relse;
}
-@@ -907,6 +907,7 @@ set_rcvbuf:
+@@ -919,6 +919,7 @@ set_rcvbuf:
}
break;
@@ -124705,7 +123854,7 @@ index dbbda99..41406c3 100644
case SO_ATTACH_BPF:
ret = -EINVAL;
if (optlen == sizeof(u32)) {
-@@ -919,7 +920,7 @@ set_rcvbuf:
+@@ -931,7 +932,7 @@ set_rcvbuf:
ret = sk_attach_bpf(ufd, sk);
}
break;
@@ -124714,7 +123863,7 @@ index dbbda99..41406c3 100644
case SO_DETACH_FILTER:
ret = sk_detach_filter(sk);
break;
-@@ -1021,12 +1022,12 @@ int sock_getsockopt(struct socket *sock, int level, int optname,
+@@ -1037,12 +1038,12 @@ int sock_getsockopt(struct socket *sock, int level, int optname,
struct timeval tm;
} v;
@@ -124730,7 +123879,7 @@ index dbbda99..41406c3 100644
return -EINVAL;
memset(&v, 0, sizeof(v));
-@@ -1164,11 +1165,11 @@ int sock_getsockopt(struct socket *sock, int level, int optname,
+@@ -1180,11 +1181,11 @@ int sock_getsockopt(struct socket *sock, int level, int optname,
case SO_PEERNAME:
{
@@ -124744,7 +123893,7 @@ index dbbda99..41406c3 100644
return -EINVAL;
if (copy_to_user(optval, address, len))
return -EFAULT;
-@@ -1256,7 +1257,7 @@ int sock_getsockopt(struct socket *sock, int level, int optname,
+@@ -1272,7 +1273,7 @@ int sock_getsockopt(struct socket *sock, int level, int optname,
if (len > lv)
len = lv;
@@ -124753,7 +123902,7 @@ index dbbda99..41406c3 100644
return -EFAULT;
lenout:
if (put_user(len, optlen))
-@@ -1549,7 +1550,7 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
+@@ -1564,7 +1565,7 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
newsk->sk_err = 0;
newsk->sk_priority = 0;
newsk->sk_incoming_cpu = raw_smp_processor_id();
@@ -124762,7 +123911,7 @@ index dbbda99..41406c3 100644
/*
* Before updating sk_refcnt, we must commit prior changes to memory
* (Documentation/RCU/rculist_nulls.txt for details)
-@@ -2358,7 +2359,7 @@ void sock_init_data(struct socket *sock, struct sock *sk)
+@@ -2424,7 +2425,7 @@ void sock_init_data(struct socket *sock, struct sock *sk)
*/
smp_wmb();
atomic_set(&sk->sk_refcnt, 1);
@@ -124771,7 +123920,7 @@ index dbbda99..41406c3 100644
}
EXPORT_SYMBOL(sock_init_data);
-@@ -2486,6 +2487,7 @@ void sock_enable_timestamp(struct sock *sk, int flag)
+@@ -2553,6 +2554,7 @@ void sock_enable_timestamp(struct sock *sk, int flag)
int sock_recv_errqueue(struct sock *sk, struct msghdr *msg, int len,
int level, int type)
{
@@ -124779,7 +123928,7 @@ index dbbda99..41406c3 100644
struct sock_exterr_skb *serr;
struct sk_buff *skb;
int copied, err;
-@@ -2507,7 +2509,8 @@ int sock_recv_errqueue(struct sock *sk, struct msghdr *msg, int len,
+@@ -2574,7 +2576,8 @@ int sock_recv_errqueue(struct sock *sk, struct msghdr *msg, int len,
sock_recv_timestamp(msg, sk, skb);
serr = SKB_EXT_ERR(skb);
@@ -124790,10 +123939,10 @@ index dbbda99..41406c3 100644
msg->msg_flags |= MSG_ERRQUEUE;
err = copied;
diff --git a/net/core/sock_diag.c b/net/core/sock_diag.c
-index 817622f..2577b26 100644
+index 0c1d58d..e6ad04f 100644
--- a/net/core/sock_diag.c
+++ b/net/core/sock_diag.c
-@@ -12,7 +12,7 @@
+@@ -14,7 +14,7 @@
#include <linux/inet_diag.h>
#include <linux/sock_diag.h>
@@ -124802,7 +123951,7 @@ index 817622f..2577b26 100644
static int (*inet_rcv_compat)(struct sk_buff *skb, struct nlmsghdr *nlh);
static DEFINE_MUTEX(sock_diag_table_mutex);
static struct workqueue_struct *broadcast_wq;
-@@ -20,12 +20,12 @@ static struct workqueue_struct *broadcast_wq;
+@@ -22,12 +22,12 @@ static struct workqueue_struct *broadcast_wq;
static u64 sock_gen_cookie(struct sock *sk)
{
while (1) {
@@ -124818,7 +123967,7 @@ index 817622f..2577b26 100644
}
}
-@@ -190,8 +190,11 @@ int sock_diag_register(const struct sock_diag_handler *hndl)
+@@ -192,8 +192,11 @@ int sock_diag_register(const struct sock_diag_handler *hndl)
mutex_lock(&sock_diag_table_mutex);
if (sock_diag_handlers[hndl->family])
err = -EBUSY;
@@ -124831,7 +123980,7 @@ index 817622f..2577b26 100644
mutex_unlock(&sock_diag_table_mutex);
return err;
-@@ -207,7 +210,9 @@ void sock_diag_unregister(const struct sock_diag_handler *hnld)
+@@ -209,7 +212,9 @@ void sock_diag_unregister(const struct sock_diag_handler *hnld)
mutex_lock(&sock_diag_table_mutex);
BUG_ON(sock_diag_handlers[family] != hnld);
@@ -124929,7 +124078,7 @@ index 95b6139..3048623 100644
.exit = sysctl_core_net_exit,
};
diff --git a/net/decnet/af_decnet.c b/net/decnet/af_decnet.c
-index 6feddca..92b3468 100644
+index 13d6b1a..0ac2a9b 100644
--- a/net/decnet/af_decnet.c
+++ b/net/decnet/af_decnet.c
@@ -466,6 +466,7 @@ static struct proto dn_proto = {
@@ -124976,7 +124125,7 @@ index 5325b54..a0d4d69 100644
*lenp = len;
diff --git a/net/dsa/dsa.c b/net/dsa/dsa.c
-index adb5325..9d5d089 100644
+index 1eba07f..4859469 100644
--- a/net/dsa/dsa.c
+++ b/net/dsa/dsa.c
@@ -999,7 +999,7 @@ static struct packet_type dsa_pack_type __read_mostly = {
@@ -125002,11 +124151,11 @@ index a2c7e4c..3dc9f67 100644
.maxtype = IFLA_HSR_MAX,
.policy = hsr_policy,
diff --git a/net/ieee802154/6lowpan/core.c b/net/ieee802154/6lowpan/core.c
-index 953b1c4..ea4fca4d 100644
+index 20c49c7..94377ab 100644
--- a/net/ieee802154/6lowpan/core.c
+++ b/net/ieee802154/6lowpan/core.c
-@@ -174,7 +174,7 @@ static void lowpan_dellink(struct net_device *dev, struct list_head *head)
- dev_put(real_dev);
+@@ -184,7 +184,7 @@ static void lowpan_dellink(struct net_device *ldev, struct list_head *head)
+ dev_put(wdev);
}
-static struct rtnl_link_ops lowpan_link_ops __read_mostly = {
@@ -125015,10 +124164,10 @@ index 953b1c4..ea4fca4d 100644
.priv_size = LOWPAN_PRIV_SIZE(sizeof(struct lowpan_dev_info)),
.setup = lowpan_setup,
diff --git a/net/ieee802154/6lowpan/reassembly.c b/net/ieee802154/6lowpan/reassembly.c
-index 214d44a..dcb7f86 100644
+index 6b437e8..47c6566 100644
--- a/net/ieee802154/6lowpan/reassembly.c
+++ b/net/ieee802154/6lowpan/reassembly.c
-@@ -435,14 +435,13 @@ static struct ctl_table lowpan_frags_ctl_table[] = {
+@@ -492,14 +492,13 @@ static struct ctl_table lowpan_frags_ctl_table[] = {
static int __net_init lowpan_frags_ns_sysctl_register(struct net *net)
{
@@ -125035,7 +124184,7 @@ index 214d44a..dcb7f86 100644
GFP_KERNEL);
if (table == NULL)
goto err_alloc;
-@@ -457,9 +456,9 @@ static int __net_init lowpan_frags_ns_sysctl_register(struct net *net)
+@@ -514,9 +513,9 @@ static int __net_init lowpan_frags_ns_sysctl_register(struct net *net)
/* Don't export sysctls to unprivileged users */
if (net->user_ns != &init_user_ns)
table[0].procname = NULL;
@@ -125048,7 +124197,7 @@ index 214d44a..dcb7f86 100644
if (hdr == NULL)
goto err_reg;
-@@ -467,8 +466,7 @@ static int __net_init lowpan_frags_ns_sysctl_register(struct net *net)
+@@ -524,8 +523,7 @@ static int __net_init lowpan_frags_ns_sysctl_register(struct net *net)
return 0;
err_reg:
@@ -125071,10 +124220,10 @@ index 416dfa0..6e41f17 100644
Support for IPsec ESP.
diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
-index 4b16cf3..443b1d4 100644
+index 5c5db66..c10a4a2 100644
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
-@@ -1399,7 +1399,7 @@ int inet_recv_error(struct sock *sk, struct msghdr *msg, int len, int *addr_len)
+@@ -1389,7 +1389,7 @@ int inet_recv_error(struct sock *sk, struct msghdr *msg, int len, int *addr_len)
return ip_recv_error(sk, msg, len, addr_len);
#if IS_ENABLED(CONFIG_IPV6)
if (sk->sk_family == AF_INET6)
@@ -125084,7 +124233,7 @@ index 4b16cf3..443b1d4 100644
return -EINVAL;
}
diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c
-index 0c9c348..bae6157 100644
+index 59b3e0e..ff060b8 100644
--- a/net/ipv4/arp.c
+++ b/net/ipv4/arp.c
@@ -332,7 +332,7 @@ static void arp_solicit(struct neighbour *neigh, struct sk_buff *skb)
@@ -125097,7 +124246,7 @@ index 0c9c348..bae6157 100644
struct dst_entry *dst = NULL;
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
-index 2d9cb17..20ae904 100644
+index cebd9d3..12e9abe 100644
--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -69,7 +69,8 @@
@@ -125129,7 +124278,7 @@ index 2d9cb17..20ae904 100644
net->dev_base_seq;
hlist_for_each_entry_rcu(dev, head, index_hlist) {
if (idx < s_idx)
-@@ -1905,7 +1907,7 @@ static int inet_netconf_dump_devconf(struct sk_buff *skb,
+@@ -1907,7 +1909,7 @@ static int inet_netconf_dump_devconf(struct sk_buff *skb,
idx = 0;
head = &net->dev_index_head[h];
rcu_read_lock();
@@ -125138,7 +124287,7 @@ index 2d9cb17..20ae904 100644
net->dev_base_seq;
hlist_for_each_entry_rcu(dev, head, index_hlist) {
if (idx < s_idx)
-@@ -2146,7 +2148,7 @@ static int ipv4_doint_and_flush(struct ctl_table *ctl, int write,
+@@ -2148,7 +2150,7 @@ static int ipv4_doint_and_flush(struct ctl_table *ctl, int write,
#define DEVINET_SYSCTL_FLUSHING_ENTRY(attr, name) \
DEVINET_SYSCTL_COMPLEX_ENTRY(attr, name, ipv4_doint_and_flush)
@@ -125147,7 +124296,7 @@ index 2d9cb17..20ae904 100644
struct ctl_table_header *sysctl_header;
struct ctl_table devinet_vars[__IPV4_DEVCONF_MAX];
} devinet_sysctl = {
-@@ -2280,7 +2282,7 @@ static __net_init int devinet_init_net(struct net *net)
+@@ -2282,7 +2284,7 @@ static __net_init int devinet_init_net(struct net *net)
int err;
struct ipv4_devconf *all, *dflt;
#ifdef CONFIG_SYSCTL
@@ -125156,7 +124305,7 @@ index 2d9cb17..20ae904 100644
struct ctl_table_header *forw_hdr;
#endif
-@@ -2298,7 +2300,7 @@ static __net_init int devinet_init_net(struct net *net)
+@@ -2300,7 +2302,7 @@ static __net_init int devinet_init_net(struct net *net)
goto err_alloc_dflt;
#ifdef CONFIG_SYSCTL
@@ -125165,7 +124314,7 @@ index 2d9cb17..20ae904 100644
if (!tbl)
goto err_alloc_ctl;
-@@ -2318,7 +2320,10 @@ static __net_init int devinet_init_net(struct net *net)
+@@ -2320,7 +2322,10 @@ static __net_init int devinet_init_net(struct net *net)
goto err_reg_dflt;
err = -ENOMEM;
@@ -125177,7 +124326,7 @@ index 2d9cb17..20ae904 100644
if (!forw_hdr)
goto err_reg_ctl;
net->ipv4.forw_hdr = forw_hdr;
-@@ -2334,8 +2339,7 @@ err_reg_ctl:
+@@ -2336,8 +2341,7 @@ err_reg_ctl:
err_reg_dflt:
__devinet_sysctl_unregister(all);
err_reg_all:
@@ -125188,10 +124337,10 @@ index 2d9cb17..20ae904 100644
#endif
if (dflt != &ipv4_devconf_dflt)
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
-index 457b2cd..4eb1f8c 100644
+index 4734475..8ef3aab 100644
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
-@@ -1131,12 +1131,12 @@ static int fib_inetaddr_event(struct notifier_block *this, unsigned long event,
+@@ -1133,12 +1133,12 @@ static int fib_inetaddr_event(struct notifier_block *this, unsigned long event,
#ifdef CONFIG_IP_ROUTE_MULTIPATH
fib_sync_up(dev, RTNH_F_DEAD);
#endif
@@ -125206,7 +124355,7 @@ index 457b2cd..4eb1f8c 100644
if (!ifa->ifa_dev->ifa_list) {
/* Last address was deleted from this interface.
* Disable IP.
-@@ -1175,7 +1175,7 @@ static int fib_netdev_event(struct notifier_block *this, unsigned long event, vo
+@@ -1178,7 +1178,7 @@ static int fib_netdev_event(struct notifier_block *this, unsigned long event, vo
#ifdef CONFIG_IP_ROUTE_MULTIPATH
fib_sync_up(dev, RTNH_F_DEAD);
#endif
@@ -125216,10 +124365,10 @@ index 457b2cd..4eb1f8c 100644
break;
case NETDEV_DOWN:
diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
-index ef5892f..b863b59 100644
+index d97268e..6ee80d4 100644
--- a/net/ipv4/fib_semantics.c
+++ b/net/ipv4/fib_semantics.c
-@@ -854,7 +854,7 @@ __be32 fib_info_update_nh_saddr(struct net *net, struct fib_nh *nh)
+@@ -913,7 +913,7 @@ __be32 fib_info_update_nh_saddr(struct net *net, struct fib_nh *nh)
nh->nh_saddr = inet_select_addr(nh->nh_dev,
nh->nh_gw,
nh->nh_parent->fib_scope);
@@ -125229,10 +124378,10 @@ index ef5892f..b863b59 100644
return nh->nh_saddr;
}
diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c
-index 61b45a1..2970363 100644
+index 46b9c88..b52cf2f 100644
--- a/net/ipv4/inet_connection_sock.c
+++ b/net/ipv4/inet_connection_sock.c
-@@ -729,8 +729,8 @@ struct sock *inet_csk_clone_lock(const struct sock *sk,
+@@ -670,8 +670,8 @@ struct sock *inet_csk_clone_lock(const struct sock *sk,
newsk->sk_write_space = sk_stream_write_space;
newsk->sk_mark = inet_rsk(req)->ir_mark;
@@ -125244,10 +124393,10 @@ index 61b45a1..2970363 100644
newicsk->icsk_retransmits = 0;
newicsk->icsk_backoff = 0;
diff --git a/net/ipv4/inet_diag.c b/net/ipv4/inet_diag.c
-index c3b1f3a..57b3716 100644
+index ab9f8a6..238aa59 100644
--- a/net/ipv4/inet_diag.c
+++ b/net/ipv4/inet_diag.c
-@@ -1042,7 +1042,7 @@ static int inet_diag_rcv_msg_compat(struct sk_buff *skb, struct nlmsghdr *nlh)
+@@ -962,7 +962,7 @@ static int inet_diag_rcv_msg_compat(struct sk_buff *skb, struct nlmsghdr *nlh)
return -EINVAL;
}
{
@@ -125256,7 +124405,7 @@ index c3b1f3a..57b3716 100644
.dump = inet_diag_dump_compat,
};
return netlink_dump_start(net->diag_nlsk, skb, nlh, &c);
-@@ -1072,7 +1072,7 @@ static int inet_diag_handler_dump(struct sk_buff *skb, struct nlmsghdr *h)
+@@ -992,7 +992,7 @@ static int inet_diag_handler_dump(struct sk_buff *skb, struct nlmsghdr *h)
return -EINVAL;
}
{
@@ -125266,7 +124415,7 @@ index c3b1f3a..57b3716 100644
};
return netlink_dump_start(net->diag_nlsk, skb, h, &c);
diff --git a/net/ipv4/inet_hashtables.c b/net/ipv4/inet_hashtables.c
-index 8912019..8950e24 100644
+index ccc5980..67cba85 100644
--- a/net/ipv4/inet_hashtables.c
+++ b/net/ipv4/inet_hashtables.c
@@ -19,6 +19,7 @@
@@ -125286,7 +124435,7 @@ index 8912019..8950e24 100644
/*
* Allocate and initialize a new local port bind bucket.
* The bindhash mutex for snum's hash chain must be held here.
-@@ -559,6 +562,7 @@ ok:
+@@ -586,6 +589,7 @@ ok:
if (tw)
inet_twsk_deschedule_put(tw);
@@ -125321,7 +124470,7 @@ index 86fa458..5f601b9 100644
p->rate_tokens = 0;
/* 60*HZ is arbitrary, but chosen enough high so that the first
diff --git a/net/ipv4/ip_fragment.c b/net/ipv4/ip_fragment.c
-index fa7f153..1443d28 100644
+index 1fe55ae..9be62bd 100644
--- a/net/ipv4/ip_fragment.c
+++ b/net/ipv4/ip_fragment.c
@@ -284,7 +284,7 @@ static int ip_frag_too_far(struct ipq *qp)
@@ -125333,7 +124482,7 @@ index fa7f153..1443d28 100644
qp->rid = end;
rc = qp->q.fragments && (end - start) > max;
-@@ -775,12 +775,11 @@ static struct ctl_table ip4_frags_ctl_table[] = {
+@@ -774,12 +774,11 @@ static struct ctl_table ip4_frags_ctl_table[] = {
static int __net_init ip4_frags_ns_ctl_register(struct net *net)
{
@@ -125348,7 +124497,7 @@ index fa7f153..1443d28 100644
if (!table)
goto err_alloc;
-@@ -794,9 +793,10 @@ static int __net_init ip4_frags_ns_ctl_register(struct net *net)
+@@ -793,9 +792,10 @@ static int __net_init ip4_frags_ns_ctl_register(struct net *net)
/* Don't export sysctls to unprivileged users */
if (net->user_ns != &init_user_ns)
table[0].procname = NULL;
@@ -125361,7 +124510,7 @@ index fa7f153..1443d28 100644
if (!hdr)
goto err_reg;
-@@ -804,8 +804,7 @@ static int __net_init ip4_frags_ns_ctl_register(struct net *net)
+@@ -803,8 +803,7 @@ static int __net_init ip4_frags_ns_ctl_register(struct net *net)
return 0;
err_reg:
@@ -125403,7 +124552,7 @@ index 6145214..77ebc63 100644
.maxtype = IFLA_GRE_MAX,
.policy = ipgre_policy,
diff --git a/net/ipv4/ip_input.c b/net/ipv4/ip_input.c
-index f4fc8a7..d78e434 100644
+index b1209b6..c2f63ba 100644
--- a/net/ipv4/ip_input.c
+++ b/net/ipv4/ip_input.c
@@ -148,6 +148,10 @@
@@ -125417,7 +124566,7 @@ index f4fc8a7..d78e434 100644
/*
* Process Router Attention IP option (RFC 2113)
*/
-@@ -224,6 +228,9 @@ static int ip_local_deliver_finish(struct sock *sk, struct sk_buff *skb)
+@@ -223,6 +227,9 @@ static int ip_local_deliver_finish(struct net *net, struct sock *sk, struct sk_b
if (!raw) {
if (xfrm4_policy_check(NULL, XFRM_POLICY_IN, skb)) {
IP_INC_STATS_BH(net, IPSTATS_MIB_INUNKNOWNPROTOS);
@@ -125428,10 +124577,10 @@ index f4fc8a7..d78e434 100644
ICMP_PROT_UNREACH, 0);
}
diff --git a/net/ipv4/ip_sockglue.c b/net/ipv4/ip_sockglue.c
-index c3c359a..504edc6 100644
+index 5f73a7c..bfd78f8 100644
--- a/net/ipv4/ip_sockglue.c
+++ b/net/ipv4/ip_sockglue.c
-@@ -1295,7 +1295,8 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
+@@ -1308,7 +1308,8 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
len = min_t(unsigned int, len, opt->optlen);
if (put_user(len, optlen))
return -EFAULT;
@@ -125441,7 +124590,7 @@ index c3c359a..504edc6 100644
return -EFAULT;
return 0;
}
-@@ -1432,7 +1433,7 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
+@@ -1441,7 +1442,7 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
if (sk->sk_type != SOCK_STREAM)
return -ENOPROTOOPT;
@@ -125451,7 +124600,7 @@ index c3c359a..504edc6 100644
msg.msg_flags = flags;
diff --git a/net/ipv4/ip_vti.c b/net/ipv4/ip_vti.c
-index 0c15208..a3a76c5 100644
+index 4d8f0b6..a2c583b 100644
--- a/net/ipv4/ip_vti.c
+++ b/net/ipv4/ip_vti.c
@@ -45,7 +45,7 @@
@@ -125473,10 +124622,10 @@ index 0c15208..a3a76c5 100644
.maxtype = IFLA_VTI_MAX,
.policy = vti_policy,
diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c
-index ed4ef09..2d12fb2 100644
+index 0bc7412..9bf43d2 100644
--- a/net/ipv4/ipconfig.c
+++ b/net/ipv4/ipconfig.c
-@@ -333,7 +333,7 @@ static int __init ic_devinet_ioctl(unsigned int cmd, struct ifreq *arg)
+@@ -337,7 +337,7 @@ static int __init ic_devinet_ioctl(unsigned int cmd, struct ifreq *arg)
mm_segment_t oldfs = get_fs();
set_fs(get_ds());
@@ -125485,7 +124634,7 @@ index ed4ef09..2d12fb2 100644
set_fs(oldfs);
return res;
}
-@@ -344,7 +344,7 @@ static int __init ic_dev_ioctl(unsigned int cmd, struct ifreq *arg)
+@@ -348,7 +348,7 @@ static int __init ic_dev_ioctl(unsigned int cmd, struct ifreq *arg)
mm_segment_t oldfs = get_fs();
set_fs(get_ds());
@@ -125494,7 +124643,7 @@ index ed4ef09..2d12fb2 100644
set_fs(oldfs);
return res;
}
-@@ -355,7 +355,7 @@ static int __init ic_route_ioctl(unsigned int cmd, struct rtentry *arg)
+@@ -359,7 +359,7 @@ static int __init ic_route_ioctl(unsigned int cmd, struct rtentry *arg)
mm_segment_t oldfs = get_fs();
set_fs(get_ds());
@@ -125504,7 +124653,7 @@ index ed4ef09..2d12fb2 100644
return res;
}
diff --git a/net/ipv4/ipip.c b/net/ipv4/ipip.c
-index f34c31d..0dabe30 100644
+index a09fb0d..24e19b2 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");
@@ -125516,7 +124665,7 @@ index f34c31d..0dabe30 100644
static int ipip_err(struct sk_buff *skb, u32 info)
{
-@@ -488,7 +488,7 @@ static const struct nla_policy ipip_policy[IFLA_IPTUN_MAX + 1] = {
+@@ -485,7 +485,7 @@ static const struct nla_policy ipip_policy[IFLA_IPTUN_MAX + 1] = {
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
};
@@ -125526,15 +124675,15 @@ index f34c31d..0dabe30 100644
.maxtype = IFLA_IPTUN_MAX,
.policy = ipip_policy,
diff --git a/net/ipv4/netfilter/arp_tables.c b/net/ipv4/netfilter/arp_tables.c
-index 8f87fc3..6c5f486 100644
+index 11dccba..60aa8e6 100644
--- a/net/ipv4/netfilter/arp_tables.c
+++ b/net/ipv4/netfilter/arp_tables.c
-@@ -891,14 +891,14 @@ static int compat_table_info(const struct xt_table_info *info,
+@@ -892,14 +892,14 @@ static int compat_table_info(const struct xt_table_info *info,
#endif
static int get_info(struct net *net, void __user *user,
-- const int *len, int compat)
-+ int len, int compat)
+- const int *len, int compat)
++ int len, int compat)
{
char name[XT_TABLE_MAXNAMELEN];
struct xt_table *t;
@@ -125547,7 +124696,7 @@ index 8f87fc3..6c5f486 100644
sizeof(struct arpt_getinfo));
return -EINVAL;
}
-@@ -935,7 +935,7 @@ static int get_info(struct net *net, void __user *user,
+@@ -936,7 +936,7 @@ static int get_info(struct net *net, void __user *user,
info.size = private->size;
strcpy(info.name, name);
@@ -125556,7 +124705,7 @@ index 8f87fc3..6c5f486 100644
ret = -EFAULT;
else
ret = 0;
-@@ -1700,7 +1700,7 @@ static int compat_do_arpt_get_ctl(struct sock *sk, int cmd, void __user *user,
+@@ -1701,7 +1701,7 @@ static int compat_do_arpt_get_ctl(struct sock *sk, int cmd, void __user *user,
switch (cmd) {
case ARPT_SO_GET_INFO:
@@ -125565,7 +124714,7 @@ index 8f87fc3..6c5f486 100644
break;
case ARPT_SO_GET_ENTRIES:
ret = compat_get_entries(sock_net(sk), user, len);
-@@ -1745,7 +1745,7 @@ static int do_arpt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len
+@@ -1746,7 +1746,7 @@ static int do_arpt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len
switch (cmd) {
case ARPT_SO_GET_INFO:
@@ -125575,15 +124724,15 @@ index 8f87fc3..6c5f486 100644
case ARPT_SO_GET_ENTRIES:
diff --git a/net/ipv4/netfilter/ip_tables.c b/net/ipv4/netfilter/ip_tables.c
-index b0a86e7..9ddf3dc 100644
+index b99affa..7fc00c8 100644
--- a/net/ipv4/netfilter/ip_tables.c
+++ b/net/ipv4/netfilter/ip_tables.c
-@@ -1077,14 +1077,14 @@ static int compat_table_info(const struct xt_table_info *info,
+@@ -1078,14 +1078,14 @@ static int compat_table_info(const struct xt_table_info *info,
#endif
static int get_info(struct net *net, void __user *user,
-- const int *len, int compat)
-+ int len, int compat)
+- const int *len, int compat)
++ int len, int compat)
{
char name[XT_TABLE_MAXNAMELEN];
struct xt_table *t;
@@ -125596,7 +124745,7 @@ index b0a86e7..9ddf3dc 100644
sizeof(struct ipt_getinfo));
return -EINVAL;
}
-@@ -1121,7 +1121,7 @@ static int get_info(struct net *net, void __user *user,
+@@ -1122,7 +1122,7 @@ static int get_info(struct net *net, void __user *user,
info.size = private->size;
strcpy(info.name, name);
@@ -125605,7 +124754,7 @@ index b0a86e7..9ddf3dc 100644
ret = -EFAULT;
else
ret = 0;
-@@ -1972,7 +1972,7 @@ compat_do_ipt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
+@@ -1973,7 +1973,7 @@ compat_do_ipt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
switch (cmd) {
case IPT_SO_GET_INFO:
@@ -125614,7 +124763,7 @@ index b0a86e7..9ddf3dc 100644
break;
case IPT_SO_GET_ENTRIES:
ret = compat_get_entries(sock_net(sk), user, len);
-@@ -2019,7 +2019,7 @@ do_ipt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
+@@ -2020,7 +2020,7 @@ do_ipt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
switch (cmd) {
case IPT_SO_GET_INFO:
@@ -125624,7 +124773,7 @@ index b0a86e7..9ddf3dc 100644
case IPT_SO_GET_ENTRIES:
diff --git a/net/ipv4/netfilter/ipt_CLUSTERIP.c b/net/ipv4/netfilter/ipt_CLUSTERIP.c
-index 45cb16a..cef4ecd 100644
+index 4a9e6db..06174e1 100644
--- a/net/ipv4/netfilter/ipt_CLUSTERIP.c
+++ b/net/ipv4/netfilter/ipt_CLUSTERIP.c
@@ -730,7 +730,7 @@ static int clusterip_net_init(struct net *net)
@@ -125636,19 +124785,6 @@ index 45cb16a..cef4ecd 100644
if (!cn->procdir) {
pr_err("Unable to proc dir entry\n");
return -ENOMEM;
-diff --git a/net/ipv4/netfilter/nf_nat_pptp.c b/net/ipv4/netfilter/nf_nat_pptp.c
-index 657d230..b3ca21b 100644
---- a/net/ipv4/netfilter/nf_nat_pptp.c
-+++ b/net/ipv4/netfilter/nf_nat_pptp.c
-@@ -45,7 +45,7 @@ static void pptp_nat_expected(struct nf_conn *ct,
- struct net *net = nf_ct_net(ct);
- const struct nf_conn *master = ct->master;
- struct nf_conntrack_expect *other_exp;
-- struct nf_conntrack_tuple t;
-+ struct nf_conntrack_tuple t = {};
- const struct nf_ct_pptp_master *ct_pptp_info;
- const struct nf_nat_pptp *nat_pptp_info;
- struct nf_nat_range range;
diff --git a/net/ipv4/ping.c b/net/ipv4/ping.c
index e89094a..bd431045 100644
--- a/net/ipv4/ping.c
@@ -125750,7 +124886,7 @@ index 3abd9d7..c5e4052 100644
/*
diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c
-index 561cd4b..a32a155 100644
+index bc35f18..f94a500 100644
--- a/net/ipv4/raw.c
+++ b/net/ipv4/raw.c
@@ -323,7 +323,7 @@ static int raw_rcv_skb(struct sock *sk, struct sk_buff *skb)
@@ -125762,7 +124898,7 @@ index 561cd4b..a32a155 100644
kfree_skb(skb);
return NET_RX_DROP;
}
-@@ -771,16 +771,20 @@ static int raw_init(struct sock *sk)
+@@ -781,16 +781,20 @@ static int raw_init(struct sock *sk)
static int raw_seticmpfilter(struct sock *sk, char __user *optval, int optlen)
{
@@ -125784,7 +124920,7 @@ index 561cd4b..a32a155 100644
if (get_user(len, optlen))
goto out;
-@@ -790,8 +794,8 @@ static int raw_geticmpfilter(struct sock *sk, char __user *optval, int __user *o
+@@ -800,8 +804,8 @@ static int raw_geticmpfilter(struct sock *sk, char __user *optval, int __user *o
if (len > sizeof(struct icmp_filter))
len = sizeof(struct icmp_filter);
ret = -EFAULT;
@@ -125795,7 +124931,7 @@ index 561cd4b..a32a155 100644
goto out;
ret = 0;
out: return ret;
-@@ -1020,7 +1024,7 @@ static void raw_sock_seq_show(struct seq_file *seq, struct sock *sp, int i)
+@@ -1030,7 +1034,7 @@ static void raw_sock_seq_show(struct seq_file *seq, struct sock *sp, int i)
0, 0L, 0,
from_kuid_munged(seq_user_ns(seq), sock_i_uid(sp)),
0, sock_i_ino(sp),
@@ -125805,7 +124941,7 @@ index 561cd4b..a32a155 100644
static int raw_seq_show(struct seq_file *seq, void *v)
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
-index c81deb8..38d5520 100644
+index 85f184e..2cb2c0b 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -231,7 +231,7 @@ static const struct seq_operations rt_cache_seq_ops = {
@@ -125862,7 +124998,7 @@ index c81deb8..38d5520 100644
}
EXPORT_SYMBOL(ip_idents_reserve);
-@@ -2672,34 +2672,34 @@ static struct ctl_table ipv4_route_flush_table[] = {
+@@ -2706,34 +2706,34 @@ static struct ctl_table ipv4_route_flush_table[] = {
.maxlen = sizeof(int),
.mode = 0200,
.proc_handler = ipv4_sysctl_rtcache_flush,
@@ -125905,7 +125041,7 @@ index c81deb8..38d5520 100644
err_dup:
return -ENOMEM;
}
-@@ -2722,8 +2722,8 @@ static __net_initdata struct pernet_operations sysctl_route_ops = {
+@@ -2756,8 +2756,8 @@ static __net_initdata struct pernet_operations sysctl_route_ops = {
static __net_init int rt_genid_init(struct net *net)
{
@@ -125916,7 +125052,7 @@ index c81deb8..38d5520 100644
get_random_bytes(&net->ipv4.dev_addr_genid,
sizeof(net->ipv4.dev_addr_genid));
return 0;
-@@ -2767,11 +2767,7 @@ int __init ip_rt_init(void)
+@@ -2801,11 +2801,7 @@ int __init ip_rt_init(void)
int rc = 0;
int cpu;
@@ -125930,7 +125066,7 @@ index c81deb8..38d5520 100644
ip_tstamps = kcalloc(IP_IDENTS_SZ, sizeof(*ip_tstamps), GFP_KERNEL);
if (!ip_tstamps)
diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
-index ade7737..70ed9be 100644
+index a0bd7a5..79fdbb9 100644
--- a/net/ipv4/sysctl_net_ipv4.c
+++ b/net/ipv4/sysctl_net_ipv4.c
@@ -67,7 +67,7 @@ static int ipv4_local_port_range(struct ctl_table *table, int write,
@@ -125987,7 +125123,7 @@ index ade7737..70ed9be 100644
struct tcp_fastopen_context *ctxt;
int ret;
u32 user_key[4]; /* 16 bytes, matching TCP_FASTOPEN_KEY_LENGTH */
-@@ -941,13 +941,12 @@ static struct ctl_table ipv4_net_table[] = {
+@@ -955,13 +955,12 @@ static struct ctl_table ipv4_net_table[] = {
static __net_init int ipv4_sysctl_init_net(struct net *net)
{
@@ -126003,7 +125139,7 @@ index ade7737..70ed9be 100644
if (!table)
goto err_alloc;
-@@ -956,7 +955,10 @@ static __net_init int ipv4_sysctl_init_net(struct net *net)
+@@ -970,7 +969,10 @@ static __net_init int ipv4_sysctl_init_net(struct net *net)
table[i].data += (void *)net - (void *)&init_net;
}
@@ -126016,10 +125152,10 @@ index ade7737..70ed9be 100644
goto err_reg;
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
-index 064f1a0..47f24ef 100644
+index d4c5115..f949b08 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -265,11 +265,13 @@ static void tcp_ecn_rcv_synack(struct tcp_sock *tp, const struct tcphdr *th)
+@@ -266,11 +266,13 @@ static void tcp_ecn_rcv_synack(struct tcp_sock *tp, const struct tcphdr *th)
tp->ecn_flags &= ~TCP_ECN_OK;
}
@@ -126033,7 +125169,7 @@ index 064f1a0..47f24ef 100644
static bool tcp_ecn_rcv_ecn_echo(const struct tcp_sock *tp, const struct tcphdr *th)
{
-@@ -786,7 +788,7 @@ static void tcp_update_pacing_rate(struct sock *sk)
+@@ -787,7 +789,7 @@ static void tcp_update_pacing_rate(struct sock *sk)
* without any lock. We want to make sure compiler wont store
* intermediate values in this location.
*/
@@ -126042,7 +125178,7 @@ index 064f1a0..47f24ef 100644
sk->sk_max_pacing_rate);
}
-@@ -4650,7 +4652,7 @@ static struct sk_buff *tcp_collapse_one(struct sock *sk, struct sk_buff *skb,
+@@ -4674,7 +4676,7 @@ static struct sk_buff *tcp_collapse_one(struct sock *sk, struct sk_buff *skb,
* simplifies code)
*/
static void
@@ -126051,7 +125187,7 @@ index 064f1a0..47f24ef 100644
struct sk_buff *head, struct sk_buff *tail,
u32 start, u32 end)
{
-@@ -5645,6 +5647,7 @@ discard:
+@@ -5669,6 +5671,7 @@ discard:
tcp_paws_reject(&tp->rx_opt, 0))
goto discard_and_undo;
@@ -126059,7 +125195,7 @@ index 064f1a0..47f24ef 100644
if (th->syn) {
/* We see SYN without ACK. It is attempt of
* simultaneous connect with crossed SYNs.
-@@ -5696,6 +5699,7 @@ discard:
+@@ -5720,6 +5723,7 @@ discard:
goto discard;
#endif
}
@@ -126067,7 +125203,7 @@ index 064f1a0..47f24ef 100644
/* "fifth, if neither of the SYN or RST bits is set then
* drop the segment and return."
*/
-@@ -5742,7 +5746,7 @@ int tcp_rcv_state_process(struct sock *sk, struct sk_buff *skb,
+@@ -5765,7 +5769,7 @@ int tcp_rcv_state_process(struct sock *sk, struct sk_buff *skb)
goto discard;
if (th->syn) {
@@ -126076,7 +125212,7 @@ index 064f1a0..47f24ef 100644
goto discard;
if (icsk->icsk_af_ops->conn_request(sk, skb) < 0)
return 1;
-@@ -6072,7 +6076,7 @@ struct request_sock *inet_reqsk_alloc(const struct request_sock_ops *ops,
+@@ -6097,7 +6101,7 @@ struct request_sock *inet_reqsk_alloc(const struct request_sock_ops *ops,
kmemcheck_annotate_bitfield(ireq, flags);
ireq->opt = NULL;
@@ -126086,7 +125222,7 @@ index 064f1a0..47f24ef 100644
write_pnet(&ireq->ireq_net, sock_net(sk_listener));
ireq->ireq_family = sk_listener->sk_family;
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
-index d77be28..5bbbf64 100644
+index d8841a2..d31baa8 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@ -89,6 +89,10 @@ int sysctl_tcp_tw_reuse __read_mostly;
@@ -126100,7 +125236,7 @@ index d77be28..5bbbf64 100644
#ifdef CONFIG_TCP_MD5SIG
static int tcp_v4_md5_hash_hdr(char *md5_hash, const struct tcp_md5sig_key *key,
__be32 daddr, __be32 saddr, const struct tcphdr *th);
-@@ -1428,6 +1432,9 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb)
+@@ -1412,6 +1416,9 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb)
return 0;
reset:
@@ -126110,9 +125246,9 @@ index d77be28..5bbbf64 100644
tcp_v4_send_reset(rsk, skb);
discard:
kfree_skb(skb);
-@@ -1592,12 +1599,19 @@ int tcp_v4_rcv(struct sk_buff *skb)
- TCP_SKB_CB(skb)->sacked = 0;
+@@ -1577,12 +1584,19 @@ int tcp_v4_rcv(struct sk_buff *skb)
+ lookup:
sk = __inet_lookup_skb(&tcp_hashinfo, skb, th->source, th->dest);
- if (!sk)
+ if (!sk) {
@@ -126131,9 +125267,9 @@ index d77be28..5bbbf64 100644
goto do_time_wait;
+ }
- if (unlikely(iph->ttl < inet_sk(sk)->min_ttl)) {
- NET_INC_STATS_BH(net, LINUX_MIB_TCPMINTTLDROP);
-@@ -1654,6 +1668,10 @@ csum_error:
+ if (sk->sk_state == TCP_NEW_SYN_RECV) {
+ struct request_sock *req = inet_reqsk(sk);
+@@ -1665,6 +1679,10 @@ csum_error:
bad_packet:
TCP_INC_STATS_BH(net, TCP_MIB_INERRS);
} else {
@@ -126145,7 +125281,7 @@ index d77be28..5bbbf64 100644
}
diff --git a/net/ipv4/tcp_minisocks.c b/net/ipv4/tcp_minisocks.c
-index def7659..b710969 100644
+index ac6b196..e94c1ea 100644
--- a/net/ipv4/tcp_minisocks.c
+++ b/net/ipv4/tcp_minisocks.c
@@ -27,6 +27,10 @@
@@ -126159,7 +125295,7 @@ index def7659..b710969 100644
int sysctl_tcp_syncookies __read_mostly = 1;
EXPORT_SYMBOL(sysctl_tcp_syncookies);
-@@ -779,7 +783,10 @@ embryonic_reset:
+@@ -787,7 +791,10 @@ embryonic_reset:
* avoid becoming vulnerable to outside attack aiming at
* resetting legit local connections.
*/
@@ -126185,7 +125321,7 @@ index ebf5ff5..4d1ff32 100644
cnt += width;
}
diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c
-index 04f0a05..8a958ff 100644
+index 193ba1f..aeda727 100644
--- a/net/ipv4/tcp_timer.c
+++ b/net/ipv4/tcp_timer.c
@@ -22,6 +22,10 @@
@@ -126214,7 +125350,7 @@ index 04f0a05..8a958ff 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 f7d1d5e..4a66eb9 100644
+index c438908..5f28ba3 100644
--- a/net/ipv4/udp.c
+++ b/net/ipv4/udp.c
@@ -87,6 +87,7 @@
@@ -126225,7 +125361,7 @@ index f7d1d5e..4a66eb9 100644
#include <linux/socket.h>
#include <linux/sockios.h>
#include <linux/igmp.h>
-@@ -115,6 +116,10 @@
+@@ -114,6 +115,10 @@
#include <net/busy_poll.h>
#include "udp_impl.h"
@@ -126236,7 +125372,7 @@ index f7d1d5e..4a66eb9 100644
struct udp_table udp_table __read_mostly;
EXPORT_SYMBOL(udp_table);
-@@ -608,6 +613,9 @@ static inline bool __udp_is_mcast_sock(struct net *net, struct sock *sk,
+@@ -611,6 +616,9 @@ static inline bool __udp_is_mcast_sock(struct net *net, struct sock *sk,
return true;
}
@@ -126246,7 +125382,7 @@ index f7d1d5e..4a66eb9 100644
/*
* This routine is called by the ICMP module when it gets some
* sort of error condition. If err < 0 then the socket should
-@@ -944,9 +952,18 @@ int udp_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
+@@ -947,9 +955,18 @@ int udp_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
dport = usin->sin_port;
if (dport == 0)
return -EINVAL;
@@ -126265,7 +125401,7 @@ index f7d1d5e..4a66eb9 100644
daddr = inet->inet_daddr;
dport = inet->inet_dport;
/* Open fast path for connected socket.
-@@ -1214,7 +1231,7 @@ static unsigned int first_packet_length(struct sock *sk)
+@@ -1204,7 +1221,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));
@@ -126274,7 +125410,7 @@ index f7d1d5e..4a66eb9 100644
__skb_unlink(skb, rcvq);
__skb_queue_tail(&list_kill, skb);
}
-@@ -1294,6 +1311,10 @@ try_again:
+@@ -1284,6 +1301,10 @@ try_again:
if (!skb)
goto out;
@@ -126285,7 +125421,7 @@ index f7d1d5e..4a66eb9 100644
ulen = skb->len - sizeof(struct udphdr);
copied = len;
if (copied > ulen)
-@@ -1326,7 +1347,7 @@ try_again:
+@@ -1316,7 +1337,7 @@ try_again:
if (unlikely(err)) {
trace_kfree_skb(skb, udp_recvmsg);
if (!peeked) {
@@ -126294,7 +125430,7 @@ index f7d1d5e..4a66eb9 100644
UDP_INC_STATS_USER(sock_net(sk),
UDP_MIB_INERRORS, is_udplite);
}
-@@ -1620,7 +1641,7 @@ csum_error:
+@@ -1610,7 +1631,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);
@@ -126303,7 +125439,7 @@ index f7d1d5e..4a66eb9 100644
kfree_skb(skb);
return -1;
}
-@@ -1638,7 +1659,7 @@ static void flush_stack(struct sock **stack, unsigned int count,
+@@ -1628,7 +1649,7 @@ static void flush_stack(struct sock **stack, unsigned int count,
skb1 = (i == final) ? skb : skb_clone(skb, GFP_ATOMIC);
if (!skb1) {
@@ -126312,7 +125448,7 @@ index f7d1d5e..4a66eb9 100644
UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_RCVBUFERRORS,
IS_UDPLITE(sk));
UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_INERRORS,
-@@ -1844,6 +1865,9 @@ int __udp4_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
+@@ -1834,6 +1855,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);
@@ -126322,7 +125458,7 @@ index f7d1d5e..4a66eb9 100644
icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0);
/*
-@@ -2448,7 +2472,7 @@ static void udp4_format_sock(struct sock *sp, struct seq_file *f,
+@@ -2438,7 +2462,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,
@@ -126345,10 +125481,10 @@ index fd840c7..b517627 100644
struct iphdr *iph = ip_hdr(skb);
int ihl = iph->ihl * 4;
diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c
-index 126ff90..e9ba962 100644
+index 7b0edb3..785b3f6 100644
--- a/net/ipv4/xfrm4_policy.c
+++ b/net/ipv4/xfrm4_policy.c
-@@ -192,11 +192,11 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
+@@ -215,11 +215,11 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
fl4->flowi4_tos = iph->tos;
}
@@ -126362,7 +125498,7 @@ index 126ff90..e9ba962 100644
return (dst_entries_get_slow(ops) > ops->gc_thresh * 2);
}
-@@ -274,19 +274,18 @@ static struct ctl_table xfrm4_policy_table[] = {
+@@ -297,19 +297,19 @@ static struct ctl_table xfrm4_policy_table[] = {
static int __net_init xfrm4_net_sysctl_init(struct net *net)
{
@@ -126379,7 +125515,7 @@ index 126ff90..e9ba962 100644
table[0].data = &net->xfrm.xfrm4_dst_ops.gc_thresh;
- }
--
+
- hdr = register_net_sysctl(net, "net/ipv4", table);
+ hdr = register_net_sysctl(net, "net/ipv4", table);
+ } else
@@ -126387,7 +125523,7 @@ index 126ff90..e9ba962 100644
if (!hdr)
goto err_reg;
-@@ -294,8 +293,7 @@ static int __net_init xfrm4_net_sysctl_init(struct net *net)
+@@ -317,8 +317,7 @@ static int __net_init xfrm4_net_sysctl_init(struct net *net)
return 0;
err_reg:
@@ -126432,10 +125568,10 @@ index 983bb99..ebc39e1 100644
Support for IPsec ESP.
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
-index 5462bfd..22c903e 100644
+index 1f21087..78bc7e1 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
-@@ -178,7 +178,7 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = {
+@@ -179,7 +179,7 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = {
.hop_limit = IPV6_DEFAULT_HOPLIMIT,
.mtu6 = IPV6_MIN_MTU,
.accept_ra = 1,
@@ -126444,7 +125580,7 @@ index 5462bfd..22c903e 100644
.autoconf = 1,
.force_mld_version = 0,
.mldv1_unsolicited_report_interval = 10 * HZ,
-@@ -222,7 +222,7 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = {
+@@ -223,7 +223,7 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = {
.hop_limit = IPV6_DEFAULT_HOPLIMIT,
.mtu6 = IPV6_MIN_MTU,
.accept_ra = 1,
@@ -126453,7 +125589,7 @@ index 5462bfd..22c903e 100644
.autoconf = 1,
.force_mld_version = 0,
.mldv1_unsolicited_report_interval = 10 * HZ,
-@@ -642,7 +642,7 @@ static int inet6_netconf_dump_devconf(struct sk_buff *skb,
+@@ -643,7 +643,7 @@ static int inet6_netconf_dump_devconf(struct sk_buff *skb,
idx = 0;
head = &net->dev_index_head[h];
rcu_read_lock();
@@ -126462,7 +125598,7 @@ index 5462bfd..22c903e 100644
net->dev_base_seq;
hlist_for_each_entry_rcu(dev, head, index_hlist) {
if (idx < s_idx)
-@@ -2582,7 +2582,7 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg)
+@@ -2584,7 +2584,7 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg)
p.iph.ihl = 5;
p.iph.protocol = IPPROTO_IPV6;
p.iph.ttl = 64;
@@ -126471,7 +125607,7 @@ index 5462bfd..22c903e 100644
if (ops->ndo_do_ioctl) {
mm_segment_t oldfs = get_fs();
-@@ -3850,16 +3850,23 @@ static const struct file_operations if6_fops = {
+@@ -3864,16 +3864,23 @@ static const struct file_operations if6_fops = {
.release = seq_release_net,
};
@@ -126496,7 +125632,7 @@ index 5462bfd..22c903e 100644
}
static struct pernet_operations if6_proc_net_ops = {
-@@ -4478,7 +4485,7 @@ static int inet6_dump_addr(struct sk_buff *skb, struct netlink_callback *cb,
+@@ -4492,7 +4499,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();
@@ -126505,7 +125641,7 @@ index 5462bfd..22c903e 100644
for (h = s_h; h < NETDEV_HASHENTRIES; h++, s_idx = 0) {
idx = 0;
head = &net->dev_index_head[h];
-@@ -4688,7 +4695,7 @@ static inline size_t inet6_if_nlmsg_size(void)
+@@ -4702,7 +4709,7 @@ static inline size_t inet6_if_nlmsg_size(void)
+ nla_total_size(inet6_ifla6_size()); /* IFLA_PROTINFO */
}
@@ -126514,7 +125650,7 @@ index 5462bfd..22c903e 100644
int items, int bytes)
{
int i;
-@@ -4698,7 +4705,7 @@ static inline void __snmp6_fill_statsdev(u64 *stats, atomic_long_t *mib,
+@@ -4712,7 +4719,7 @@ static inline void __snmp6_fill_statsdev(u64 *stats, atomic_long_t *mib,
/* Use put_unaligned() because stats may not be aligned for u64. */
put_unaligned(items, &stats[0]);
for (i = 1; i < items; i++)
@@ -126523,7 +125659,7 @@ index 5462bfd..22c903e 100644
memset(&stats[items], 0, pad);
}
-@@ -5146,7 +5153,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
+@@ -5166,7 +5173,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
rt_genid_bump_ipv6(net);
break;
}
@@ -126532,7 +125668,7 @@ index 5462bfd..22c903e 100644
}
static void ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
-@@ -5166,7 +5173,7 @@ int addrconf_sysctl_forward(struct ctl_table *ctl, int write,
+@@ -5186,7 +5193,7 @@ int addrconf_sysctl_forward(struct ctl_table *ctl, int write,
int *valp = ctl->data;
int val = *valp;
loff_t pos = *ppos;
@@ -126541,7 +125677,7 @@ index 5462bfd..22c903e 100644
int ret;
/*
-@@ -5191,7 +5198,7 @@ int addrconf_sysctl_mtu(struct ctl_table *ctl, int write,
+@@ -5211,7 +5218,7 @@ int addrconf_sysctl_mtu(struct ctl_table *ctl, int write,
{
struct inet6_dev *idev = ctl->extra1;
int min_mtu = IPV6_MIN_MTU;
@@ -126550,7 +125686,7 @@ index 5462bfd..22c903e 100644
lctl = *ctl;
lctl.extra1 = &min_mtu;
-@@ -5266,7 +5273,7 @@ int addrconf_sysctl_disable(struct ctl_table *ctl, int write,
+@@ -5286,7 +5293,7 @@ int addrconf_sysctl_disable(struct ctl_table *ctl, int write,
int *valp = ctl->data;
int val = *valp;
loff_t pos = *ppos;
@@ -126559,7 +125695,7 @@ index 5462bfd..22c903e 100644
int ret;
/*
-@@ -5331,7 +5338,7 @@ static int addrconf_sysctl_stable_secret(struct ctl_table *ctl, int write,
+@@ -5351,7 +5358,7 @@ static int addrconf_sysctl_stable_secret(struct ctl_table *ctl, int write,
int err;
struct in6_addr addr;
char str[IPV6_MAX_STRLEN];
@@ -126568,7 +125704,7 @@ index 5462bfd..22c903e 100644
struct net *net = ctl->extra2;
struct ipv6_stable_secret *secret = ctl->data;
-@@ -5400,7 +5407,7 @@ int addrconf_sysctl_ignore_routes_with_linkdown(struct ctl_table *ctl,
+@@ -5420,7 +5427,7 @@ int addrconf_sysctl_ignore_routes_with_linkdown(struct ctl_table *ctl,
int *valp = ctl->data;
int val = *valp;
loff_t pos = *ppos;
@@ -126578,7 +125714,7 @@ index 5462bfd..22c903e 100644
/* ctl->data points to idev->cnf.ignore_routes_when_linkdown
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
-index df095ee..537199c 100644
+index 9f5137c..a7eabd9 100644
--- a/net/ipv6/af_inet6.c
+++ b/net/ipv6/af_inet6.c
@@ -780,7 +780,7 @@ static int __net_init inet6_net_init(struct net *net)
@@ -126591,7 +125727,7 @@ index df095ee..537199c 100644
err = ipv6_init_mibs(net);
if (err)
diff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c
-index a42a673..d67192c 100644
+index 517c55b..b6462b8 100644
--- a/net/ipv6/datagram.c
+++ b/net/ipv6/datagram.c
@@ -979,5 +979,5 @@ void ip6_dgram_sock_seq_show(struct seq_file *seq, struct sock *sp,
@@ -126602,10 +125738,10 @@ index a42a673..d67192c 100644
+ atomic_read_unchecked(&sp->sk_drops));
}
diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c
-index 6c2b213..e620059 100644
+index 0a37ddc..af81b1a 100644
--- a/net/ipv6/icmp.c
+++ b/net/ipv6/icmp.c
-@@ -1004,7 +1004,7 @@ static struct ctl_table ipv6_icmp_table_template[] = {
+@@ -998,7 +998,7 @@ static struct ctl_table ipv6_icmp_table_template[] = {
struct ctl_table * __net_init ipv6_icmp_sysctl_init(struct net *net)
{
@@ -126615,7 +125751,7 @@ index 6c2b213..e620059 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 6cedc62..998bd5b 100644
+index 0c7e276..68d9b36 100644
--- a/net/ipv6/ip6_fib.c
+++ b/net/ipv6/ip6_fib.c
@@ -100,9 +100,9 @@ static int fib6_new_sernum(struct net *net)
@@ -126695,7 +125831,7 @@ index 137fca4..2671d8c 100644
.maxtype = IFLA_IPTUN_MAX,
.policy = ip6_tnl_policy,
diff --git a/net/ipv6/ip6_vti.c b/net/ipv6/ip6_vti.c
-index 0224c03..c5ec3d9 100644
+index 0a8610b..2c8c85b 100644
--- a/net/ipv6/ip6_vti.c
+++ b/net/ipv6/ip6_vti.c
@@ -62,7 +62,7 @@ static u32 HASH(const struct in6_addr *addr1, const struct in6_addr *addr2)
@@ -126730,10 +125866,10 @@ index 4449ad1..e47579c 100644
msg.msg_flags = flags;
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
-index 9ad46cd..95c2448 100644
+index 84afb9a..d7dcc41 100644
--- a/net/ipv6/ndisc.c
+++ b/net/ipv6/ndisc.c
-@@ -662,7 +662,7 @@ static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb)
+@@ -665,7 +665,7 @@ static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb)
struct in6_addr mcaddr;
struct net_device *dev = neigh->dev;
struct in6_addr *target = (struct in6_addr *)&neigh->primary_key;
@@ -126743,15 +125879,15 @@ index 9ad46cd..95c2448 100644
if (skb && ipv6_chk_addr_and_flags(dev_net(dev), &ipv6_hdr(skb)->saddr,
dev, 1,
diff --git a/net/ipv6/netfilter/ip6_tables.c b/net/ipv6/netfilter/ip6_tables.c
-index 0771991..faa2784 100644
+index 99425cf..262204d 100644
--- a/net/ipv6/netfilter/ip6_tables.c
+++ b/net/ipv6/netfilter/ip6_tables.c
-@@ -1089,14 +1089,14 @@ static int compat_table_info(const struct xt_table_info *info,
+@@ -1090,14 +1090,14 @@ static int compat_table_info(const struct xt_table_info *info,
#endif
static int get_info(struct net *net, void __user *user,
-- const int *len, int compat)
-+ int len, int compat)
+- const int *len, int compat)
++ int len, int compat)
{
char name[XT_TABLE_MAXNAMELEN];
struct xt_table *t;
@@ -126764,7 +125900,7 @@ index 0771991..faa2784 100644
sizeof(struct ip6t_getinfo));
return -EINVAL;
}
-@@ -1133,7 +1133,7 @@ static int get_info(struct net *net, void __user *user,
+@@ -1134,7 +1134,7 @@ static int get_info(struct net *net, void __user *user,
info.size = private->size;
strcpy(info.name, name);
@@ -126773,7 +125909,7 @@ index 0771991..faa2784 100644
ret = -EFAULT;
else
ret = 0;
-@@ -1981,7 +1981,7 @@ compat_do_ip6t_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
+@@ -1982,7 +1982,7 @@ compat_do_ip6t_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
switch (cmd) {
case IP6T_SO_GET_INFO:
@@ -126782,7 +125918,7 @@ index 0771991..faa2784 100644
break;
case IP6T_SO_GET_ENTRIES:
ret = compat_get_entries(sock_net(sk), user, len);
-@@ -2028,7 +2028,7 @@ do_ip6t_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
+@@ -2029,7 +2029,7 @@ do_ip6t_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
switch (cmd) {
case IP6T_SO_GET_INFO:
@@ -126792,7 +125928,7 @@ index 0771991..faa2784 100644
case IP6T_SO_GET_ENTRIES:
diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c
-index dc50143..f3ca648 100644
+index bab4441..233aa7a 100644
--- a/net/ipv6/netfilter/nf_conntrack_reasm.c
+++ b/net/ipv6/netfilter/nf_conntrack_reasm.c
@@ -96,12 +96,11 @@ static struct ctl_table nf_ct_frag6_sysctl_table[] = {
@@ -126951,7 +126087,7 @@ index 679253d0..d85dd97 100644
goto proc_dev_snmp6_fail;
return 0;
diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c
-index fe97729..5292cb2 100644
+index 9914098..f3f8888 100644
--- a/net/ipv6/raw.c
+++ b/net/ipv6/raw.c
@@ -389,7 +389,7 @@ static inline int rawv6_rcv_skb(struct sock *sk, struct sk_buff *skb)
@@ -126990,7 +126126,7 @@ index fe97729..5292cb2 100644
struct flowi6 *fl6, struct dst_entry **dstp,
unsigned int flags)
{
-@@ -921,12 +921,15 @@ do_confirm:
+@@ -922,12 +922,15 @@ do_confirm:
static int rawv6_seticmpfilter(struct sock *sk, int level, int optname,
char __user *optval, int optlen)
{
@@ -127007,7 +126143,7 @@ index fe97729..5292cb2 100644
return 0;
default:
return -ENOPROTOOPT;
-@@ -939,6 +942,7 @@ static int rawv6_geticmpfilter(struct sock *sk, int level, int optname,
+@@ -940,6 +943,7 @@ static int rawv6_geticmpfilter(struct sock *sk, int level, int optname,
char __user *optval, int __user *optlen)
{
int len;
@@ -127015,7 +126151,7 @@ index fe97729..5292cb2 100644
switch (optname) {
case ICMPV6_FILTER:
-@@ -950,7 +954,8 @@ static int rawv6_geticmpfilter(struct sock *sk, int level, int optname,
+@@ -951,7 +955,8 @@ static int rawv6_geticmpfilter(struct sock *sk, int level, int optname,
len = sizeof(struct icmp6_filter);
if (put_user(len, optlen))
return -EFAULT;
@@ -127026,7 +126162,7 @@ index fe97729..5292cb2 100644
return 0;
default:
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c
-index 04013a9..6a98cc6 100644
+index 45f5ae5..1c57cbe 100644
--- a/net/ipv6/reassembly.c
+++ b/net/ipv6/reassembly.c
@@ -630,12 +630,11 @@ static struct ctl_table ip6_frags_ctl_table[] = {
@@ -127068,10 +126204,10 @@ index 04013a9..6a98cc6 100644
return -ENOMEM;
}
diff --git a/net/ipv6/route.c b/net/ipv6/route.c
-index fd0e674..ecfb57a 100644
+index 826e6aa..02a2386 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
-@@ -3513,7 +3513,7 @@ struct ctl_table ipv6_route_table_template[] = {
+@@ -3504,7 +3504,7 @@ struct ctl_table ipv6_route_table_template[] = {
struct ctl_table * __net_init ipv6_route_sysctl_init(struct net *net)
{
@@ -127116,7 +126252,7 @@ index 45243bb..cdb398e 100644
struct ctl_table *ipv6_icmp_table;
int err;
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
-index a71fb26..072547c 100644
+index bd100b4..72c83d8 100644
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@ -102,6 +102,10 @@ static void inet6_sk_rx_dst_set(struct sock *sk, const struct sk_buff *skb)
@@ -127130,7 +126266,7 @@ index a71fb26..072547c 100644
static __u32 tcp_v6_init_sequence(const struct sk_buff *skb)
{
return secure_tcpv6_sequence_number(ipv6_hdr(skb)->daddr.s6_addr32,
-@@ -1287,6 +1291,9 @@ static int tcp_v6_do_rcv(struct sock *sk, struct sk_buff *skb)
+@@ -1268,6 +1272,9 @@ static int tcp_v6_do_rcv(struct sock *sk, struct sk_buff *skb)
return 0;
reset:
@@ -127140,8 +126276,8 @@ index a71fb26..072547c 100644
tcp_v6_send_reset(sk, skb);
discard:
if (opt_skb)
-@@ -1396,12 +1403,20 @@ static int tcp_v6_rcv(struct sk_buff *skb)
-
+@@ -1378,12 +1385,20 @@ static int tcp_v6_rcv(struct sk_buff *skb)
+ lookup:
sk = __inet6_lookup_skb(&tcp_hashinfo, skb, th->source, th->dest,
inet6_iif(skb));
- if (!sk)
@@ -127161,9 +126297,9 @@ index a71fb26..072547c 100644
goto do_time_wait;
+ }
- if (hdr->hop_limit < inet6_sk(sk)->min_hopcount) {
- NET_INC_STATS_BH(net, LINUX_MIB_TCPMINTTLDROP);
-@@ -1453,6 +1468,10 @@ csum_error:
+ if (sk->sk_state == TCP_NEW_SYN_RECV) {
+ struct request_sock *req = inet_reqsk(sk);
+@@ -1471,6 +1486,10 @@ csum_error:
bad_packet:
TCP_INC_STATS_BH(net, TCP_MIB_INERRS);
} else {
@@ -127175,7 +126311,7 @@ index a71fb26..072547c 100644
}
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c
-index 8379fc2..faac798 100644
+index 9da3287..87089a6 100644
--- a/net/ipv6/udp.c
+++ b/net/ipv6/udp.c
@@ -76,6 +76,10 @@ static u32 udp6_ehashfn(const struct net *net,
@@ -127189,7 +126325,7 @@ index 8379fc2..faac798 100644
int ipv6_rcv_saddr_equal(const struct sock *sk, const struct sock *sk2)
{
const struct in6_addr *sk2_rcv_saddr6 = inet6_rcv_saddr(sk2);
-@@ -445,7 +449,7 @@ try_again:
+@@ -448,7 +452,7 @@ try_again:
if (unlikely(err)) {
trace_kfree_skb(skb, udpv6_recvmsg);
if (!peeked) {
@@ -127198,7 +126334,7 @@ index 8379fc2..faac798 100644
if (is_udp4)
UDP_INC_STATS_USER(sock_net(sk),
UDP_MIB_INERRORS,
-@@ -709,7 +713,7 @@ csum_error:
+@@ -712,7 +716,7 @@ csum_error:
UDP6_INC_STATS_BH(sock_net(sk), UDP_MIB_CSUMERRORS, is_udplite);
drop:
UDP6_INC_STATS_BH(sock_net(sk), UDP_MIB_INERRORS, is_udplite);
@@ -127207,7 +126343,7 @@ index 8379fc2..faac798 100644
kfree_skb(skb);
return -1;
}
-@@ -750,7 +754,7 @@ static void flush_stack(struct sock **stack, unsigned int count,
+@@ -753,7 +757,7 @@ static void flush_stack(struct sock **stack, unsigned int count,
if (likely(!skb1))
skb1 = (i == final) ? skb : skb_clone(skb, GFP_ATOMIC);
if (!skb1) {
@@ -127216,7 +126352,7 @@ index 8379fc2..faac798 100644
UDP6_INC_STATS_BH(sock_net(sk), UDP_MIB_RCVBUFERRORS,
IS_UDPLITE(sk));
UDP6_INC_STATS_BH(sock_net(sk), UDP_MIB_INERRORS,
-@@ -934,6 +938,9 @@ int __udp6_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
+@@ -937,6 +941,9 @@ int __udp6_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
goto csum_error;
UDP6_INC_STATS_BH(net, UDP_MIB_NOPORTS, proto == IPPROTO_UDPLITE);
@@ -127227,10 +126363,10 @@ index 8379fc2..faac798 100644
kfree_skb(skb);
diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c
-index d51a18d..36a6399 100644
+index c074771..45ded9b 100644
--- a/net/ipv6/xfrm6_policy.c
+++ b/net/ipv6/xfrm6_policy.c
-@@ -218,11 +218,11 @@ _decode_session6(struct sk_buff *skb, struct flowi *fl, int reverse)
+@@ -216,11 +216,11 @@ _decode_session6(struct sk_buff *skb, struct flowi *fl, int reverse)
}
}
@@ -127244,7 +126380,7 @@ index d51a18d..36a6399 100644
return dst_entries_get_fast(ops) > ops->gc_thresh * 2;
}
-@@ -329,19 +329,19 @@ static struct ctl_table xfrm6_policy_table[] = {
+@@ -327,19 +327,19 @@ static struct ctl_table xfrm6_policy_table[] = {
static int __net_init xfrm6_net_sysctl_init(struct net *net)
{
@@ -127269,7 +126405,7 @@ index d51a18d..36a6399 100644
if (!hdr)
goto err_reg;
-@@ -349,8 +349,7 @@ static int __net_init xfrm6_net_sysctl_init(struct net *net)
+@@ -347,8 +347,7 @@ static int __net_init xfrm6_net_sysctl_init(struct net *net)
return 0;
err_reg:
@@ -127293,7 +126429,7 @@ index c1d247e..9e5949d 100644
if (!ipx_proc_dir)
goto out;
diff --git a/net/irda/ircomm/ircomm_tty.c b/net/irda/ircomm/ircomm_tty.c
-index 683346d..cb0e12d 100644
+index a423770..a6e53a3 100644
--- a/net/irda/ircomm/ircomm_tty.c
+++ b/net/irda/ircomm/ircomm_tty.c
@@ -310,10 +310,10 @@ static int ircomm_tty_block_til_ready(struct ircomm_tty_cb *self,
@@ -127309,7 +126445,7 @@ index 683346d..cb0e12d 100644
port->blocked_open++;
spin_unlock_irqrestore(&port->lock, flags);
-@@ -348,7 +348,7 @@ static int ircomm_tty_block_til_ready(struct ircomm_tty_cb *self,
+@@ -347,7 +347,7 @@ static int ircomm_tty_block_til_ready(struct ircomm_tty_cb *self,
}
pr_debug("%s(%d):block_til_ready blocking on %s open_count=%d\n",
@@ -127318,7 +126454,7 @@ index 683346d..cb0e12d 100644
schedule();
}
-@@ -358,12 +358,12 @@ static int ircomm_tty_block_til_ready(struct ircomm_tty_cb *self,
+@@ -357,12 +357,12 @@ static int ircomm_tty_block_til_ready(struct ircomm_tty_cb *self,
spin_lock_irqsave(&port->lock, flags);
if (!tty_hung_up_p(filp))
@@ -127333,7 +126469,7 @@ index 683346d..cb0e12d 100644
if (!retval)
port->flags |= ASYNC_NORMAL_ACTIVE;
-@@ -433,12 +433,12 @@ static int ircomm_tty_open(struct tty_struct *tty, struct file *filp)
+@@ -432,12 +432,12 @@ static int ircomm_tty_open(struct tty_struct *tty, struct file *filp)
/* ++ is not atomic, so this should be protected - Jean II */
spin_lock_irqsave(&self->port.lock, flags);
@@ -127348,7 +126484,7 @@ index 683346d..cb0e12d 100644
/* Not really used by us, but lets do it anyway */
self->port.low_latency = (self->port.flags & ASYNC_LOW_LATENCY) ? 1 : 0;
-@@ -961,7 +961,7 @@ static void ircomm_tty_hangup(struct tty_struct *tty)
+@@ -932,7 +932,7 @@ static void ircomm_tty_hangup(struct tty_struct *tty)
tty_kref_put(port->tty);
}
port->tty = NULL;
@@ -127357,7 +126493,7 @@ index 683346d..cb0e12d 100644
spin_unlock_irqrestore(&port->lock, flags);
wake_up_interruptible(&port->open_wait);
-@@ -1308,7 +1308,7 @@ static void ircomm_tty_line_info(struct ircomm_tty_cb *self, struct seq_file *m)
+@@ -1279,7 +1279,7 @@ static void ircomm_tty_line_info(struct ircomm_tty_cb *self, struct seq_file *m)
seq_putc(m, '\n');
seq_printf(m, "Role: %s\n", self->client ? "client" : "server");
@@ -127380,10 +126516,10 @@ index b9ac598..f88cc56 100644
return;
diff --git a/net/iucv/af_iucv.c b/net/iucv/af_iucv.c
-index 918151c..2186df8 100644
+index 435608c..1b7d8bb 100644
--- a/net/iucv/af_iucv.c
+++ b/net/iucv/af_iucv.c
-@@ -686,10 +686,10 @@ static void __iucv_auto_name(struct iucv_sock *iucv)
+@@ -685,10 +685,10 @@ static void __iucv_auto_name(struct iucv_sock *iucv)
{
char name[12];
@@ -127396,7 +126532,7 @@ index 918151c..2186df8 100644
}
memcpy(iucv->src_name, name, 8);
}
-@@ -709,6 +709,9 @@ static int iucv_sock_bind(struct socket *sock, struct sockaddr *addr,
+@@ -708,6 +708,9 @@ static int iucv_sock_bind(struct socket *sock, struct sockaddr *addr,
if (!addr || addr->sa_family != AF_IUCV)
return -EINVAL;
@@ -127407,7 +126543,7 @@ index 918151c..2186df8 100644
if (sk->sk_state != IUCV_OPEN) {
err = -EBADFD;
diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c
-index 2a6a1fd..6c112b0 100644
+index 7eaa000..2fa7f35 100644
--- a/net/iucv/iucv.c
+++ b/net/iucv/iucv.c
@@ -702,7 +702,7 @@ static int iucv_cpu_notify(struct notifier_block *self,
@@ -127437,7 +126573,7 @@ index f9c9ecb..060751e 100644
return res;
}
diff --git a/net/l2tp/l2tp_eth.c b/net/l2tp/l2tp_eth.c
-index 4b55287..bd247f7 100644
+index e253c26..609e848 100644
--- a/net/l2tp/l2tp_eth.c
+++ b/net/l2tp/l2tp_eth.c
@@ -42,12 +42,12 @@ struct l2tp_eth {
@@ -127513,7 +126649,7 @@ index 4b55287..bd247f7 100644
}
diff --git a/net/l2tp/l2tp_ip.c b/net/l2tp/l2tp_ip.c
-index 7964993..2c48a3a 100644
+index ec22078..0822b6e 100644
--- a/net/l2tp/l2tp_ip.c
+++ b/net/l2tp/l2tp_ip.c
@@ -608,7 +608,7 @@ static struct inet_protosw l2tp_ip_protosw = {
@@ -127526,7 +126662,7 @@ index 7964993..2c48a3a 100644
.netns_ok = 1,
};
diff --git a/net/l2tp/l2tp_ip6.c b/net/l2tp/l2tp_ip6.c
-index 0ce9da9..c35ce35 100644
+index a2c8747..f1fc10b 100644
--- a/net/l2tp/l2tp_ip6.c
+++ b/net/l2tp/l2tp_ip6.c
@@ -759,7 +759,7 @@ static struct inet_protosw l2tp_ip6_protosw = {
@@ -127552,10 +126688,10 @@ index 1a3c7e0..80f8b0c 100644
goto out;
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
-index 7a77a14..1d0b677 100644
+index c12f348..adb3b48 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
-@@ -379,7 +379,7 @@ static int ieee80211_get_key(struct wiphy *wiphy, struct net_device *dev,
+@@ -378,7 +378,7 @@ static int ieee80211_get_key(struct wiphy *wiphy, struct net_device *dev,
drv_get_key_seq(sdata->local, key, &kseq);
memcpy(seq, kseq.ccmp.pn, 6);
} else {
@@ -127564,7 +126700,7 @@ index 7a77a14..1d0b677 100644
seq[0] = pn64;
seq[1] = pn64 >> 8;
seq[2] = pn64 >> 16;
-@@ -580,7 +580,7 @@ static int ieee80211_set_monitor_channel(struct wiphy *wiphy,
+@@ -540,7 +540,7 @@ static int ieee80211_set_monitor_channel(struct wiphy *wiphy,
ret = ieee80211_vif_use_channel(sdata, chandef,
IEEE80211_CHANCTX_EXCLUSIVE);
}
@@ -127573,16 +126709,16 @@ index 7a77a14..1d0b677 100644
local->_oper_chandef = *chandef;
ieee80211_hw_config(local, 0);
}
-@@ -3530,7 +3530,7 @@ static void ieee80211_mgmt_frame_register(struct wiphy *wiphy,
- else
- local->probe_req_reg--;
+@@ -3513,7 +3513,7 @@ static void ieee80211_mgmt_frame_register(struct wiphy *wiphy,
+ sdata->vif.probe_req_reg--;
+ }
- if (!local->open_count)
+ if (!local_read(&local->open_count))
break;
- ieee80211_queue_work(&local->hw, &local->reconfig_filter);
-@@ -3679,8 +3679,8 @@ static int ieee80211_cfg_get_channel(struct wiphy *wiphy,
+ if (sdata->vif.probe_req_reg == 1)
+@@ -3669,8 +3669,8 @@ static int ieee80211_cfg_get_channel(struct wiphy *wiphy,
if (chanctx_conf) {
*chandef = sdata->vif.bss_conf.chandef;
ret = 0;
@@ -127594,10 +126730,19 @@ index 7a77a14..1d0b677 100644
if (local->use_chanctx)
*chandef = local->monitor_chandef;
diff --git a/net/mac80211/debugfs_key.c b/net/mac80211/debugfs_key.c
-index 702ca12..a98f135 100644
+index 7961e7d..eea148f 100644
--- a/net/mac80211/debugfs_key.c
+++ b/net/mac80211/debugfs_key.c
-@@ -100,7 +100,7 @@ static ssize_t key_tx_spec_read(struct file *file, char __user *userbuf,
+@@ -111,7 +111,7 @@ static ssize_t key_tx_spec_write(struct file *file, const char __user *userbuf,
+ /* PN is a 48-bit counter */
+ if (pn >= (1ULL << 48))
+ return -ERANGE;
+- atomic64_set(&key->conf.tx_pn, pn);
++ atomic64_set_unchecked(&key->conf.tx_pn, pn);
+ return count;
+ default:
+ return 0;
+@@ -144,7 +144,7 @@ static ssize_t key_tx_spec_read(struct file *file, char __user *userbuf,
case WLAN_CIPHER_SUITE_BIP_GMAC_256:
case WLAN_CIPHER_SUITE_GCMP:
case WLAN_CIPHER_SUITE_GCMP_256:
@@ -127607,7 +126752,7 @@ index 702ca12..a98f135 100644
(u8)(pn >> 40), (u8)(pn >> 32), (u8)(pn >> 24),
(u8)(pn >> 16), (u8)(pn >> 8), (u8)pn);
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
-index 6e52659..74e7863 100644
+index 5322b4c..ed9ecbe 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -30,6 +30,7 @@
@@ -127618,7 +126763,7 @@ index 6e52659..74e7863 100644
#include "key.h"
#include "sta_info.h"
#include "debug.h"
-@@ -1112,7 +1113,7 @@ struct ieee80211_local {
+@@ -1111,7 +1112,7 @@ struct ieee80211_local {
/* also used to protect ampdu_ac_queue and amdpu_ac_stop_refcnt */
spinlock_t queue_stop_reason_lock;
@@ -127628,10 +126773,10 @@ index 6e52659..74e7863 100644
/* number of interfaces with corresponding FIF_ flags */
int fif_fcsfail, fif_plcpfail, fif_control, fif_other_bss, fif_pspoll,
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
-index 6964fc6..4b98e06 100644
+index c9e325d..afa762a 100644
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -550,7 +550,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -551,7 +551,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
break;
}
@@ -127640,7 +126785,7 @@ index 6964fc6..4b98e06 100644
res = drv_start(local);
if (res)
goto err_del_bss;
-@@ -597,7 +597,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -598,7 +598,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
res = drv_add_interface(local, sdata);
if (res)
goto err_stop;
@@ -127649,7 +126794,7 @@ index 6964fc6..4b98e06 100644
res = ieee80211_add_virtual_monitor(local);
if (res)
goto err_stop;
-@@ -704,7 +704,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -707,7 +707,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
atomic_inc(&local->iff_allmultis);
if (coming_up)
@@ -127658,7 +126803,7 @@ index 6964fc6..4b98e06 100644
if (hw_reconf_flags)
ieee80211_hw_config(local, hw_reconf_flags);
-@@ -742,7 +742,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -745,7 +745,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
err_del_interface:
drv_remove_interface(local, sdata);
err_stop:
@@ -127667,7 +126812,7 @@ index 6964fc6..4b98e06 100644
drv_stop(local);
err_del_bss:
sdata->bss = NULL;
-@@ -909,7 +909,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -912,7 +912,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
}
if (going_down)
@@ -127676,7 +126821,7 @@ index 6964fc6..4b98e06 100644
switch (sdata->vif.type) {
case NL80211_IFTYPE_AP_VLAN:
-@@ -978,7 +978,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -981,7 +981,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
atomic_set(&sdata->txqs_len[txqi->txq.ac], 0);
}
@@ -127685,7 +126830,7 @@ index 6964fc6..4b98e06 100644
ieee80211_clear_tx_pending(local);
/*
-@@ -1021,7 +1021,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -1024,7 +1024,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
if (cancel_scan)
flush_delayed_work(&local->scan_work);
@@ -127694,7 +126839,7 @@ index 6964fc6..4b98e06 100644
ieee80211_stop_device(local);
/* no reconfiguring after stop! */
-@@ -1032,7 +1032,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -1035,7 +1035,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
ieee80211_configure_filter(local);
ieee80211_hw_config(local, hw_reconf_flags);
@@ -127703,7 +126848,7 @@ index 6964fc6..4b98e06 100644
ieee80211_add_virtual_monitor(local);
}
-@@ -1892,8 +1892,8 @@ void ieee80211_remove_interfaces(struct ieee80211_local *local)
+@@ -1895,8 +1895,8 @@ void ieee80211_remove_interfaces(struct ieee80211_local *local)
*/
cfg80211_shutdown_all_interfaces(local->hw.wiphy);
@@ -127737,10 +126882,10 @@ index 44388d6..a052880 100644
default:
WARN_ON(1);
diff --git a/net/mac80211/main.c b/net/mac80211/main.c
-index ff79a13..fb6b111 100644
+index 175ffcf..2212fd2 100644
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
-@@ -172,7 +172,7 @@ int ieee80211_hw_config(struct ieee80211_local *local, u32 changed)
+@@ -170,7 +170,7 @@ int ieee80211_hw_config(struct ieee80211_local *local, u32 changed)
changed &= ~(IEEE80211_CONF_CHANGE_CHANNEL |
IEEE80211_CONF_CHANGE_POWER);
@@ -127750,10 +126895,10 @@ index ff79a13..fb6b111 100644
/*
* Goal:
diff --git a/net/mac80211/pm.c b/net/mac80211/pm.c
-index b676b9f..395dd95 100644
+index 00a43a7..ab6deef 100644
--- a/net/mac80211/pm.c
+++ b/net/mac80211/pm.c
-@@ -12,7 +12,7 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
+@@ -19,7 +19,7 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
struct ieee80211_sub_if_data *sdata;
struct sta_info *sta;
@@ -127762,7 +126907,7 @@ index b676b9f..395dd95 100644
goto suspend;
ieee80211_scan_cancel(local);
-@@ -166,7 +166,7 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
+@@ -178,7 +178,7 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
WARN_ON(!list_empty(&local->chanctx_list));
/* stop hardware - this must stop RX */
@@ -127772,10 +126917,10 @@ index b676b9f..395dd95 100644
suspend:
diff --git a/net/mac80211/rate.c b/net/mac80211/rate.c
-index 9ce8883..c334feb 100644
+index a4e2f4e..02bfac1 100644
--- a/net/mac80211/rate.c
+++ b/net/mac80211/rate.c
-@@ -898,7 +898,7 @@ int ieee80211_init_rate_ctrl_alg(struct ieee80211_local *local,
+@@ -901,7 +901,7 @@ int ieee80211_init_rate_ctrl_alg(struct ieee80211_local *local,
ASSERT_RTNL();
@@ -127785,10 +126930,10 @@ index 9ce8883..c334feb 100644
if (ieee80211_hw_check(&local->hw, HAS_RATE_CONTROL)) {
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
-index 64f1936..01102b7 100644
+index f91d187..373ad96 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
-@@ -350,7 +350,7 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata,
+@@ -348,7 +348,7 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata,
int size = sizeof(struct txq_info) +
ALIGN(hw->txq_data_size, sizeof(void *));
@@ -127798,10 +126943,10 @@ index 64f1936..01102b7 100644
goto free;
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
-index 7892eb8..161da5a 100644
+index bdc224d..11c229f 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -2824,7 +2824,7 @@ static bool ieee80211_xmit_fast(struct ieee80211_sub_if_data *sdata,
+@@ -2825,7 +2825,7 @@ static bool ieee80211_xmit_fast(struct ieee80211_sub_if_data *sdata,
case WLAN_CIPHER_SUITE_CCMP_256:
case WLAN_CIPHER_SUITE_GCMP:
case WLAN_CIPHER_SUITE_GCMP_256:
@@ -127811,10 +126956,10 @@ index 7892eb8..161da5a 100644
crypto_hdr[1] = pn >> 8;
crypto_hdr[4] = pn >> 16;
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
-index cd90ece..5848351 100644
+index 33344f5..2e15b8f 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
-@@ -1719,7 +1719,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+@@ -1758,7 +1758,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
bool suspended = local->suspended;
/* nothing to do if HW shouldn't run */
@@ -127823,7 +126968,7 @@ index cd90ece..5848351 100644
goto wake_up;
#ifdef CONFIG_PM
-@@ -2000,7 +2000,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+@@ -2051,7 +2051,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
local->in_reconfig = false;
barrier();
@@ -127832,7 +126977,7 @@ index cd90ece..5848351 100644
ieee80211_add_virtual_monitor(local);
/*
-@@ -2055,7 +2055,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+@@ -2085,7 +2085,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
* If this is for hw restart things are still running.
* We may want to change that later, however.
*/
@@ -127841,9 +126986,9 @@ index cd90ece..5848351 100644
drv_reconfig_complete(local, IEEE80211_RECONFIG_TYPE_RESTART);
if (!suspended)
-@@ -2079,7 +2079,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
- flush_delayed_work(&local->scan_work);
- }
+@@ -2099,7 +2099,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+
+ ieee80211_flush_completed_scan(local, false);
- if (local->open_count && !reconfig_due_to_wowlan)
+ if (local_read(&local->open_count) && !reconfig_due_to_wowlan)
@@ -127851,10 +126996,10 @@ index cd90ece..5848351 100644
list_for_each_entry(sdata, &local->interfaces, list) {
diff --git a/net/mac80211/wpa.c b/net/mac80211/wpa.c
-index feb547d..eaec5fa4 100644
+index d824c38..f3ded28 100644
--- a/net/mac80211/wpa.c
+++ b/net/mac80211/wpa.c
-@@ -444,7 +444,7 @@ static int ccmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb,
+@@ -447,7 +447,7 @@ static int ccmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb,
hdr = (struct ieee80211_hdr *) pos;
pos += hdrlen;
@@ -127863,7 +127008,7 @@ index feb547d..eaec5fa4 100644
pn[5] = pn64;
pn[4] = pn64 >> 8;
-@@ -673,7 +673,7 @@ static int gcmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
+@@ -676,7 +676,7 @@ static int gcmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
hdr = (struct ieee80211_hdr *)pos;
pos += hdrlen;
@@ -127872,7 +127017,7 @@ index feb547d..eaec5fa4 100644
pn[5] = pn64;
pn[4] = pn64 >> 8;
-@@ -947,7 +947,7 @@ ieee80211_crypto_aes_cmac_encrypt(struct ieee80211_tx_data *tx)
+@@ -950,7 +950,7 @@ ieee80211_crypto_aes_cmac_encrypt(struct ieee80211_tx_data *tx)
mmie->key_id = cpu_to_le16(key->conf.keyidx);
/* PN = PN + 1 */
@@ -127881,7 +127026,7 @@ index feb547d..eaec5fa4 100644
bip_ipn_set64(mmie->sequence_number, pn64);
-@@ -991,7 +991,7 @@ ieee80211_crypto_aes_cmac_256_encrypt(struct ieee80211_tx_data *tx)
+@@ -994,7 +994,7 @@ ieee80211_crypto_aes_cmac_256_encrypt(struct ieee80211_tx_data *tx)
mmie->key_id = cpu_to_le16(key->conf.keyidx);
/* PN = PN + 1 */
@@ -127890,7 +127035,7 @@ index feb547d..eaec5fa4 100644
bip_ipn_set64(mmie->sequence_number, pn64);
-@@ -1136,7 +1136,7 @@ ieee80211_crypto_aes_gmac_encrypt(struct ieee80211_tx_data *tx)
+@@ -1139,7 +1139,7 @@ ieee80211_crypto_aes_gmac_encrypt(struct ieee80211_tx_data *tx)
mmie->key_id = cpu_to_le16(key->conf.keyidx);
/* PN = PN + 1 */
@@ -127900,10 +127045,10 @@ index feb547d..eaec5fa4 100644
bip_ipn_set64(mmie->sequence_number, pn64);
diff --git a/net/mac802154/iface.c b/net/mac802154/iface.c
-index ed26952..025b04e 100644
+index 7079cd3..abf6a59 100644
--- a/net/mac802154/iface.c
+++ b/net/mac802154/iface.c
-@@ -387,7 +387,7 @@ static int mac802154_header_create(struct sk_buff *skb,
+@@ -386,7 +386,7 @@ static int ieee802154_header_create(struct sk_buff *skb,
hdr.fc.type = cb->type;
hdr.fc.security_enabled = cb->secen;
hdr.fc.ack_request = cb->ackreq;
@@ -127912,7 +127057,7 @@ index ed26952..025b04e 100644
if (mac802154_set_header_security(sdata, &hdr, cb) < 0)
return -EINVAL;
-@@ -492,7 +492,7 @@ ieee802154_setup_sdata(struct ieee802154_sub_if_data *sdata,
+@@ -576,7 +576,7 @@ ieee802154_setup_sdata(struct ieee802154_sub_if_data *sdata,
get_random_bytes(&tmp, sizeof(tmp));
atomic_set(&wpan_dev->bsn, tmp);
get_random_bytes(&tmp, sizeof(tmp));
@@ -127922,10 +127067,10 @@ index ed26952..025b04e 100644
/* defaults per 802.15.4-2011 */
wpan_dev->min_be = 3;
diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c
-index bb185a2..417f388 100644
+index c32fc41..f8dcf21 100644
--- a/net/mpls/af_mpls.c
+++ b/net/mpls/af_mpls.c
-@@ -563,7 +563,7 @@ static int mpls_dev_sysctl_register(struct net_device *dev,
+@@ -828,7 +828,7 @@ static int mpls_dev_sysctl_register(struct net_device *dev,
struct mpls_dev *mdev)
{
char path[sizeof("net/mpls/conf/") + IFNAMSIZ];
@@ -127934,7 +127079,7 @@ index bb185a2..417f388 100644
int i;
table = kmemdup(&mpls_dev_table, sizeof(mpls_dev_table), GFP_KERNEL);
-@@ -1136,7 +1136,7 @@ static int mpls_platform_labels(struct ctl_table *table, int write,
+@@ -1489,7 +1489,7 @@ static int mpls_platform_labels(struct ctl_table *table, int write,
struct net *net = table->data;
int platform_labels = net->mpls.platform_labels;
int ret;
@@ -127943,7 +127088,7 @@ index bb185a2..417f388 100644
.procname = table->procname,
.data = &platform_labels,
.maxlen = sizeof(int),
-@@ -1166,7 +1166,7 @@ static const struct ctl_table mpls_table[] = {
+@@ -1519,7 +1519,7 @@ static const struct ctl_table mpls_table[] = {
static int mpls_net_init(struct net *net)
{
@@ -127953,10 +127098,10 @@ index bb185a2..417f388 100644
net->mpls.platform_labels = 0;
net->mpls.platform_label = NULL;
diff --git a/net/netfilter/Kconfig b/net/netfilter/Kconfig
-index 3e1b4ab..b354153 100644
+index 4692782..24f2db1 100644
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -1127,6 +1127,16 @@ config NETFILTER_XT_MATCH_ESP
+@@ -1128,6 +1128,16 @@ config NETFILTER_XT_MATCH_ESP
To compile it as a module, choose M here. If unsure, say N.
@@ -127974,10 +127119,10 @@ index 3e1b4ab..b354153 100644
tristate '"hashlimit" match support'
depends on IP6_NF_IPTABLES || IP6_NF_IPTABLES=n
diff --git a/net/netfilter/Makefile b/net/netfilter/Makefile
-index 70d026d..c400590 100644
+index 7638c36..faf3ac2 100644
--- a/net/netfilter/Makefile
+++ b/net/netfilter/Makefile
-@@ -140,6 +140,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_DEVGROUP) += xt_devgroup.o
+@@ -138,6 +138,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_DEVGROUP) += xt_devgroup.o
obj-$(CONFIG_NETFILTER_XT_MATCH_DSCP) += xt_dscp.o
obj-$(CONFIG_NETFILTER_XT_MATCH_ECN) += xt_ecn.o
obj-$(CONFIG_NETFILTER_XT_MATCH_ESP) += xt_esp.o
@@ -127986,10 +127131,10 @@ index 70d026d..c400590 100644
obj-$(CONFIG_NETFILTER_XT_MATCH_HELPER) += xt_helper.o
obj-$(CONFIG_NETFILTER_XT_MATCH_HL) += xt_hl.o
diff --git a/net/netfilter/ipset/ip_set_core.c b/net/netfilter/ipset/ip_set_core.c
-index 338b404..e8f3207 100644
+index 54f3d7c..fba57f5 100644
--- a/net/netfilter/ipset/ip_set_core.c
+++ b/net/netfilter/ipset/ip_set_core.c
-@@ -1423,7 +1423,7 @@ ip_set_dump(struct sock *ctnl, struct sk_buff *skb,
+@@ -1422,7 +1422,7 @@ ip_set_dump(struct sock *ctnl, struct sk_buff *skb,
return -IPSET_ERR_PROTOCOL;
{
@@ -127998,7 +127143,7 @@ index 338b404..e8f3207 100644
.dump = ip_set_dump_start,
.done = ip_set_dump_done,
};
-@@ -1998,7 +1998,7 @@ done:
+@@ -1997,7 +1997,7 @@ done:
return ret;
}
@@ -128008,10 +127153,10 @@ index 338b404..e8f3207 100644
.get_optmin = SO_IP_SET,
.get_optmax = SO_IP_SET + 1,
diff --git a/net/netfilter/ipvs/ip_vs_conn.c b/net/netfilter/ipvs/ip_vs_conn.c
-index b0f7b62..0541842 100644
+index 85ca189..871f064 100644
--- a/net/netfilter/ipvs/ip_vs_conn.c
+++ b/net/netfilter/ipvs/ip_vs_conn.c
-@@ -572,7 +572,7 @@ ip_vs_bind_dest(struct ip_vs_conn *cp, struct ip_vs_dest *dest)
+@@ -574,7 +574,7 @@ ip_vs_bind_dest(struct ip_vs_conn *cp, struct ip_vs_dest *dest)
/* Increase the refcnt counter of the dest */
ip_vs_dest_hold(dest);
@@ -128020,7 +127165,7 @@ index b0f7b62..0541842 100644
if (cp->protocol != IPPROTO_UDP)
conn_flags &= ~IP_VS_CONN_F_ONE_PACKET;
flags = cp->flags;
-@@ -922,7 +922,7 @@ ip_vs_conn_new(const struct ip_vs_conn_param *p, int dest_af,
+@@ -923,7 +923,7 @@ ip_vs_conn_new(const struct ip_vs_conn_param *p, int dest_af,
cp->control = NULL;
atomic_set(&cp->n_control, 0);
@@ -128029,7 +127174,7 @@ index b0f7b62..0541842 100644
cp->packet_xmit = NULL;
cp->app = NULL;
-@@ -1229,7 +1229,7 @@ static inline int todrop_entry(struct ip_vs_conn *cp)
+@@ -1230,7 +1230,7 @@ static inline int todrop_entry(struct ip_vs_conn *cp)
/* Don't drop the entry if its number of incoming packets is not
located in [0, 8] */
@@ -128039,10 +127184,10 @@ index b0f7b62..0541842 100644
if (!todrop_rate[i]) return 0;
diff --git a/net/netfilter/ipvs/ip_vs_core.c b/net/netfilter/ipvs/ip_vs_core.c
-index 38fbc19..4272cb4 100644
+index f57b4dc..8cba121 100644
--- a/net/netfilter/ipvs/ip_vs_core.c
+++ b/net/netfilter/ipvs/ip_vs_core.c
-@@ -586,7 +586,7 @@ int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb,
+@@ -611,7 +611,7 @@ int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb,
ret = cp->packet_xmit(skb, cp, pd->pp, iph);
/* do not touch skb anymore */
@@ -128051,7 +127196,7 @@ index 38fbc19..4272cb4 100644
ip_vs_conn_put(cp);
return ret;
}
-@@ -1762,7 +1762,7 @@ ip_vs_in(unsigned int hooknum, struct sk_buff *skb, int af)
+@@ -1813,7 +1813,7 @@ ip_vs_in(struct netns_ipvs *ipvs, unsigned int hooknum, struct sk_buff *skb, int
if (cp->flags & IP_VS_CONN_F_ONE_PACKET)
pkts = sysctl_sync_threshold(ipvs);
else
@@ -128059,12 +127204,12 @@ index 38fbc19..4272cb4 100644
+ pkts = atomic_add_return_unchecked(1, &cp->in_pkts);
if (ipvs->sync_state & IP_VS_STATE_MASTER)
- ip_vs_sync_conn(net, cp, pkts);
+ ip_vs_sync_conn(ipvs, cp, pkts);
diff --git a/net/netfilter/ipvs/ip_vs_ctl.c b/net/netfilter/ipvs/ip_vs_ctl.c
-index 1a23e91..2c9dcf8 100644
+index e7c1b05..81b2474 100644
--- a/net/netfilter/ipvs/ip_vs_ctl.c
+++ b/net/netfilter/ipvs/ip_vs_ctl.c
-@@ -814,7 +814,7 @@ __ip_vs_update_dest(struct ip_vs_service *svc, struct ip_vs_dest *dest,
+@@ -811,7 +811,7 @@ __ip_vs_update_dest(struct ip_vs_service *svc, struct ip_vs_dest *dest,
*/
ip_vs_rs_hash(ipvs, dest);
}
@@ -128073,7 +127218,7 @@ index 1a23e91..2c9dcf8 100644
/* bind the service */
old_svc = rcu_dereference_protected(dest->svc, 1);
-@@ -1694,7 +1694,7 @@ proc_do_sync_ports(struct ctl_table *table, int write,
+@@ -1687,7 +1687,7 @@ proc_do_sync_ports(struct ctl_table *table, int write,
* align with netns init in ip_vs_control_net_init()
*/
@@ -128082,7 +127227,7 @@ index 1a23e91..2c9dcf8 100644
{
.procname = "amemthresh",
.maxlen = sizeof(int),
-@@ -2036,7 +2036,7 @@ static int ip_vs_info_seq_show(struct seq_file *seq, void *v)
+@@ -2042,7 +2042,7 @@ static int ip_vs_info_seq_show(struct seq_file *seq, void *v)
" %-7s %-6d %-10d %-10d\n",
&dest->addr.in6,
ntohs(dest->port),
@@ -128091,7 +127236,7 @@ index 1a23e91..2c9dcf8 100644
atomic_read(&dest->weight),
atomic_read(&dest->activeconns),
atomic_read(&dest->inactconns));
-@@ -2047,7 +2047,7 @@ static int ip_vs_info_seq_show(struct seq_file *seq, void *v)
+@@ -2053,7 +2053,7 @@ static int ip_vs_info_seq_show(struct seq_file *seq, void *v)
"%-7s %-6d %-10d %-10d\n",
ntohl(dest->addr.ip),
ntohs(dest->port),
@@ -128100,7 +127245,7 @@ index 1a23e91..2c9dcf8 100644
atomic_read(&dest->weight),
atomic_read(&dest->activeconns),
atomic_read(&dest->inactconns));
-@@ -2556,7 +2556,7 @@ __ip_vs_get_dest_entries(struct net *net, const struct ip_vs_get_dests *get,
+@@ -2562,7 +2562,7 @@ __ip_vs_get_dest_entries(struct netns_ipvs *ipvs, const struct ip_vs_get_dests *
entry.addr = dest->addr.ip;
entry.port = dest->port;
@@ -128109,7 +127254,7 @@ index 1a23e91..2c9dcf8 100644
entry.weight = atomic_read(&dest->weight);
entry.u_threshold = dest->u_threshold;
entry.l_threshold = dest->l_threshold;
-@@ -3136,7 +3136,7 @@ static int ip_vs_genl_fill_dest(struct sk_buff *skb, struct ip_vs_dest *dest)
+@@ -3143,7 +3143,7 @@ static int ip_vs_genl_fill_dest(struct sk_buff *skb, struct ip_vs_dest *dest)
if (nla_put(skb, IPVS_DEST_ATTR_ADDR, sizeof(dest->addr), &dest->addr) ||
nla_put_be16(skb, IPVS_DEST_ATTR_PORT, dest->port) ||
nla_put_u32(skb, IPVS_DEST_ATTR_FWD_METHOD,
@@ -128118,17 +127263,17 @@ index 1a23e91..2c9dcf8 100644
IP_VS_CONN_F_FWD_MASK)) ||
nla_put_u32(skb, IPVS_DEST_ATTR_WEIGHT,
atomic_read(&dest->weight)) ||
-@@ -3836,7 +3836,7 @@ static int __net_init ip_vs_control_net_init_sysctl(struct net *net)
+@@ -3840,7 +3840,7 @@ static int __net_init ip_vs_control_net_init_sysctl(struct netns_ipvs *ipvs)
{
+ struct net *net = ipvs->net;
int idx;
- struct netns_ipvs *ipvs = net_ipvs(net);
- struct ctl_table *tbl;
+ ctl_table_no_const *tbl;
atomic_set(&ipvs->dropentry, 0);
spin_lock_init(&ipvs->dropentry_lock);
diff --git a/net/netfilter/ipvs/ip_vs_lblc.c b/net/netfilter/ipvs/ip_vs_lblc.c
-index 127f140..553d652 100644
+index cccf4d6..8d60399 100644
--- a/net/netfilter/ipvs/ip_vs_lblc.c
+++ b/net/netfilter/ipvs/ip_vs_lblc.c
@@ -118,7 +118,7 @@ struct ip_vs_lblc_table {
@@ -128141,7 +127286,7 @@ index 127f140..553d652 100644
.procname = "lblc_expiration",
.data = NULL,
diff --git a/net/netfilter/ipvs/ip_vs_lblcr.c b/net/netfilter/ipvs/ip_vs_lblcr.c
-index 2229d2d..b32b785 100644
+index 796d70e..8458955 100644
--- a/net/netfilter/ipvs/ip_vs_lblcr.c
+++ b/net/netfilter/ipvs/ip_vs_lblcr.c
@@ -289,7 +289,7 @@ struct ip_vs_lblcr_table {
@@ -128154,10 +127299,10 @@ index 2229d2d..b32b785 100644
.procname = "lblcr_expiration",
.data = NULL,
diff --git a/net/netfilter/ipvs/ip_vs_sync.c b/net/netfilter/ipvs/ip_vs_sync.c
-index 43f1409..4959846 100644
+index 803001a..09fb00d 100644
--- a/net/netfilter/ipvs/ip_vs_sync.c
+++ b/net/netfilter/ipvs/ip_vs_sync.c
-@@ -612,7 +612,7 @@ static void ip_vs_sync_conn_v0(struct net *net, struct ip_vs_conn *cp,
+@@ -611,7 +611,7 @@ static void ip_vs_sync_conn_v0(struct netns_ipvs *ipvs, struct ip_vs_conn *cp,
cp = cp->control;
if (cp) {
if (cp->flags & IP_VS_CONN_F_TEMPLATE)
@@ -128165,8 +127310,8 @@ index 43f1409..4959846 100644
+ pkts = atomic_add_return_unchecked(1, &cp->in_pkts);
else
pkts = sysctl_sync_threshold(ipvs);
- ip_vs_sync_conn(net, cp, pkts);
-@@ -774,7 +774,7 @@ control:
+ ip_vs_sync_conn(ipvs, cp, pkts);
+@@ -772,7 +772,7 @@ control:
if (!cp)
return;
if (cp->flags & IP_VS_CONN_F_TEMPLATE)
@@ -128175,7 +127320,7 @@ index 43f1409..4959846 100644
else
pkts = sysctl_sync_threshold(ipvs);
goto sloop;
-@@ -922,7 +922,7 @@ static void ip_vs_proc_conn(struct net *net, struct ip_vs_conn_param *param,
+@@ -919,7 +919,7 @@ static void ip_vs_proc_conn(struct netns_ipvs *ipvs, struct ip_vs_conn_param *pa
if (opt)
memcpy(&cp->in_seq, opt, sizeof(*opt));
@@ -128185,10 +127330,10 @@ index 43f1409..4959846 100644
cp->old_state = cp->state;
/*
diff --git a/net/netfilter/ipvs/ip_vs_xmit.c b/net/netfilter/ipvs/ip_vs_xmit.c
-index 258a0b0..2082f50 100644
+index 3264cb49..6e06523 100644
--- a/net/netfilter/ipvs/ip_vs_xmit.c
+++ b/net/netfilter/ipvs/ip_vs_xmit.c
-@@ -1259,7 +1259,7 @@ ip_vs_icmp_xmit(struct sk_buff *skb, struct ip_vs_conn *cp,
+@@ -1268,7 +1268,7 @@ ip_vs_icmp_xmit(struct sk_buff *skb, struct ip_vs_conn *cp,
else
rc = NF_ACCEPT;
/* do not touch skb anymore */
@@ -128197,7 +127342,7 @@ index 258a0b0..2082f50 100644
goto out;
}
-@@ -1352,7 +1352,7 @@ ip_vs_icmp_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp,
+@@ -1361,7 +1361,7 @@ ip_vs_icmp_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp,
else
rc = NF_ACCEPT;
/* do not touch skb anymore */
@@ -128220,7 +127365,7 @@ index 45da11a..ef3e5dc 100644
table = kmemdup(acct_sysctl_table, sizeof(acct_sysctl_table),
GFP_KERNEL);
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c
-index c09d6c7..290e086 100644
+index 3cb3cb8..c9fcad80 100644
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
@@ -66,6 +66,21 @@ EXPORT_SYMBOL_GPL(nf_conntrack_locks);
@@ -128288,7 +127433,7 @@ index c09d6c7..290e086 100644
}
unsigned int nf_conntrack_htable_size __read_mostly;
-@@ -755,7 +773,7 @@ restart:
+@@ -757,7 +775,7 @@ restart:
hash = hash_bucket(_hash, net);
for (; i < net->ct.htable_size; i++) {
lockp = &nf_conntrack_locks[hash % CONNTRACK_LOCKS];
@@ -128297,7 +127442,7 @@ index c09d6c7..290e086 100644
if (read_seqcount_retry(&net->ct.generation, sequence)) {
spin_unlock(lockp);
goto restart;
-@@ -1376,7 +1394,7 @@ get_next_corpse(struct net *net, int (*iter)(struct nf_conn *i, void *data),
+@@ -1382,7 +1400,7 @@ get_next_corpse(struct net *net, int (*iter)(struct nf_conn *i, void *data),
for (; *bucket < net->ct.htable_size; (*bucket)++) {
lockp = &nf_conntrack_locks[*bucket % CONNTRACK_LOCKS];
local_bh_disable();
@@ -128306,7 +127451,7 @@ index c09d6c7..290e086 100644
if (*bucket < net->ct.htable_size) {
hlist_nulls_for_each_entry(h, n, &net->ct.hash[*bucket], hnnode) {
if (NF_CT_DIRECTION(h) != IP_CT_DIR_ORIGINAL)
-@@ -1749,6 +1767,10 @@ void nf_conntrack_init_end(void)
+@@ -1755,6 +1773,10 @@ void nf_conntrack_init_end(void)
#define DYING_NULLS_VAL ((1<<30)+1)
#define TEMPLATE_NULLS_VAL ((1<<30)+2)
@@ -128317,7 +127462,7 @@ index c09d6c7..290e086 100644
int nf_conntrack_init_net(struct net *net)
{
int ret = -ENOMEM;
-@@ -1773,7 +1795,11 @@ int nf_conntrack_init_net(struct net *net)
+@@ -1779,7 +1801,11 @@ int nf_conntrack_init_net(struct net *net)
if (!net->ct.stat)
goto err_pcpu_lists;
@@ -128365,7 +127510,7 @@ index bd9d315..fbd2fb7 100644
hlist_nulls_for_each_entry(h, nn, &net->ct.hash[i], hnnode)
unhelp(h, me);
diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c
-index 94a6654..fcb8d3f 100644
+index 9f52729..7e7a2c6 100644
--- a/net/netfilter/nf_conntrack_netlink.c
+++ b/net/netfilter/nf_conntrack_netlink.c
@@ -840,7 +840,7 @@ ctnetlink_dump_table(struct sk_buff *skb, struct netlink_callback *cb)
@@ -128429,7 +127574,7 @@ index 94a6654..fcb8d3f 100644
.dump = ctnetlink_ct_stat_cpu_dump,
};
return netlink_dump_start(ctnl, skb, nlh, &c);
-@@ -2695,7 +2696,7 @@ static int ctnetlink_dump_exp_ct(struct sock *ctnl, struct sk_buff *skb,
+@@ -2741,7 +2742,7 @@ static int ctnetlink_dump_exp_ct(struct sock *ctnl, struct sk_buff *skb,
struct nf_conntrack_tuple_hash *h;
struct nf_conn *ct;
struct nf_conntrack_zone zone;
@@ -128438,7 +127583,7 @@ index 94a6654..fcb8d3f 100644
.dump = ctnetlink_exp_ct_dump_table,
.done = ctnetlink_exp_done,
};
-@@ -2714,9 +2715,8 @@ static int ctnetlink_dump_exp_ct(struct sock *ctnl, struct sk_buff *skb,
+@@ -2760,9 +2761,8 @@ static int ctnetlink_dump_exp_ct(struct sock *ctnl, struct sk_buff *skb,
return -ENOENT;
ct = nf_ct_tuplehash_to_ctrack(h);
@@ -128449,7 +127594,7 @@ index 94a6654..fcb8d3f 100644
nf_ct_put(ct);
return err;
-@@ -2740,7 +2740,7 @@ ctnetlink_get_expect(struct sock *ctnl, struct sk_buff *skb,
+@@ -2786,7 +2786,7 @@ ctnetlink_get_expect(struct sock *ctnl, struct sk_buff *skb,
if (cda[CTA_EXPECT_MASTER])
return ctnetlink_dump_exp_ct(ctnl, skb, nlh, cda);
else {
@@ -128458,7 +127603,7 @@ index 94a6654..fcb8d3f 100644
.dump = ctnetlink_exp_dump_table,
.done = ctnetlink_exp_done,
};
-@@ -3202,7 +3202,7 @@ ctnetlink_stat_exp_cpu(struct sock *ctnl, struct sk_buff *skb,
+@@ -3248,7 +3248,7 @@ ctnetlink_stat_exp_cpu(struct sock *ctnl, struct sk_buff *skb,
const struct nlattr * const cda[])
{
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -128561,10 +127706,10 @@ index c68c1e5..8b5d670 100644
}
EXPORT_SYMBOL(nf_unregister_sockopt);
diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c
-index 4a41eb9..324584b 100644
+index 2cb429d..77adda0 100644
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
-@@ -554,7 +554,7 @@ static int nf_tables_gettable(struct sock *nlsk, struct sk_buff *skb,
+@@ -555,7 +555,7 @@ static int nf_tables_gettable(struct sock *nlsk, struct sk_buff *skb,
int err;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -128573,7 +127718,7 @@ index 4a41eb9..324584b 100644
.dump = nf_tables_dump_tables,
};
return netlink_dump_start(nlsk, skb, nlh, &c);
-@@ -1113,7 +1113,7 @@ static int nf_tables_getchain(struct sock *nlsk, struct sk_buff *skb,
+@@ -1112,7 +1112,7 @@ static int nf_tables_getchain(struct sock *nlsk, struct sk_buff *skb,
int err;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -128582,7 +127727,7 @@ index 4a41eb9..324584b 100644
.dump = nf_tables_dump_chains,
};
return netlink_dump_start(nlsk, skb, nlh, &c);
-@@ -1947,7 +1947,7 @@ static int nf_tables_getrule(struct sock *nlsk, struct sk_buff *skb,
+@@ -1943,7 +1943,7 @@ static int nf_tables_getrule(struct sock *nlsk, struct sk_buff *skb,
int err;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -128591,7 +127736,7 @@ index 4a41eb9..324584b 100644
.dump = nf_tables_dump_rules,
};
return netlink_dump_start(nlsk, skb, nlh, &c);
-@@ -2636,7 +2636,7 @@ static int nf_tables_getset(struct sock *nlsk, struct sk_buff *skb,
+@@ -2630,7 +2630,7 @@ static int nf_tables_getset(struct sock *nlsk, struct sk_buff *skb,
return err;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -128600,7 +127745,7 @@ index 4a41eb9..324584b 100644
.dump = nf_tables_dump_sets,
.done = nf_tables_dump_sets_done,
};
-@@ -2647,9 +2647,8 @@ static int nf_tables_getset(struct sock *nlsk, struct sk_buff *skb,
+@@ -2641,9 +2641,8 @@ static int nf_tables_getset(struct sock *nlsk, struct sk_buff *skb,
return -ENOMEM;
*ctx_dump = ctx;
@@ -128611,7 +127756,7 @@ index 4a41eb9..324584b 100644
}
/* Only accept unspec with dump */
-@@ -3228,7 +3227,7 @@ static int nf_tables_getsetelem(struct sock *nlsk, struct sk_buff *skb,
+@@ -3222,7 +3221,7 @@ static int nf_tables_getsetelem(struct sock *nlsk, struct sk_buff *skb,
return -ENOENT;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -128663,7 +127808,7 @@ index 54330fb..77d3fb1 100644
};
return netlink_dump_start(nfnl, skb, nlh, &c);
diff --git a/net/netfilter/nfnetlink_cttimeout.c b/net/netfilter/nfnetlink_cttimeout.c
-index 476accd..4f3dc0a 100644
+index c7a2d0e..272225e 100644
--- a/net/netfilter/nfnetlink_cttimeout.c
+++ b/net/netfilter/nfnetlink_cttimeout.c
@@ -250,7 +250,7 @@ cttimeout_get_timeout(struct sock *ctnl, struct sk_buff *skb,
@@ -128676,10 +127821,10 @@ index 476accd..4f3dc0a 100644
};
return netlink_dump_start(ctnl, skb, nlh, &c);
diff --git a/net/netfilter/nfnetlink_log.c b/net/netfilter/nfnetlink_log.c
-index 4670821..a6c3c47d 100644
+index 740cce4..4672d73 100644
--- a/net/netfilter/nfnetlink_log.c
+++ b/net/netfilter/nfnetlink_log.c
-@@ -84,7 +84,7 @@ static int nfnl_log_net_id __read_mostly;
+@@ -85,7 +85,7 @@ static int nfnl_log_net_id __read_mostly;
struct nfnl_log_net {
spinlock_t instances_lock;
struct hlist_head instance_table[INSTANCE_BUCKETS];
@@ -128688,7 +127833,7 @@ index 4670821..a6c3c47d 100644
};
static struct nfnl_log_net *nfnl_log_pernet(struct net *net)
-@@ -572,7 +572,7 @@ __build_packet_message(struct nfnl_log_net *log,
+@@ -575,7 +575,7 @@ __build_packet_message(struct nfnl_log_net *log,
/* global sequence number */
if ((inst->flags & NFULNL_CFG_F_SEQ_GLOBAL) &&
nla_put_be32(inst->skb, NFULA_SEQ_GLOBAL,
@@ -128696,7 +127841,7 @@ index 4670821..a6c3c47d 100644
+ htonl(atomic_inc_return_unchecked(&log->global_seq))))
goto nla_put_failure;
- if (data_len) {
+ if (ct && nfnl_ct->build(inst->skb, ct, ctinfo,
diff --git a/net/netfilter/nft_compat.c b/net/netfilter/nft_compat.c
index 9c8fab0..5080c7c 100644
--- a/net/netfilter/nft_compat.c
@@ -128793,7 +127938,7 @@ index 1786968..1ec6dac 100644
remove_proc_entry("ipt_hashlimit", net->proc_net);
return -ENOMEM;
diff --git a/net/netfilter/xt_recent.c b/net/netfilter/xt_recent.c
-index 45e1b30..a764f94 100644
+index d725a27..14b0c51 100644
--- a/net/netfilter/xt_recent.c
+++ b/net/netfilter/xt_recent.c
@@ -642,7 +642,7 @@ static int __net_init recent_proc_net_init(struct net *net)
@@ -128840,7 +127985,7 @@ index 11de55e..f25e448 100644
return 0;
}
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
-index fafe33b..699ee5f 100644
+index 59651af..45b9a6e 100644
--- a/net/netlink/af_netlink.c
+++ b/net/netlink/af_netlink.c
@@ -287,7 +287,7 @@ static void netlink_overrun(struct sock *sk)
@@ -128906,7 +128051,7 @@ index 3ee63a3cf..d6df4d8 100644
};
return netlink_dump_start(net->diag_nlsk, skb, h, &c);
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c
-index 2ed5f96..5c86d30 100644
+index bc0e504..9a71c81 100644
--- a/net/netlink/genetlink.c
+++ b/net/netlink/genetlink.c
@@ -573,26 +573,24 @@ static int genl_family_rcv_msg(struct genl_family *family,
@@ -128943,10 +128088,10 @@ index 2ed5f96..5c86d30 100644
return rc;
diff --git a/net/openvswitch/actions.c b/net/openvswitch/actions.c
-index dba635d..0d2884b 100644
+index c88d0f2..2d59df5 100644
--- a/net/openvswitch/actions.c
+++ b/net/openvswitch/actions.c
-@@ -1159,17 +1159,26 @@ int ovs_execute_actions(struct datapath *dp, struct sk_buff *skb,
+@@ -1160,17 +1160,26 @@ int ovs_execute_actions(struct datapath *dp, struct sk_buff *skb,
const struct sw_flow_actions *acts,
struct sw_flow_key *key)
{
@@ -128979,7 +128124,7 @@ index dba635d..0d2884b 100644
}
diff --git a/net/openvswitch/vport-internal_dev.c b/net/openvswitch/vport-internal_dev.c
-index b393412..3b2f7eb 100644
+index ec76398..52091dd 100644
--- a/net/openvswitch/vport-internal_dev.c
+++ b/net/openvswitch/vport-internal_dev.c
@@ -147,7 +147,7 @@ static const struct net_device_ops internal_dev_netdev_ops = {
@@ -128992,7 +128137,7 @@ index b393412..3b2f7eb 100644
};
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
-index 4695a36..95471f0 100644
+index 992396a..9269534 100644
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -278,7 +278,7 @@ static int packet_direct_xmit(struct sk_buff *skb)
@@ -129047,7 +128192,7 @@ index 4695a36..95471f0 100644
spin_unlock(&sk->sk_receive_queue.lock);
drop_n_restore:
-@@ -3762,7 +3762,7 @@ static int packet_getsockopt(struct socket *sock, int level, int optname,
+@@ -3770,7 +3770,7 @@ static int packet_getsockopt(struct socket *sock, int level, int optname,
case PACKET_HDRLEN:
if (len > sizeof(int))
len = sizeof(int);
@@ -129056,7 +128201,7 @@ index 4695a36..95471f0 100644
return -EFAULT;
switch (val) {
case TPACKET_V1:
-@@ -3797,9 +3797,9 @@ static int packet_getsockopt(struct socket *sock, int level, int optname,
+@@ -3805,9 +3805,9 @@ static int packet_getsockopt(struct socket *sock, int level, int optname,
case PACKET_ROLLOVER_STATS:
if (!po->rollover)
return -EINVAL;
@@ -129069,7 +128214,7 @@ index 4695a36..95471f0 100644
data = &rstats;
lv = sizeof(rstats);
break;
-@@ -3817,7 +3817,7 @@ static int packet_getsockopt(struct socket *sock, int level, int optname,
+@@ -3825,7 +3825,7 @@ static int packet_getsockopt(struct socket *sock, int level, int optname,
len = lv;
if (put_user(len, optlen))
return -EFAULT;
@@ -129197,10 +128342,10 @@ index e6144b8..4f9fda6 100644
if (likely(*recent == gen))
return 0;
diff --git a/net/rds/ib.h b/net/rds/ib.h
-index aae60fd..aba6db3 100644
+index b3fdebb..43e973b 100644
--- a/net/rds/ib.h
+++ b/net/rds/ib.h
-@@ -127,7 +127,7 @@ struct rds_ib_connection {
+@@ -156,7 +156,7 @@ struct rds_ib_connection {
/* sending acks */
unsigned long i_ack_flags;
#ifdef KERNEL_HAS_ATOMIC64
@@ -129210,10 +128355,10 @@ index aae60fd..aba6db3 100644
spinlock_t i_ack_lock; /* protect i_ack_next */
u64 i_ack_next; /* next ACK to send */
diff --git a/net/rds/ib_cm.c b/net/rds/ib_cm.c
-index 9043f5c..a9b6127 100644
+index da5a7fb..1095491 100644
--- a/net/rds/ib_cm.c
+++ b/net/rds/ib_cm.c
-@@ -701,7 +701,7 @@ void rds_ib_conn_shutdown(struct rds_connection *conn)
+@@ -805,7 +805,7 @@ void rds_ib_conn_shutdown(struct rds_connection *conn)
/* Clear the ACK state */
clear_bit(IB_ACK_IN_FLIGHT, &ic->i_ack_flags);
#ifdef KERNEL_HAS_ATOMIC64
@@ -129223,19 +128368,19 @@ index 9043f5c..a9b6127 100644
ic->i_ack_next = 0;
#endif
diff --git a/net/rds/ib_recv.c b/net/rds/ib_recv.c
-index f43831e..4e09c4c 100644
+index 977fb86..0d10a97 100644
--- a/net/rds/ib_recv.c
+++ b/net/rds/ib_recv.c
-@@ -625,7 +625,7 @@ static u64 rds_ib_get_ack(struct rds_ib_connection *ic)
- static void rds_ib_set_ack(struct rds_ib_connection *ic, u64 seq,
- int ack_required)
+@@ -623,7 +623,7 @@ static u64 rds_ib_get_ack(struct rds_ib_connection *ic)
+ #else
+ void rds_ib_set_ack(struct rds_ib_connection *ic, u64 seq, int ack_required)
{
- atomic64_set(&ic->i_ack_next, seq);
+ atomic64_set_unchecked(&ic->i_ack_next, seq);
if (ack_required) {
smp_mb__before_atomic();
set_bit(IB_ACK_REQUESTED, &ic->i_ack_flags);
-@@ -637,7 +637,7 @@ static u64 rds_ib_get_ack(struct rds_ib_connection *ic)
+@@ -635,7 +635,7 @@ static u64 rds_ib_get_ack(struct rds_ib_connection *ic)
clear_bit(IB_ACK_REQUESTED, &ic->i_ack_flags);
smp_mb__after_atomic();
@@ -129245,10 +128390,10 @@ index f43831e..4e09c4c 100644
#endif
diff --git a/net/rds/iw.h b/net/rds/iw.h
-index cbe6674..dc9eb89 100644
+index 5af01d1..29d5f61 100644
--- a/net/rds/iw.h
+++ b/net/rds/iw.h
-@@ -134,7 +134,7 @@ struct rds_iw_connection {
+@@ -137,7 +137,7 @@ struct rds_iw_connection {
/* sending acks */
unsigned long i_ack_flags;
#ifdef KERNEL_HAS_ATOMIC64
@@ -129258,7 +128403,7 @@ index cbe6674..dc9eb89 100644
spinlock_t i_ack_lock; /* protect i_ack_next */
u64 i_ack_next; /* next ACK to send */
diff --git a/net/rds/iw_cm.c b/net/rds/iw_cm.c
-index a6553a6..a6c6f87 100644
+index aea4c91..716ba52 100644
--- a/net/rds/iw_cm.c
+++ b/net/rds/iw_cm.c
@@ -667,7 +667,7 @@ void rds_iw_conn_shutdown(struct rds_connection *conn)
@@ -129293,10 +128438,10 @@ index a66d179..cf1e258 100644
#endif
diff --git a/net/rds/rds.h b/net/rds/rds.h
-index afb4048..daac0e0 100644
+index 0e2797b..a4a38ff 100644
--- a/net/rds/rds.h
+++ b/net/rds/rds.h
-@@ -460,7 +460,7 @@ struct rds_transport {
+@@ -463,7 +463,7 @@ struct rds_transport {
void (*sync_mr)(void *trans_private, int direction);
void (*free_mr)(void *trans_private, int invalidate);
void (*flush_mrs)(void);
@@ -129306,7 +128451,7 @@ index afb4048..daac0e0 100644
struct rds_sock {
struct sock rs_sk;
diff --git a/net/rds/tcp.c b/net/rds/tcp.c
-index c42b60b..edad120 100644
+index 9d6ddba..da3cd96 100644
--- a/net/rds/tcp.c
+++ b/net/rds/tcp.c
@@ -62,7 +62,7 @@ void rds_tcp_nonagle(struct socket *sock)
@@ -129319,7 +128464,7 @@ index c42b60b..edad120 100644
set_fs(oldfs);
}
diff --git a/net/rds/tcp_send.c b/net/rds/tcp_send.c
-index 53b17ca..45463e7 100644
+index 2894e60..f9c01ac 100644
--- a/net/rds/tcp_send.c
+++ b/net/rds/tcp_send.c
@@ -43,7 +43,7 @@ static void rds_tcp_cork(struct socket *sock, int val)
@@ -129332,7 +128477,7 @@ index 53b17ca..45463e7 100644
set_fs(oldfs);
}
diff --git a/net/rxrpc/af_rxrpc.c b/net/rxrpc/af_rxrpc.c
-index 25d60ed..ec9ae2c 100644
+index 1f8a144..2c93350 100644
--- a/net/rxrpc/af_rxrpc.c
+++ b/net/rxrpc/af_rxrpc.c
@@ -40,7 +40,7 @@ static const struct proto_ops rxrpc_rpc_ops;
@@ -129345,7 +128490,7 @@ index 25d60ed..ec9ae2c 100644
/* count of skbs currently in use */
atomic_t rxrpc_n_skbs;
diff --git a/net/rxrpc/ar-ack.c b/net/rxrpc/ar-ack.c
-index e0547f5..a171f7a 100644
+index adc555e..abb87bf 100644
--- a/net/rxrpc/ar-ack.c
+++ b/net/rxrpc/ar-ack.c
@@ -224,7 +224,7 @@ static void rxrpc_resend(struct rxrpc_call *call)
@@ -129384,7 +128529,7 @@ index e0547f5..a171f7a 100644
_proto("Rx ACK %%%u { m=%hu f=#%u p=#%u s=%%%u r=%s n=%u }",
latest,
-@@ -1210,7 +1210,7 @@ void rxrpc_process_call(struct work_struct *work)
+@@ -1212,7 +1212,7 @@ void rxrpc_process_call(struct work_struct *work)
goto maybe_reschedule;
send_ACK_with_skew:
@@ -129393,7 +128538,7 @@ index e0547f5..a171f7a 100644
ntohl(ack.serial));
send_ACK:
mtu = call->conn->trans->peer->if_mtu;
-@@ -1222,7 +1222,7 @@ send_ACK:
+@@ -1224,7 +1224,7 @@ send_ACK:
ackinfo.rxMTU = htonl(rxrpc_rx_mtu);
ackinfo.jumbo_max = htonl(rxrpc_rx_jumbo_max);
@@ -129402,7 +128547,7 @@ index e0547f5..a171f7a 100644
_proto("Tx ACK %%%u { m=%hu f=#%u p=#%u s=%%%u r=%s n=%u }",
ntohl(hdr.serial),
ntohs(ack.maxSkew),
-@@ -1240,7 +1240,7 @@ send_ACK:
+@@ -1242,7 +1242,7 @@ send_ACK:
send_message:
_debug("send message");
@@ -129425,7 +128570,7 @@ index a9e05db..194e793 100644
memset(&call->sock_node, 0xed, sizeof(call->sock_node));
diff --git a/net/rxrpc/ar-connection.c b/net/rxrpc/ar-connection.c
-index 6631f4f..bfdf056 100644
+index 6c71ed1..2e59425 100644
--- a/net/rxrpc/ar-connection.c
+++ b/net/rxrpc/ar-connection.c
@@ -210,7 +210,7 @@ static struct rxrpc_connection *rxrpc_alloc_connection(gfp_t gfp)
@@ -129467,7 +128612,7 @@ index 4505a69..fe73096 100644
/* request ACK generation for any ACK or DATA packet that requests
diff --git a/net/rxrpc/ar-internal.h b/net/rxrpc/ar-internal.h
-index aef1bd2..97736c3 100644
+index 2934a73..a0091f5 100644
--- a/net/rxrpc/ar-internal.h
+++ b/net/rxrpc/ar-internal.h
@@ -274,8 +274,8 @@ struct rxrpc_connection {
@@ -129513,7 +128658,7 @@ index 78483b4..b1c0e1e 100644
}
diff --git a/net/rxrpc/ar-output.c b/net/rxrpc/ar-output.c
-index c004280..ab1ed5a 100644
+index 14c4e12..971ba8b 100644
--- a/net/rxrpc/ar-output.c
+++ b/net/rxrpc/ar-output.c
@@ -648,14 +648,14 @@ static int rxrpc_send_data(struct rxrpc_sock *rx,
@@ -129562,7 +128707,7 @@ index 38047f7..9f48511 100644
return 0;
}
diff --git a/net/rxrpc/ar-transport.c b/net/rxrpc/ar-transport.c
-index 1976dec..aa70be5 100644
+index 9946467..9dfbccb 100644
--- a/net/rxrpc/ar-transport.c
+++ b/net/rxrpc/ar-transport.c
@@ -51,7 +51,7 @@ static struct rxrpc_transport *rxrpc_alloc_transport(struct rxrpc_local *local,
@@ -129575,7 +128720,7 @@ index 1976dec..aa70be5 100644
if (peer->srx.transport.family == AF_INET) {
switch (peer->srx.transport_type) {
diff --git a/net/rxrpc/rxkad.c b/net/rxrpc/rxkad.c
-index f226709..0e735a8 100644
+index d7a9ab5..3b6d126 100644
--- a/net/rxrpc/rxkad.c
+++ b/net/rxrpc/rxkad.c
@@ -610,7 +610,7 @@ static int rxkad_issue_challenge(struct rxrpc_connection *conn)
@@ -129619,10 +128764,10 @@ index 16bc83b..a7df216b 100644
}
}
diff --git a/net/sctp/ipv6.c b/net/sctp/ipv6.c
-index 40677cf..9656f92 100644
+index ec52912..059504b 100644
--- a/net/sctp/ipv6.c
+++ b/net/sctp/ipv6.c
-@@ -981,7 +981,7 @@ static const struct inet6_protocol sctpv6_protocol = {
+@@ -987,7 +987,7 @@ static const struct inet6_protocol sctpv6_protocol = {
.flags = INET6_PROTO_NOPOLICY | INET6_PROTO_FINAL,
};
@@ -129631,7 +128776,7 @@ index 40677cf..9656f92 100644
.sa_family = AF_INET6,
.sctp_xmit = sctp_v6_xmit,
.setsockopt = ipv6_setsockopt,
-@@ -1011,7 +1011,7 @@ static struct sctp_af sctp_af_inet6 = {
+@@ -1017,7 +1017,7 @@ static struct sctp_af sctp_af_inet6 = {
#endif
};
@@ -129640,7 +128785,7 @@ index 40677cf..9656f92 100644
.event_msgname = sctp_inet6_event_msgname,
.skb_msgname = sctp_inet6_skb_msgname,
.af_supported = sctp_inet6_af_supported,
-@@ -1038,7 +1038,7 @@ void sctp_v6_pf_init(void)
+@@ -1044,7 +1044,7 @@ void sctp_v6_pf_init(void)
void sctp_v6_pf_exit(void)
{
@@ -129756,7 +128901,7 @@ index 6098d4c..9920c54 100644
* We should no longer have much work to do here as the
* real work has been done as explicit commands above.
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c
-index c89586e..dd962f7 100644
+index 22c2bf3..f1f08c8 100644
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -2976,7 +2976,7 @@ sctp_disposition_t sctp_sf_eat_data_6_2(struct net *net,
@@ -129837,41 +128982,10 @@ index c89586e..dd962f7 100644
/*
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
-index 9dee804..7e2f09d 100644
+index ef1d90f..23b38b3 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
-@@ -972,7 +972,7 @@ static int sctp_setsockopt_bindx(struct sock *sk,
- return -EFAULT;
-
- /* Alloc space for the address array in kernel memory. */
-- kaddrs = kmalloc(addrs_size, GFP_KERNEL);
-+ kaddrs = kmalloc(addrs_size, GFP_USER | __GFP_NOWARN);
- if (unlikely(!kaddrs))
- return -ENOMEM;
-
-@@ -1301,8 +1301,9 @@ static int __sctp_setsockopt_connectx(struct sock *sk,
- int addrs_size,
- sctp_assoc_t *assoc_id)
- {
-- int err = 0;
- struct sockaddr *kaddrs;
-+ gfp_t gfp = GFP_KERNEL;
-+ int err = 0;
-
- pr_debug("%s: sk:%p addrs:%p addrs_size:%d\n",
- __func__, sk, addrs, addrs_size);
-@@ -1315,7 +1316,9 @@ static int __sctp_setsockopt_connectx(struct sock *sk,
- return -EFAULT;
-
- /* Alloc space for the address array in kernel memory. */
-- kaddrs = kmalloc(addrs_size, GFP_KERNEL);
-+ if (sk->sk_socket->file)
-+ gfp = GFP_USER | __GFP_NOWARN;
-+ kaddrs = kmalloc(addrs_size, gfp);
- if (unlikely(!kaddrs))
- return -ENOMEM;
-
-@@ -2193,11 +2196,13 @@ static int sctp_setsockopt_events(struct sock *sk, char __user *optval,
+@@ -2192,11 +2192,13 @@ static int sctp_setsockopt_events(struct sock *sk, char __user *optval,
{
struct sctp_association *asoc;
struct sctp_ulpevent *event;
@@ -129886,7 +129000,7 @@ index 9dee804..7e2f09d 100644
/* At the time when a user app subscribes to SCTP_SENDER_DRY_EVENT,
* if there is no data to be sent or retransmit, the stack will
-@@ -4372,13 +4377,16 @@ static int sctp_getsockopt_disable_fragments(struct sock *sk, int len,
+@@ -4371,13 +4373,16 @@ static int sctp_getsockopt_disable_fragments(struct sock *sk, int len,
static int sctp_getsockopt_events(struct sock *sk, int len, char __user *optval,
int __user *optlen)
{
@@ -129904,7 +129018,7 @@ index 9dee804..7e2f09d 100644
return -EFAULT;
return 0;
}
-@@ -4396,6 +4404,8 @@ static int sctp_getsockopt_events(struct sock *sk, int len, char __user *optval,
+@@ -4395,6 +4400,8 @@ static int sctp_getsockopt_events(struct sock *sk, int len, char __user *optval,
*/
static int sctp_getsockopt_autoclose(struct sock *sk, int len, char __user *optval, int __user *optlen)
{
@@ -129913,7 +129027,7 @@ index 9dee804..7e2f09d 100644
/* Applicable to UDP-style socket only */
if (sctp_style(sk, TCP))
return -EOPNOTSUPP;
-@@ -4404,7 +4414,8 @@ static int sctp_getsockopt_autoclose(struct sock *sk, int len, char __user *optv
+@@ -4403,7 +4410,8 @@ static int sctp_getsockopt_autoclose(struct sock *sk, int len, char __user *optv
len = sizeof(int);
if (put_user(len, optlen))
return -EFAULT;
@@ -129923,7 +129037,7 @@ index 9dee804..7e2f09d 100644
return -EFAULT;
return 0;
}
-@@ -4778,12 +4789,15 @@ static int sctp_getsockopt_delayed_ack(struct sock *sk, int len,
+@@ -4777,12 +4785,15 @@ static int sctp_getsockopt_delayed_ack(struct sock *sk, int len,
*/
static int sctp_getsockopt_initmsg(struct sock *sk, int len, char __user *optval, int __user *optlen)
{
@@ -129940,7 +129054,7 @@ index 9dee804..7e2f09d 100644
return -EFAULT;
return 0;
}
-@@ -4824,6 +4838,8 @@ static int sctp_getsockopt_peer_addrs(struct sock *sk, int len,
+@@ -4823,6 +4834,8 @@ static int sctp_getsockopt_peer_addrs(struct sock *sk, int len,
->addr_to_user(sp, &temp);
if (space_left < addrlen)
return -ENOMEM;
@@ -129949,24 +129063,6 @@ index 9dee804..7e2f09d 100644
if (copy_to_user(to, &temp, addrlen))
return -EFAULT;
to += addrlen;
-@@ -4927,7 +4943,7 @@ static int sctp_getsockopt_local_addrs(struct sock *sk, int len,
- to = optval + offsetof(struct sctp_getaddrs, addrs);
- space_left = len - offsetof(struct sctp_getaddrs, addrs);
-
-- addrs = kmalloc(space_left, GFP_KERNEL);
-+ addrs = kmalloc(space_left, GFP_USER | __GFP_NOWARN);
- if (!addrs)
- return -ENOMEM;
-
-@@ -5776,7 +5792,7 @@ static int sctp_getsockopt_assoc_ids(struct sock *sk, int len,
-
- len = sizeof(struct sctp_assoc_ids) + sizeof(sctp_assoc_t) * num;
-
-- ids = kmalloc(len, GFP_KERNEL);
-+ ids = kmalloc(len, GFP_USER | __GFP_NOWARN);
- if (unlikely(!ids))
- return -ENOMEM;
-
diff --git a/net/sctp/sysctl.c b/net/sctp/sysctl.c
index 3e0fc51..289fe22 100644
--- a/net/sctp/sysctl.c
@@ -130017,7 +129113,7 @@ index 3e0fc51..289fe22 100644
table = kmemdup(sctp_net_table, sizeof(sctp_net_table), GFP_KERNEL);
diff --git a/net/socket.c b/net/socket.c
-index f3fbe17..b88ff74 100644
+index d730ef9..5f02959 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -89,6 +89,7 @@
@@ -130045,7 +129141,7 @@ index f3fbe17..b88ff74 100644
/*
* Statistics counters of the socket lists
-@@ -326,7 +328,7 @@ static struct dentry *sockfs_mount(struct file_system_type *fs_type,
+@@ -327,7 +329,7 @@ static struct dentry *sockfs_mount(struct file_system_type *fs_type,
&sockfs_dentry_operations, SOCKFS_MAGIC);
}
@@ -130054,7 +129150,7 @@ index f3fbe17..b88ff74 100644
static struct file_system_type sock_fs_type = {
.name = "sockfs",
-@@ -1105,6 +1107,8 @@ int __sock_create(struct net *net, int family, int type, int protocol,
+@@ -1099,6 +1101,8 @@ int __sock_create(struct net *net, int family, int type, int protocol,
return -EAFNOSUPPORT;
if (type < 0 || type >= SOCK_MAX)
return -EINVAL;
@@ -130063,7 +129159,7 @@ index f3fbe17..b88ff74 100644
/* Compatibility.
-@@ -1125,6 +1129,20 @@ int __sock_create(struct net *net, int family, int type, int protocol,
+@@ -1119,6 +1123,20 @@ int __sock_create(struct net *net, int family, int type, int protocol,
if (err)
return err;
@@ -130084,7 +129180,7 @@ index f3fbe17..b88ff74 100644
/*
* Allocate the socket and allow the family to set things up. if
* the protocol is 0, the family is instructed to select an appropriate
-@@ -1376,6 +1394,14 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
+@@ -1370,6 +1388,14 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
if (sock) {
err = move_addr_to_kernel(umyaddr, addrlen, &address);
if (err >= 0) {
@@ -130099,7 +129195,7 @@ index f3fbe17..b88ff74 100644
err = security_socket_bind(sock,
(struct sockaddr *)&address,
addrlen);
-@@ -1384,6 +1410,7 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
+@@ -1378,6 +1404,7 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
(struct sockaddr *)
&address, addrlen);
}
@@ -130107,7 +129203,7 @@ index f3fbe17..b88ff74 100644
fput_light(sock->file, fput_needed);
}
return err;
-@@ -1407,10 +1434,20 @@ SYSCALL_DEFINE2(listen, int, fd, int, backlog)
+@@ -1401,10 +1428,20 @@ SYSCALL_DEFINE2(listen, int, fd, int, backlog)
if ((unsigned int)backlog > somaxconn)
backlog = somaxconn;
@@ -130128,7 +129224,7 @@ index f3fbe17..b88ff74 100644
fput_light(sock->file, fput_needed);
}
return err;
-@@ -1454,6 +1491,18 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
+@@ -1448,6 +1485,18 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
newsock->type = sock->type;
newsock->ops = sock->ops;
@@ -130147,7 +129243,7 @@ index f3fbe17..b88ff74 100644
/*
* We don't need try_module_get here, as the listening socket (sock)
* has the protocol module (sock->ops->owner) held.
-@@ -1499,6 +1548,8 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
+@@ -1493,6 +1542,8 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
fd_install(newfd, newfile);
err = newfd;
@@ -130156,7 +129252,7 @@ index f3fbe17..b88ff74 100644
out_put:
fput_light(sock->file, fput_needed);
out:
-@@ -1531,6 +1582,7 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
+@@ -1525,6 +1576,7 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
int, addrlen)
{
struct socket *sock;
@@ -130164,7 +129260,7 @@ index f3fbe17..b88ff74 100644
struct sockaddr_storage address;
int err, fput_needed;
-@@ -1541,6 +1593,17 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
+@@ -1535,6 +1587,17 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
if (err < 0)
goto out_put;
@@ -130182,7 +129278,7 @@ index f3fbe17..b88ff74 100644
err =
security_socket_connect(sock, (struct sockaddr *)&address, addrlen);
if (err)
-@@ -1563,7 +1626,7 @@ SYSCALL_DEFINE3(getsockname, int, fd, struct sockaddr __user *, usockaddr,
+@@ -1557,7 +1620,7 @@ SYSCALL_DEFINE3(getsockname, int, fd, struct sockaddr __user *, usockaddr,
int __user *, usockaddr_len)
{
struct socket *sock;
@@ -130191,7 +129287,7 @@ index f3fbe17..b88ff74 100644
int len, err, fput_needed;
sock = sockfd_lookup_light(fd, &err, &fput_needed);
-@@ -1594,7 +1657,7 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
+@@ -1588,7 +1651,7 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
int __user *, usockaddr_len)
{
struct socket *sock;
@@ -130200,7 +129296,7 @@ index f3fbe17..b88ff74 100644
int len, err, fput_needed;
sock = sockfd_lookup_light(fd, &err, &fput_needed);
-@@ -1622,6 +1685,8 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
+@@ -1616,6 +1679,8 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
* the protocol.
*/
@@ -130209,7 +129305,7 @@ index f3fbe17..b88ff74 100644
SYSCALL_DEFINE6(sendto, int, fd, void __user *, buff, size_t, len,
unsigned int, flags, struct sockaddr __user *, addr,
int, addr_len)
-@@ -1685,7 +1750,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,
+@@ -1679,7 +1744,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,
struct socket *sock;
struct iovec iov;
struct msghdr msg;
@@ -130218,7 +129314,7 @@ index f3fbe17..b88ff74 100644
int err, err2;
int fput_needed;
-@@ -1928,7 +1993,7 @@ static int ___sys_sendmsg(struct socket *sock, struct user_msghdr __user *msg,
+@@ -1922,7 +1987,7 @@ static int ___sys_sendmsg(struct socket *sock, struct user_msghdr __user *msg,
* checking falls down on this.
*/
if (copy_from_user(ctl_buf,
@@ -130227,7 +129323,7 @@ index f3fbe17..b88ff74 100644
ctl_len))
goto out_freectl;
msg_sys->msg_control = ctl_buf;
-@@ -2078,7 +2143,7 @@ static int ___sys_recvmsg(struct socket *sock, struct user_msghdr __user *msg,
+@@ -2072,7 +2137,7 @@ static int ___sys_recvmsg(struct socket *sock, struct user_msghdr __user *msg,
ssize_t err;
/* kernel mode address */
@@ -130236,7 +129332,7 @@ index f3fbe17..b88ff74 100644
/* user mode address pointers */
struct sockaddr __user *uaddr;
-@@ -2723,7 +2788,7 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32)
+@@ -2717,7 +2782,7 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32)
ifr = compat_alloc_user_space(buf_size);
rxnfc = (void __user *)ifr + ALIGN(sizeof(struct ifreq), 8);
@@ -130245,7 +129341,7 @@ index f3fbe17..b88ff74 100644
return -EFAULT;
if (put_user(convert_in ? rxnfc : compat_ptr(data),
-@@ -2834,7 +2899,7 @@ static int bond_ioctl(struct net *net, unsigned int cmd,
+@@ -2828,7 +2893,7 @@ static int bond_ioctl(struct net *net, unsigned int cmd,
old_fs = get_fs();
set_fs(KERNEL_DS);
err = dev_ioctl(net, cmd,
@@ -130254,7 +129350,7 @@ index f3fbe17..b88ff74 100644
set_fs(old_fs);
return err;
-@@ -2927,7 +2992,7 @@ static int compat_sioc_ifmap(struct net *net, unsigned int cmd,
+@@ -2921,7 +2986,7 @@ static int compat_sioc_ifmap(struct net *net, unsigned int cmd,
old_fs = get_fs();
set_fs(KERNEL_DS);
@@ -130263,7 +129359,7 @@ index f3fbe17..b88ff74 100644
set_fs(old_fs);
if (cmd == SIOCGIFMAP && !err) {
-@@ -3011,7 +3076,7 @@ static int routing_ioctl(struct net *net, struct socket *sock,
+@@ -3005,7 +3070,7 @@ static int routing_ioctl(struct net *net, struct socket *sock,
ret |= get_user(rtdev, &(ur4->rt_dev));
if (rtdev) {
ret |= copy_from_user(devname, compat_ptr(rtdev), 15);
@@ -130272,7 +129368,7 @@ index f3fbe17..b88ff74 100644
devname[15] = 0;
} else
r4.rt_dev = NULL;
-@@ -3238,8 +3303,8 @@ int kernel_getsockopt(struct socket *sock, int level, int optname,
+@@ -3232,8 +3297,8 @@ int kernel_getsockopt(struct socket *sock, int level, int optname,
int __user *uoptlen;
int err;
@@ -130283,7 +129379,7 @@ index f3fbe17..b88ff74 100644
set_fs(KERNEL_DS);
if (level == SOL_SOCKET)
-@@ -3259,7 +3324,7 @@ int kernel_setsockopt(struct socket *sock, int level, int optname,
+@@ -3253,7 +3318,7 @@ int kernel_setsockopt(struct socket *sock, int level, int optname,
char __user *uoptval;
int err;
@@ -130327,10 +129423,10 @@ index 1095be9..815d777 100644
/* make a copy for the caller */
*handle = ctxh;
diff --git a/net/sunrpc/cache.c b/net/sunrpc/cache.c
-index 4a2340a..49ec8de 100644
+index 5e4f815..15e403f 100644
--- a/net/sunrpc/cache.c
+++ b/net/sunrpc/cache.c
-@@ -1596,7 +1596,7 @@ static int create_cache_proc_entries(struct cache_detail *cd, struct net *net)
+@@ -1623,7 +1623,7 @@ static int create_cache_proc_entries(struct cache_detail *cd, struct net *net)
struct sunrpc_net *sn;
sn = net_generic(net, sunrpc_net_id);
@@ -130355,10 +129451,10 @@ index 23608eb..f2b5208 100644
task->tk_action = call_reserve;
}
diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c
-index f14f24e..a6b2d76 100644
+index 73ad57a..d7a0c08 100644
--- a/net/sunrpc/sched.c
+++ b/net/sunrpc/sched.c
-@@ -261,9 +261,9 @@ static int rpc_wait_bit_killable(struct wait_bit_key *key)
+@@ -261,9 +261,9 @@ static int rpc_wait_bit_killable(struct wait_bit_key *key, int mode)
#if IS_ENABLED(CONFIG_SUNRPC_DEBUG) || IS_ENABLED(CONFIG_TRACEPOINTS)
static void rpc_task_set_debuginfo(struct rpc_task *task)
{
@@ -130384,7 +129480,7 @@ index 2ecb994..5afb49f 100644
return -ENOMEM;
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
-index a8f579d..3492de7 100644
+index cc98528..f427662 100644
--- a/net/sunrpc/svc.c
+++ b/net/sunrpc/svc.c
@@ -1166,7 +1166,9 @@ svc_process_common(struct svc_rqst *rqstp, struct kvec *argv, struct kvec *resv)
@@ -130412,7 +129508,7 @@ index 621ca7b..78bf76b 100644
static int unix_gid_parse(struct cache_detail *cd,
char *mesg, int mlen)
diff --git a/net/sunrpc/xprtrdma/svc_rdma.c b/net/sunrpc/xprtrdma/svc_rdma.c
-index 2cd252f..94dc8cb 100644
+index 1b7051b..65b0d80 100644
--- a/net/sunrpc/xprtrdma/svc_rdma.c
+++ b/net/sunrpc/xprtrdma/svc_rdma.c
@@ -61,15 +61,15 @@ unsigned int svcrdma_max_req_size = RPCRDMA_MAX_REQ_SIZE;
@@ -130544,7 +129640,7 @@ index 2cd252f..94dc8cb 100644
.proc_handler = read_reset_stat,
},
diff --git a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
-index f0c3ff6..10c9ccb 100644
+index ff4f01e..997f03d 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
@@ -200,7 +200,7 @@ int rdma_read_chunk_lcl(struct svcxprt_rdma *xprt,
@@ -130556,7 +129652,7 @@ index f0c3ff6..10c9ccb 100644
return ret;
err:
svc_rdma_unmap_dma(ctxt);
-@@ -337,7 +337,7 @@ int rdma_read_chunk_frmr(struct svcxprt_rdma *xprt,
+@@ -343,7 +343,7 @@ int rdma_read_chunk_frmr(struct svcxprt_rdma *xprt,
*page_no = pg_no;
*page_offset = pg_off;
ret = read;
@@ -130564,8 +129660,8 @@ index f0c3ff6..10c9ccb 100644
+ atomic_inc_unchecked(&rdma_stat_read);
return ret;
err:
- svc_rdma_unmap_dma(ctxt);
-@@ -591,7 +591,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
+ ib_dma_unmap_sg(xprt->sc_cm_id->device,
+@@ -598,7 +598,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
dto_q);
list_del_init(&ctxt->dto_q);
} else {
@@ -130574,7 +129670,7 @@ index f0c3ff6..10c9ccb 100644
clear_bit(XPT_DATA, &xprt->xpt_flags);
ctxt = NULL;
}
-@@ -609,7 +609,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
+@@ -616,7 +616,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
}
dprintk("svcrdma: processing ctxt=%p on xprt=%p, rqstp=%p, status=%d\n",
ctxt, rdma_xprt, rqstp, ctxt->wc_status);
@@ -130584,23 +129680,23 @@ index f0c3ff6..10c9ccb 100644
/* Build up the XDR from the receive buffers. */
rdma_build_arg_xdr(rqstp, ctxt, ctxt->byte_len);
diff --git a/net/sunrpc/xprtrdma/svc_rdma_sendto.c b/net/sunrpc/xprtrdma/svc_rdma_sendto.c
-index 1dfae83..799ed02 100644
+index 969a1ab..ee9b382 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_sendto.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_sendto.c
@@ -291,7 +291,7 @@ static int send_write(struct svcxprt_rdma *xprt, struct svc_rqst *rqstp,
- write_wr.wr.rdma.remote_addr = to;
+ write_wr.remote_addr = to;
/* Post It */
- atomic_inc(&rdma_stat_write);
+ atomic_inc_unchecked(&rdma_stat_write);
- if (svc_rdma_send(xprt, &write_wr))
+ if (svc_rdma_send(xprt, &write_wr.wr))
goto err;
return write_len - bc;
diff --git a/net/sunrpc/xprtrdma/svc_rdma_transport.c b/net/sunrpc/xprtrdma/svc_rdma_transport.c
-index fcc3eb8..b75ec03 100644
+index b348b4a..db45b20 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_transport.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_transport.c
-@@ -288,7 +288,7 @@ static void rq_cq_reap(struct svcxprt_rdma *xprt)
+@@ -346,7 +346,7 @@ static void rq_cq_reap(struct svcxprt_rdma *xprt)
return;
ib_req_notify_cq(xprt->sc_rq_cq, IB_CQ_NEXT_COMP);
@@ -130609,7 +129705,7 @@ index fcc3eb8..b75ec03 100644
while ((ret = ib_poll_cq(xprt->sc_rq_cq, 1, &wc)) > 0) {
ctxt = (struct svc_rdma_op_ctxt *)(unsigned long)wc.wr_id;
-@@ -310,7 +310,7 @@ static void rq_cq_reap(struct svcxprt_rdma *xprt)
+@@ -368,7 +368,7 @@ static void rq_cq_reap(struct svcxprt_rdma *xprt)
}
if (ctxt)
@@ -130618,7 +129714,7 @@ index fcc3eb8..b75ec03 100644
set_bit(XPT_DATA, &xprt->sc_xprt.xpt_flags);
/*
-@@ -389,7 +389,7 @@ static void sq_cq_reap(struct svcxprt_rdma *xprt)
+@@ -447,7 +447,7 @@ static void sq_cq_reap(struct svcxprt_rdma *xprt)
return;
ib_req_notify_cq(xprt->sc_sq_cq, IB_CQ_NEXT_COMP);
@@ -130627,7 +129723,7 @@ index fcc3eb8..b75ec03 100644
while ((ret = ib_poll_cq(cq, ARRAY_SIZE(wc_a), wc_a)) > 0) {
int i;
-@@ -418,7 +418,7 @@ static void sq_cq_reap(struct svcxprt_rdma *xprt)
+@@ -476,7 +476,7 @@ static void sq_cq_reap(struct svcxprt_rdma *xprt)
}
if (ctxt)
@@ -130636,7 +129732,7 @@ index fcc3eb8..b75ec03 100644
}
static void sq_comp_handler(struct ib_cq *cq, void *cq_context)
-@@ -1227,7 +1227,7 @@ int svc_rdma_send(struct svcxprt_rdma *xprt, struct ib_send_wr *wr)
+@@ -1273,7 +1273,7 @@ int svc_rdma_send(struct svcxprt_rdma *xprt, struct ib_send_wr *wr)
spin_lock_bh(&xprt->sc_lock);
if (xprt->sc_sq_depth < atomic_read(&xprt->sc_sq_count) + wr_count) {
spin_unlock_bh(&xprt->sc_lock);
@@ -130714,10 +129810,10 @@ index 350cca3..a108fc5 100644
sub->evt.event = htohl(event, sub->swap);
sub->evt.found_lower = htohl(found_lower, sub->swap);
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
-index 7926de1..8355d2c 100644
+index e3f85bc..a6c35a6 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
-@@ -918,6 +918,12 @@ static struct sock *unix_find_other(struct net *net,
+@@ -919,6 +919,12 @@ static struct sock *unix_find_other(struct net *net,
err = -ECONNREFUSED;
if (!S_ISSOCK(inode->i_mode))
goto put_fail;
@@ -130730,7 +129826,7 @@ index 7926de1..8355d2c 100644
u = unix_find_socket_byinode(inode);
if (!u)
goto put_fail;
-@@ -938,6 +944,13 @@ static struct sock *unix_find_other(struct net *net,
+@@ -939,6 +945,13 @@ static struct sock *unix_find_other(struct net *net,
if (u) {
struct dentry *dentry;
dentry = unix_sk(u)->path.dentry;
@@ -130744,7 +129840,7 @@ index 7926de1..8355d2c 100644
if (dentry)
touch_atime(&unix_sk(u)->path);
} else
-@@ -959,13 +972,19 @@ static int unix_mknod(struct dentry *dentry, struct path *path, umode_t mode,
+@@ -960,13 +973,19 @@ static int unix_mknod(struct dentry *dentry, struct path *path, umode_t mode,
err = security_path_mknod(path, dentry, mode, 0);
if (!err) {
@@ -130764,7 +129860,25 @@ index 7926de1..8355d2c 100644
return err;
}
-@@ -2331,6 +2350,7 @@ again:
+@@ -1496,7 +1515,7 @@ static void unix_detach_fds(struct scm_cookie *scm, struct sk_buff *skb)
+ UNIXCB(skb).fp = NULL;
+
+ for (i = scm->fp->count-1; i >= 0; i--)
+- unix_notinflight(scm->fp->fp[i]);
++ unix_notinflight(scm->fp->user, scm->fp->fp[i]);
+ }
+
+ static void unix_destruct_scm(struct sk_buff *skb)
+@@ -1561,7 +1580,7 @@ static int unix_attach_fds(struct scm_cookie *scm, struct sk_buff *skb)
+ return -ENOMEM;
+
+ for (i = scm->fp->count - 1; i >= 0; i--)
+- unix_inflight(scm->fp->fp[i]);
++ unix_inflight(scm->fp->user, scm->fp->fp[i]);
+ return max_level;
+ }
+
+@@ -2332,6 +2351,7 @@ again:
if (signal_pending(current)) {
err = sock_intr_errno(timeo);
@@ -130772,7 +129886,7 @@ index 7926de1..8355d2c 100644
goto out;
}
-@@ -2795,9 +2815,13 @@ static int unix_seq_show(struct seq_file *seq, void *v)
+@@ -2796,9 +2816,13 @@ static int unix_seq_show(struct seq_file *seq, void *v)
seq_puts(seq, "Num RefCount Protocol Flags Type St "
"Inode Path\n");
else {
@@ -130787,7 +129901,7 @@ index 7926de1..8355d2c 100644
seq_printf(seq, "%pK: %08X %08X %08X %04X %02X %5lu",
s,
-@@ -2822,10 +2846,29 @@ static int unix_seq_show(struct seq_file *seq, void *v)
+@@ -2823,10 +2847,29 @@ static int unix_seq_show(struct seq_file *seq, void *v)
seq_putc(seq, '@');
i++;
}
@@ -130834,6 +129948,42 @@ index c512f64..284072f 100644
.dump = unix_diag_dump,
};
return netlink_dump_start(net->diag_nlsk, skb, h, &c);
+diff --git a/net/unix/garbage.c b/net/unix/garbage.c
+index 8fcdc22..6a0d485 100644
+--- a/net/unix/garbage.c
++++ b/net/unix/garbage.c
+@@ -116,7 +116,7 @@ struct sock *unix_get_socket(struct file *filp)
+ * descriptor if it is for an AF_UNIX socket.
+ */
+
+-void unix_inflight(struct file *fp)
++void unix_inflight(struct user_struct *user, struct file *fp)
+ {
+ struct sock *s = unix_get_socket(fp);
+
+@@ -133,11 +133,11 @@ void unix_inflight(struct file *fp)
+ }
+ unix_tot_inflight++;
+ }
+- fp->f_cred->user->unix_inflight++;
++ user->unix_inflight++;
+ spin_unlock(&unix_gc_lock);
+ }
+
+-void unix_notinflight(struct file *fp)
++void unix_notinflight(struct user_struct *user, struct file *fp)
+ {
+ struct sock *s = unix_get_socket(fp);
+
+@@ -152,7 +152,7 @@ void unix_notinflight(struct file *fp)
+ list_del_init(&u->link);
+ unix_tot_inflight--;
+ }
+- fp->f_cred->user->unix_inflight--;
++ user->unix_inflight--;
+ spin_unlock(&unix_gc_lock);
+ }
+
diff --git a/net/unix/sysctl_net_unix.c b/net/unix/sysctl_net_unix.c
index b3d5150..ff3a837 100644
--- a/net/unix/sysctl_net_unix.c
@@ -130989,10 +130139,10 @@ index 0917f04..f4e3d8c 100644
if (!proc_create("x25/route", S_IRUGO, init_net.proc_net,
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
-index bacd30b..f8ddfe7 100644
+index b5e665b..3030b1d 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
-@@ -325,7 +325,7 @@ static void xfrm_policy_kill(struct xfrm_policy *policy)
+@@ -332,7 +332,7 @@ static void xfrm_policy_kill(struct xfrm_policy *policy)
{
policy->walk.dead = 1;
@@ -131001,7 +130151,7 @@ index bacd30b..f8ddfe7 100644
if (del_timer(&policy->polq.hold_timer))
xfrm_pol_put(policy);
-@@ -775,7 +775,7 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl)
+@@ -782,7 +782,7 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl)
else
hlist_add_head(&policy->bydst, chain);
__xfrm_policy_link(policy, dir);
@@ -131010,7 +130160,7 @@ index bacd30b..f8ddfe7 100644
/* After previous checking, family can either be AF_INET or AF_INET6 */
if (policy->family == AF_INET)
-@@ -1878,7 +1878,7 @@ xfrm_resolve_and_create_bundle(struct xfrm_policy **pols, int num_pols,
+@@ -1896,7 +1896,7 @@ xfrm_resolve_and_create_bundle(struct xfrm_policy **pols, int num_pols,
xdst->num_pols = num_pols;
memcpy(xdst->pols, pols, sizeof(struct xfrm_policy *) * num_pols);
@@ -131019,7 +130169,7 @@ index bacd30b..f8ddfe7 100644
return xdst;
}
-@@ -2691,10 +2691,11 @@ void xfrm_garbage_collect(struct net *net)
+@@ -2710,10 +2710,11 @@ void xfrm_garbage_collect(struct net *net)
}
EXPORT_SYMBOL(xfrm_garbage_collect);
@@ -131032,7 +130182,7 @@ index bacd30b..f8ddfe7 100644
static void xfrm_init_pmtu(struct dst_entry *dst)
{
-@@ -2744,7 +2745,7 @@ static int xfrm_bundle_ok(struct xfrm_dst *first)
+@@ -2763,7 +2764,7 @@ static int xfrm_bundle_ok(struct xfrm_dst *first)
if (xdst->xfrm_genid != dst->xfrm->genid)
return 0;
if (xdst->num_pols > 0 &&
@@ -131041,7 +130191,7 @@ index bacd30b..f8ddfe7 100644
return 0;
mtu = dst_mtu(dst->child);
-@@ -2831,8 +2832,6 @@ int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo)
+@@ -2850,8 +2851,6 @@ int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo)
dst_ops->link_failure = xfrm_link_failure;
if (likely(dst_ops->neigh_lookup == NULL))
dst_ops->neigh_lookup = xfrm_neigh_lookup;
@@ -131050,7 +130200,7 @@ index bacd30b..f8ddfe7 100644
rcu_assign_pointer(xfrm_policy_afinfo[afinfo->family], afinfo);
}
spin_unlock(&xfrm_policy_afinfo_lock);
-@@ -2866,7 +2865,6 @@ int xfrm_policy_unregister_afinfo(struct xfrm_policy_afinfo *afinfo)
+@@ -2885,7 +2884,6 @@ int xfrm_policy_unregister_afinfo(struct xfrm_policy_afinfo *afinfo)
dst_ops->check = NULL;
dst_ops->negative_advice = NULL;
dst_ops->link_failure = NULL;
@@ -131058,7 +130208,7 @@ index bacd30b..f8ddfe7 100644
}
return err;
}
-@@ -3247,7 +3245,7 @@ static int xfrm_policy_migrate(struct xfrm_policy *pol,
+@@ -3266,7 +3264,7 @@ static int xfrm_policy_migrate(struct xfrm_policy *pol,
sizeof(pol->xfrm_vec[i].saddr));
pol->xfrm_vec[i].encap_family = mp->new_family;
/* flush bundles */
@@ -131189,10 +130339,10 @@ index 05a6e3d..6716ec9 100644
__xfrm_sysctl_init(net);
diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c
-index 24e06a2..b94edf5 100644
+index 805681a..17a7088 100644
--- a/net/xfrm/xfrm_user.c
+++ b/net/xfrm/xfrm_user.c
-@@ -2468,7 +2468,7 @@ static int xfrm_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
+@@ -2471,7 +2471,7 @@ static int xfrm_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
return -EINVAL;
{
@@ -131241,6 +130391,106 @@ index 55c96cb..e4e88ab 100644
__clean-files := $(filter-out $(no-clean-files), $(__clean-files))
+diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
+index 4efedcb..0220ab2 100644
+--- a/scripts/Makefile.extrawarn
++++ b/scripts/Makefile.extrawarn
+@@ -26,6 +26,10 @@ warning-1 += $(call cc-option, -Wmissing-include-dirs)
+ warning-1 += $(call cc-option, -Wunused-but-set-variable)
+ warning-1 += $(call cc-disable-warning, missing-field-initializers)
+
++#warning-1 += $(call cc-option, -Wnull-dereference)
++warning-1 += $(call cc-option, -Wduplicated-cond)
++warning-1 += $(call cc-option, -Wlogical-op)
++
+ warning-2 := -Waggregate-return
+ warning-2 += -Wcast-align
+ warning-2 += -Wdisabled-optimization
+diff --git a/scripts/Makefile.gcc-plugins b/scripts/Makefile.gcc-plugins
+new file mode 100644
+index 0000000..f1bb96d
+--- /dev/null
++++ b/scripts/Makefile.gcc-plugins
+@@ -0,0 +1,79 @@
++ifndef DISABLE_PAX_PLUGINS
++ifeq ($(call cc-ifversion, -ge, 0408, y), y)
++PLUGINCC := $(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-plugin.sh "$(HOSTCXX)" "$(HOSTCXX)" "$(CC)")
++else
++PLUGINCC := $(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-plugin.sh "$(HOSTCC)" "$(HOSTCXX)" "$(CC)")
++endif
++ifneq ($(PLUGINCC),)
++ifdef CONFIG_PAX_CONSTIFY_PLUGIN
++CONSTIFY_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/constify_plugin.so -DCONSTIFY_PLUGIN
++endif
++ifdef CONFIG_PAX_MEMORY_STACKLEAK
++STACKLEAK_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/stackleak_plugin.so -DSTACKLEAK_PLUGIN
++STACKLEAK_PLUGIN_CFLAGS += -fplugin-arg-stackleak_plugin-track-lowest-sp=100
++endif
++ifdef CONFIG_KALLOCSTAT_PLUGIN
++KALLOCSTAT_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/kallocstat_plugin.so
++endif
++ifdef CONFIG_PAX_KERNEXEC_PLUGIN
++KERNEXEC_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/kernexec_plugin.so
++KERNEXEC_PLUGIN_CFLAGS += -fplugin-arg-kernexec_plugin-method=$(CONFIG_PAX_KERNEXEC_PLUGIN_METHOD) -DKERNEXEC_PLUGIN
++KERNEXEC_PLUGIN_AFLAGS := -DKERNEXEC_PLUGIN
++endif
++ifdef CONFIG_GRKERNSEC_RANDSTRUCT
++RANDSTRUCT_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/randomize_layout_plugin.so -DRANDSTRUCT_PLUGIN
++ifdef CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE
++RANDSTRUCT_PLUGIN_CFLAGS += -fplugin-arg-randomize_layout_plugin-performance-mode
++endif
++endif
++ifdef CONFIG_CHECKER_PLUGIN
++ifeq ($(call cc-ifversion, -ge, 0406, y), y)
++CHECKER_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/checker_plugin.so -DCHECKER_PLUGIN
++ifdef CONFIG_CHECKER_PLUGIN_USER
++CHECKER_PLUGIN_CFLAGS += -fplugin-arg-checker_plugin-user -DCHECKER_PLUGIN_USER
++endif
++ifdef CONFIG_CHECKER_PLUGIN_CONTEXT
++CHECKER_PLUGIN_CFLAGS += -fplugin-arg-checker_plugin-context -DCHECKER_PLUGIN_CONTEXT
++endif
++endif
++endif
++COLORIZE_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/colorize_plugin.so
++ifdef CONFIG_PAX_SIZE_OVERFLOW
++SIZE_OVERFLOW_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/size_overflow_plugin/size_overflow_plugin.so -DSIZE_OVERFLOW_PLUGIN
++endif
++ifdef CONFIG_PAX_LATENT_ENTROPY
++LATENT_ENTROPY_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/latent_entropy_plugin.so -DLATENT_ENTROPY_PLUGIN
++endif
++ifdef CONFIG_PAX_MEMORY_STRUCTLEAK
++STRUCTLEAK_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/structleak_plugin.so -DSTRUCTLEAK_PLUGIN
++endif
++INITIFY_PLUGIN_CFLAGS := -fplugin=$(objtree)/tools/gcc/initify_plugin.so -DINITIFY_PLUGIN
++GCC_PLUGINS_CFLAGS := $(CONSTIFY_PLUGIN_CFLAGS) $(STACKLEAK_PLUGIN_CFLAGS) $(KALLOCSTAT_PLUGIN_CFLAGS)
++GCC_PLUGINS_CFLAGS += $(KERNEXEC_PLUGIN_CFLAGS) $(CHECKER_PLUGIN_CFLAGS) $(COLORIZE_PLUGIN_CFLAGS)
++GCC_PLUGINS_CFLAGS += $(SIZE_OVERFLOW_PLUGIN_CFLAGS) $(LATENT_ENTROPY_PLUGIN_CFLAGS) $(STRUCTLEAK_PLUGIN_CFLAGS)
++GCC_PLUGINS_CFLAGS += $(INITIFY_PLUGIN_CFLAGS)
++GCC_PLUGINS_CFLAGS += $(RANDSTRUCT_PLUGIN_CFLAGS)
++GCC_PLUGINS_AFLAGS := $(KERNEXEC_PLUGIN_AFLAGS)
++export PLUGINCC GCC_PLUGINS_CFLAGS GCC_PLUGINS_AFLAGS CONSTIFY_PLUGIN LATENT_ENTROPY_PLUGIN_CFLAGS
++ifeq ($(KBUILD_EXTMOD),)
++gcc-plugins:
++ $(Q)$(MAKE) $(build)=tools/gcc
++else
++gcc-plugins: ;
++endif
++else
++gcc-plugins:
++ifeq ($(call cc-ifversion, -ge, 0405, y), y)
++ifeq ($(call cc-ifversion, -ge, 0408, y), y)
++ $(CONFIG_SHELL) -x $(srctree)/scripts/gcc-plugin.sh "$(HOSTCXX)" "$(HOSTCXX)" "$(CC)"
++else
++ $(CONFIG_SHELL) -x $(srctree)/scripts/gcc-plugin.sh "$(HOSTCC)" "$(HOSTCXX)" "$(CC)"
++endif
++ $(error Your gcc installation does not support plugins. If the necessary headers for plugin support are missing, they should be installed. On Debian, apt-get install gcc-<ver>-plugin-dev. If you choose to ignore this error and lessen the improvements provided by this patch, re-run make with the DISABLE_PAX_PLUGINS=y argument.)
++else
++ $(warning Warning, your gcc version does not support plugins, you should upgrade it to gcc 4.5 at least.)
++endif
++ $(warning PAX_MEMORY_STACKLEAK, constification, PAX_LATENT_ENTROPY and other features will be less secure. PAX_SIZE_OVERFLOW will not be active.)
++endif
++endif
++
diff --git a/scripts/Makefile.host b/scripts/Makefile.host
index 133edfa..4d180d9 100644
--- a/scripts/Makefile.host
@@ -131671,7 +130921,7 @@ index b05cc3d..72fb2a8 100644
struct symbol *sym = current_entry->sym;
diff --git a/scripts/kconfig/symbol.c b/scripts/kconfig/symbol.c
-index 50878dc..755b89d 100644
+index 25cf0c2..eb178ce 100644
--- a/scripts/kconfig/symbol.c
+++ b/scripts/kconfig/symbol.c
@@ -956,7 +956,7 @@ const char *sym_escape_string_value(const char *in)
@@ -131695,7 +130945,7 @@ index 50878dc..755b89d 100644
return -1;
if (!exact1 && exact2)
diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
-index 1a10d8a..843fdce 100755
+index dacf71a..f67b2c4 100755
--- a/scripts/link-vmlinux.sh
+++ b/scripts/link-vmlinux.sh
@@ -179,7 +179,7 @@ else
@@ -131708,10 +130958,10 @@ index 1a10d8a..843fdce 100755
kallsymso=""
kallsyms_vmlinux=""
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
-index 5f20882..d914642 100644
+index 5b96206..fc27edc 100644
--- a/scripts/mod/file2alias.c
+++ b/scripts/mod/file2alias.c
-@@ -154,7 +154,7 @@ static void device_id_check(const char *modname, const char *device_id,
+@@ -156,7 +156,7 @@ static void device_id_check(const char *modname, const char *device_id,
unsigned long size, unsigned long id_size,
void *symval)
{
@@ -131720,7 +130970,7 @@ index 5f20882..d914642 100644
if (size % id_size || size < id_size) {
fatal("%s: sizeof(struct %s_device_id)=%lu is not a modulo "
-@@ -183,7 +183,7 @@ static void device_id_check(const char *modname, const char *device_id,
+@@ -185,7 +185,7 @@ static void device_id_check(const char *modname, const char *device_id,
/* USB is special because the bcdDevice can be matched against a numeric range */
/* Looks like "usb:vNpNdNdcNdscNdpNicNiscNipNinN" */
static void do_usb_entry(void *symval,
@@ -131729,7 +130979,7 @@ index 5f20882..d914642 100644
unsigned char range_lo, unsigned char range_hi,
unsigned char max, struct module *mod)
{
-@@ -293,7 +293,7 @@ static void do_usb_entry_multi(void *symval, struct module *mod)
+@@ -295,7 +295,7 @@ static void do_usb_entry_multi(void *symval, struct module *mod)
{
unsigned int devlo, devhi;
unsigned char chi, clo, max;
@@ -131738,7 +130988,7 @@ index 5f20882..d914642 100644
DEF_FIELD(symval, usb_device_id, match_flags);
DEF_FIELD(symval, usb_device_id, idVendor);
-@@ -574,7 +574,7 @@ static void do_pnp_device_entry(void *symval, unsigned long size,
+@@ -576,7 +576,7 @@ static void do_pnp_device_entry(void *symval, unsigned long size,
for (i = 0; i < count; i++) {
DEF_FIELD_ADDR(symval + i*id_size, pnp_device_id, id);
char acpi_id[sizeof(*id)];
@@ -131747,7 +130997,7 @@ index 5f20882..d914642 100644
buf_printf(&mod->dev_table_buf,
"MODULE_ALIAS(\"pnp:d%s*\");\n", *id);
-@@ -603,7 +603,7 @@ static void do_pnp_card_entries(void *symval, unsigned long size,
+@@ -605,7 +605,7 @@ static void do_pnp_card_entries(void *symval, unsigned long size,
for (j = 0; j < PNP_MAX_DEVICES; j++) {
const char *id = (char *)(*devs)[j].id;
@@ -131756,7 +131006,7 @@ index 5f20882..d914642 100644
int dup = 0;
if (!id[0])
-@@ -629,7 +629,7 @@ static void do_pnp_card_entries(void *symval, unsigned long size,
+@@ -631,7 +631,7 @@ static void do_pnp_card_entries(void *symval, unsigned long size,
/* add an individual alias for every device entry */
if (!dup) {
char acpi_id[PNP_ID_LEN];
@@ -131765,7 +131015,7 @@ index 5f20882..d914642 100644
buf_printf(&mod->dev_table_buf,
"MODULE_ALIAS(\"pnp:d%s*\");\n", id);
-@@ -979,7 +979,7 @@ static void dmi_ascii_filter(char *d, const char *s)
+@@ -981,7 +981,7 @@ static void dmi_ascii_filter(char *d, const char *s)
static int do_dmi_entry(const char *filename, void *symval,
char *alias)
{
@@ -131775,10 +131025,18 @@ index 5f20882..d914642 100644
sprintf(alias, "dmi*");
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
-index 12d3db3..be51548 100644
+index e080746..73f4e65 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
-@@ -943,6 +943,7 @@ enum mismatch {
+@@ -37,6 +37,7 @@ static int vmlinux_section_warnings = 1;
+ static int warn_unresolved = 0;
+ /* How a symbol is exported */
+ static int sec_mismatch_count = 0;
++static int writable_fptr_count = 0;
+ static int sec_mismatch_verbose = 1;
+ static int sec_mismatch_fatal = 0;
+ /* ignore missing files */
+@@ -946,6 +947,7 @@ enum mismatch {
ANY_EXIT_TO_ANY_INIT,
EXPORT_TO_INIT_EXIT,
EXTABLE_TO_NON_TEXT,
@@ -131786,7 +131044,7 @@ index 12d3db3..be51548 100644
};
/**
-@@ -1069,6 +1070,12 @@ static const struct sectioncheck sectioncheck[] = {
+@@ -1072,6 +1074,12 @@ static const struct sectioncheck sectioncheck[] = {
.good_tosec = {ALL_TEXT_SECTIONS , NULL},
.mismatch = EXTABLE_TO_NON_TEXT,
.handler = extable_mismatch_handler,
@@ -131799,7 +131057,7 @@ index 12d3db3..be51548 100644
}
};
-@@ -1218,10 +1225,10 @@ static Elf_Sym *find_elf_symbol(struct elf_info *elf, Elf64_Sword addr,
+@@ -1221,10 +1229,10 @@ static Elf_Sym *find_elf_symbol(struct elf_info *elf, Elf64_Sword addr,
continue;
if (ELF_ST_TYPE(sym->st_info) == STT_SECTION)
continue;
@@ -131812,7 +131070,20 @@ index 12d3db3..be51548 100644
if (d < 0)
d = addr - sym->st_value;
if (d < distance) {
-@@ -1504,6 +1511,14 @@ static void report_sec_mismatch(const char *modname,
+@@ -1383,7 +1391,11 @@ static void report_sec_mismatch(const char *modname,
+ char *prl_from;
+ char *prl_to;
+
+- sec_mismatch_count++;
++ if (mismatch->mismatch == DATA_TO_TEXT)
++ writable_fptr_count++;
++ else
++ sec_mismatch_count++;
++
+ if (!sec_mismatch_verbose)
+ return;
+
+@@ -1507,6 +1519,14 @@ static void report_sec_mismatch(const char *modname,
fatal("There's a special handler for this mismatch type, "
"we should never get here.");
break;
@@ -131827,7 +131098,7 @@ index 12d3db3..be51548 100644
}
fprintf(stderr, "\n");
}
-@@ -1893,7 +1908,7 @@ static void section_rel(const char *modname, struct elf_info *elf,
+@@ -1896,7 +1916,7 @@ static void section_rel(const char *modname, struct elf_info *elf,
static void check_sec_ref(struct module *mod, const char *modname,
struct elf_info *elf)
{
@@ -131836,7 +131107,7 @@ index 12d3db3..be51548 100644
Elf_Shdr *sechdrs = elf->sechdrs;
/* Walk through all sections */
-@@ -2024,7 +2039,7 @@ void __attribute__((format(printf, 2, 3))) buf_printf(struct buffer *buf,
+@@ -2027,7 +2047,7 @@ void __attribute__((format(printf, 2, 3))) buf_printf(struct buffer *buf,
va_end(ap);
}
@@ -131845,7 +131116,7 @@ index 12d3db3..be51548 100644
{
if (buf->size - buf->pos < len) {
buf->size += len + SZ;
-@@ -2243,7 +2258,7 @@ static void write_if_changed(struct buffer *b, const char *fname)
+@@ -2257,7 +2277,7 @@ static void write_if_changed(struct buffer *b, const char *fname)
if (fstat(fileno(file), &st) < 0)
goto close_write;
@@ -131854,6 +131125,21 @@ index 12d3db3..be51548 100644
goto close_write;
tmp = NOFAIL(malloc(b->pos));
+@@ -2495,6 +2515,14 @@ int main(int argc, char **argv)
+ "Set CONFIG_SECTION_MISMATCH_WARN_ONLY=y to allow them.\n");
+ }
+ }
++ if (writable_fptr_count) {
++ if (!sec_mismatch_verbose) {
++ warn("modpost: Found %d writable function pointer(s).\n"
++ "To see full details build your kernel with:\n"
++ "'make CONFIG_DEBUG_SECTION_MISMATCH=y'\n",
++ writable_fptr_count);
++ }
++ }
+
+ return err;
+ }
diff --git a/scripts/mod/modpost.h b/scripts/mod/modpost.h
index 6a5e151..f2fbaf5 100644
--- a/scripts/mod/modpost.h
@@ -131919,10 +131205,10 @@ index 1aca224..3c71eb0 100644
rm -f $(2) $(objtree)/.scmversion
diff --git a/scripts/package/builddeb b/scripts/package/builddeb
-index b967e4f..fcd537d 100755
+index 6c3b038..54e0b5e 100755
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
-@@ -317,6 +317,7 @@ fi
+@@ -326,6 +326,7 @@ fi
(cd $srctree; find arch/$SRCARCH -name module.lds -o -name Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfiles"
(cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles"
(cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f) >> "$objtree/debian/hdrobjfiles"
@@ -132049,7 +131335,7 @@ index ba87004..3f4852c 100644
unsigned int secindex_strings;
diff --git a/scripts/tags.sh b/scripts/tags.sh
-index 8e5aee6..445cf3d 100755
+index 2628890..1c2f5c6 100755
--- a/scripts/tags.sh
+++ b/scripts/tags.sh
@@ -26,7 +26,7 @@ else
@@ -133297,7 +132583,7 @@ index 5105c2c..a5010e6 100644
extern struct key_type key_type_request_key_auth;
extern struct key *request_key_auth_new(struct key *target,
diff --git a/security/keys/key.c b/security/keys/key.c
-index aee2ec5..c276071 100644
+index ab7997d..adba677 100644
--- a/security/keys/key.c
+++ b/security/keys/key.c
@@ -283,7 +283,7 @@ struct key *key_alloc(struct key_type *type, const char *desc,
@@ -133354,7 +132640,7 @@ index aee2ec5..c276071 100644
/* record the root user tracking */
rb_link_node(&root_key_user.node,
diff --git a/security/keys/keyring.c b/security/keys/keyring.c
-index d334370..b03e5a8 100644
+index f931ccf..ed9cd36 100644
--- a/security/keys/keyring.c
+++ b/security/keys/keyring.c
@@ -1071,8 +1071,6 @@ static int keyring_detect_cycle(struct key *A, struct key *B)
@@ -133440,10 +132726,10 @@ index 1450f85..a91e0bc 100644
}
rtnl_unlock();
diff --git a/security/smack/smack_lsm.c b/security/smack/smack_lsm.c
-index 996c889..9620221 100644
+index ff81026..7c57c7f 100644
--- a/security/smack/smack_lsm.c
+++ b/security/smack/smack_lsm.c
-@@ -368,12 +368,10 @@ static int smk_copy_rules(struct list_head *nhead, struct list_head *ohead,
+@@ -398,12 +398,10 @@ static int smk_copy_relabel(struct list_head *nhead, struct list_head *ohead,
*/
static inline unsigned int smk_ptrace_mode(unsigned int mode)
{
@@ -133693,10 +132979,10 @@ index ffd2025..df062c9 100644
/* PCM3052 register definitions */
diff --git a/sound/core/oss/pcm_oss.c b/sound/core/oss/pcm_oss.c
-index 58550cc..4687a93 100644
+index 33e72c8..2b72441 100644
--- a/sound/core/oss/pcm_oss.c
+++ b/sound/core/oss/pcm_oss.c
-@@ -1189,10 +1189,10 @@ snd_pcm_sframes_t snd_pcm_oss_write3(struct snd_pcm_substream *substream, const
+@@ -1193,10 +1193,10 @@ snd_pcm_sframes_t snd_pcm_oss_write3(struct snd_pcm_substream *substream, const
if (in_kernel) {
mm_segment_t fs;
fs = snd_enter_user();
@@ -133709,7 +132995,7 @@ index 58550cc..4687a93 100644
}
if (ret != -EPIPE && ret != -ESTRPIPE)
break;
-@@ -1232,10 +1232,10 @@ snd_pcm_sframes_t snd_pcm_oss_read3(struct snd_pcm_substream *substream, char *p
+@@ -1236,10 +1236,10 @@ snd_pcm_sframes_t snd_pcm_oss_read3(struct snd_pcm_substream *substream, char *p
if (in_kernel) {
mm_segment_t fs;
fs = snd_enter_user();
@@ -133722,7 +133008,7 @@ index 58550cc..4687a93 100644
}
if (ret == -EPIPE) {
if (runtime->status->state == SNDRV_PCM_STATE_DRAINING) {
-@@ -1331,7 +1331,7 @@ static ssize_t snd_pcm_oss_write2(struct snd_pcm_substream *substream, const cha
+@@ -1335,7 +1335,7 @@ static ssize_t snd_pcm_oss_write2(struct snd_pcm_substream *substream, const cha
struct snd_pcm_plugin_channel *channels;
size_t oss_frame_bytes = (runtime->oss.plugin_first->src_width * runtime->oss.plugin_first->src_format.channels) / 8;
if (!in_kernel) {
@@ -133731,7 +133017,7 @@ index 58550cc..4687a93 100644
return -EFAULT;
buf = runtime->oss.buffer;
}
-@@ -1401,7 +1401,7 @@ static ssize_t snd_pcm_oss_write1(struct snd_pcm_substream *substream, const cha
+@@ -1405,7 +1405,7 @@ static ssize_t snd_pcm_oss_write1(struct snd_pcm_substream *substream, const cha
}
} else {
tmp = snd_pcm_oss_write2(substream,
@@ -133740,7 +133026,7 @@ index 58550cc..4687a93 100644
runtime->oss.period_bytes, 0);
if (tmp <= 0)
goto err;
-@@ -1427,7 +1427,7 @@ static ssize_t snd_pcm_oss_read2(struct snd_pcm_substream *substream, char *buf,
+@@ -1431,7 +1431,7 @@ static ssize_t snd_pcm_oss_read2(struct snd_pcm_substream *substream, char *buf,
struct snd_pcm_runtime *runtime = substream->runtime;
snd_pcm_sframes_t frames, frames1;
#ifdef CONFIG_SND_PCM_OSS_PLUGINS
@@ -133749,7 +133035,7 @@ index 58550cc..4687a93 100644
if (runtime->oss.plugin_first) {
struct snd_pcm_plugin_channel *channels;
size_t oss_frame_bytes = (runtime->oss.plugin_last->dst_width * runtime->oss.plugin_last->dst_format.channels) / 8;
-@@ -1489,7 +1489,7 @@ static ssize_t snd_pcm_oss_read1(struct snd_pcm_substream *substream, char __use
+@@ -1493,7 +1493,7 @@ static ssize_t snd_pcm_oss_read1(struct snd_pcm_substream *substream, char __use
xfer += tmp;
runtime->oss.buffer_used -= tmp;
} else {
@@ -133758,7 +133044,7 @@ index 58550cc..4687a93 100644
runtime->oss.period_bytes, 0);
if (tmp <= 0)
goto err;
-@@ -1658,7 +1658,7 @@ static int snd_pcm_oss_sync(struct snd_pcm_oss_file *pcm_oss_file)
+@@ -1662,7 +1662,7 @@ static int snd_pcm_oss_sync(struct snd_pcm_oss_file *pcm_oss_file)
size1);
size1 /= runtime->channels; /* frames */
fs = snd_enter_user();
@@ -133781,10 +133067,10 @@ index 9630e9f..2071ac2 100644
if (err < 0)
return err;
diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
-index 75888dd..c940854 100644
+index a8b27cd..e3c4bb3 100644
--- a/sound/core/pcm_native.c
+++ b/sound/core/pcm_native.c
-@@ -3004,11 +3004,11 @@ int snd_pcm_kernel_ioctl(struct snd_pcm_substream *substream,
+@@ -3002,11 +3002,11 @@ int snd_pcm_kernel_ioctl(struct snd_pcm_substream *substream,
switch (substream->stream) {
case SNDRV_PCM_STREAM_PLAYBACK:
result = snd_pcm_playback_ioctl1(NULL, substream, cmd,
@@ -133799,7 +133085,7 @@ index 75888dd..c940854 100644
default:
result = -EINVAL;
diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c
-index 13cfa81..8e0296d 100644
+index 58e79e0..19751d1 100644
--- a/sound/core/seq/seq_clientmgr.c
+++ b/sound/core/seq/seq_clientmgr.c
@@ -416,7 +416,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count,
@@ -133820,7 +133106,7 @@ index 13cfa81..8e0296d 100644
sizeof(struct snd_seq_event));
if (err < 0)
break;
-@@ -1059,13 +1059,13 @@ static ssize_t snd_seq_write(struct file *file, const char __user *buf,
+@@ -1062,13 +1062,13 @@ static ssize_t snd_seq_write(struct file *file, const char __user *buf,
}
/* set user space pointer */
event.data.ext.len = extlen | SNDRV_SEQ_EXT_USRPTR;
@@ -133836,7 +133122,7 @@ index 13cfa81..8e0296d 100644
event.data.ext.ptr = ptr;
}
#endif
-@@ -2420,7 +2420,7 @@ int snd_seq_kernel_client_ctl(int clientid, unsigned int cmd, void *arg)
+@@ -2423,7 +2423,7 @@ int snd_seq_kernel_client_ctl(int clientid, unsigned int cmd, void *arg)
if (client == NULL)
return -ENXIO;
fs = snd_enter_user();
@@ -134040,11 +133326,24 @@ index 464385a..46ab3f6 100644
int mode[PORTMAN_NUM_INPUT_PORTS];
struct snd_rawmidi_substream *midi_input[PORTMAN_NUM_INPUT_PORTS];
};
-diff --git a/sound/firewire/amdtp.c b/sound/firewire/amdtp.c
-index 2a153d2..185af02 100644
---- a/sound/firewire/amdtp.c
-+++ b/sound/firewire/amdtp.c
-@@ -591,7 +591,7 @@ static void update_pcm_pointers(struct amdtp_stream *s,
+diff --git a/sound/firewire/amdtp-am824.c b/sound/firewire/amdtp-am824.c
+index bebddc6..f5976be 100644
+--- a/sound/firewire/amdtp-am824.c
++++ b/sound/firewire/amdtp-am824.c
+@@ -314,7 +314,7 @@ void amdtp_am824_midi_trigger(struct amdtp_stream *s, unsigned int port,
+ struct amdtp_am824 *p = s->protocol;
+
+ if (port < p->midi_ports)
+- ACCESS_ONCE(p->midi[port]) = midi;
++ ACCESS_ONCE_RW(p->midi[port]) = midi;
+ }
+ EXPORT_SYMBOL_GPL(amdtp_am824_midi_trigger);
+
+diff --git a/sound/firewire/amdtp-stream.c b/sound/firewire/amdtp-stream.c
+index ed29026..933d2ae 100644
+--- a/sound/firewire/amdtp-stream.c
++++ b/sound/firewire/amdtp-stream.c
+@@ -344,7 +344,7 @@ static void update_pcm_pointers(struct amdtp_stream *s,
ptr = s->pcm_buffer_pointer + frames;
if (ptr >= pcm->runtime->buffer_size)
ptr -= pcm->runtime->buffer_size;
@@ -134053,7 +133352,7 @@ index 2a153d2..185af02 100644
s->pcm_period_pointer += frames;
if (s->pcm_period_pointer >= pcm->runtime->period_size) {
-@@ -1056,7 +1056,7 @@ EXPORT_SYMBOL(amdtp_stream_pcm_pointer);
+@@ -811,7 +811,7 @@ EXPORT_SYMBOL(amdtp_stream_pcm_pointer);
void amdtp_stream_update(struct amdtp_stream *s)
{
/* Precomputing. */
@@ -134062,11 +133361,11 @@ index 2a153d2..185af02 100644
(fw_parent_device(s->unit)->card->node_id << CIP_SID_SHIFT) &
CIP_SID_MASK;
}
-diff --git a/sound/firewire/amdtp.h b/sound/firewire/amdtp.h
-index b2cf9e7..e11623a 100644
---- a/sound/firewire/amdtp.h
-+++ b/sound/firewire/amdtp.h
-@@ -237,7 +237,7 @@ static inline bool amdtp_stream_pcm_running(struct amdtp_stream *s)
+diff --git a/sound/firewire/amdtp-stream.h b/sound/firewire/amdtp-stream.h
+index 8775704..8fea566 100644
+--- a/sound/firewire/amdtp-stream.h
++++ b/sound/firewire/amdtp-stream.h
+@@ -215,7 +215,7 @@ static inline bool amdtp_stream_pcm_running(struct amdtp_stream *s)
static inline void amdtp_stream_pcm_trigger(struct amdtp_stream *s,
struct snd_pcm_substream *pcm)
{
@@ -134074,16 +133373,20 @@ index b2cf9e7..e11623a 100644
+ ACCESS_ONCE_RW(s->pcm) = pcm;
}
- /**
-@@ -255,7 +255,7 @@ static inline void amdtp_stream_midi_trigger(struct amdtp_stream *s,
- struct snd_rawmidi_substream *midi)
- {
- if (port < s->midi_ports)
-- ACCESS_ONCE(s->midi[port]) = midi;
-+ ACCESS_ONCE_RW(s->midi[port]) = midi;
+ static inline bool cip_sfc_is_base_44100(enum cip_sfc sfc)
+diff --git a/sound/firewire/digi00x/amdtp-dot.c b/sound/firewire/digi00x/amdtp-dot.c
+index b02a5e8c..96ac8b5 100644
+--- a/sound/firewire/digi00x/amdtp-dot.c
++++ b/sound/firewire/digi00x/amdtp-dot.c
+@@ -365,7 +365,7 @@ void amdtp_dot_midi_trigger(struct amdtp_stream *s, unsigned int port,
+ struct amdtp_dot *p = s->protocol;
+
+ if (port < p->midi_ports)
+- ACCESS_ONCE(p->midi[port]) = midi;
++ ACCESS_ONCE_RW(p->midi[port]) = midi;
}
- static inline bool cip_sfc_is_base_44100(enum cip_sfc sfc)
+ static unsigned int process_tx_data_blocks(struct amdtp_stream *s,
diff --git a/sound/firewire/isight.c b/sound/firewire/isight.c
index 48d6dca..a0266c23 100644
--- a/sound/firewire/isight.c
@@ -134213,10 +133516,10 @@ index 213a416..aeab5c9 100644
list_add(&s->list, &cs4297a_devs);
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
-index a249d54..2388570 100644
+index 8374188..f073778 100644
--- a/sound/pci/hda/hda_codec.c
+++ b/sound/pci/hda/hda_codec.c
-@@ -1787,7 +1787,7 @@ static int get_kctl_0dB_offset(struct hda_codec *codec,
+@@ -1743,7 +1743,7 @@ static int get_kctl_0dB_offset(struct hda_codec *codec,
/* FIXME: set_fs() hack for obtaining user-space TLV data */
mm_segment_t fs = get_fs();
set_fs(get_ds());
@@ -134304,6 +133607,27 @@ index 160d61a..10bfd63 100644
/* Store context */
dev_set_drvdata(&pdev->dev, drvdata);
+diff --git a/sound/soc/intel/skylake/skl-sst-dsp.h b/sound/soc/intel/skylake/skl-sst-dsp.h
+index 6bfcef4..201ca47 100644
+--- a/sound/soc/intel/skylake/skl-sst-dsp.h
++++ b/sound/soc/intel/skylake/skl-sst-dsp.h
+@@ -114,14 +114,14 @@ struct skl_dsp_fw_ops {
+ int (*set_state_D0)(struct sst_dsp *ctx);
+ int (*set_state_D3)(struct sst_dsp *ctx);
+ unsigned int (*get_fw_errcode)(struct sst_dsp *ctx);
+-};
++} __no_const;
+
+ struct skl_dsp_loader_ops {
+ int (*alloc_dma_buf)(struct device *dev,
+ struct snd_dma_buffer *dmab, size_t size);
+ int (*free_dma_buf)(struct device *dev,
+ struct snd_dma_buffer *dmab);
+-};
++} __no_const;
+
+ void skl_cldma_process_intr(struct sst_dsp *ctx);
+ void skl_cldma_int_disable(struct sst_dsp *ctx);
diff --git a/sound/soc/soc-ac97.c b/sound/soc/soc-ac97.c
index d40efc9..4dbd571 100644
--- a/sound/soc/soc-ac97.c
@@ -134577,12 +133901,12 @@ index 0000000..4945d82
+targets += randomize_layout_seed.h randomize_layout_hash.h
diff --git a/tools/gcc/checker_plugin.c b/tools/gcc/checker_plugin.c
new file mode 100644
-index 0000000..1264799f
+index 0000000..efaf576
--- /dev/null
+++ b/tools/gcc/checker_plugin.c
-@@ -0,0 +1,549 @@
+@@ -0,0 +1,496 @@
+/*
-+ * Copyright 2011-2015 by the PaX Team <pageexec@freemail.hu>
++ * Copyright 2011-2016 by the PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Note: the choice of the license means that the compilation process is
@@ -134611,7 +133935,7 @@ index 0000000..1264799f
+int plugin_is_GPL_compatible;
+
+static struct plugin_info checker_plugin_info = {
-+ .version = "201512100145",
++ .version = "201602181345",
+ .help = "user\tturn on user/kernel address space checking\n"
+ "context\tturn on locking context checking\n"
+};
@@ -134817,7 +134141,7 @@ index 0000000..1264799f
+ decl_attributes(&context_error_decl, attr, 0);
+}
+
-+static bool gate_context(void)
++static bool context_gate(void)
+{
+ tree context_attr;
+
@@ -134949,7 +134273,7 @@ index 0000000..1264799f
+ return bb_loop_depth(bb) || (bb->flags & BB_IRREDUCIBLE_LOOP);
+}
+
-+static unsigned int execute_context(void)
++static unsigned int context_execute(void)
+{
+ basic_block bb;
+ gimple assign;
@@ -135006,64 +134330,11 @@ index 0000000..1264799f
+ return 0;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data context_pass_data = {
-+#else
-+static struct gimple_opt_pass context_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "context",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = true,
-+ .has_execute = true,
-+#else
-+ .gate = gate_context,
-+ .execute = execute_context,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = PROP_gimple_leh | PROP_cfg,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0, //TODO_verify_ssa | TODO_verify_flow | TODO_verify_stmts,
-+ .todo_flags_finish = TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_verify_flow | TODO_update_ssa
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class context_pass : public gimple_opt_pass {
-+public:
-+ context_pass() : gimple_opt_pass(context_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual bool gate(function *) { return gate_context(); }
-+ virtual unsigned int execute(function *) { return execute_context(); }
-+#else
-+ bool gate() { return gate_context(); }
-+ unsigned int execute() { return execute_context(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_context_pass(void)
-+{
-+ return new context_pass();
-+}
-+#else
-+static struct opt_pass *make_context_pass(void)
-+{
-+ return &context_pass.pass;
-+}
-+#endif
++#define PASS_NAME context
++#define PROPERTIES_REQUIRED PROP_gimple_leh | PROP_cfg
++//#define TODO_FLAGS_START TODO_verify_ssa | TODO_verify_flow | TODO_verify_stmts
++#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_verify_flow | TODO_update_ssa
++#include "gcc-generate-gimple-pass.h"
+
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
@@ -135132,12 +134403,12 @@ index 0000000..1264799f
+}
diff --git a/tools/gcc/colorize_plugin.c b/tools/gcc/colorize_plugin.c
new file mode 100644
-index 0000000..0c96d8a
+index 0000000..eec3fd1
--- /dev/null
+++ b/tools/gcc/colorize_plugin.c
-@@ -0,0 +1,215 @@
+@@ -0,0 +1,162 @@
+/*
-+ * Copyright 2012-2015 by PaX Team <pageexec@freemail.hu>
++ * Copyright 2012-2016 by PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Note: the choice of the license means that the compilation process is
@@ -135154,7 +134425,7 @@ index 0000000..0c96d8a
+int plugin_is_GPL_compatible;
+
+static struct plugin_info colorize_plugin_info = {
-+ .version = "201404202350",
++ .version = "201602181345",
+ .help = "color=[never|always|auto]\tdetermine when to colorize\n",
+};
+
@@ -135220,7 +134491,7 @@ index 0000000..0c96d8a
+ diagnostic_finalizer(global_dc) = finalize_colorize;
+}
+
-+static unsigned int execute_colorize_rearm(void)
++static unsigned int colorize_rearm_execute(void)
+{
+ if (diagnostic_starter(global_dc) == start_colorize)
+ return 0;
@@ -135229,62 +134500,9 @@ index 0000000..0c96d8a
+ return 0;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data colorize_rearm_pass_data = {
-+#else
-+struct simple_ipa_opt_pass colorize_rearm_pass = {
-+ .pass = {
-+#endif
-+ .type = SIMPLE_IPA_PASS,
-+ .name = "colorize_rearm",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = execute_colorize_rearm,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = 0
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class colorize_rearm_pass : public simple_ipa_opt_pass {
-+public:
-+ colorize_rearm_pass() : simple_ipa_opt_pass(colorize_rearm_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return execute_colorize_rearm(); }
-+#else
-+ unsigned int execute() { return execute_colorize_rearm(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_colorize_rearm_pass(void)
-+{
-+ return new colorize_rearm_pass();
-+}
-+#else
-+static struct opt_pass *make_colorize_rearm_pass(void)
-+{
-+ return &colorize_rearm_pass.pass;
-+}
-+#endif
++#define PASS_NAME colorize_rearm
++#define NO_GATE
++#include "gcc-generate-gimple-pass.h"
+
+static void colorize_start_unit(void *gcc_data, void *user_data)
+{
@@ -135353,13 +134571,13 @@ index 0000000..0c96d8a
+}
diff --git a/tools/gcc/constify_plugin.c b/tools/gcc/constify_plugin.c
new file mode 100644
-index 0000000..0b98f34
+index 0000000..e5f1fb0
--- /dev/null
+++ b/tools/gcc/constify_plugin.c
-@@ -0,0 +1,571 @@
+@@ -0,0 +1,518 @@
+/*
+ * Copyright 2011 by Emese Revfy <re.emese@gmail.com>
-+ * Copyright 2011-2015 by PaX Team <pageexec@freemail.hu>
++ * Copyright 2011-2016 by PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2, or (at your option) v3
+ *
+ * This gcc plugin constifies all structures which contain only function pointers or are explicitly marked for constification.
@@ -135382,7 +134600,7 @@ index 0000000..0b98f34
+static bool constify = true;
+
+static struct plugin_info const_plugin_info = {
-+ .version = "201511290250",
++ .version = "201602181345",
+ .help = "no-constify\tturn off constification\n",
+};
+
@@ -135760,7 +134978,7 @@ index 0000000..0b98f34
+ }
+}
+
-+static unsigned int check_local_variables(void)
++static unsigned int check_local_variables_execute(void)
+{
+ unsigned int ret = 0;
+ tree var;
@@ -135789,62 +135007,9 @@ index 0000000..0b98f34
+ return ret;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data check_local_variables_pass_data = {
-+#else
-+static struct gimple_opt_pass check_local_variables_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "check_local_variables",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = check_local_variables,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = 0
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class check_local_variables_pass : public gimple_opt_pass {
-+public:
-+ check_local_variables_pass() : gimple_opt_pass(check_local_variables_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return check_local_variables(); }
-+#else
-+ unsigned int execute() { return check_local_variables(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_check_local_variables_pass(void)
-+{
-+ return new check_local_variables_pass();
-+}
-+#else
-+static struct opt_pass *make_check_local_variables_pass(void)
-+{
-+ return &check_local_variables_pass.pass;
-+}
-+#endif
++#define PASS_NAME check_local_variables
++#define NO_GATE
++#include "gcc-generate-gimple-pass.h"
+
+static struct {
+ const char *name;
@@ -136753,6 +135918,654 @@ index 0000000..28c3242
+#endif
+
+#endif
+diff --git a/tools/gcc/gcc-generate-gimple-pass.h b/tools/gcc/gcc-generate-gimple-pass.h
+new file mode 100644
+index 0000000..1abbd0f
+--- /dev/null
++++ b/tools/gcc/gcc-generate-gimple-pass.h
+@@ -0,0 +1,172 @@
++/*
++ * Generator for GIMPLE pass related boilerplate code/data
++ *
++ * Supports gcc 4.5-6
++ *
++ * Usage:
++ *
++ * 1. before inclusion define PASS_NAME
++ * 2. before inclusion define NO_* for unimplemented callbacks
++ * NO_GATE
++ * NO_EXECUTE
++ * 3. before inclusion define PROPERTIES_* and TODO_FLAGS_* to override the default 0 values
++ * 4. for convenience, all the above will be undefined after inclusion!
++ * 5. the only exported name is make_PASS_NAME_pass() to register with gcc
++ */
++
++#ifndef PASS_NAME
++#error at least PASS_NAME must be defined
++#else
++#define __GCC_PLUGIN_STRINGIFY(n) #n
++#define _GCC_PLUGIN_STRINGIFY(n) __GCC_PLUGIN_STRINGIFY(n)
++#define _GCC_PLUGIN_CONCAT2(x,y) x ## y
++#define _GCC_PLUGIN_CONCAT3(x,y,z) x ## y ## z
++
++#define __PASS_NAME_PASS_DATA(n) _GCC_PLUGIN_CONCAT2(n,_pass_data)
++#define _PASS_NAME_PASS_DATA __PASS_NAME_PASS_DATA(PASS_NAME)
++
++#define __PASS_NAME_PASS(n) _GCC_PLUGIN_CONCAT2(n,_pass)
++#define _PASS_NAME_PASS __PASS_NAME_PASS(PASS_NAME)
++
++#define _PASS_NAME_NAME _GCC_PLUGIN_STRINGIFY(PASS_NAME)
++
++#define __MAKE_PASS_NAME_PASS(n) _GCC_PLUGIN_CONCAT3(make_,n,_pass)
++#define _MAKE_PASS_NAME_PASS __MAKE_PASS_NAME_PASS(PASS_NAME)
++
++#ifdef NO_GATE
++#define _GATE NULL
++#define _HAS_GATE false
++#else
++#define __GATE(n) _GCC_PLUGIN_CONCAT2(n,_gate)
++#define _GATE __GATE(PASS_NAME)
++#define _HAS_GATE true
++#endif
++
++#ifdef NO_EXECUTE
++#define _EXECUTE NULL
++#define _HAS_EXECUTE false
++#else
++#define __EXECUTE(n) _GCC_PLUGIN_CONCAT2(n,_execute)
++#define _EXECUTE __EXECUTE(PASS_NAME)
++#define _HAS_EXECUTE true
++#endif
++
++#ifndef PROPERTIES_REQUIRED
++#define PROPERTIES_REQUIRED 0
++#endif
++
++#ifndef PROPERTIES_PROVIDED
++#define PROPERTIES_PROVIDED 0
++#endif
++
++#ifndef PROPERTIES_DESTROYED
++#define PROPERTIES_DESTROYED 0
++#endif
++
++#ifndef TODO_FLAGS_START
++#define TODO_FLAGS_START 0
++#endif
++
++#ifndef TODO_FLAGS_FINISH
++#define TODO_FLAGS_FINISH 0
++#endif
++
++#if BUILDING_GCC_VERSION >= 4009
++namespace {
++static const pass_data _PASS_NAME_PASS_DATA = {
++#else
++static struct gimple_opt_pass _PASS_NAME_PASS = {
++ .pass = {
++#endif
++ .type = GIMPLE_PASS,
++ .name = _PASS_NAME_NAME,
++#if BUILDING_GCC_VERSION >= 4008
++ .optinfo_flags = OPTGROUP_NONE,
++#endif
++#if BUILDING_GCC_VERSION >= 5000
++#elif BUILDING_GCC_VERSION == 4009
++ .has_gate = _HAS_GATE,
++ .has_execute = _HAS_EXECUTE,
++#else
++ .gate = _GATE,
++ .execute = _EXECUTE,
++ .sub = NULL,
++ .next = NULL,
++ .static_pass_number = 0,
++#endif
++ .tv_id = TV_NONE,
++ .properties_required = PROPERTIES_REQUIRED,
++ .properties_provided = PROPERTIES_PROVIDED,
++ .properties_destroyed = PROPERTIES_DESTROYED,
++ .todo_flags_start = TODO_FLAGS_START,
++ .todo_flags_finish = TODO_FLAGS_FINISH,
++#if BUILDING_GCC_VERSION < 4009
++ }
++#endif
++};
++
++#if BUILDING_GCC_VERSION >= 4009
++class _PASS_NAME_PASS : public gimple_opt_pass {
++public:
++ _PASS_NAME_PASS() : gimple_opt_pass(_PASS_NAME_PASS_DATA, g) {}
++
++#ifndef NO_GATE
++#if BUILDING_GCC_VERSION >= 5000
++ virtual bool gate(function *) { return _GATE(); }
++#else
++ bool gate() { return _GATE(); }
++#endif
++#endif
++
++#ifndef NO_EXECUTE
++#if BUILDING_GCC_VERSION >= 5000
++ virtual unsigned int execute(function *) { return _EXECUTE(); }
++#else
++ unsigned int execute() { return _EXECUTE(); }
++#endif
++#endif
++};
++}
++
++opt_pass *_MAKE_PASS_NAME_PASS(void)
++{
++ return new _PASS_NAME_PASS();
++}
++#else
++struct opt_pass *_MAKE_PASS_NAME_PASS(void)
++{
++ return &_PASS_NAME_PASS.pass;
++}
++#endif
++
++// clean up user provided defines
++#undef PASS_NAME
++#undef NO_GATE
++#undef NO_EXECUTE
++
++#undef PROPERTIES_DESTROYED
++#undef PROPERTIES_PROVIDED
++#undef PROPERTIES_REQUIRED
++#undef TODO_FLAGS_FINISH
++#undef TODO_FLAGS_START
++
++// clean up generated defines
++#undef _EXECUTE
++#undef __EXECUTE
++#undef _GATE
++#undef __GATE
++#undef _GCC_PLUGIN_CONCAT2
++#undef _GCC_PLUGIN_CONCAT3
++#undef _GCC_PLUGIN_STRINGIFY
++#undef __GCC_PLUGIN_STRINGIFY
++#undef _HAS_EXECUTE
++#undef _HAS_GATE
++#undef _MAKE_PASS_NAME_PASS
++#undef __MAKE_PASS_NAME_PASS
++#undef _PASS_NAME_NAME
++#undef _PASS_NAME_PASS
++#undef __PASS_NAME_PASS
++#undef _PASS_NAME_PASS_DATA
++#undef __PASS_NAME_PASS_DATA
++
++#endif // PASS_NAME
+diff --git a/tools/gcc/gcc-generate-ipa-pass.h b/tools/gcc/gcc-generate-ipa-pass.h
+new file mode 100644
+index 0000000..5eba6a0
+--- /dev/null
++++ b/tools/gcc/gcc-generate-ipa-pass.h
+@@ -0,0 +1,286 @@
++/*
++ * Generator for IPA pass related boilerplate code/data
++ *
++ * Supports gcc 4.5-6
++ *
++ * Usage:
++ *
++ * 1. before inclusion define PASS_NAME
++ * 2. before inclusion define NO_* for unimplemented callbacks
++ * NO_GENERATE_SUMMARY
++ * NO_READ_SUMMARY
++ * NO_WRITE_SUMMARY
++ * NO_READ_OPTIMIZATION_SUMMARY
++ * NO_WRITE_OPTIMIZATION_SUMMARY
++ * NO_STMT_FIXUP
++ * NO_FUNCTION_TRANSFORM
++ * NO_VARIABLE_TRANSFORM
++ * NO_GATE
++ * NO_EXECUTE
++ * 3. before inclusion define PROPERTIES_* and *TODO_FLAGS_* to override the default 0 values
++ * 4. for convenience, all the above will be undefined after inclusion!
++ * 5. the only exported name is make_PASS_NAME_pass() to register with gcc
++ */
++
++#ifndef PASS_NAME
++#error at least PASS_NAME must be defined
++#else
++#define __GCC_PLUGIN_STRINGIFY(n) #n
++#define _GCC_PLUGIN_STRINGIFY(n) __GCC_PLUGIN_STRINGIFY(n)
++#define _GCC_PLUGIN_CONCAT2(x,y) x ## y
++#define _GCC_PLUGIN_CONCAT3(x,y,z) x ## y ## z
++
++#define __PASS_NAME_PASS_DATA(n) _GCC_PLUGIN_CONCAT2(n,_pass_data)
++#define _PASS_NAME_PASS_DATA __PASS_NAME_PASS_DATA(PASS_NAME)
++
++#define __PASS_NAME_PASS(n) _GCC_PLUGIN_CONCAT2(n,_pass)
++#define _PASS_NAME_PASS __PASS_NAME_PASS(PASS_NAME)
++
++#define _PASS_NAME_NAME _GCC_PLUGIN_STRINGIFY(PASS_NAME)
++
++#define __MAKE_PASS_NAME_PASS(n) _GCC_PLUGIN_CONCAT3(make_,n,_pass)
++#define _MAKE_PASS_NAME_PASS __MAKE_PASS_NAME_PASS(PASS_NAME)
++
++#ifdef NO_GENERATE_SUMMARY
++#define _GENERATE_SUMMARY NULL
++#else
++#define __GENERATE_SUMMARY(n) _GCC_PLUGIN_CONCAT2(n,_generate_summary)
++#define _GENERATE_SUMMARY __GENERATE_SUMMARY(PASS_NAME)
++#endif
++
++#ifdef NO_READ_SUMMARY
++#define _READ_SUMMARY NULL
++#else
++#define __READ_SUMMARY(n) _GCC_PLUGIN_CONCAT2(n,_read_summary)
++#define _READ_SUMMARY __READ_SUMMARY(PASS_NAME)
++#endif
++
++#ifdef NO_WRITE_SUMMARY
++#define _WRITE_SUMMARY NULL
++#else
++#define __WRITE_SUMMARY(n) _GCC_PLUGIN_CONCAT2(n,_write_summary)
++#define _WRITE_SUMMARY __WRITE_SUMMARY(PASS_NAME)
++#endif
++
++#ifdef NO_READ_OPTIMIZATION_SUMMARY
++#define _READ_OPTIMIZATION_SUMMARY NULL
++#else
++#define __READ_OPTIMIZATION_SUMMARY(n) _GCC_PLUGIN_CONCAT2(n,_read_optimization_summary)
++#define _READ_OPTIMIZATION_SUMMARY __READ_OPTIMIZATION_SUMMARY(PASS_NAME)
++#endif
++
++#ifdef NO_WRITE_OPTIMIZATION_SUMMARY
++#define _WRITE_OPTIMIZATION_SUMMARY NULL
++#else
++#define __WRITE_OPTIMIZATION_SUMMARY(n) _GCC_PLUGIN_CONCAT2(n,_write_optimization_summary)
++#define _WRITE_OPTIMIZATION_SUMMARY __WRITE_OPTIMIZATION_SUMMARY(PASS_NAME)
++#endif
++
++#ifdef NO_STMT_FIXUP
++#define _STMT_FIXUP NULL
++#else
++#define __STMT_FIXUP(n) _GCC_PLUGIN_CONCAT2(n,_stmt_fixup)
++#define _STMT_FIXUP __STMT_FIXUP(PASS_NAME)
++#endif
++
++#ifdef NO_FUNCTION_TRANSFORM
++#define _FUNCTION_TRANSFORM NULL
++#else
++#define __FUNCTION_TRANSFORM(n) _GCC_PLUGIN_CONCAT2(n,_function_transform)
++#define _FUNCTION_TRANSFORM __FUNCTION_TRANSFORM(PASS_NAME)
++#endif
++
++#ifdef NO_VARIABLE_TRANSFORM
++#define _VARIABLE_TRANSFORM NULL
++#else
++#define __VARIABLE_TRANSFORM(n) _GCC_PLUGIN_CONCAT2(n,_variable_transform)
++#define _VARIABLE_TRANSFORM __VARIABLE_TRANSFORM(PASS_NAME)
++#endif
++
++#ifdef NO_GATE
++#define _GATE NULL
++#define _HAS_GATE false
++#else
++#define __GATE(n) _GCC_PLUGIN_CONCAT2(n,_gate)
++#define _GATE __GATE(PASS_NAME)
++#define _HAS_GATE true
++#endif
++
++#ifdef NO_EXECUTE
++#define _EXECUTE NULL
++#define _HAS_EXECUTE false
++#else
++#define __EXECUTE(n) _GCC_PLUGIN_CONCAT2(n,_execute)
++#define _EXECUTE __EXECUTE(PASS_NAME)
++#define _HAS_EXECUTE true
++#endif
++
++#ifndef PROPERTIES_REQUIRED
++#define PROPERTIES_REQUIRED 0
++#endif
++
++#ifndef PROPERTIES_PROVIDED
++#define PROPERTIES_PROVIDED 0
++#endif
++
++#ifndef PROPERTIES_DESTROYED
++#define PROPERTIES_DESTROYED 0
++#endif
++
++#ifndef TODO_FLAGS_START
++#define TODO_FLAGS_START 0
++#endif
++
++#ifndef TODO_FLAGS_FINISH
++#define TODO_FLAGS_FINISH 0
++#endif
++
++#ifndef FUNCTION_TRANSFORM_TODO_FLAGS_START
++#define FUNCTION_TRANSFORM_TODO_FLAGS_START 0
++#endif
++
++#if BUILDING_GCC_VERSION >= 4009
++namespace {
++static const pass_data _PASS_NAME_PASS_DATA = {
++#else
++static struct ipa_opt_pass_d _PASS_NAME_PASS = {
++ .pass = {
++#endif
++ .type = IPA_PASS,
++ .name = _PASS_NAME_NAME,
++#if BUILDING_GCC_VERSION >= 4008
++ .optinfo_flags = OPTGROUP_NONE,
++#endif
++#if BUILDING_GCC_VERSION >= 5000
++#elif BUILDING_GCC_VERSION == 4009
++ .has_gate = _HAS_GATE,
++ .has_execute = _HAS_EXECUTE,
++#else
++ .gate = _GATE,
++ .execute = _EXECUTE,
++ .sub = NULL,
++ .next = NULL,
++ .static_pass_number = 0,
++#endif
++ .tv_id = TV_NONE,
++ .properties_required = PROPERTIES_REQUIRED,
++ .properties_provided = PROPERTIES_PROVIDED,
++ .properties_destroyed = PROPERTIES_DESTROYED,
++ .todo_flags_start = TODO_FLAGS_START,
++ .todo_flags_finish = TODO_FLAGS_FINISH,
++#if BUILDING_GCC_VERSION < 4009
++ },
++ .generate_summary = _GENERATE_SUMMARY,
++ .write_summary = _WRITE_SUMMARY,
++ .read_summary = _READ_SUMMARY,
++#if BUILDING_GCC_VERSION >= 4006
++ .write_optimization_summary = _WRITE_OPTIMIZATION_SUMMARY,
++ .read_optimization_summary = _READ_OPTIMIZATION_SUMMARY,
++#endif
++ .stmt_fixup = _STMT_FIXUP,
++ .function_transform_todo_flags_start = FUNCTION_TRANSFORM_TODO_FLAGS_START,
++ .function_transform = _FUNCTION_TRANSFORM,
++ .variable_transform = _VARIABLE_TRANSFORM,
++#endif
++};
++
++#if BUILDING_GCC_VERSION >= 4009
++class _PASS_NAME_PASS : public ipa_opt_pass_d {
++public:
++ _PASS_NAME_PASS() : ipa_opt_pass_d(_PASS_NAME_PASS_DATA,
++ g,
++ _GENERATE_SUMMARY,
++ _WRITE_SUMMARY,
++ _READ_SUMMARY,
++ _WRITE_OPTIMIZATION_SUMMARY,
++ _READ_OPTIMIZATION_SUMMARY,
++ _STMT_FIXUP,
++ 0,
++ _FUNCTION_TRANSFORM,
++ _VARIABLE_TRANSFORM) {}
++
++#ifndef NO_GATE
++#if BUILDING_GCC_VERSION >= 5000
++ virtual bool gate(function *) { return _GATE(); }
++#else
++ bool gate() { return _GATE(); }
++#endif
++#endif
++
++#ifndef NO_EXECUTE
++#if BUILDING_GCC_VERSION >= 5000
++ virtual unsigned int execute(function *) { return _EXECUTE(); }
++#else
++ unsigned int execute() { return _EXECUTE(); }
++#endif
++#endif
++};
++}
++
++opt_pass *_MAKE_PASS_NAME_PASS(void)
++{
++ return new _PASS_NAME_PASS();
++}
++#else
++struct opt_pass *_MAKE_PASS_NAME_PASS(void)
++{
++ return &_PASS_NAME_PASS.pass;
++}
++#endif
++
++// clean up user provided defines
++#undef PASS_NAME
++#undef NO_GENERATE_SUMMARY
++#undef NO_WRITE_SUMMARY
++#undef NO_READ_SUMMARY
++#undef NO_WRITE_OPTIMIZATION_SUMMARY
++#undef NO_READ_OPTIMIZATION_SUMMARY
++#undef NO_STMT_FIXUP
++#undef NO_FUNCTION_TRANSFORM
++#undef NO_VARIABLE_TRANSFORM
++#undef NO_GATE
++#undef NO_EXECUTE
++
++#undef FUNCTION_TRANSFORM_TODO_FLAGS_START
++#undef PROPERTIES_DESTROYED
++#undef PROPERTIES_PROVIDED
++#undef PROPERTIES_REQUIRED
++#undef TODO_FLAGS_FINISH
++#undef TODO_FLAGS_START
++
++// clean up generated defines
++#undef _EXECUTE
++#undef __EXECUTE
++#undef _FUNCTION_TRANSFORM
++#undef __FUNCTION_TRANSFORM
++#undef _GATE
++#undef __GATE
++#undef _GCC_PLUGIN_CONCAT2
++#undef _GCC_PLUGIN_CONCAT3
++#undef _GCC_PLUGIN_STRINGIFY
++#undef __GCC_PLUGIN_STRINGIFY
++#undef _GENERATE_SUMMARY
++#undef __GENERATE_SUMMARY
++#undef _HAS_EXECUTE
++#undef _HAS_GATE
++#undef _MAKE_PASS_NAME_PASS
++#undef __MAKE_PASS_NAME_PASS
++#undef _PASS_NAME_NAME
++#undef _PASS_NAME_PASS
++#undef __PASS_NAME_PASS
++#undef _PASS_NAME_PASS_DATA
++#undef __PASS_NAME_PASS_DATA
++#undef _READ_OPTIMIZATION_SUMMARY
++#undef __READ_OPTIMIZATION_SUMMARY
++#undef _READ_SUMMARY
++#undef __READ_SUMMARY
++#undef _STMT_FIXUP
++#undef __STMT_FIXUP
++#undef _VARIABLE_TRANSFORM
++#undef __VARIABLE_TRANSFORM
++#undef _WRITE_OPTIMIZATION_SUMMARY
++#undef __WRITE_OPTIMIZATION_SUMMARY
++#undef _WRITE_SUMMARY
++#undef __WRITE_SUMMARY
++
++#endif // PASS_NAME
+diff --git a/tools/gcc/gcc-generate-rtl-pass.h b/tools/gcc/gcc-generate-rtl-pass.h
+new file mode 100644
+index 0000000..c5cc187
+--- /dev/null
++++ b/tools/gcc/gcc-generate-rtl-pass.h
+@@ -0,0 +1,172 @@
++/*
++ * Generator for RTL pass related boilerplate code/data
++ *
++ * Supports gcc 4.5-6
++ *
++ * Usage:
++ *
++ * 1. before inclusion define PASS_NAME
++ * 2. before inclusion define NO_* for unimplemented callbacks
++ * NO_GATE
++ * NO_EXECUTE
++ * 3. before inclusion define PROPERTIES_* and TODO_FLAGS_* to override the default 0 values
++ * 4. for convenience, all the above will be undefined after inclusion!
++ * 5. the only exported name is make_PASS_NAME_pass() to register with gcc
++ */
++
++#ifndef PASS_NAME
++#error at least PASS_NAME must be defined
++#else
++#define __GCC_PLUGIN_STRINGIFY(n) #n
++#define _GCC_PLUGIN_STRINGIFY(n) __GCC_PLUGIN_STRINGIFY(n)
++#define _GCC_PLUGIN_CONCAT2(x,y) x ## y
++#define _GCC_PLUGIN_CONCAT3(x,y,z) x ## y ## z
++
++#define __PASS_NAME_PASS_DATA(n) _GCC_PLUGIN_CONCAT2(n,_pass_data)
++#define _PASS_NAME_PASS_DATA __PASS_NAME_PASS_DATA(PASS_NAME)
++
++#define __PASS_NAME_PASS(n) _GCC_PLUGIN_CONCAT2(n,_pass)
++#define _PASS_NAME_PASS __PASS_NAME_PASS(PASS_NAME)
++
++#define _PASS_NAME_NAME _GCC_PLUGIN_STRINGIFY(PASS_NAME)
++
++#define __MAKE_PASS_NAME_PASS(n) _GCC_PLUGIN_CONCAT3(make_,n,_pass)
++#define _MAKE_PASS_NAME_PASS __MAKE_PASS_NAME_PASS(PASS_NAME)
++
++#ifdef NO_GATE
++#define _GATE NULL
++#define _HAS_GATE false
++#else
++#define __GATE(n) _GCC_PLUGIN_CONCAT2(n,_gate)
++#define _GATE __GATE(PASS_NAME)
++#define _HAS_GATE true
++#endif
++
++#ifdef NO_EXECUTE
++#define _EXECUTE NULL
++#define _HAS_EXECUTE false
++#else
++#define __EXECUTE(n) _GCC_PLUGIN_CONCAT2(n,_execute)
++#define _EXECUTE __EXECUTE(PASS_NAME)
++#define _HAS_EXECUTE true
++#endif
++
++#ifndef PROPERTIES_REQUIRED
++#define PROPERTIES_REQUIRED 0
++#endif
++
++#ifndef PROPERTIES_PROVIDED
++#define PROPERTIES_PROVIDED 0
++#endif
++
++#ifndef PROPERTIES_DESTROYED
++#define PROPERTIES_DESTROYED 0
++#endif
++
++#ifndef TODO_FLAGS_START
++#define TODO_FLAGS_START 0
++#endif
++
++#ifndef TODO_FLAGS_FINISH
++#define TODO_FLAGS_FINISH 0
++#endif
++
++#if BUILDING_GCC_VERSION >= 4009
++namespace {
++static const pass_data _PASS_NAME_PASS_DATA = {
++#else
++static struct rtl_opt_pass _PASS_NAME_PASS = {
++ .pass = {
++#endif
++ .type = RTL_PASS,
++ .name = _PASS_NAME_NAME,
++#if BUILDING_GCC_VERSION >= 4008
++ .optinfo_flags = OPTGROUP_NONE,
++#endif
++#if BUILDING_GCC_VERSION >= 5000
++#elif BUILDING_GCC_VERSION == 4009
++ .has_gate = _HAS_GATE,
++ .has_execute = _HAS_EXECUTE,
++#else
++ .gate = _GATE,
++ .execute = _EXECUTE,
++ .sub = NULL,
++ .next = NULL,
++ .static_pass_number = 0,
++#endif
++ .tv_id = TV_NONE,
++ .properties_required = PROPERTIES_REQUIRED,
++ .properties_provided = PROPERTIES_PROVIDED,
++ .properties_destroyed = PROPERTIES_DESTROYED,
++ .todo_flags_start = TODO_FLAGS_START,
++ .todo_flags_finish = TODO_FLAGS_FINISH,
++#if BUILDING_GCC_VERSION < 4009
++ }
++#endif
++};
++
++#if BUILDING_GCC_VERSION >= 4009
++class _PASS_NAME_PASS : public rtl_opt_pass {
++public:
++ _PASS_NAME_PASS() : rtl_opt_pass(_PASS_NAME_PASS_DATA, g) {}
++
++#ifndef NO_GATE
++#if BUILDING_GCC_VERSION >= 5000
++ virtual bool gate(function *) { return _GATE(); }
++#else
++ bool gate() { return _GATE(); }
++#endif
++#endif
++
++#ifndef NO_EXECUTE
++#if BUILDING_GCC_VERSION >= 5000
++ virtual unsigned int execute(function *) { return _EXECUTE(); }
++#else
++ unsigned int execute() { return _EXECUTE(); }
++#endif
++#endif
++};
++}
++
++opt_pass *_MAKE_PASS_NAME_PASS(void)
++{
++ return new _PASS_NAME_PASS();
++}
++#else
++struct opt_pass *_MAKE_PASS_NAME_PASS(void)
++{
++ return &_PASS_NAME_PASS.pass;
++}
++#endif
++
++// clean up user provided defines
++#undef PASS_NAME
++#undef NO_GATE
++#undef NO_EXECUTE
++
++#undef PROPERTIES_DESTROYED
++#undef PROPERTIES_PROVIDED
++#undef PROPERTIES_REQUIRED
++#undef TODO_FLAGS_FINISH
++#undef TODO_FLAGS_START
++
++// clean up generated defines
++#undef _EXECUTE
++#undef __EXECUTE
++#undef _GATE
++#undef __GATE
++#undef _GCC_PLUGIN_CONCAT2
++#undef _GCC_PLUGIN_CONCAT3
++#undef _GCC_PLUGIN_STRINGIFY
++#undef __GCC_PLUGIN_STRINGIFY
++#undef _HAS_EXECUTE
++#undef _HAS_GATE
++#undef _MAKE_PASS_NAME_PASS
++#undef __MAKE_PASS_NAME_PASS
++#undef _PASS_NAME_NAME
++#undef _PASS_NAME_PASS
++#undef __PASS_NAME_PASS
++#undef _PASS_NAME_PASS_DATA
++#undef __PASS_NAME_PASS_DATA
++
++#endif // PASS_NAME
diff --git a/tools/gcc/gen-random-seed.sh b/tools/gcc/gen-random-seed.sh
new file mode 100644
index 0000000..7514850
@@ -136769,10 +136582,10 @@ index 0000000..7514850
+fi
diff --git a/tools/gcc/initify_plugin.c b/tools/gcc/initify_plugin.c
new file mode 100644
-index 0000000..aedb6ea
+index 0000000..a686bf8
--- /dev/null
+++ b/tools/gcc/initify_plugin.c
-@@ -0,0 +1,591 @@
+@@ -0,0 +1,541 @@
+/*
+ * Copyright 2015-2016 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2, or (at your option) v3
@@ -136793,7 +136606,7 @@ index 0000000..aedb6ea
+int plugin_is_GPL_compatible;
+
+static struct plugin_info initify_plugin_info = {
-+ .version = "20160130",
++ .version = "20160217",
+ .help = "initify_plugin\n",
+};
+
@@ -137249,7 +137062,7 @@ index 0000000..aedb6ea
+ }
+}
+
-+static unsigned int handle_function(void)
++static unsigned int initify_execute(void)
+{
+ bool initexit;
+ const char *section = get_init_exit_section(current_function_decl);
@@ -137264,62 +137077,12 @@ index 0000000..aedb6ea
+ return 0;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data initify_plugin_pass_data = {
-+#else
-+static struct gimple_opt_pass initify_plugin_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "initify_plugin",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION >= 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = handle_function,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_dump_func | TODO_verify_ssa | TODO_verify_stmts | TODO_remove_unused_locals | TODO_update_ssa_no_phi | TODO_cleanup_cfg | TODO_ggc_collect | TODO_verify_flow
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
++#define PASS_NAME initify
+
-+#if BUILDING_GCC_VERSION >= 4009
-+class initify_plugin_pass : public gimple_opt_pass {
-+public:
-+ initify_plugin_pass() : gimple_opt_pass(initify_plugin_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return handle_function(); }
-+#else
-+ unsigned int execute() { return handle_function(); }
-+#endif
-+};
-+}
++#define NO_GATE
++#define TODO_FLAGS_FINISH TODO_dump_func | TODO_verify_ssa | TODO_verify_stmts | TODO_remove_unused_locals | TODO_update_ssa_no_phi | TODO_cleanup_cfg | TODO_ggc_collect | TODO_verify_flow
+
-+static struct opt_pass *make_initify_plugin_pass(void)
-+{
-+ return new initify_plugin_pass();
-+}
-+#else
-+static struct opt_pass *make_initify_plugin_pass(void)
-+{
-+ return &initify_plugin_pass.pass;
-+}
-+#endif
++#include "gcc-generate-gimple-pass.h"
+
+static unsigned int (*old_section_type_flags)(tree decl, const char *name, int reloc);
+
@@ -137345,12 +137108,12 @@ index 0000000..aedb6ea
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
+ const char * const plugin_name = plugin_info->base_name;
-+ struct register_pass_info initify_plugin_pass_info;
++ struct register_pass_info initify_pass_info;
+
-+ initify_plugin_pass_info.pass = make_initify_plugin_pass();
-+ initify_plugin_pass_info.reference_pass_name = "nrv";
-+ initify_plugin_pass_info.ref_pass_instance_number = 1;
-+ initify_plugin_pass_info.pos_op = PASS_POS_INSERT_AFTER;
++ initify_pass_info.pass = make_initify_pass();
++ initify_pass_info.reference_pass_name = "nrv";
++ initify_pass_info.ref_pass_instance_number = 1;
++ initify_pass_info.pos_op = PASS_POS_INSERT_AFTER;
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
+ error(G_("incompatible gcc/plugin versions"));
@@ -137358,7 +137121,7 @@ index 0000000..aedb6ea
+ }
+
+ register_callback(plugin_name, PLUGIN_INFO, NULL, &initify_plugin_info);
-+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &initify_plugin_pass_info);
++ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &initify_pass_info);
+ register_callback(plugin_name, PLUGIN_ATTRIBUTES, register_attributes, NULL);
+ register_callback(plugin_name, PLUGIN_START_UNIT, initify_start_unit, NULL);
+
@@ -137366,12 +137129,12 @@ index 0000000..aedb6ea
+}
diff --git a/tools/gcc/kallocstat_plugin.c b/tools/gcc/kallocstat_plugin.c
new file mode 100644
-index 0000000..457d54e
+index 0000000..30ecc9a
--- /dev/null
+++ b/tools/gcc/kallocstat_plugin.c
-@@ -0,0 +1,188 @@
+@@ -0,0 +1,135 @@
+/*
-+ * Copyright 2011-2015 by the PaX Team <pageexec@freemail.hu>
++ * Copyright 2011-2016 by the PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Note: the choice of the license means that the compilation process is
@@ -137392,7 +137155,7 @@ index 0000000..457d54e
+int plugin_is_GPL_compatible;
+
+static struct plugin_info kallocstat_plugin_info = {
-+ .version = "201401260140",
++ .version = "201602181345",
+ .help = NULL
+};
+
@@ -137418,7 +137181,7 @@ index 0000000..457d54e
+ return false;
+}
+
-+static unsigned int execute_kallocstat(void)
++static unsigned int kallocstat_execute(void)
+{
+ basic_block bb;
+
@@ -137481,62 +137244,9 @@ index 0000000..457d54e
+ return 0;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data kallocstat_pass_data = {
-+#else
-+static struct gimple_opt_pass kallocstat_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "kallocstat",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = execute_kallocstat,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = 0
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class kallocstat_pass : public gimple_opt_pass {
-+public:
-+ kallocstat_pass() : gimple_opt_pass(kallocstat_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return execute_kallocstat(); }
-+#else
-+ unsigned int execute() { return execute_kallocstat(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_kallocstat_pass(void)
-+{
-+ return new kallocstat_pass();
-+}
-+#else
-+static struct opt_pass *make_kallocstat_pass(void)
-+{
-+ return &kallocstat_pass.pass;
-+}
-+#endif
++#define PASS_NAME kallocstat
++#define NO_GATE
++#include "gcc-generate-gimple-pass.h"
+
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
@@ -137560,12 +137270,12 @@ index 0000000..457d54e
+}
diff --git a/tools/gcc/kernexec_plugin.c b/tools/gcc/kernexec_plugin.c
new file mode 100644
-index 0000000..6b8ef9a
+index 0000000..5598420
--- /dev/null
+++ b/tools/gcc/kernexec_plugin.c
-@@ -0,0 +1,549 @@
+@@ -0,0 +1,407 @@
+/*
-+ * Copyright 2011-2015 by the PaX Team <pageexec@freemail.hu>
++ * Copyright 2011-2016 by the PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Note: the choice of the license means that the compilation process is
@@ -137586,7 +137296,7 @@ index 0000000..6b8ef9a
+int plugin_is_GPL_compatible;
+
+static struct plugin_info kernexec_plugin_info = {
-+ .version = "201401260140",
++ .version = "201602181345",
+ .help = "method=[bts|or]\tinstrumentation method\n"
+};
+
@@ -137612,7 +137322,7 @@ index 0000000..6b8ef9a
+/*
+ * find all asm() stmts that clobber r12 and add a reload of r12
+ */
-+static unsigned int execute_kernexec_reload(void)
++static unsigned int kernexec_reload_execute(void)
+{
+ basic_block bb;
+
@@ -137744,7 +137454,7 @@ index 0000000..6b8ef9a
+/*
+ * find all C level function pointer dereferences and forcibly set the highest bit of the pointer
+ */
-+static unsigned int execute_kernexec_fptr(void)
++static unsigned int kernexec_fptr_execute(void)
+{
+ basic_block bb;
+
@@ -137831,7 +137541,7 @@ index 0000000..6b8ef9a
+/*
+ * find all asm level function returns and forcibly set the highest bit of the return address
+ */
-+static unsigned int execute_kernexec_retaddr(void)
++static unsigned int kernexec_retaddr_execute(void)
+{
+ rtx_insn *insn;
+
@@ -137880,174 +137590,32 @@ index 0000000..6b8ef9a
+ return false;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data kernexec_reload_pass_data = {
-+#else
-+static struct gimple_opt_pass kernexec_reload_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "kernexec_reload",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = true,
-+ .has_execute = true,
-+#else
-+ .gate = kernexec_cmodel_check,
-+ .execute = execute_kernexec_reload,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_remove_unused_locals | TODO_update_ssa_no_phi
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+static const struct pass_data kernexec_fptr_pass_data = {
-+#else
-+static struct gimple_opt_pass kernexec_fptr_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "kernexec_fptr",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = true,
-+ .has_execute = true,
-+#else
-+ .gate = kernexec_cmodel_check,
-+ .execute = execute_kernexec_fptr,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_remove_unused_locals | TODO_update_ssa_no_phi
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+static const struct pass_data kernexec_retaddr_pass_data = {
-+#else
-+static struct rtl_opt_pass kernexec_retaddr_pass = {
-+ .pass = {
-+#endif
-+ .type = RTL_PASS,
-+ .name = "kernexec_retaddr",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = true,
-+ .has_execute = true,
-+#else
-+ .gate = kernexec_cmodel_check,
-+ .execute = execute_kernexec_retaddr,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_dump_func | TODO_ggc_collect
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class kernexec_reload_pass : public gimple_opt_pass {
-+public:
-+ kernexec_reload_pass() : gimple_opt_pass(kernexec_reload_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual bool gate(function *) { return kernexec_cmodel_check(); }
-+ virtual unsigned int execute(function *) { return execute_kernexec_reload(); }
-+#else
-+ bool gate() { return kernexec_cmodel_check(); }
-+ unsigned int execute() { return execute_kernexec_reload(); }
-+#endif
-+};
-+
-+class kernexec_fptr_pass : public gimple_opt_pass {
-+public:
-+ kernexec_fptr_pass() : gimple_opt_pass(kernexec_fptr_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual bool gate(function *) { return kernexec_cmodel_check(); }
-+ virtual unsigned int execute(function *) { return execute_kernexec_fptr(); }
-+#else
-+ bool gate() { return kernexec_cmodel_check(); }
-+ unsigned int execute() { return execute_kernexec_fptr(); }
-+#endif
-+};
-+
-+class kernexec_retaddr_pass : public rtl_opt_pass {
-+public:
-+ kernexec_retaddr_pass() : rtl_opt_pass(kernexec_retaddr_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual bool gate(function *) { return kernexec_cmodel_check(); }
-+ virtual unsigned int execute(function *) { return execute_kernexec_retaddr(); }
-+#else
-+ bool gate() { return kernexec_cmodel_check(); }
-+ unsigned int execute() { return execute_kernexec_retaddr(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_kernexec_reload_pass(void)
++static bool kernexec_reload_gate(void)
+{
-+ return new kernexec_reload_pass();
++ return kernexec_cmodel_check();
+}
+
-+static opt_pass *make_kernexec_fptr_pass(void)
-+{
-+ return new kernexec_fptr_pass();
-+}
++#define PASS_NAME kernexec_reload
++#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_remove_unused_locals | TODO_update_ssa_no_phi
++#include "gcc-generate-gimple-pass.h"
+
-+static opt_pass *make_kernexec_retaddr_pass(void)
-+{
-+ return new kernexec_retaddr_pass();
-+}
-+#else
-+static struct opt_pass *make_kernexec_reload_pass(void)
++static bool kernexec_fptr_gate(void)
+{
-+ return &kernexec_reload_pass.pass;
++ return kernexec_cmodel_check();
+}
+
-+static struct opt_pass *make_kernexec_fptr_pass(void)
-+{
-+ return &kernexec_fptr_pass.pass;
-+}
++#define PASS_NAME kernexec_fptr
++#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_remove_unused_locals | TODO_update_ssa_no_phi
++#include "gcc-generate-gimple-pass.h"
+
-+static struct opt_pass *make_kernexec_retaddr_pass(void)
++static bool kernexec_retaddr_gate(void)
+{
-+ return &kernexec_retaddr_pass.pass;
++ return kernexec_cmodel_check();
+}
-+#endif
++
++#define PASS_NAME kernexec_retaddr
++#define TODO_FLAGS_FINISH TODO_dump_func | TODO_ggc_collect
++#include "gcc-generate-rtl-pass.h"
+
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
@@ -138115,12 +137683,12 @@ index 0000000..6b8ef9a
+}
diff --git a/tools/gcc/latent_entropy_plugin.c b/tools/gcc/latent_entropy_plugin.c
new file mode 100644
-index 0000000..161ab18
+index 0000000..6fbcd39
--- /dev/null
+++ b/tools/gcc/latent_entropy_plugin.c
-@@ -0,0 +1,474 @@
+@@ -0,0 +1,421 @@
+/*
-+ * Copyright 2012-2015 by the PaX Team <pageexec@freemail.hu>
++ * Copyright 2012-2016 by the PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Note: the choice of the license means that the compilation process is
@@ -138147,7 +137715,7 @@ index 0000000..161ab18
+static GTY(()) tree latent_entropy_decl;
+
+static struct plugin_info latent_entropy_plugin_info = {
-+ .version = "201512150000",
++ .version = "201602181345",
+ .help = NULL
+};
+
@@ -138317,7 +137885,7 @@ index 0000000..161ab18
+ register_attribute(&latent_entropy_attr);
+}
+
-+static bool gate_latent_entropy(void)
++static bool latent_entropy_gate(void)
+{
+ // don't bother with noreturn functions for now
+ if (TREE_THIS_VOLATILE(current_function_decl))
@@ -138408,7 +137976,7 @@ index 0000000..161ab18
+ update_stmt(assign);
+}
+
-+static unsigned int execute_latent_entropy(void)
++static unsigned int latent_entropy_execute(void)
+{
+ basic_block bb;
+ gimple assign;
@@ -138501,64 +138069,11 @@ index 0000000..161ab18
+// varpool_mark_needed_node(latent_entropy_decl);
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data latent_entropy_pass_data = {
-+#else
-+static struct gimple_opt_pass latent_entropy_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "latent_entropy",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = true,
-+ .has_execute = true,
-+#else
-+ .gate = gate_latent_entropy,
-+ .execute = execute_latent_entropy,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = PROP_gimple_leh | PROP_cfg,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0, //TODO_verify_ssa | TODO_verify_flow | TODO_verify_stmts,
-+ .todo_flags_finish = TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_update_ssa
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class latent_entropy_pass : public gimple_opt_pass {
-+public:
-+ latent_entropy_pass() : gimple_opt_pass(latent_entropy_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual bool gate(function *) { return gate_latent_entropy(); }
-+ virtual unsigned int execute(function *) { return execute_latent_entropy(); }
-+#else
-+ bool gate() { return gate_latent_entropy(); }
-+ unsigned int execute() { return execute_latent_entropy(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_latent_entropy_pass(void)
-+{
-+ return new latent_entropy_pass();
-+}
-+#else
-+static struct opt_pass *make_latent_entropy_pass(void)
-+{
-+ return &latent_entropy_pass.pass;
-+}
-+#endif
++#define PASS_NAME latent_entropy
++#define PROPERTIES_REQUIRED PROP_gimple_leh | PROP_cfg
++//#define TODO_FLAGS_START TODO_verify_ssa | TODO_verify_flow | TODO_verify_stmts
++#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_update_ssa
++#include "gcc-generate-gimple-pass.h"
+
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
@@ -138595,10 +138110,10 @@ index 0000000..161ab18
+}
diff --git a/tools/gcc/randomize_layout_plugin.c b/tools/gcc/randomize_layout_plugin.c
new file mode 100644
-index 0000000..444b8bd
+index 0000000..ca6ce54
--- /dev/null
+++ b/tools/gcc/randomize_layout_plugin.c
-@@ -0,0 +1,930 @@
+@@ -0,0 +1,879 @@
+/*
+ * Copyright 2014,2015 by Open Source Security, Inc., Brad Spengler <spender@grsecurity.net>
+ * and PaX Team <pageexec@freemail.hu>
@@ -139304,7 +138819,7 @@ index 0000000..444b8bd
+ * to a pointer of a structure of a different type, or a
+ * structure pointer type is cast to a different structure pointer type
+ */
-+static unsigned int find_bad_casts(void)
++static unsigned int find_bad_casts_execute(void)
+{
+ basic_block bb;
+
@@ -139414,61 +138929,10 @@ index 0000000..444b8bd
+ return 0;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+static const struct pass_data randomize_layout_bad_cast_data = {
-+#else
-+static struct gimple_opt_pass randomize_layout_bad_cast = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "randomize_layout_bad_cast",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION >= 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = find_bad_casts,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = PROP_cfg,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_dump_func
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+class randomize_layout_bad_cast : public gimple_opt_pass {
-+public:
-+ randomize_layout_bad_cast() : gimple_opt_pass(randomize_layout_bad_cast_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return find_bad_casts(); }
-+#else
-+ unsigned int execute() { return find_bad_casts(); }
-+#endif
-+};
-+}
-+#endif
-+
-+static struct opt_pass *make_randomize_layout_bad_cast(void)
-+{
-+#if BUILDING_GCC_VERSION >= 4009
-+ return new randomize_layout_bad_cast();
-+#else
-+ return &randomize_layout_bad_cast.pass;
-+#endif
-+}
++#define PASS_NAME find_bad_casts
++#define NO_GATE
++#define TODO_FLAGS_FINISH TODO_dump_func
++#include "gcc-generate-gimple-pass.h"
+
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
@@ -139478,12 +138942,12 @@ index 0000000..444b8bd
+ const struct plugin_argument * const argv = plugin_info->argv;
+ bool enable = true;
+ int obtained_seed = 0;
-+ struct register_pass_info randomize_layout_bad_cast_info;
++ struct register_pass_info find_bad_casts_pass_info;
+
-+ randomize_layout_bad_cast_info.pass = make_randomize_layout_bad_cast();
-+ randomize_layout_bad_cast_info.reference_pass_name = "ssa";
-+ randomize_layout_bad_cast_info.ref_pass_instance_number = 1;
-+ randomize_layout_bad_cast_info.pos_op = PASS_POS_INSERT_AFTER;
++ find_bad_casts_pass_info.pass = make_find_bad_casts_pass();
++ find_bad_casts_pass_info.reference_pass_name = "ssa";
++ find_bad_casts_pass_info.ref_pass_instance_number = 1;
++ find_bad_casts_pass_info.pos_op = PASS_POS_INSERT_AFTER;
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
+ error(G_("incompatible gcc/plugin versions"));
@@ -139521,7 +138985,7 @@ index 0000000..444b8bd
+ register_callback(plugin_name, PLUGIN_INFO, NULL, &randomize_layout_plugin_info);
+ if (enable) {
+ register_callback(plugin_name, PLUGIN_ALL_IPA_PASSES_START, check_global_variables, NULL);
-+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &randomize_layout_bad_cast_info);
++ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &find_bad_casts_pass_info);
+ register_callback(plugin_name, PLUGIN_FINISH_TYPE, finish_type, NULL);
+ register_callback(plugin_name, PLUGIN_FINISH_DECL, randomize_layout_finish_decl, NULL);
+ }
@@ -152123,10 +151587,10 @@ index 0000000..be9724d
+exit 0
diff --git a/tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c b/tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c
new file mode 100644
-index 0000000..cc20d48
+index 0000000..5aabc22
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c
-@@ -0,0 +1,416 @@
+@@ -0,0 +1,369 @@
+/*
+ * Copyright 2011-2015 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2, or (at your option) v3
@@ -152343,7 +151807,7 @@ index 0000000..cc20d48
+ * __asm__("# size_overflow MARK_END_INTENTIONAL" : =rm" D.3344_8 : "0" cicus.4_16);
+ * __asm__("# size_overflow MARK_NO" : =rm" cicus.4_16 : "0" size_1(D));
+ */
-+static void insert_size_overflow_asm(gimple stmt, unsigned int argnum, enum intentional_mark intentional_mark)
++static void __insert_size_overflow_asm(gimple stmt, unsigned int argnum, enum intentional_mark intentional_mark)
+{
+ struct asm_data asm_data;
+
@@ -152378,12 +151842,12 @@ index 0000000..cc20d48
+static void insert_so_asm_by_so_attr(gimple stmt, unsigned int orig_argnum)
+{
+ if (orig_argnum == 0 && gimple_code(stmt) == GIMPLE_RETURN) {
-+ insert_size_overflow_asm(stmt, 0, MARK_NO);
++ __insert_size_overflow_asm(stmt, 0, MARK_NO);
+ return;
+ }
+
+ if (orig_argnum != 0 && gimple_code(stmt) == GIMPLE_CALL)
-+ insert_size_overflow_asm(stmt, orig_argnum, MARK_NO);
++ __insert_size_overflow_asm(stmt, orig_argnum, MARK_NO);
+}
+
+// If a function arg or the return value is marked by the size_overflow attribute then set its index in the array.
@@ -152423,7 +151887,7 @@ index 0000000..cc20d48
+ fndecl = gimple_call_fndecl(stmt);
+ if (fndecl == NULL_TREE && !get_size_overflow_hash_entry_tree(fndecl, argnum, DISABLE_SIZE_OVERFLOW))
+ return MARK_NO;
-+ insert_size_overflow_asm(stmt, argnum, mark);
++ __insert_size_overflow_asm(stmt, argnum, mark);
+ return mark;
+}
+
@@ -152463,7 +151927,7 @@ index 0000000..cc20d48
+}
+
+// Iterate over all the stmts and search for call stmts and mark them if they have size_overflow attribute
-+static unsigned int search_interesting_functions(void)
++static unsigned int insert_size_overflow_asm_execute(void)
+{
+ basic_block bb;
+
@@ -152487,68 +151951,21 @@ index 0000000..cc20d48
+ * this pass inserts asm stmts to mark the interesting args
+ * that the ipa pass will detect and insert the size overflow checks for.
+ */
-+#if BUILDING_GCC_VERSION >= 4009
-+static const struct pass_data insert_size_overflow_asm_pass_data = {
-+#else
-+static struct gimple_opt_pass insert_size_overflow_asm_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "insert_size_overflow_asm",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION >= 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = search_interesting_functions,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = PROP_cfg,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_dump_func | TODO_verify_ssa | TODO_verify_stmts | TODO_remove_unused_locals | TODO_update_ssa_no_phi | TODO_cleanup_cfg | TODO_ggc_collect | TODO_verify_flow
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+class insert_size_overflow_asm_pass : public gimple_opt_pass {
-+public:
-+ insert_size_overflow_asm_pass() : gimple_opt_pass(insert_size_overflow_asm_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return search_interesting_functions(); }
-+#else
-+ unsigned int execute() { return search_interesting_functions(); }
-+#endif
-+};
-+}
++#define PASS_NAME insert_size_overflow_asm
+
-+opt_pass *make_insert_size_overflow_asm_pass(void)
-+{
-+ return new insert_size_overflow_asm_pass();
-+}
-+#else
-+struct opt_pass *make_insert_size_overflow_asm_pass(void)
-+{
-+ return &insert_size_overflow_asm_pass.pass;
-+}
-+#endif
++#define NO_GATE
++
++#define PROPERTIES_REQUIRED PROP_cfg
++#define TODO_FLAGS_FINISH TODO_dump_func | TODO_verify_ssa | TODO_verify_stmts | TODO_remove_unused_locals | TODO_update_ssa_no_phi | TODO_cleanup_cfg | TODO_ggc_collect | TODO_verify_flow
++
++#include "gcc-generate-gimple-pass.h"
diff --git a/tools/gcc/size_overflow_plugin/intentional_overflow.c b/tools/gcc/size_overflow_plugin/intentional_overflow.c
new file mode 100644
-index 0000000..bd18a67
+index 0000000..33b5b1d
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/intentional_overflow.c
-@@ -0,0 +1,1116 @@
+@@ -0,0 +1,1118 @@
+/*
+ * Copyright 2011-2015 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2, or (at your option) v3
@@ -153611,7 +153028,7 @@ index 0000000..bd18a67
+ const_tree rhs1, rhs2;
+
+ def_stmt = get_def_stmt(lhs);
-+ if (!def_stmt || gimple_assign_rhs_code(def_stmt) != MULT_EXPR)
++ if (!def_stmt || !is_gimple_assign(def_stmt) || gimple_assign_rhs_code(def_stmt) != MULT_EXPR)
+ return false;
+
+ rhs1 = gimple_assign_rhs1(def_stmt);
@@ -153633,7 +153050,7 @@ index 0000000..bd18a67
+ * _53 = _52 + 4096;
+ */
+
-+bool uconst_neg_intentional_overflow(struct visited *visited, const gassign *stmt)
++bool uconst_neg_intentional_overflow(const gassign *stmt)
+{
+ const_gimple def_stmt;
+ const_tree noconst_rhs;
@@ -153655,6 +153072,8 @@ index 0000000..bd18a67
+ // _52 = _49 + _51;
+ if (!def_stmt)
+ return false;
++ if (!is_gimple_assign(def_stmt))
++ return false;
+ if (gimple_assign_rhs_code(def_stmt) != PLUS_EXPR)
+ return false;
+ rhs1 = gimple_assign_rhs1(def_stmt);
@@ -153810,10 +153229,10 @@ index 0000000..5622b51
+
diff --git a/tools/gcc/size_overflow_plugin/size_overflow.h b/tools/gcc/size_overflow_plugin/size_overflow.h
new file mode 100644
-index 0000000..ee57a00
+index 0000000..b7f66f7
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/size_overflow.h
-@@ -0,0 +1,325 @@
+@@ -0,0 +1,329 @@
+#ifndef SIZE_OVERFLOW_H
+#define SIZE_OVERFLOW_H
+
@@ -154019,7 +153438,7 @@ index 0000000..ee57a00
+extern void unsigned_signed_cast_intentional_overflow(struct visited *visited, gassign *stmt);
+extern bool neg_short_add_intentional_overflow(gassign *stmt);
+extern bool is_bitfield_unnamed_cast(const_tree decl, gassign *assign);
-+extern bool uconst_neg_intentional_overflow(struct visited *visited, const gassign *stmt);
++extern bool uconst_neg_intentional_overflow(const gassign *stmt);
+
+
+// insert_size_overflow_asm.c
@@ -154064,7 +153483,7 @@ index 0000000..ee57a00
+ unsigned int num;
+};
+
-+extern unsigned int size_overflow_transform(struct cgraph_node *node);
++extern unsigned int size_overflow_function_transform(struct cgraph_node *node);
+extern tree handle_fnptr_assign(const_gimple stmt);
+
+
@@ -154101,9 +153520,9 @@ index 0000000..ee57a00
+extern next_interesting_function_t get_global_next_interesting_function_entry_with_hash(struct fn_raw_data *raw_data);
+extern void size_overflow_register_hooks(void);
+#if BUILDING_GCC_VERSION >= 4009
-+extern opt_pass *make_size_overflow_functions_pass(void);
++extern opt_pass *make_size_overflow_pass(void);
+#else
-+extern struct opt_pass *make_size_overflow_functions_pass(void);
++extern struct opt_pass *make_size_overflow_pass(void);
+#endif
+extern void size_overflow_node_removal_hook(struct cgraph_node *node, void *data);
+extern next_interesting_function_t get_and_create_next_node_from_global_next_nodes(struct fn_raw_data *raw_data, next_interesting_function_t orig_next_node);
@@ -154112,13 +153531,17 @@ index 0000000..ee57a00
+
+
+// size_overflow_lto.c
-+extern void size_overflow_read_summary_lto(void);
++extern void size_overflow_read_summary(void);
++extern void size_overflow_read_optimization_summary(void);
+#if BUILDING_GCC_VERSION >= 4008
-+extern void size_overflow_write_summary_lto(void);
++extern void size_overflow_write_summary(void);
++extern void size_overflow_write_optimization_summary(void);
+#elif BUILDING_GCC_VERSION >= 4006
-+extern void size_overflow_write_summary_lto(cgraph_node_set set, varpool_node_set vset);
++extern void size_overflow_write_summary(cgraph_node_set set, varpool_node_set vset);
++extern void size_overflow_write_optimization_summary(cgraph_node_set set, varpool_node_set vset);
+#else
-+extern void size_overflow_write_summary_lto(cgraph_node_set set);
++extern void size_overflow_write_summary(cgraph_node_set set);
++extern void size_overflow_write_optimization_summary(cgraph_node_set set);
+#endif
+
+// size_overflow_fnptrs.c
@@ -154341,18 +153764,20 @@ index 0000000..fc58e16
+}
diff --git a/tools/gcc/size_overflow_plugin/size_overflow_hash.data b/tools/gcc/size_overflow_plugin/size_overflow_hash.data
new file mode 100644
-index 0000000..9da833a
+index 0000000..35efc61
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/size_overflow_hash.data
-@@ -0,0 +1,21745 @@
+@@ -0,0 +1,21513 @@
+enable_so_recv_ctrl_pipe_us_data_0 recv_ctrl_pipe us_data 0 0 NULL
+enable_so___earlyonly_bootmem_alloc_fndecl_3 __earlyonly_bootmem_alloc fndecl 2-3-4 3 NULL
++enable_so_v9fs_xattr_get_acl_fndecl_4 v9fs_xattr_get_acl fndecl 5 4 NULL
+enable_so_size_ttm_mem_reg_8 size ttm_mem_reg 0 8 NULL
+enable_so_char2uni_nls_table_12 char2uni nls_table 0 12 NULL
+enable_so_nrbufs_pipe_inode_info_13 nrbufs pipe_inode_info 0 13 NULL nohasharray
+enable_so_logi_dj_recv_query_paired_devices_fndecl_13 logi_dj_recv_query_paired_devices fndecl 0 13 &enable_so_nrbufs_pipe_inode_info_13
+enable_so_payload_len_ipv6hdr_16 payload_len ipv6hdr 0 16 NULL
+enable_so_NumPhys__EVENT_DATA_SAS_EXPANDER_STATUS_CHANGE_17 NumPhys _EVENT_DATA_SAS_EXPANDER_STATUS_CHANGE 0 17 NULL
++enable_so_pci_mem_start_qed_dev_info_18 pci_mem_start qed_dev_info 0 18 NULL
+enable_so_max_name_len_fndecl_19 max_name_len fndecl 0 19 NULL nohasharray
+enable_so_kfd_wait_on_events_fndecl_19 kfd_wait_on_events fndecl 2 19 &enable_so_max_name_len_fndecl_19
+enable_so_ext4_seek_data_fndecl_21 ext4_seek_data fndecl 2 21 NULL
@@ -154360,13 +153785,11 @@ index 0000000..9da833a
+enable_so_max_cache_pages_snd_emu10k1_24 max_cache_pages snd_emu10k1 0 24 &enable_so_dma_buf_sz_sxgbe_priv_data_24
+enable_so_T9_reportid_max_mxt_data_25 T9_reportid_max mxt_data 0 25 NULL
+enable_so_max_frags_vxge_hw_fifo_config_26 max_frags vxge_hw_fifo_config 0 26 NULL
-+enable_so_snic_reset_stats_write_fndecl_30 snic_reset_stats_write fndecl 3 30 NULL
+enable_so_ocfs2_xattr_get_clusters_fndecl_34 ocfs2_xattr_get_clusters fndecl 0 34 NULL nohasharray
+enable_so_ath10k_core_create_fndecl_34 ath10k_core_create fndecl 1 34 &enable_so_ocfs2_xattr_get_clusters_fndecl_34
+enable_so_total_drm_buf_35 total drm_buf 0 35 NULL
+enable_so_sis5595_device_add_fndecl_39 sis5595_device_add fndecl 1 39 NULL
+enable_so_mc_vram_size_amdgpu_mc_45 mc_vram_size amdgpu_mc 0 45 NULL
-+enable_so_iwl_dbgfs_nvm_read_fndecl_54 iwl_dbgfs_nvm_read fndecl 3 54 NULL
+enable_so_pattern_len_tcf_em_text_57 pattern_len tcf_em_text 0 57 NULL nohasharray
+enable_so_p54_init_common_fndecl_57 p54_init_common fndecl 1 57 &enable_so_pattern_len_tcf_em_text_57
+enable_so_rx_desc_count_i40evf_adapter_62 rx_desc_count i40evf_adapter 0 62 NULL nohasharray
@@ -154378,16 +153801,14 @@ index 0000000..9da833a
+enable_so_mtt_seg_size_mthca_limits_72 mtt_seg_size mthca_limits 0 72 NULL
+enable_so_iov_iter_get_pages_alloc_fndecl_76 iov_iter_get_pages_alloc fndecl 0-3 76 NULL
+enable_so_iwch_reject_cr_fndecl_78 iwch_reject_cr fndecl 3 78 NULL
-+enable_so_data_size_data_queue_85 data_size data_queue 0 85 NULL nohasharray
-+enable_so_ieee80211_if_read_dot11MeshMaxPeerLinks_fndecl_85 ieee80211_if_read_dot11MeshMaxPeerLinks fndecl 3 85 &enable_so_data_size_data_queue_85
++enable_so_data_size_data_queue_85 data_size data_queue 0 85 NULL
+enable_so_ceph_dir_llseek_fndecl_99 ceph_dir_llseek fndecl 2 99 NULL
+enable_so_erase_size_flash_info_100 erase_size flash_info 0 100 NULL
+enable_so_ncp_do_request_fndecl_102 ncp_do_request fndecl 2-4-0 102 NULL
+enable_so_fi_blkno_ocfs2_find_inode_args_104 fi_blkno ocfs2_find_inode_args 0 104 NULL
+enable_so_phase_snd_usb_endpoint_106 phase snd_usb_endpoint 0 106 NULL
+enable_so_kvm_read_guest_fndecl_107 kvm_read_guest fndecl 2-4 107 NULL
-+enable_so_add_new_gdb_meta_bg_fndecl_116 add_new_gdb_meta_bg fndecl 3 116 NULL nohasharray
-+enable_so_ieee80211_if_read_hw_queues_fndecl_116 ieee80211_if_read_hw_queues fndecl 3 116 &enable_so_add_new_gdb_meta_bg_fndecl_116
++enable_so_add_new_gdb_meta_bg_fndecl_116 add_new_gdb_meta_bg fndecl 3 116 NULL
+enable_so_buffer_min_vardecl_floppy_c_117 buffer_min vardecl_floppy.c 0 117 NULL
+enable_so_needed_tailroom_net_device_118 needed_tailroom net_device 0 118 NULL
+enable_so_send_remove_xattr_fndecl_122 send_remove_xattr fndecl 4 122 NULL
@@ -154425,11 +153846,9 @@ index 0000000..9da833a
+enable_so_pvid_ocrdma_dev_231 pvid ocrdma_dev 0 231 NULL nohasharray
+enable_so_afs_cell_alloc_fndecl_231 afs_cell_alloc fndecl 2 231 &enable_so_pvid_ocrdma_dev_231
+enable_so_ad9523_write_fndecl_233 ad9523_write fndecl 2 233 NULL
-+enable_so_iwl_dbgfs_low_latency_read_fndecl_237 iwl_dbgfs_low_latency_read fndecl 3 237 NULL
+enable_so_ocfs2_mark_extent_refcounted_fndecl_240 ocfs2_mark_extent_refcounted fndecl 6-4 240 NULL
+enable_so_musb_readw_vardecl_241 musb_readw vardecl 0 241 NULL
+enable_so_sysv_inode_by_name_fndecl_242 sysv_inode_by_name fndecl 0 242 NULL
-+enable_so_adis16400_show_serial_number_fndecl_246 adis16400_show_serial_number fndecl 3 246 NULL
+enable_so_offset_nvkm_vma_248 offset nvkm_vma 0 248 NULL
+enable_so_amdgpu_vm_directory_size_fndecl_249 amdgpu_vm_directory_size fndecl 0 249 NULL
+enable_so_ixgbevf_change_mtu_fndecl_251 ixgbevf_change_mtu fndecl 2 251 NULL nohasharray
@@ -154438,7 +153857,8 @@ index 0000000..9da833a
+enable_so_minimum_acpi_address32_attribute_256 minimum acpi_address32_attribute 0 256 NULL
+enable_so_venus_symlink_fndecl_257 venus_symlink fndecl 6-4 257 NULL
+enable_so_l2cap_parse_conf_req_fndecl_260 l2cap_parse_conf_req fndecl 0 260 NULL
-+enable_so_lf_entries_gfs2_leaf_263 lf_entries gfs2_leaf 0 263 NULL
++enable_so_scsiback_max_buffer_pages_vardecl_xen_scsiback_c_263 scsiback_max_buffer_pages vardecl_xen-scsiback.c 0 263 NULL nohasharray
++enable_so_lf_entries_gfs2_leaf_263 lf_entries gfs2_leaf 0 263 &enable_so_scsiback_max_buffer_pages_vardecl_xen_scsiback_c_263
+enable_so_max_can_queue_fc_fcp_internal_270 max_can_queue fc_fcp_internal 0 270 NULL
+enable_so_dbg_leb_change_fndecl_272 dbg_leb_change fndecl 4 272 NULL
+enable_so_tcp_current_mss_fndecl_275 tcp_current_mss fndecl 0 275 NULL
@@ -154466,7 +153886,6 @@ index 0000000..9da833a
+enable_so_bNumConfigurations_usb_device_descriptor_360 bNumConfigurations usb_device_descriptor 0 360 NULL
+enable_so_link_buf_size_dvb_ca_slot_365 link_buf_size dvb_ca_slot 0 365 NULL
+enable_so_length_st21nfca_atr_req_366 length st21nfca_atr_req 0 366 NULL
-+enable_so_fusbh200_urb_done_fndecl_371 fusbh200_urb_done fndecl 3 371 NULL
+enable_so_setup_ctxt_fndecl_374 setup_ctxt fndecl 2 374 NULL nohasharray
+enable_so_intel_soc_dts_iosf_init_fndecl_374 intel_soc_dts_iosf_init fndecl 2 374 &enable_so_setup_ctxt_fndecl_374
+enable_so___i2400mu_send_barker_fndecl_375 __i2400mu_send_barker fndecl 3 375 NULL
@@ -154495,8 +153914,6 @@ index 0000000..9da833a
+enable_so___kfifo_max_r_fndecl_459 __kfifo_max_r fndecl 0-1-2 459 NULL nohasharray
+enable_so_root_entry_lctp_fndecl_459 root_entry_lctp fndecl 0 459 &enable_so___kfifo_max_r_fndecl_459
+enable_so_e_shnum_elf64_hdr_461 e_shnum elf64_hdr 0 461 NULL
-+enable_so_ssp_debug_mode_read_fndecl_463 ssp_debug_mode_read fndecl 3 463 NULL
-+enable_so_page_size_nvme_dev_465 page_size nvme_dev 0 465 NULL
+enable_so_udf_load_logicalvol_fndecl_471 udf_load_logicalvol fndecl 2 471 NULL nohasharray
+enable_so_rx_rx_dropped_frame_read_fndecl_471 rx_rx_dropped_frame_read fndecl 3 471 &enable_so_udf_load_logicalvol_fndecl_471
+enable_so_make_checksum_v2_fndecl_475 make_checksum_v2 fndecl 3-5 475 NULL
@@ -154509,7 +153926,6 @@ index 0000000..9da833a
+enable_so_rx_path_reset_read_fndecl_490 rx_path_reset_read fndecl 3 490 NULL
+enable_so_edid_store_fndecl_491 edid_store fndecl 6 491 NULL
+enable_so_sndbuf_size_net_conf_498 sndbuf_size net_conf 0 498 NULL
-+enable_so_cfg80211_inform_bss_width_frame_fndecl_501 cfg80211_inform_bss_width_frame fndecl 5 501 NULL
+enable_so_max_seg_sz_mmc_test_area_502 max_seg_sz mmc_test_area 0 502 NULL nohasharray
+enable_so_security_inode_getxattr_fndecl_502 security_inode_getxattr fndecl 0 502 &enable_so_max_seg_sz_mmc_test_area_502 nohasharray
+enable_so_ll_mtu_ipw_hardware_502 ll_mtu ipw_hardware 0 502 &enable_so_security_inode_getxattr_fndecl_502
@@ -154544,7 +153960,8 @@ index 0000000..9da833a
+enable_so_lcm_not_zero_fndecl_603 lcm_not_zero fndecl 2-0-1 603 NULL nohasharray
+enable_so_xfs_bmapi_read_fndecl_603 xfs_bmapi_read fndecl 3-2 603 &enable_so_lcm_not_zero_fndecl_603 nohasharray
+enable_so_sock_xmit_fndecl_603 sock_xmit fndecl 4 603 &enable_so_xfs_bmapi_read_fndecl_603
-+enable_so_FormattedSize_erase_unit_header_t_604 FormattedSize erase_unit_header_t 0 604 NULL
++enable_so_FormattedSize_erase_unit_header_t_604 FormattedSize erase_unit_header_t 0 604 NULL nohasharray
++enable_so_populate_msi_sysfs_fndecl_604 populate_msi_sysfs fndecl 0 604 &enable_so_FormattedSize_erase_unit_header_t_604
+enable_so_getxattr_fndecl_605 getxattr fndecl 4 605 NULL nohasharray
+enable_so_pvr2_v4l2_ioctl_fndecl_605 pvr2_v4l2_ioctl fndecl 2 605 &enable_so_getxattr_fndecl_605
+enable_so_copy_and_ioctl_fndecl_609 copy_and_ioctl fndecl 4 609 NULL
@@ -154582,7 +153999,6 @@ index 0000000..9da833a
+enable_so_mac_len_sk_buff_676 mac_len sk_buff 0 676 NULL
+enable_so_mbox_offset_sst_res_info_678 mbox_offset sst_res_info 0 678 NULL
+enable_so_page_order_sg_scatter_hold_679 page_order sg_scatter_hold 0 679 NULL
-+enable_so_stats_count_smsdvb_debugfs_683 stats_count smsdvb_debugfs 0 683 NULL
+enable_so_get_eeprom_len_ethtool_ops_686 get_eeprom_len ethtool_ops 0 686 NULL
+enable_so_follow_page_pte_fndecl_687 follow_page_pte fndecl 2 687 NULL
+enable_so_mchip_get_frame_fndecl_692 mchip_get_frame fndecl 0 692 NULL
@@ -154601,6 +154017,7 @@ index 0000000..9da833a
+enable_so_tsi148_alloc_resource_fndecl_736 tsi148_alloc_resource fndecl 2 736 NULL
+enable_so_write_cache_pages_fndecl_737 write_cache_pages fndecl 0 737 NULL
+enable_so_count_TxFifo_750 count TxFifo 0 750 NULL
++enable_so_add_falloc_range_fndecl_751 add_falloc_range fndecl 2 751 NULL
+enable_so_DataBufsSize_snd_korg1212_758 DataBufsSize snd_korg1212 0 758 NULL
+enable_so_ilf_len_xfs_inode_log_format_759 ilf_len xfs_inode_log_format 0 759 NULL
+enable_so_tda8083_readregs_fndecl_764 tda8083_readregs fndecl 4 764 NULL nohasharray
@@ -154623,7 +154040,6 @@ index 0000000..9da833a
+enable_so_SyS_sethostname_fndecl_837 SyS_sethostname fndecl 2 837 NULL
+enable_so_mdata_ofsh_cyttsp4_sysinfo_data_844 mdata_ofsh cyttsp4_sysinfo_data 0 844 NULL
+enable_so_s_inopb_ufs_sb_private_info_849 s_inopb ufs_sb_private_info 0 849 NULL
-+enable_so__picolcd_flash_write_fndecl_853 _picolcd_flash_write fndecl 4 853 NULL
+enable_so_irnet_ctrl_write_fndecl_856 irnet_ctrl_write fndecl 3 856 NULL
+enable_so_rsi_copy_to_card_fndecl_858 rsi_copy_to_card fndecl 3 858 NULL nohasharray
+enable_so_nilfs_inode_by_name_fndecl_858 nilfs_inode_by_name fndecl 0 858 &enable_so_rsi_copy_to_card_fndecl_858
@@ -154639,7 +154055,6 @@ index 0000000..9da833a
+enable_so_vm_normal_page_fndecl_897 vm_normal_page fndecl 2 897 NULL
+enable_so_rdma_copy_tail_fndecl_898 rdma_copy_tail fndecl 3 898 NULL nohasharray
+enable_so_cpu_mask_len_res_opts_898 cpu_mask_len res_opts 0 898 &enable_so_rdma_copy_tail_fndecl_898
-+enable_so_ieee80211_if_read_dot11MeshHWMPpreqMinInterval_fndecl_899 ieee80211_if_read_dot11MeshHWMPpreqMinInterval fndecl 3 899 NULL
+enable_so_user_bs_factor_ide_tape_obj_906 user_bs_factor ide_tape_obj 0 906 NULL
+enable_so_good_bytes_nfs_pgio_header_909 good_bytes nfs_pgio_header 0 909 NULL nohasharray
+enable_so_tcpprobe_sprint_fndecl_909 tcpprobe_sprint fndecl 0 909 &enable_so_good_bytes_nfs_pgio_header_909
@@ -154652,11 +154067,9 @@ index 0000000..9da833a
+enable_so_isofs_bread_fndecl_929 isofs_bread fndecl 2 929 NULL
+enable_so_xpnet_dev_change_mtu_fndecl_932 xpnet_dev_change_mtu fndecl 2 932 NULL
+enable_so_nfrags_pkt_gl_937 nfrags pkt_gl 0 937 NULL
-+enable_so_max_sense_bytes_mpt2_ioctl_command_942 max_sense_bytes mpt2_ioctl_command 0 942 NULL
+enable_so_icmp_len_batadv_socket_packet_944 icmp_len batadv_socket_packet 0 944 NULL
+enable_so_pcpu_embed_first_chunk_fndecl_947 pcpu_embed_first_chunk fndecl 3-2-1 947 NULL nohasharray
+enable_so_mei_amthif_read_fndecl_947 mei_amthif_read fndecl 4 947 &enable_so_pcpu_embed_first_chunk_fndecl_947
-+enable_so_lprocfs_alloc_obd_stats_fndecl_950 lprocfs_alloc_obd_stats fndecl 2 950 NULL
+enable_so_pci_num_vf_fndecl_952 pci_num_vf fndecl 0 952 NULL
+enable_so_ssid_len_wireless_dev_954 ssid_len wireless_dev 0 954 NULL
+enable_so_length_ndis_80211_bssid_ex_955 length ndis_80211_bssid_ex 0 955 NULL
@@ -154666,13 +154079,13 @@ index 0000000..9da833a
+enable_so_avc_tuner_tuneqpsk_fndecl_978 avc_tuner_tuneqpsk fndecl 0 978 NULL
+enable_so_em28xx_alloc_urbs_fndecl_983 em28xx_alloc_urbs fndecl 5-6-4 983 NULL nohasharray
+enable_so_s_blocks_count_hi_ext4_super_block_983 s_blocks_count_hi ext4_super_block 0 983 &enable_so_em28xx_alloc_urbs_fndecl_983
-+enable_so_sm501_create_subio_fndecl_985 sm501_create_subio fndecl 4-3 985 NULL
++enable_so_nd_integrity_init_fndecl_985 nd_integrity_init fndecl 2 985 NULL nohasharray
++enable_so_sm501_create_subio_fndecl_985 sm501_create_subio fndecl 4-3 985 &enable_so_nd_integrity_init_fndecl_985
+enable_so_esp6_get_mtu_fndecl_987 esp6_get_mtu fndecl 0-2 987 NULL
+enable_so_total_blocks_hfsplus_fork_raw_988 total_blocks hfsplus_fork_raw 0 988 NULL
+enable_so_acc_userl_accessdata_dn_989 acc_userl accessdata_dn 0 989 NULL
+enable_so_unlock_extent_fndecl_990 unlock_extent fndecl 2-3 990 NULL
+enable_so_gtt_size_amdgpu_mc_994 gtt_size amdgpu_mc 0 994 NULL
-+enable_so_btmrvl_pscmd_read_fndecl_999 btmrvl_pscmd_read fndecl 3 999 NULL
+enable_so_ContainerSwitchEntries_aac_get_container_count_resp_1001 ContainerSwitchEntries aac_get_container_count_resp 0 1001 NULL
+enable_so_reserve_metadata_bytes_fndecl_1002 reserve_metadata_bytes fndecl 0 1002 NULL
+enable_so_cpu_count_MPT3SAS_ADAPTER_1003 cpu_count MPT3SAS_ADAPTER 0 1003 NULL
@@ -154723,7 +154136,6 @@ index 0000000..9da833a
+enable_so_ResponseDataLength__MPI2_SMP_PASSTHROUGH_REPLY_1113 ResponseDataLength _MPI2_SMP_PASSTHROUGH_REPLY 0 1113 NULL
+enable_so_io_free_memtype_fndecl_1116 io_free_memtype fndecl 1-2 1116 NULL
+enable_so_create_attr_set_fndecl_1118 create_attr_set fndecl 1 1118 NULL
-+enable_so_slave_cnt_bonding_1119 slave_cnt bonding 0 1119 NULL
+enable_so_rxkad_decrypt_ticket_fndecl_1120 rxkad_decrypt_ticket fndecl 3 1120 NULL
+enable_so_mdc800_device_read_fndecl_1123 mdc800_device_read fndecl 3 1123 NULL
+enable_so_ctl_in_pipe_brcmf_usbdev_info_1124 ctl_in_pipe brcmf_usbdev_info 0 1124 NULL
@@ -154747,13 +154159,11 @@ index 0000000..9da833a
+enable_so_br_vlan_add_fndecl_1177 br_vlan_add fndecl 2 1177 NULL
+enable_so_resp_disconnect_pg_fndecl_1178 resp_disconnect_pg fndecl 0 1178 NULL
+enable_so_nr_push_drm_nouveau_gem_pushbuf_1184 nr_push drm_nouveau_gem_pushbuf 0 1184 NULL
-+enable_so_alloc_sglist_fndecl_1187 alloc_sglist fndecl 3-2-1 1187 NULL
+enable_so_mxr_mplane_fill_fndecl_1189 mxr_mplane_fill fndecl 3-4 1189 NULL
+enable_so_vme_get_size_fndecl_1191 vme_get_size fndecl 0 1191 NULL
+enable_so_tx_frag_key_not_found_read_fndecl_1192 tx_frag_key_not_found_read fndecl 3 1192 NULL
+enable_so_probe_resp_len_cfg80211_beacon_data_1195 probe_resp_len cfg80211_beacon_data 0 1195 NULL
+enable_so_rdmarc_per_qp_mlx4_profile_1197 rdmarc_per_qp mlx4_profile 0 1197 NULL
-+enable_so_adf_create_ring_fndecl_1199 adf_create_ring fndecl 5 1199 NULL
+enable_so_nfs4_get_security_label_fndecl_1201 nfs4_get_security_label fndecl 3 1201 NULL nohasharray
+enable_so_rx_sdu_size_tsap_cb_1201 rx_sdu_size tsap_cb 0 1201 &enable_so_nfs4_get_security_label_fndecl_1201
+enable_so_pvscsi_ring_pages_vardecl_vmw_pvscsi_c_1202 pvscsi_ring_pages vardecl_vmw_pvscsi.c 0 1202 NULL
@@ -154762,7 +154172,8 @@ index 0000000..9da833a
+enable_so_max_sge_mvumi_hba_1213 max_sge mvumi_hba 0 1213 NULL
+enable_so_logfs_segment_write_compress_fndecl_1214 logfs_segment_write_compress fndecl 5 1214 NULL
+enable_so_max_transfer_bytes_storvsc_device_1221 max_transfer_bytes storvsc_device 0 1221 NULL
-+enable_so_max_pkt_size_au0828_dev_1222 max_pkt_size au0828_dev 0 1222 NULL
++enable_so_tcp_synack_options_fndecl_1222 tcp_synack_options fndecl 0 1222 NULL nohasharray
++enable_so_max_pkt_size_au0828_dev_1222 max_pkt_size au0828_dev 0 1222 &enable_so_tcp_synack_options_fndecl_1222
+enable_so_segno_curseg_info_1223 segno curseg_info 0 1223 NULL
+enable_so_pfkey_sendmsg_fndecl_1225 pfkey_sendmsg fndecl 3 1225 NULL
+enable_so_i_sblock_bfs_inode_info_1228 i_sblock bfs_inode_info 0 1228 NULL
@@ -154800,23 +154211,23 @@ index 0000000..9da833a
+enable_so_flctl_cmdfunc_fndecl_1333 flctl_cmdfunc fndecl 3 1333 NULL
+enable_so_ufs_alloc_lastblock_fndecl_1339 ufs_alloc_lastblock fndecl 2 1339 NULL
+enable_so_fat_parse_short_fndecl_1348 fat_parse_short fndecl 0 1348 NULL
++enable_so_ipr_number_of_msix_vardecl_ipr_c_1349 ipr_number_of_msix vardecl_ipr.c 0 1349 NULL
+enable_so_current_limit_memblock_1350 current_limit memblock 0 1350 NULL
+enable_so_ccp_set_dm_area_fndecl_1351 ccp_set_dm_area fndecl 4 1351 NULL
-+enable_so_btrfs_delalloc_reserve_space_fndecl_1354 btrfs_delalloc_reserve_space fndecl 0 1354 NULL
+enable_so_MemReadHSCX_fndecl_1364 MemReadHSCX fndecl 0 1364 NULL
+enable_so_len_btrfs_ordered_sum_1365 len btrfs_ordered_sum 0 1365 NULL nohasharray
+enable_so_max_num_of_queues_per_device_vardecl_1365 max_num_of_queues_per_device vardecl 0 1365 &enable_so_len_btrfs_ordered_sum_1365
-+enable_so_tx_ring_count_xgbe_prv_data_1366 tx_ring_count xgbe_prv_data 0 1366 NULL
++enable_so_page_offset_hnae_desc_cb_1366 page_offset hnae_desc_cb 0 1366 NULL nohasharray
++enable_so_tx_ring_count_xgbe_prv_data_1366 tx_ring_count xgbe_prv_data 0 1366 &enable_so_page_offset_hnae_desc_cb_1366
+enable_so_len_orinoco_scan_data_1370 len orinoco_scan_data 0 1370 NULL nohasharray
+enable_so_dlen_hci_sco_hdr_1370 dlen hci_sco_hdr 0 1370 &enable_so_len_orinoco_scan_data_1370
++enable_so_cfs_expr_list_values_fndecl_1371 cfs_expr_list_values fndecl 0 1371 NULL
+enable_so_v_total_aty128_crtc_1375 v_total aty128_crtc 0 1375 NULL
+enable_so_reiserfs_get_block_fndecl_1379 reiserfs_get_block fndecl 2 1379 NULL
+enable_so_w_drm_vmw_rect_1383 w drm_vmw_rect 0 1383 NULL
+enable_so_ieee80211_probereq_get_fndecl_1384 ieee80211_probereq_get fndecl 5-4 1384 NULL
-+enable_so_iwl_dbgfs_calib_disabled_read_fndecl_1386 iwl_dbgfs_calib_disabled_read fndecl 3 1386 NULL
+enable_so_vlen_nfsd3_writeargs_1388 vlen nfsd3_writeargs 0 1388 NULL
+enable_so_smsc911x_rx_get_rxstatus_fndecl_1389 smsc911x_rx_get_rxstatus fndecl 0 1389 NULL
-+enable_so_iwl_dbgfs_rx_phyinfo_read_fndecl_1394 iwl_dbgfs_rx_phyinfo_read fndecl 3 1394 NULL
+enable_so_stepped_offset_skb_seq_state_1395 stepped_offset skb_seq_state 0 1395 NULL
+enable_so_sctp_setsockopt_connectx_old_fndecl_1396 sctp_setsockopt_connectx_old fndecl 3 1396 NULL
+enable_so_len_wsm_hdr_1398 len wsm_hdr 0 1398 NULL
@@ -154825,7 +154236,6 @@ index 0000000..9da833a
+enable_so_cmd_size_scsi_host_template_1404 cmd_size scsi_host_template 0 1404 NULL
+enable_so_wl1271_rx_filter_get_fields_size_fndecl_1405 wl1271_rx_filter_get_fields_size fndecl 0 1405 NULL
+enable_so_num_hsi_port_1406 num hsi_port 0 1406 NULL
-+enable_so_ide_core_cp_entry_fndecl_1407 ide_core_cp_entry fndecl 3 1407 NULL
+enable_so_ec_hdr_alsize_ubi_device_1411 ec_hdr_alsize ubi_device 0 1411 NULL
+enable_so_ubifs_leb_write_fndecl_1412 ubifs_leb_write fndecl 5-4 1412 NULL nohasharray
+enable_so_num_rx_bds_bcmgenet_priv_1412 num_rx_bds bcmgenet_priv 0 1412 &enable_so_ubifs_leb_write_fndecl_1412
@@ -154850,12 +154260,12 @@ index 0000000..9da833a
+enable_so_ceph_decode_32_fndecl_1473 ceph_decode_32 fndecl 0 1473 NULL
+enable_so_xenbus_map_ring_valloc_pv_fndecl_1474 xenbus_map_ring_valloc_pv fndecl 3 1474 NULL
+enable_so_ax25_output_fndecl_1475 ax25_output fndecl 2 1475 NULL
-+enable_so_iio_debugfs_write_reg_fndecl_1477 iio_debugfs_write_reg fndecl 3 1477 NULL
+enable_so_pbus_size_io_fndecl_1478 pbus_size_io fndecl 2 1478 NULL
+enable_so_nfs3_proc_symlink_fndecl_1479 nfs3_proc_symlink fndecl 4 1479 NULL
+enable_so_iscsi_sw_tcp_send_data_prep_fndecl_1485 iscsi_sw_tcp_send_data_prep fndecl 5-4 1485 NULL
+enable_so_irq_base_max8925_chip_1487 irq_base max8925_chip 0 1487 NULL
-+enable_so_ecryptfs_write_metadata_to_contents_fndecl_1490 ecryptfs_write_metadata_to_contents fndecl 3 1490 NULL
++enable_so_free_xenballooned_pages_fndecl_1490 free_xenballooned_pages fndecl 1 1490 NULL nohasharray
++enable_so_ecryptfs_write_metadata_to_contents_fndecl_1490 ecryptfs_write_metadata_to_contents fndecl 3 1490 &enable_so_free_xenballooned_pages_fndecl_1490
+enable_so_de4x5_alloc_rx_buff_fndecl_1491 de4x5_alloc_rx_buff fndecl 3 1491 NULL
+enable_so_n_channels_ieee80211_supported_band_1494 n_channels ieee80211_supported_band 0 1494 NULL
+enable_so_blocks_count_ext4_new_group_data_1496 blocks_count ext4_new_group_data 0 1496 NULL
@@ -154865,7 +154275,6 @@ index 0000000..9da833a
+enable_so_num_step_snd_ratden_1500 num_step snd_ratden 0 1500 NULL nohasharray
+enable_so_cx18_copy_buf_to_user_fndecl_1500 cx18_copy_buf_to_user fndecl 4-0 1500 &enable_so_num_step_snd_ratden_1500
+enable_so_uvc_video_decode_start_fndecl_1505 uvc_video_decode_start fndecl 0 1505 NULL
-+enable_so_print_frame_fndecl_1506 print_frame fndecl 0 1506 NULL
+enable_so_bo_info_size_drm_amdgpu_bo_list_in_1510 bo_info_size drm_amdgpu_bo_list_in 0 1510 NULL
+enable_so_dma_data_req_size_ivtv_1512 dma_data_req_size ivtv 0 1512 NULL
+enable_so_initiate_new_session_fndecl_1514 initiate_new_session fndecl 6 1514 NULL nohasharray
@@ -154901,6 +154310,7 @@ index 0000000..9da833a
+enable_so_target_length_spar_controlvm_parameters_header_1600 target_length spar_controlvm_parameters_header 0 1600 &enable_so_size_icp_qat_uof_batch_init_1600
+enable_so_block_size_c2port_ops_1610 block_size c2port_ops 0 1610 NULL
+enable_so_pppoe_sendmsg_fndecl_1612 pppoe_sendmsg fndecl 3 1612 NULL
++enable_so_skl_get_module_param_size_fndecl_1615 skl_get_module_param_size fndecl 0 1615 NULL
+enable_so_tsout_exchange_fndecl_1621 tsout_exchange fndecl 3 1621 NULL
+enable_so_rawv6_send_hdrinc_fndecl_1625 rawv6_send_hdrinc fndecl 3 1625 NULL nohasharray
+enable_so_max_frame_size_usb_usbvision_1625 max_frame_size usb_usbvision 0 1625 &enable_so_rawv6_send_hdrinc_fndecl_1625
@@ -154924,7 +154334,8 @@ index 0000000..9da833a
+enable_so_size_grcan_dma_buffer_1702 size grcan_dma_buffer 0 1702 NULL
+enable_so_divasa_remap_pci_bar_fndecl_1710 divasa_remap_pci_bar fndecl 4-3 1710 NULL nohasharray
+enable_so_get_cap_size_qlcnic_hardware_ops_1710 get_cap_size qlcnic_hardware_ops 0 1710 &enable_so_divasa_remap_pci_bar_fndecl_1710 nohasharray
-+enable_so_linear_conf_fndecl_1710 linear_conf fndecl 2 1710 &enable_so_get_cap_size_qlcnic_hardware_ops_1710
++enable_so_setup_msi_irqs_x86_msi_ops_1710 setup_msi_irqs x86_msi_ops 0 1710 &enable_so_get_cap_size_qlcnic_hardware_ops_1710 nohasharray
++enable_so_linear_conf_fndecl_1710 linear_conf fndecl 2 1710 &enable_so_setup_msi_irqs_x86_msi_ops_1710
+enable_so_ext4_getblk_fndecl_1720 ext4_getblk fndecl 3 1720 NULL
+enable_so_yres_drm_cmdline_mode_1722 yres drm_cmdline_mode 0 1722 NULL
+enable_so_qtd_fill_fndecl_1725 qtd_fill fndecl 4-5-2-0-3 1725 NULL
@@ -154935,7 +154346,8 @@ index 0000000..9da833a
+enable_so___gfn_to_hva_many_fndecl_1735 __gfn_to_hva_many fndecl 0-2 1735 NULL
+enable_so_l4_hdr_size_vmxnet3_tx_ctx_1737 l4_hdr_size vmxnet3_tx_ctx 0 1737 NULL
+enable_so_userspace_do_request_fndecl_1738 userspace_do_request fndecl 5 1738 NULL
-+enable_so_pci_omegapci_setup_fndecl_1740 pci_omegapci_setup fndecl 4 1740 NULL
++enable_so_pci_omegapci_setup_fndecl_1740 pci_omegapci_setup fndecl 4 1740 NULL nohasharray
++enable_so_size_nhlt_specific_cfg_1740 size nhlt_specific_cfg 0 1740 &enable_so_pci_omegapci_setup_fndecl_1740
+enable_so_ad_sd_write_reg_fndecl_1743 ad_sd_write_reg fndecl 3 1743 NULL nohasharray
+enable_so_nr_packets_saa7134_ts_1743 nr_packets saa7134_ts 0 1743 &enable_so_ad_sd_write_reg_fndecl_1743
+enable_so_compat_filldir_fndecl_1746 compat_filldir fndecl 3 1746 NULL
@@ -154944,7 +154356,8 @@ index 0000000..9da833a
+enable_so_copy_module_from_user_fndecl_1751 copy_module_from_user fndecl 2 1751 NULL
+enable_so_hugetlbfs_fallocate_fndecl_1752 hugetlbfs_fallocate fndecl 3-4 1752 NULL
+enable_so_it_context_mask_fw_ohci_1753 it_context_mask fw_ohci 0 1753 NULL
-+enable_so_ext4_remove_blocks_fndecl_1754 ext4_remove_blocks fndecl 5 1754 NULL
++enable_so_ext4_remove_blocks_fndecl_1754 ext4_remove_blocks fndecl 5 1754 NULL nohasharray
++enable_so_st_nci_hci_dm_field_generator_fndecl_1754 st_nci_hci_dm_field_generator fndecl 3 1754 &enable_so_ext4_remove_blocks_fndecl_1754
+enable_so_len_pda_custom_wrapper_1757 len pda_custom_wrapper 0 1757 NULL nohasharray
+enable_so_lustre_acl_xattr_merge2ext_fndecl_1757 lustre_acl_xattr_merge2ext fndecl 2 1757 &enable_so_len_pda_custom_wrapper_1757
+enable_so_offset_scrub_nocow_inode_1762 offset scrub_nocow_inode 0 1762 NULL
@@ -154955,14 +154368,12 @@ index 0000000..9da833a
+enable_so_key_length_mwifiex_wep_key_1784 key_length mwifiex_wep_key 0 1784 NULL
+enable_so___of_translate_address_fndecl_1786 __of_translate_address fndecl 0 1786 NULL
+enable_so_port_pd_mlx4_av_1788 port_pd mlx4_av 0 1788 NULL
-+enable_so_ovs_fragment_fndecl_1791 ovs_fragment fndecl 3 1791 NULL
+enable_so_pitch_radeonfb_info_1792 pitch radeonfb_info 0 1792 NULL
+enable_so_reiserfs_add_entry_fndecl_1797 reiserfs_add_entry fndecl 4 1797 NULL
+enable_so_vub300_usb_bulk_msg_fndecl_1799 vub300_usb_bulk_msg fndecl 4-2 1799 NULL nohasharray
+enable_so_security_inode_killpriv_fndecl_1799 security_inode_killpriv fndecl 0 1799 &enable_so_vub300_usb_bulk_msg_fndecl_1799
+enable_so_wl1273_fm_write_data_fndecl_1803 wl1273_fm_write_data fndecl 3 1803 NULL
+enable_so_num_mtt_segs_mthca_limits_1806 num_mtt_segs mthca_limits 0 1806 NULL
-+enable_so_mei_cl_send_fndecl_1807 mei_cl_send fndecl 3 1807 NULL
+enable_so_dataInSize_mpt_ioctl_command_1808 dataInSize mpt_ioctl_command 0 1808 NULL
+enable_so_udl_gem_alloc_object_fndecl_1811 udl_gem_alloc_object fndecl 2 1811 NULL
+enable_so___hugepage_set_anon_rmap_fndecl_1814 __hugepage_set_anon_rmap fndecl 3 1814 NULL nohasharray
@@ -154971,7 +154382,6 @@ index 0000000..9da833a
+enable_so_bufsize_saa7134_dmasound_1821 bufsize saa7134_dmasound 0 1821 NULL
+enable_so_lleft_ext4_allocation_request_1823 lleft ext4_allocation_request 0 1823 NULL nohasharray
+enable_so_s_size_qib_qp_1823 s_size qib_qp 0 1823 &enable_so_lleft_ext4_allocation_request_1823
-+enable_so_rt2x00debug_write_eeprom_fndecl_1824 rt2x00debug_write_eeprom fndecl 3 1824 NULL
+enable_so_num_vectors_e1000_adapter_1827 num_vectors e1000_adapter 0 1827 NULL
+enable_so___add_prelim_ref_fndecl_1828 __add_prelim_ref fndecl 6-5-2 1828 NULL
+enable_so_ntfs_ucstonls_fndecl_1834 ntfs_ucstonls fndecl 3-5 1834 NULL
@@ -154986,7 +154396,7 @@ index 0000000..9da833a
+enable_so_isr_tx_procs_read_fndecl_1855 isr_tx_procs_read fndecl 3 1855 NULL
+enable_so_drm_mode_create_tv_properties_fndecl_1857 drm_mode_create_tv_properties fndecl 2 1857 NULL
+enable_so_dm_write_async_fndecl_1859 dm_write_async fndecl 3 1859 NULL
-+enable_so_read_file_wow_fndecl_1861 read_file_wow fndecl 3 1861 NULL
++enable_so_da9150_write_qif_fndecl_1872 da9150_write_qif fndecl 3 1872 NULL
+enable_so_rxq_req_tg3_1873 rxq_req tg3 0 1873 NULL
+enable_so_nl80211_send_rx_auth_fndecl_1876 nl80211_send_rx_auth fndecl 4 1876 NULL nohasharray
+enable_so_bset_tree_bytes_fndecl_1876 bset_tree_bytes fndecl 0 1876 &enable_so_nl80211_send_rx_auth_fndecl_1876
@@ -154995,8 +154405,6 @@ index 0000000..9da833a
+enable_so_buf_size_cx18_stream_1878 buf_size cx18_stream 0 1878 &enable_so_sisusb_bulkin_msg_fndecl_1878
+enable_so_num_vmdq_vsis_i40e_pf_1882 num_vmdq_vsis i40e_pf 0 1882 NULL
+enable_so___clear_user_fndecl_1885 __clear_user fndecl 0 1885 NULL
-+enable_so_partial_shdma_desc_1886 partial shdma_desc 0 1886 NULL
-+enable_so__iwl_dbgfs_fw_dbg_collect_write_fndecl_1890 _iwl_dbgfs_fw_dbg_collect_write fndecl 3 1890 NULL
+enable_so_vmxnet3_get_hdr_len_fndecl_1891 vmxnet3_get_hdr_len fndecl 0 1891 NULL
+enable_so_read_file_ani_fndecl_1898 read_file_ani fndecl 3 1898 NULL
+enable_so_cq_ecount_lpfc_sli4_hba_1907 cq_ecount lpfc_sli4_hba 0 1907 NULL
@@ -155022,13 +154430,13 @@ index 0000000..9da833a
+enable_so_tipc_sendmcast_fndecl_1981 tipc_sendmcast fndecl 4 1981 NULL nohasharray
+enable_so_ll_md_brw_size_ll_sb_info_1981 ll_md_brw_size ll_sb_info 0 1981 &enable_so_tipc_sendmcast_fndecl_1981
+enable_so_i5k_find_amb_registers_fndecl_1986 i5k_find_amb_registers fndecl 2 1986 NULL
-+enable_so_mwifiex_memrw_read_fndecl_1997 mwifiex_memrw_read fndecl 3 1997 NULL
+enable_so_total_memory_vbe_ib_1999 total_memory vbe_ib 0 1999 NULL
+enable_so_idx_len_tg3_rx_buffer_desc_2006 idx_len tg3_rx_buffer_desc 0 2006 NULL
+enable_so_alauda_read_block_fndecl_2008 alauda_read_block fndecl 4 2008 NULL
+enable_so_ipv6_skip_exthdr_fndecl_2016 ipv6_skip_exthdr fndecl 0-2 2016 NULL
+enable_so_madvise_vma_fndecl_2019 madvise_vma fndecl 4-3 2019 NULL
-+enable_so_ec_i2c_count_message_fndecl_2022 ec_i2c_count_message fndecl 0-2 2022 NULL nohasharray
++enable_so_complicated_alloc_urb_fndecl_2022 complicated_alloc_urb fndecl 3-2 2022 NULL nohasharray
++enable_so_ec_i2c_count_message_fndecl_2022 ec_i2c_count_message fndecl 0-2 2022 &enable_so_complicated_alloc_urb_fndecl_2022 nohasharray
+enable_so_doc_probe_fndecl_2022 doc_probe fndecl 1 2022 &enable_so_ec_i2c_count_message_fndecl_2022
+enable_so_vga_vram_base_vardecl_vgacon_c_2024 vga_vram_base vardecl_vgacon.c 0 2024 NULL
+enable_so_max_write_fuse_conn_2028 max_write fuse_conn 0 2028 NULL
@@ -155057,8 +154465,9 @@ index 0000000..9da833a
+enable_so_max_pkt_payload_len_nci_conn_info_2111 max_pkt_payload_len nci_conn_info 0 2111 NULL
+enable_so_oom_adj_read_fndecl_2116 oom_adj_read fndecl 3 2116 NULL
+enable_so_ecryptfs_truncate_fndecl_2118 ecryptfs_truncate fndecl 2 2118 NULL
-+enable_so_rxfrag_size_ipg_nic_private_2119 rxfrag_size ipg_nic_private 0 2119 NULL
++enable_so_snd_timer_user_gstatus_fndecl_2121 snd_timer_user_gstatus fndecl 0 2121 NULL
+enable_so_untrack_pfn_fndecl_2124 untrack_pfn fndecl 3 2124 NULL
++enable_so_mt76_ampdu_action_fndecl_2126 mt76_ampdu_action fndecl 5 2126 NULL
+enable_so_gen_unique_name_fndecl_2127 gen_unique_name fndecl 0 2127 NULL
+enable_so_sector_size_nd_blk_device_2130 sector_size nd_blk_device 0 2130 NULL
+enable_so_dce_v10_0_afmt_update_ACR_fndecl_2133 dce_v10_0_afmt_update_ACR fndecl 2 2133 NULL
@@ -155069,7 +154478,6 @@ index 0000000..9da833a
+enable_so_dma_len_srp_map_state_2141 dma_len srp_map_state 0 2141 NULL nohasharray
+enable_so_smb_init_fndecl_2141 smb_init fndecl 2 2141 &enable_so_dma_len_srp_map_state_2141 nohasharray
+enable_so_connection_length_spar_controlvm_parameters_header_2141 connection_length spar_controlvm_parameters_header 0 2141 &enable_so_smb_init_fndecl_2141
-+enable_so__iwl_dbgfs_sta_drain_write_fndecl_2142 _iwl_dbgfs_sta_drain_write fndecl 3 2142 NULL
+enable_so_capacity_p9_fcall_2144 capacity p9_fcall 0 2144 NULL
+enable_so_sisusbcon_bmove_fndecl_2146 sisusbcon_bmove fndecl 7-5-6 2146 NULL
+enable_so_multi_ios_hda_gen_spec_2147 multi_ios hda_gen_spec 0 2147 NULL
@@ -155077,7 +154485,6 @@ index 0000000..9da833a
+enable_so_mpc_new_length_vardecl_mpparse_c_2163 mpc_new_length vardecl_mpparse.c 0 2163 NULL nohasharray
+enable_so_block_size__drive_info_struct_2163 block_size _drive_info_struct 0 2163 &enable_so_mpc_new_length_vardecl_mpparse_c_2163
+enable_so___kfifo_dma_out_prepare_fndecl_2165 __kfifo_dma_out_prepare fndecl 4 2165 NULL
-+enable_so_lpfc_idiag_extacc_avail_get_fndecl_2170 lpfc_idiag_extacc_avail_get fndecl 3-0 2170 NULL
+enable_so_read_size_perf_event_2173 read_size perf_event 0 2173 NULL
+enable_so_ext4_setup_next_flex_gd_fndecl_2174 ext4_setup_next_flex_gd fndecl 4 2174 NULL
+enable_so_qsfp_1_read_fndecl_2184 qsfp_1_read fndecl 3 2184 NULL
@@ -155118,7 +154525,6 @@ index 0000000..9da833a
+enable_so_af9033_wr_regs_fndecl_2314 af9033_wr_regs fndecl 4 2314 NULL nohasharray
+enable_so_read_pointer_st_buffer_2314 read_pointer st_buffer 0 2314 &enable_so_af9033_wr_regs_fndecl_2314
+enable_so_clipcount_v4l2_window_2316 clipcount v4l2_window 0 2316 NULL
-+enable_so_il_dbgfs_stations_read_fndecl_2319 il_dbgfs_stations_read fndecl 3 2319 NULL
+enable_so_ieee80211_tdls_prep_mgmt_packet_fndecl_2320 ieee80211_tdls_prep_mgmt_packet fndecl 10 2320 NULL
+enable_so_mmc_alloc_sg_fndecl_2323 mmc_alloc_sg fndecl 1 2323 NULL
+enable_so_i915_gem_object_create_from_data_fndecl_2325 i915_gem_object_create_from_data fndecl 3 2325 NULL
@@ -155130,7 +154536,6 @@ index 0000000..9da833a
+enable_so_memsz_kexec_segment_2340 memsz kexec_segment 0 2340 NULL nohasharray
+enable_so_rx_rx_beacon_early_term_read_fndecl_2340 rx_rx_beacon_early_term_read fndecl 3 2340 &enable_so_memsz_kexec_segment_2340
+enable_so_sg_copy_to_buffer_fndecl_2349 sg_copy_to_buffer fndecl 4 2349 NULL
-+enable_so_dvb_dmxdev_section_callback_fndecl_2352 dvb_dmxdev_section_callback fndecl 2-4 2352 NULL
+enable_so_cipso_v4_map_cat_enum_hton_fndecl_2359 cipso_v4_map_cat_enum_hton fndecl 0 2359 NULL
+enable_so_fat_ioctl_filldir_fndecl_2360 fat_ioctl_filldir fndecl 3 2360 NULL
+enable_so_ReplUnitNum_nftl_uci0_2366 ReplUnitNum nftl_uci0 0 2366 NULL
@@ -155196,8 +154601,9 @@ index 0000000..9da833a
+enable_so_aio_offset_iocb_2576 aio_offset iocb 0 2576 NULL nohasharray
+enable_so_skb_checksum_trimmed_fndecl_2576 skb_checksum_trimmed fndecl 2 2576 &enable_so_aio_offset_iocb_2576
+enable_so_len_patch_info_2583 len patch_info 0 2583 NULL
-+enable_so_get_memory_block_size_fndecl_2600 get_memory_block_size fndecl 0 2600 NULL nohasharray
-+enable_so_page_cache_tree_insert_fndecl_2600 page_cache_tree_insert fndecl 0 2600 &enable_so_get_memory_block_size_fndecl_2600
++enable_so_nr_pages_scif_pinned_pages_2586 nr_pages scif_pinned_pages 0 2586 NULL
++enable_so_page_cache_tree_insert_fndecl_2600 page_cache_tree_insert fndecl 0 2600 NULL nohasharray
++enable_so_get_memory_block_size_fndecl_2600 get_memory_block_size fndecl 0 2600 &enable_so_page_cache_tree_insert_fndecl_2600
+enable_so_maxfrsize_bfa_fcs_rport_s_2601 maxfrsize bfa_fcs_rport_s 0 2601 NULL
+enable_so_mesh_table_alloc_fndecl_2610 mesh_table_alloc fndecl 1 2610 NULL
+enable_so_ld_active_tgt_count_lov_desc_2613 ld_active_tgt_count lov_desc 0 2613 NULL
@@ -155212,11 +154618,11 @@ index 0000000..9da833a
+enable_so_num_cpu_pages_amdgpu_gart_2640 num_cpu_pages amdgpu_gart 0 2640 NULL
+enable_so_rx_bufshift_rtl_stats_2641 rx_bufshift rtl_stats 0 2641 NULL
+enable_so_sys_read_fndecl_2644 sys_read fndecl 3 2644 NULL
++enable_so_bitmap_cond_end_sync_fndecl_2649 bitmap_cond_end_sync fndecl 2 2649 NULL
+enable_so_max_low_pfn_mapped_vardecl_2650 max_low_pfn_mapped vardecl 0 2650 NULL
+enable_so_pktgen_alloc_skb_fndecl_2658 pktgen_alloc_skb fndecl 3 2658 NULL nohasharray
+enable_so_resync_max_mddev_2658 resync_max mddev 0 2658 &enable_so_pktgen_alloc_skb_fndecl_2658
-+enable_so_ath10k_debug_fw_reset_stats_read_fndecl_2660 ath10k_debug_fw_reset_stats_read fndecl 3 2660 NULL nohasharray
-+enable_so_alloc_large_system_hash_fndecl_2660 alloc_large_system_hash fndecl 2 2660 &enable_so_ath10k_debug_fw_reset_stats_read_fndecl_2660
++enable_so_alloc_large_system_hash_fndecl_2660 alloc_large_system_hash fndecl 2 2660 NULL
+enable_so_dlen_hci_acl_hdr_2672 dlen hci_acl_hdr 0 2672 NULL nohasharray
+enable_so_evdev_ioctl_fndecl_2672 evdev_ioctl fndecl 2 2672 &enable_so_dlen_hci_acl_hdr_2672
+enable_so_ee_block_ext4_extent_2673 ee_block ext4_extent 0 2673 NULL
@@ -155246,6 +154652,7 @@ index 0000000..9da833a
+enable_so_ieee80211_alloc_hw_nm_fndecl_2774 ieee80211_alloc_hw_nm fndecl 1 2774 NULL
+enable_so_batadv_check_unicast_packet_fndecl_2775 batadv_check_unicast_packet fndecl 3 2775 NULL nohasharray
+enable_so_fw_mon_size_iwl_trans_pcie_2775 fw_mon_size iwl_trans_pcie 0 2775 &enable_so_batadv_check_unicast_packet_fndecl_2775
++enable_so_num_bo_handles_drm_virtgpu_execbuffer_2779 num_bo_handles drm_virtgpu_execbuffer 0 2779 NULL
+enable_so_uhci_result_common_fndecl_2788 uhci_result_common fndecl 0 2788 NULL
+enable_so_pkcs7_sig_note_skid_fndecl_2795 pkcs7_sig_note_skid fndecl 5 2795 NULL
+enable_so_iobase_vardecl_l440gx_c_2797 iobase vardecl_l440gx.c 0 2797 NULL
@@ -155253,9 +154660,11 @@ index 0000000..9da833a
+enable_so_st21nfca_hci_se_io_fndecl_2800 st21nfca_hci_se_io fndecl 4 2800 NULL nohasharray
+enable_so_mp_find_ioapic_pin_fndecl_2800 mp_find_ioapic_pin fndecl 0-2 2800 &enable_so_st21nfca_hci_se_io_fndecl_2800
+enable_so_put_chars_fndecl_2801 put_chars fndecl 3 2801 NULL
++enable_so_bytesused_vb2_plane_2804 bytesused vb2_plane 0 2804 NULL
+enable_so_usb_stor_set_xfer_buf_fndecl_2809 usb_stor_set_xfer_buf fndecl 2 2809 NULL
+enable_so_num_active_queues_i40evf_adapter_2813 num_active_queues i40evf_adapter 0 2813 NULL
+enable_so_num_cnic_queues_bnx2x_2816 num_cnic_queues bnx2x 0 2816 NULL
++enable_so_lo_offset_loop_device_2817 lo_offset loop_device 0 2817 NULL
+enable_so__sp2d_min_pg_fndecl_2819 _sp2d_min_pg fndecl 0 2819 NULL
+enable_so_rtsx_pci_dma_map_sg_fndecl_2820 rtsx_pci_dma_map_sg fndecl 0 2820 NULL
+enable_so_VerDcm_zoran_jpg_settings_2823 VerDcm zoran_jpg_settings 0 2823 NULL
@@ -155295,6 +154704,7 @@ index 0000000..9da833a
+enable_so_pno_blkpg_partition_2931 pno blkpg_partition 0 2931 &enable_so_tx_cnt_isac_2931
+enable_so_fnic_fc_trace_max_pages_vardecl_2932 fnic_fc_trace_max_pages vardecl 0 2932 NULL
+enable_so_tx_ring_count_ixgbevf_adapter_2933 tx_ring_count ixgbevf_adapter 0 2933 NULL
++enable_so_qed_int_get_num_sbs_fndecl_2936 qed_int_get_num_sbs fndecl 0 2936 NULL
+enable_so_max_ndp_size_cdc_ncm_ctx_2942 max_ndp_size cdc_ncm_ctx 0 2942 NULL
+enable_so_sys_remap_file_pages_fndecl_2943 sys_remap_file_pages fndecl 2-4-1 2943 NULL
+enable_so_devm_ioremap_wc_fndecl_2945 devm_ioremap_wc fndecl 3-2 2945 NULL
@@ -155312,8 +154722,8 @@ index 0000000..9da833a
+enable_so_align_ip_set_ext_type_2975 align ip_set_ext_type 0 2975 NULL
+enable_so_mrp_pdu_append_vecattr_hdr_fndecl_2982 mrp_pdu_append_vecattr_hdr fndecl 3 2982 NULL
+enable_so_origin_write_extent_fndecl_2983 origin_write_extent fndecl 2 2983 NULL
-+enable_so_h_align_bdisp_fmt_2988 h_align bdisp_fmt 0 2988 NULL nohasharray
-+enable_so_reiserfs_cut_from_item_fndecl_2988 reiserfs_cut_from_item fndecl 6 2988 &enable_so_h_align_bdisp_fmt_2988
++enable_so_reiserfs_cut_from_item_fndecl_2988 reiserfs_cut_from_item fndecl 6 2988 NULL nohasharray
++enable_so_h_align_bdisp_fmt_2988 h_align bdisp_fmt 0 2988 &enable_so_reiserfs_cut_from_item_fndecl_2988
+enable_so_iscsi_start_cid_cnic_local_2995 iscsi_start_cid cnic_local 0 2995 NULL
+enable_so_offset_fuse_notify_retrieve_out_2999 offset fuse_notify_retrieve_out 0 2999 NULL
+enable_so_hdr_len_iscsi_task_3003 hdr_len iscsi_task 0 3003 NULL
@@ -155323,7 +154733,9 @@ index 0000000..9da833a
+enable_so_bpw_len_pch_spi_data_3026 bpw_len pch_spi_data 0 3026 NULL
+enable_so_de_rec_len_gfs2_dirent_3029 de_rec_len gfs2_dirent 0 3029 NULL
+enable_so_of_fdt_match_fndecl_3030 of_fdt_match fndecl 2 3030 NULL
-+enable_so_dual_channel_active_fndecl_3033 dual_channel_active fndecl 0 3033 NULL
++enable_so_mdio_write_mdio_if_info_3033 mdio_write mdio_if_info 0 3033 NULL nohasharray
++enable_so_dual_channel_active_fndecl_3033 dual_channel_active fndecl 0 3033 &enable_so_mdio_write_mdio_if_info_3033
++enable_so_num_hwfns_qed_dev_3034 num_hwfns qed_dev 0 3034 NULL
+enable_so_fat_compat_ioctl_filldir_fndecl_3037 fat_compat_ioctl_filldir fndecl 3 3037 NULL
+enable_so_xfs_bulkstat_grab_ichunk_fndecl_3041 xfs_bulkstat_grab_ichunk fndecl 2 3041 NULL
+enable_so_add_res_tree_fndecl_3044 add_res_tree fndecl 7 3044 NULL
@@ -155335,7 +154747,7 @@ index 0000000..9da833a
+enable_so_dst_addr_width_dma_slave_config_3068 dst_addr_width dma_slave_config 0 3068 NULL nohasharray
+enable_so_ntfs_map_runlist_fndecl_3068 ntfs_map_runlist fndecl 2 3068 &enable_so_dst_addr_width_dma_slave_config_3068
+enable_so_compat_process_vm_rw_fndecl_3069 compat_process_vm_rw fndecl 5-3 3069 NULL
-+enable_so_security_setxattr_fndecl_3070 security_setxattr fndecl 4 3070 NULL
++enable_so_punch_hole_fndecl_3070 punch_hole fndecl 2-3 3070 NULL
+enable_so_hbuf_max_len_mei_hw_ops_3071 hbuf_max_len mei_hw_ops 0 3071 NULL
+enable_so_height_au0828_dev_3073 height au0828_dev 0 3073 NULL
+enable_so_sg_addr_size__MPT_ADAPTER_3079 sg_addr_size _MPT_ADAPTER 0 3079 NULL
@@ -155349,10 +154761,8 @@ index 0000000..9da833a
+enable_so_gtt_mappable_entries__intel_private_3099 gtt_mappable_entries _intel_private 0 3099 NULL
+enable_so_vol_cdev_direct_write_fndecl_3100 vol_cdev_direct_write fndecl 3 3100 NULL
+enable_so_rx_pkt_map_sz_tg3_3106 rx_pkt_map_sz tg3 0 3106 NULL
-+enable_so_mt76_init_sband_fndecl_3112 mt76_init_sband fndecl 4-6 3112 NULL nohasharray
-+enable_so_iwl_dbgfs_rxon_flags_read_fndecl_3112 iwl_dbgfs_rxon_flags_read fndecl 3 3112 &enable_so_mt76_init_sband_fndecl_3112
++enable_so_mt76_init_sband_fndecl_3112 mt76_init_sband fndecl 4-6 3112 NULL
+enable_so_fb_alloc_cmap_gfp_fndecl_3115 fb_alloc_cmap_gfp fndecl 2 3115 NULL
-+enable_so_edid_write_fndecl_3118 edid_write fndecl 3 3118 NULL
+enable_so_ipip6_tunnel_change_mtu_fndecl_3119 ipip6_tunnel_change_mtu fndecl 2 3119 NULL nohasharray
+enable_so_blk_rq_map_user_fndecl_3119 blk_rq_map_user fndecl 5 3119 &enable_so_ipip6_tunnel_change_mtu_fndecl_3119 nohasharray
+enable_so_compat_filldir64_fndecl_3119 compat_filldir64 fndecl 3 3119 &enable_so_blk_rq_map_user_fndecl_3119 nohasharray
@@ -155382,17 +154792,15 @@ index 0000000..9da833a
+enable_so_uvc_alloc_entity_fndecl_3191 uvc_alloc_entity fndecl 3-4 3191 &enable_so_min_io_size_ubi_device_3191
+enable_so_nvme_trans_supported_vpd_pages_fndecl_3196 nvme_trans_supported_vpd_pages fndecl 4 3196 NULL
+enable_so_mspi_apply_cpu_mode_quirks_fndecl_3197 mspi_apply_cpu_mode_quirks fndecl 0-4 3197 NULL
-+enable_so_lcd_hblank_len_atyfb_par_3198 lcd_hblank_len atyfb_par 0 3198 NULL nohasharray
-+enable_so_p9_tag_alloc_fndecl_3198 p9_tag_alloc fndecl 3 3198 &enable_so_lcd_hblank_len_atyfb_par_3198
++enable_so_p9_tag_alloc_fndecl_3198 p9_tag_alloc fndecl 3 3198 NULL nohasharray
++enable_so_lcd_hblank_len_atyfb_par_3198 lcd_hblank_len atyfb_par 0 3198 &enable_so_p9_tag_alloc_fndecl_3198
+enable_so_import_iovec_fndecl_3201 import_iovec fndecl 3 3201 NULL
+enable_so_chunk_size_mdu_array_info_s_3205 chunk_size mdu_array_info_s 0 3205 NULL
+enable_so_cfs_cpt_table_create_fndecl_3207 cfs_cpt_table_create fndecl 1 3207 NULL
+enable_so_sisusb_send_packet_fndecl_3208 sisusb_send_packet fndecl 2 3208 NULL
-+enable_so_key_icverrors_read_fndecl_3212 key_icverrors_read fndecl 3 3212 NULL
+enable_so_usbvision_set_output_fndecl_3216 usbvision_set_output fndecl 2-3 3216 NULL
+enable_so_rx_buffer_len_ixgb_adapter_3217 rx_buffer_len ixgb_adapter 0 3217 NULL nohasharray
-+enable_so_cw1200_sdio_memcpy_fromio_fndecl_3217 cw1200_sdio_memcpy_fromio fndecl 4 3217 &enable_so_rx_buffer_len_ixgb_adapter_3217 nohasharray
-+enable_so_iwl_dbgfs_pm_params_read_fndecl_3217 iwl_dbgfs_pm_params_read fndecl 3 3217 &enable_so_cw1200_sdio_memcpy_fromio_fndecl_3217
++enable_so_cw1200_sdio_memcpy_fromio_fndecl_3217 cw1200_sdio_memcpy_fromio fndecl 4 3217 &enable_so_rx_buffer_len_ixgb_adapter_3217
+enable_so_nportcntrs_hfi1_devdata_3218 nportcntrs hfi1_devdata 0 3218 NULL
+enable_so_h_len_logfs_journal_header_3222 h_len logfs_journal_header 0 3222 NULL
+enable_so_bfad_iocmd_cee_get_stats_fndecl_3228 bfad_iocmd_cee_get_stats fndecl 0 3228 NULL
@@ -155405,6 +154813,7 @@ index 0000000..9da833a
+enable_so_max_wqe_ocrdma_dev_attr_3246 max_wqe ocrdma_dev_attr 0 3246 NULL
+enable_so_of_property_match_string_fndecl_3250 of_property_match_string fndecl 0 3250 NULL
+enable_so_shmem_kernel_file_setup_fndecl_3251 shmem_kernel_file_setup fndecl 2 3251 NULL
++enable_so_rx_buf_size_bnxt_3254 rx_buf_size bnxt 0 3254 NULL
+enable_so_vfio_msi_enable_fndecl_3257 vfio_msi_enable fndecl 2 3257 NULL
+enable_so_sbc_check_prot_fndecl_3258 sbc_check_prot fndecl 4 3258 NULL
+enable_so_taglen_cb_compound_hdr_res_3259 taglen cb_compound_hdr_res 0 3259 NULL
@@ -155433,6 +154842,7 @@ index 0000000..9da833a
+enable_so_length_ima_digest_data_3329 length ima_digest_data 0 3329 NULL
+enable_so_hidraw_report_event_fndecl_3332 hidraw_report_event fndecl 3 3332 NULL
+enable_so_i_xattr_loc_ocfs2_dinode_3335 i_xattr_loc ocfs2_dinode 0 3335 NULL
++enable_so_amdtp_dot_set_parameters_fndecl_3341 amdtp_dot_set_parameters fndecl 3 3341 NULL
+enable_so_base_drm_agp_head_3348 base drm_agp_head 0 3348 NULL nohasharray
+enable_so_curchunk_hdrlen_drm_dp_sideband_msg_rx_3348 curchunk_hdrlen drm_dp_sideband_msg_rx 0 3348 &enable_so_base_drm_agp_head_3348
+enable_so_smi_get_fwd_port_fndecl_3349 smi_get_fwd_port fndecl 0 3349 NULL nohasharray
@@ -155456,8 +154866,8 @@ index 0000000..9da833a
+enable_so_beacon_ie_len_wmi_connect_event_3388 beacon_ie_len wmi_connect_event 0 3388 NULL nohasharray
+enable_so_rport_priv_size_fc_lport_3388 rport_priv_size fc_lport 0 3388 &enable_so_beacon_ie_len_wmi_connect_event_3388
+enable_so_xz_dec_lzma2_reset_fndecl_3390 xz_dec_lzma2_reset fndecl 2 3390 NULL
-+enable_so_n_min_aptina_pll_limits_3393 n_min aptina_pll_limits 0 3393 NULL
-+enable_so_max_frame_size_nes_vnic_3395 max_frame_size nes_vnic 0 3395 NULL
++enable_so_max_frame_size_nes_vnic_3395 max_frame_size nes_vnic 0 3395 NULL nohasharray
++enable_so_st_nci_hci_dm_get_data_fndecl_3395 st_nci_hci_dm_get_data fndecl 3 3395 &enable_so_max_frame_size_nes_vnic_3395
+enable_so_num_paths_rdma_route_3407 num_paths rdma_route 0 3407 NULL
+enable_so_pos_in_item_treepath_3409 pos_in_item treepath 0 3409 NULL
+enable_so_minLen_group_data_3411 minLen group_data 0 3411 NULL
@@ -155479,6 +154889,7 @@ index 0000000..9da833a
+enable_so_s_itb_per_group_ext4_sb_info_3459 s_itb_per_group ext4_sb_info 0 3459 NULL
+enable_so_adfs_dir_read_fndecl_3464 adfs_dir_read fndecl 2 3464 NULL
+enable_so_vm_stat_account_fndecl_3465 vm_stat_account fndecl 4 3465 NULL
++enable_so_intel_th_populate_fndecl_3473 intel_th_populate fndecl 4 3473 NULL
+enable_so_ngpios_chv_community_3476 ngpios chv_community 0 3476 NULL
+enable_so_qib_qsfp_write_fndecl_3477 qib_qsfp_write fndecl 2-4-0 3477 NULL
+enable_so_namelen_xfs_dir2_sf_entry_3481 namelen xfs_dir2_sf_entry 0 3481 NULL nohasharray
@@ -155492,12 +154903,9 @@ index 0000000..9da833a
+enable_so_kfifo_copy_to_user_fndecl_3509 kfifo_copy_to_user fndecl 3-4-0 3509 NULL nohasharray
+enable_so_hs_bkt_bits_cfs_hash_3509 hs_bkt_bits cfs_hash 0 3509 &enable_so_kfifo_copy_to_user_fndecl_3509
+enable_so_gru_vtop_fndecl_3522 gru_vtop fndecl 2 3522 NULL
-+enable_so_nvme_char_major_vardecl_nvme_core_c_3526 nvme_char_major vardecl_nvme-core.c 0 3526 NULL
-+enable_so_read_file_tgt_int_stats_fndecl_3530 read_file_tgt_int_stats fndecl 3 3530 NULL
+enable_so_cipso_v4_gentag_rng_fndecl_3532 cipso_v4_gentag_rng fndecl 0 3532 NULL
+enable_so_cl_out_max_entry_size_mvumi_hs_page1_3540 cl_out_max_entry_size mvumi_hs_page1 0 3540 NULL
-+enable_so_btrfs_qgroup_reserve_fndecl_3543 btrfs_qgroup_reserve fndecl 0 3543 NULL nohasharray
-+enable_so_snd_hdsp_playback_copy_fndecl_3543 snd_hdsp_playback_copy fndecl 5 3543 &enable_so_btrfs_qgroup_reserve_fndecl_3543
++enable_so_snd_hdsp_playback_copy_fndecl_3543 snd_hdsp_playback_copy fndecl 5 3543 NULL
+enable_so_get_user_page_nowait_fndecl_3545 get_user_page_nowait fndecl 3 3545 NULL nohasharray
+enable_so_dvb_dmxdev_buffer_read_fndecl_3545 dvb_dmxdev_buffer_read fndecl 4-0 3545 &enable_so_get_user_page_nowait_fndecl_3545
+enable_so_window_size_deflate_state_3549 window_size deflate_state 0 3549 NULL
@@ -155505,6 +154913,7 @@ index 0000000..9da833a
+enable_so_ocfs2_read_xattr_bucket_fndecl_3553 ocfs2_read_xattr_bucket fndecl 0-2 3553 NULL
+enable_so_sg_copy_from_buffer_fndecl_3557 sg_copy_from_buffer fndecl 0-4 3557 NULL
+enable_so_security_context_to_sid_force_fndecl_3559 security_context_to_sid_force fndecl 2 3559 NULL
++enable_so_snd_timer_user_ginfo_fndecl_3565 snd_timer_user_ginfo fndecl 0 3565 NULL
+enable_so_mt2063_write_fndecl_3567 mt2063_write fndecl 4 3567 NULL
+enable_so_page_cache_sync_readahead_fndecl_3569 page_cache_sync_readahead fndecl 4 3569 NULL
+enable_so_encode_diropargs3_fndecl_3574 encode_diropargs3 fndecl 4 3574 NULL
@@ -155518,8 +154927,7 @@ index 0000000..9da833a
+enable_so_npads_xtpg_device_3590 npads xtpg_device 0 3590 &enable_so_ip_vs_icmp_xmit_fndecl_3590
+enable_so_buf_size_i1480_3593 buf_size i1480 0 3593 NULL
+enable_so_brcmf_chip_tcm_rambase_fndecl_3599 brcmf_chip_tcm_rambase fndecl 0 3599 NULL
-+enable_so_e820_update_range_fndecl_3600 e820_update_range fndecl 1-2 3600 NULL nohasharray
-+enable_so_use_debug_keys_read_fndecl_3600 use_debug_keys_read fndecl 3 3600 &enable_so_e820_update_range_fndecl_3600
++enable_so_e820_update_range_fndecl_3600 e820_update_range fndecl 1-2 3600 NULL
+enable_so_cdns_uart_get_port_fndecl_3601 cdns_uart_get_port fndecl 1 3601 NULL
+enable_so_xdr_extend_head_fndecl_3606 xdr_extend_head fndecl 3 3606 NULL
+enable_so_engine_len_viafb_dev_3608 engine_len viafb_dev 0 3608 NULL
@@ -155529,10 +154937,10 @@ index 0000000..9da833a
+enable_so_bytes_btrfs_dio_private_3624 bytes btrfs_dio_private 0 3624 &enable_so_ns_blocksize_the_nilfs_3624 nohasharray
+enable_so_do_msg_fill_fndecl_3624 do_msg_fill fndecl 3 3624 &enable_so_bytes_btrfs_dio_private_3624
+enable_so_offline_pages_fndecl_3625 offline_pages fndecl 1-2 3625 NULL
-+enable_so_tail_timestamp_event_queue_3626 tail timestamp_event_queue 0 3626 NULL nohasharray
-+enable_so_length_pseudo_hdr_3626 length pseudo_hdr 0 3626 &enable_so_tail_timestamp_event_queue_3626
++enable_so_tail_timestamp_event_queue_3626 tail timestamp_event_queue 0 3626 NULL
+enable_so_add_res_range_fndecl_3629 add_res_range fndecl 4 3629 NULL
+enable_so_cbuf_eat_fndecl_3631 cbuf_eat fndecl 2 3631 NULL
++enable_so_cfg80211_inform_bss_frame_data_fndecl_3632 cfg80211_inform_bss_frame_data fndecl 4 3632 NULL
+enable_so_sl_ib_ah_attr_3633 sl ib_ah_attr 0 3633 NULL
+enable_so_vmci_transport_queue_pair_alloc_fndecl_3639 vmci_transport_queue_pair_alloc fndecl 4-3 3639 NULL nohasharray
+enable_so_xfs_attr3_leaf_freextent_fndecl_3639 xfs_attr3_leaf_freextent fndecl 4-3 3639 &enable_so_vmci_transport_queue_pair_alloc_fndecl_3639
@@ -155541,14 +154949,13 @@ index 0000000..9da833a
+enable_so_pci_id_imc_uncore_pci_dev_3656 pci_id imc_uncore_pci_dev 0 3656 NULL
+enable_so_parport_ieee1284_ecp_read_data_fndecl_3660 parport_ieee1284_ecp_read_data fndecl 0 3660 NULL nohasharray
+enable_so_c_plan_ahead_disk_conf_3660 c_plan_ahead disk_conf 0 3660 &enable_so_parport_ieee1284_ecp_read_data_fndecl_3660
-+enable_so_ext2_get_blocks_fndecl_3661 ext2_get_blocks fndecl 0 3661 NULL nohasharray
-+enable_so_im_len_xfs_imap_3661 im_len xfs_imap 0 3661 &enable_so_ext2_get_blocks_fndecl_3661
++enable_so_im_len_xfs_imap_3661 im_len xfs_imap 0 3661 NULL nohasharray
++enable_so_ext2_get_blocks_fndecl_3661 ext2_get_blocks fndecl 0 3661 &enable_so_im_len_xfs_imap_3661
+enable_so_arch_reserve_mem_area_fndecl_3662 arch_reserve_mem_area fndecl 2 3662 NULL
+enable_so_aper_base_amdgpu_mc_3664 aper_base amdgpu_mc 0 3664 NULL
+enable_so_child_cnt_ubifs_znode_3667 child_cnt ubifs_znode 0 3667 NULL
+enable_so_bio_find_or_create_slab_fndecl_3671 bio_find_or_create_slab fndecl 1 3671 NULL
-+enable_so_pcpu_chunk_struct_size_vardecl_percpu_c_3673 pcpu_chunk_struct_size vardecl_percpu.c 0 3673 NULL nohasharray
-+enable_so_get_zeroed_page_fndecl_3673 get_zeroed_page fndecl 0 3673 &enable_so_pcpu_chunk_struct_size_vardecl_percpu_c_3673
++enable_so_pcpu_chunk_struct_size_vardecl_percpu_c_3673 pcpu_chunk_struct_size vardecl_percpu.c 0 3673 NULL
+enable_so_interfaces_count_ffs_data_3677 interfaces_count ffs_data 0 3677 NULL
+enable_so_alloc_orinocodev_fndecl_3688 alloc_orinocodev fndecl 1 3688 NULL
+enable_so_len_mic_mw_3689 len mic_mw 0 3689 NULL
@@ -155557,7 +154964,6 @@ index 0000000..9da833a
+enable_so_srp_max_rsp_size_srpt_port_attrib_3700 srp_max_rsp_size srpt_port_attrib 0 3700 NULL
+enable_so_vmw_cmdbuf_space_pool_fndecl_3702 vmw_cmdbuf_space_pool fndecl 3 3702 NULL nohasharray
+enable_so_get_urb_error_fndecl_3702 get_urb_error fndecl 0 3702 &enable_so_vmw_cmdbuf_space_pool_fndecl_3702
-+enable_so_allocate_cmdlines_buffer_fndecl_3704 allocate_cmdlines_buffer fndecl 1 3704 NULL
+enable_so_vlan_netdev_private_3705 vlan netdev_private 0 3705 NULL
+enable_so_ip_getsockopt_fndecl_3711 ip_getsockopt fndecl 0 3711 NULL
+enable_so_len_sctp_auth_bytes_3715 len sctp_auth_bytes 0 3715 NULL
@@ -155568,9 +154974,9 @@ index 0000000..9da833a
+enable_so_mcs_wrap_fir_skb_fndecl_3729 mcs_wrap_fir_skb fndecl 0 3729 NULL nohasharray
+enable_so_split_leaf_fndecl_3729 split_leaf fndecl 0 3729 &enable_so_mcs_wrap_fir_skb_fndecl_3729
+enable_so_video_ioctl2_fndecl_3735 video_ioctl2 fndecl 2 3735 NULL
-+enable_so_ecryptfs_message_buf_len_vardecl_3736 ecryptfs_message_buf_len vardecl 0 3736 NULL nohasharray
-+enable_so_current_queue_depth_limit_bmic_identify_physical_device_3736 current_queue_depth_limit bmic_identify_physical_device 0 3736 &enable_so_ecryptfs_message_buf_len_vardecl_3736
++enable_so_ecryptfs_message_buf_len_vardecl_3736 ecryptfs_message_buf_len vardecl 0 3736 NULL
+enable_so_insert_ptr_fndecl_3737 insert_ptr fndecl 6 3737 NULL
++enable_so_intel_th_msc_read_fndecl_3740 intel_th_msc_read fndecl 3 3740 NULL
+enable_so_entries_p54_cal_database_3741 entries p54_cal_database 0 3741 NULL
+enable_so_error_null_frame_tx_start_read_fndecl_3750 error_null_frame_tx_start_read fndecl 3 3750 NULL
+enable_so_nr_reserved_tags_blk_mq_tags_3751 nr_reserved_tags blk_mq_tags 0 3751 NULL
@@ -155588,7 +154994,8 @@ index 0000000..9da833a
+enable_so_concat_writev_fndecl_3800 concat_writev fndecl 4 3800 NULL
+enable_so_extend_netdev_table_fndecl_3806 extend_netdev_table fndecl 0 3806 NULL
+enable_so_nfc_hci_send_event_fndecl_3807 nfc_hci_send_event fndecl 5 3807 NULL
-+enable_so_nextLineNumber_vardecl_rocket_c_3809 nextLineNumber vardecl_rocket.c 0 3809 NULL
++enable_so_ch_list_len_scan_attr_3809 ch_list_len scan_attr 0 3809 NULL nohasharray
++enable_so_nextLineNumber_vardecl_rocket_c_3809 nextLineNumber vardecl_rocket.c 0 3809 &enable_so_ch_list_len_scan_attr_3809
+enable_so_ip_last_used_group_ocfs2_inode_info_3814 ip_last_used_group ocfs2_inode_info 0 3814 NULL
+enable_so_e_cpos_ocfs2_extent_rec_3815 e_cpos ocfs2_extent_rec 0 3815 NULL
+enable_so_dccp_recvmsg_fndecl_3819 dccp_recvmsg fndecl 3 3819 NULL nohasharray
@@ -155597,7 +155004,6 @@ index 0000000..9da833a
+enable_so_offset32_cm_req_msg_3827 offset32 cm_req_msg 0 3827 NULL
+enable_so_bits_per_word_spi_device_3828 bits_per_word spi_device 0 3828 NULL
+enable_so_mei_nfc_send_fndecl_3830 mei_nfc_send fndecl 3 3830 NULL
-+enable_so_read_file_xmit_fndecl_3836 read_file_xmit fndecl 3 3836 NULL
+enable_so_num_counters_ipt_replace_3837 num_counters ipt_replace 0 3837 NULL
+enable_so_error_btrfs_end_io_wq_3838 error btrfs_end_io_wq 0 3838 NULL
+enable_so_find_end_of_node_fndecl_3843 find_end_of_node fndecl 0-3-1-2 3843 NULL
@@ -155610,8 +155016,7 @@ index 0000000..9da833a
+enable_so_size_of_priv_dvb_usb_adapter_fe_properties_3875 size_of_priv dvb_usb_adapter_fe_properties 0 3875 NULL
+enable_so_lbs_threshold_read_fndecl_3877 lbs_threshold_read fndecl 5 3877 NULL
+enable_so_console_size_ramoops_context_3884 console_size ramoops_context 0 3884 NULL
-+enable_so_s_num_blocks_omfs_sb_info_3888 s_num_blocks omfs_sb_info 0 3888 NULL nohasharray
-+enable_so_dbgfs_sram_len_il_priv_3888 dbgfs_sram_len il_priv 0 3888 &enable_so_s_num_blocks_omfs_sb_info_3888
++enable_so_s_num_blocks_omfs_sb_info_3888 s_num_blocks omfs_sb_info 0 3888 NULL
+enable_so_fs_div_hfs_sb_info_3890 fs_div hfs_sb_info 0 3890 NULL
+enable_so_btrfs_inode_ref_name_len_fndecl_3891 btrfs_inode_ref_name_len fndecl 0 3891 NULL
+enable_so_snd_pcm_lib_preallocate_pages_fndecl_3892 snd_pcm_lib_preallocate_pages fndecl 4 3892 NULL nohasharray
@@ -155626,11 +155031,14 @@ index 0000000..9da833a
+enable_so_mlx4_en_set_vf_vlan_fndecl_3917 mlx4_en_set_vf_vlan fndecl 4 3917 NULL
+enable_so_proc_fault_inject_write_fndecl_3921 proc_fault_inject_write fndecl 3 3921 NULL
+enable_so_mp_map_gsi_to_irq_fndecl_3923 mp_map_gsi_to_irq fndecl 1 3923 NULL
++enable_so_acpi_data_prop_read_fndecl_3925 acpi_data_prop_read fndecl 0 3925 NULL
++enable_so_virtio_gpu_get_capsets_fndecl_3928 virtio_gpu_get_capsets fndecl 2 3928 NULL
+enable_so_cfpkt_set_prio_fndecl_3935 cfpkt_set_prio fndecl 2 3935 NULL
+enable_so_unix_dgram_sendmsg_fndecl_3944 unix_dgram_sendmsg fndecl 3 3944 NULL
+enable_so_ath6kl_send_go_probe_resp_fndecl_3946 ath6kl_send_go_probe_resp fndecl 3 3946 NULL
+enable_so__efx_mcdi_rpc_async_fndecl_3948 _efx_mcdi_rpc_async fndecl 4-5 3948 NULL
+enable_so_atalk_recvmsg_fndecl_3950 atalk_recvmsg fndecl 3 3950 NULL
++enable_so_mem_end_pci_params_3955 mem_end pci_params 0 3955 NULL
+enable_so_backup_src_sz_kimage_arch_3957 backup_src_sz kimage_arch 0 3957 NULL nohasharray
+enable_so_resync_min_mddev_3957 resync_min mddev 0 3957 &enable_so_backup_src_sz_kimage_arch_3957
+enable_so_data_out_res_cnt_srp_rsp_3959 data_out_res_cnt srp_rsp 0 3959 NULL
@@ -155647,14 +155055,12 @@ index 0000000..9da833a
+enable_so_tp_len_tpacket2_hdr_3990 tp_len tpacket2_hdr 0 3990 NULL nohasharray
+enable_so___acpi_register_gsi_vardecl_3990 __acpi_register_gsi vardecl 0 3990 &enable_so_tp_len_tpacket2_hdr_3990
+enable_so_rfcomm_sock_recvmsg_fndecl_3992 rfcomm_sock_recvmsg fndecl 3 3992 NULL
-+enable_so_iwl_dbgfs_uapsd_misbehaving_read_fndecl_3994 iwl_dbgfs_uapsd_misbehaving_read fndecl 3 3994 NULL
+enable_so_opt_nflen_ipv6_txoptions_3998 opt_nflen ipv6_txoptions 0 3998 NULL nohasharray
+enable_so_len_be_queue_info_3998 len be_queue_info 0 3998 &enable_so_opt_nflen_ipv6_txoptions_3998
+enable_so_buffer_bytes_max_snd_pcm_hardware_4001 buffer_bytes_max snd_pcm_hardware 0 4001 NULL
+enable_so_id_hfsplus_cat_file_4005 id hfsplus_cat_file 0 4005 NULL
+enable_so_t4_init_clip_tbl_fndecl_4007 t4_init_clip_tbl fndecl 1-2 4007 NULL nohasharray
-+enable_so_format_supported_num_psb_intel_sdvo_connector_4007 format_supported_num psb_intel_sdvo_connector 0 4007 &enable_so_t4_init_clip_tbl_fndecl_4007 nohasharray
-+enable_so_mei_dbgfs_read_active_fndecl_4007 mei_dbgfs_read_active fndecl 3 4007 &enable_so_format_supported_num_psb_intel_sdvo_connector_4007
++enable_so_format_supported_num_psb_intel_sdvo_connector_4007 format_supported_num psb_intel_sdvo_connector 0 4007 &enable_so_t4_init_clip_tbl_fndecl_4007
+enable_so_rx_data_max_size_sst_generic_ipc_4011 rx_data_max_size sst_generic_ipc 0 4011 NULL
+enable_so_bioset_create_nobvec_fndecl_4015 bioset_create_nobvec fndecl 2-1 4015 NULL
+enable_so_f1_id_amd64_family_type_4017 f1_id amd64_family_type 0 4017 NULL
@@ -155672,7 +155078,6 @@ index 0000000..9da833a
+enable_so_scsi_execute_req_flags_fndecl_4044 scsi_execute_req_flags fndecl 5 4044 NULL
+enable_so_tx_data_count_hso_serial_4046 tx_data_count hso_serial 0 4046 NULL
+enable_so_prepare_header_fndecl_4047 prepare_header fndecl 5-0 4047 NULL
-+enable_so_MaxReplyDescriptorPostQueueDepth_mpt2sas_facts_4050 MaxReplyDescriptorPostQueueDepth mpt2sas_facts 0 4050 NULL
+enable_so_ssid_len_cfg80211_connect_params_4052 ssid_len cfg80211_connect_params 0 4052 NULL
+enable_so_m5mols_read_u32_fndecl_4057 m5mols_read_u32 fndecl 2 4057 NULL
+enable_so_cx18_v4l2_read_fndecl_4063 cx18_v4l2_read fndecl 3 4063 NULL
@@ -155685,8 +155090,8 @@ index 0000000..9da833a
+enable_so_mlx4_en_get_num_flows_fndecl_4078 mlx4_en_get_num_flows fndecl 0 4078 NULL
+enable_so_IOCRequestFrameSize_mpt3sas_facts_4079 IOCRequestFrameSize mpt3sas_facts 0 4079 NULL
+enable_so_bfad_iocmd_ioc_get_info_fndecl_4081 bfad_iocmd_ioc_get_info fndecl 0 4081 NULL
-+enable_so_read_ftrace_buffer_info_4082 read ftrace_buffer_info 0 4082 NULL
-+enable_so_kvm_vcpu_read_guest_page_fndecl_4083 kvm_vcpu_read_guest_page fndecl 2-5 4083 NULL
++enable_so_kvm_vcpu_read_guest_page_fndecl_4083 kvm_vcpu_read_guest_page fndecl 2-5 4083 NULL nohasharray
++enable_so___set_extent_bit_fndecl_4083 __set_extent_bit fndecl 0-3-2 4083 &enable_so_kvm_vcpu_read_guest_page_fndecl_4083
+enable_so_n_drm_r128_depth_4085 n drm_r128_depth 0 4085 NULL
+enable_so_skb_copy_and_csum_datagram_fndecl_4086 skb_copy_and_csum_datagram fndecl 4-2 4086 NULL
+enable_so__ocfs2_free_clusters_fndecl_4087 _ocfs2_free_clusters fndecl 4 4087 NULL
@@ -155710,12 +155115,13 @@ index 0000000..9da833a
+enable_so_ocfs2_readpages_fndecl_4156 ocfs2_readpages fndecl 4 4156 NULL nohasharray
+enable_so_num_msix_vec_be_adapter_4156 num_msix_vec be_adapter 0 4156 &enable_so_ocfs2_readpages_fndecl_4156
+enable_so_batadv_tt_local_add_fndecl_4159 batadv_tt_local_add fndecl 3 4159 NULL
-+enable_so_tool_spadfn_read_fndecl_4176 tool_spadfn_read fndecl 3 4176 NULL nohasharray
-+enable_so_epp_write_data_parport_operations_4176 epp_write_data parport_operations 0 4176 &enable_so_tool_spadfn_read_fndecl_4176
++enable_so_epp_write_data_parport_operations_4176 epp_write_data parport_operations 0 4176 NULL nohasharray
++enable_so_tool_spadfn_read_fndecl_4176 tool_spadfn_read fndecl 3 4176 &enable_so_epp_write_data_parport_operations_4176
+enable_so_max_rx_urb_irda_usb_cb_4182 max_rx_urb irda_usb_cb 0 4182 NULL
+enable_so_saa7146_vmalloc_build_pgtable_fndecl_4183 saa7146_vmalloc_build_pgtable fndecl 2 4183 NULL
+enable_so_team_change_mtu_fndecl_4186 team_change_mtu fndecl 2 4186 NULL
-+enable_so_irda_setsockopt_fndecl_4195 irda_setsockopt fndecl 5 4195 NULL
++enable_so_stm_char_write_fndecl_4195 stm_char_write fndecl 3 4195 NULL nohasharray
++enable_so_irda_setsockopt_fndecl_4195 irda_setsockopt fndecl 5 4195 &enable_so_stm_char_write_fndecl_4195
+enable_so_wBeaconInfoLength_uwb_rc_evt_beacon_WUSB_0100_4200 wBeaconInfoLength uwb_rc_evt_beacon_WUSB_0100 0 4200 NULL
+enable_so_bd_dev_block_device_4202 bd_dev block_device 0 4202 NULL
+enable_so_vfs_getxattr_fndecl_4203 vfs_getxattr fndecl 0 4203 NULL
@@ -155728,7 +155134,6 @@ index 0000000..9da833a
+enable_so_nci_hci_set_param_fndecl_4215 nci_hci_set_param fndecl 5 4215 &enable_so_ext2_setsize_fndecl_4215
+enable_so_proc_stats_rid_open_fndecl_4219 proc_stats_rid_open fndecl 0 4219 NULL
+enable_so_store_pending_adv_report_fndecl_4222 store_pending_adv_report fndecl 7 4222 NULL
-+enable_so_ath10k_write_htt_max_amsdu_ampdu_fndecl_4223 ath10k_write_htt_max_amsdu_ampdu fndecl 3 4223 NULL
+enable_so_nilfs_segbuf_map_fndecl_4225 nilfs_segbuf_map fndecl 3-2 4225 NULL nohasharray
+enable_so_dlm_lock_fndecl_4225 dlm_lock fndecl 6 4225 &enable_so_nilfs_segbuf_map_fndecl_4225
+enable_so___nla_put_fndecl_4226 __nla_put fndecl 3 4226 NULL
@@ -155740,6 +155145,7 @@ index 0000000..9da833a
+enable_so_ieee80211_mesh_rx_mgmt_action_fndecl_4250 ieee80211_mesh_rx_mgmt_action fndecl 3 4250 NULL nohasharray
+enable_so_duplex_ethtool_cmd_4250 duplex ethtool_cmd 0 4250 &enable_so_ieee80211_mesh_rx_mgmt_action_fndecl_4250
+enable_so_cfg80211_mlme_register_mgmt_fndecl_4255 cfg80211_mlme_register_mgmt fndecl 5 4255 NULL
++enable_so_free_pages_num_vardecl_xen_scsiback_c_4257 free_pages_num vardecl_xen-scsiback.c 0 4257 NULL
+enable_so_fb_y_vmw_fb_par_4260 fb_y vmw_fb_par 0 4260 NULL
+enable_so_user_width_soc_camera_device_4262 user_width soc_camera_device 0 4262 NULL
+enable_so_ntids_tid_info_4263 ntids tid_info 0 4263 NULL
@@ -155768,8 +155174,7 @@ index 0000000..9da833a
+enable_so_old_chunk_dm_exception_4333 old_chunk dm_exception 0 4333 NULL
+enable_so_ax25_send_frame_fndecl_4335 ax25_send_frame fndecl 2 4335 NULL
+enable_so_length_rbd_obj_request_4337 length rbd_obj_request 0 4337 NULL
-+enable_so_stripe_len_btrfs_raid_bio_4340 stripe_len btrfs_raid_bio 0 4340 NULL nohasharray
-+enable_so_iwl_dbgfs_rx_queue_read_fndecl_4340 iwl_dbgfs_rx_queue_read fndecl 3 4340 &enable_so_stripe_len_btrfs_raid_bio_4340
++enable_so_stripe_len_btrfs_raid_bio_4340 stripe_len btrfs_raid_bio 0 4340 NULL
+enable_so_v4l2_ctrl_new_fndecl_4341 v4l2_ctrl_new fndecl 8-7-10-12 4341 NULL
+enable_so_key_len_neigh_table_4347 key_len neigh_table 0 4347 NULL
+enable_so_scrbuf_size_sisusb_usb_data_4350 scrbuf_size sisusb_usb_data 0 4350 NULL
@@ -155788,8 +155193,7 @@ index 0000000..9da833a
+enable_so_diReadSpecial_fndecl_4393 diReadSpecial fndecl 2 4393 NULL
+enable_so_ivtv_udma_setup_fndecl_4395 ivtv_udma_setup fndecl 4 4395 NULL
+enable_so_mgag200_bo_create_fndecl_4398 mgag200_bo_create fndecl 2 4398 NULL
-+enable_so_skb_realloc_headroom_fndecl_4399 skb_realloc_headroom fndecl 2 4399 NULL nohasharray
-+enable_so_ath10k_mem_value_write_fndecl_4399 ath10k_mem_value_write fndecl 3 4399 &enable_so_skb_realloc_headroom_fndecl_4399
++enable_so_skb_realloc_headroom_fndecl_4399 skb_realloc_headroom fndecl 2 4399 NULL
+enable_so_leadin_ignore_xpnet_message_4402 leadin_ignore xpnet_message 0 4402 NULL nohasharray
+enable_so_segment_length_sbp_page_table_entry_4402 segment_length sbp_page_table_entry 0 4402 &enable_so_leadin_ignore_xpnet_message_4402
+enable_so_page_ofs__ntfs_inode_4407 page_ofs _ntfs_inode 0 4407 NULL
@@ -155824,12 +155228,10 @@ index 0000000..9da833a
+enable_so_alt_pkey_index_ib_qp_attr_4502 alt_pkey_index ib_qp_attr 0 4502 NULL
+enable_so_load_xattr_datum_fndecl_4505 load_xattr_datum fndecl 0 4505 NULL
+enable_so___mei_cl_recv_fndecl_4519 __mei_cl_recv fndecl 0-3 4519 NULL
-+enable_so_nfs3_proc_readdir_fndecl_4544 nfs3_proc_readdir fndecl 5 4544 NULL nohasharray
-+enable_so_ath10k_read_pktlog_filter_fndecl_4544 ath10k_read_pktlog_filter fndecl 3 4544 &enable_so_nfs3_proc_readdir_fndecl_4544
++enable_so_nfs3_proc_readdir_fndecl_4544 nfs3_proc_readdir fndecl 5 4544 NULL
+enable_so_BlocksPerUnit_partition_t_4545 BlocksPerUnit partition_t 0 4545 NULL
+enable_so_uhci_giveback_urb_fndecl_4547 uhci_giveback_urb fndecl 4 4547 NULL
+enable_so_data_size_cz_buffer_entry_4548 data_size cz_buffer_entry 0 4548 NULL
-+enable_so_qdepth_uas_dev_info_4551 qdepth uas_dev_info 0 4551 NULL
+enable_so_nr_chans_solo_dev_4552 nr_chans solo_dev 0 4552 NULL
+enable_so_data_len_o2net_msg_4553 data_len o2net_msg 0 4553 NULL
+enable_so_acpi_read_slow_fndecl_4554 acpi_read_slow fndecl 3-2 4554 NULL
@@ -155849,11 +155251,11 @@ index 0000000..9da833a
+enable_so_max_event_log_size_iwl_base_params_4612 max_event_log_size iwl_base_params 0 4612 NULL
+enable_so_sxgbe_change_mtu_fndecl_4613 sxgbe_change_mtu fndecl 2 4613 NULL
+enable_so_tm6000_i2c_send_regs_fndecl_4617 tm6000_i2c_send_regs fndecl 5 4617 NULL
++enable_so_mbox_test_message_write_fndecl_4627 mbox_test_message_write fndecl 3 4627 NULL
+enable_so_cksumlength_gss_krb5_enctype_4630 cksumlength gss_krb5_enctype 0 4630 NULL
-+enable_so_tcam_size_mc5_4631 tcam_size mc5 0 4631 NULL nohasharray
-+enable_so_size_minus_one_mxt_object_4631 size_minus_one mxt_object 0 4631 &enable_so_tcam_size_mc5_4631
++enable_so_tcam_size_mc5_4631 tcam_size mc5 0 4631 NULL
+enable_so_total_bytes__osd_req_data_segment_4634 total_bytes _osd_req_data_segment 0 4634 NULL
-+enable_so_setup_efi_state_fndecl_4639 setup_efi_state fndecl 5-2-3-4 4639 NULL
++enable_so_setup_efi_state_fndecl_4639 setup_efi_state fndecl 4-5-2-3 4639 NULL
+enable_so_irq_nvecs_bnx2_4644 irq_nvecs bnx2 0 4644 NULL
+enable_so_read_eeprom_bytes_fndecl_4649 read_eeprom_bytes fndecl 4 4649 NULL
+enable_so_size_simple_transaction_argresp_4650 size simple_transaction_argresp 0 4650 NULL
@@ -155872,8 +155274,7 @@ index 0000000..9da833a
+enable_so_send_section_cnt_netvsc_device_4698 send_section_cnt netvsc_device 0 4698 &enable_so_optlen_ip_options_4698
+enable_so_btrfs_header_nritems_fndecl_4699 btrfs_header_nritems fndecl 0 4699 NULL
+enable_so_bpf_func_bpf_prog_4701 bpf_func bpf_prog 0 4701 NULL
-+enable_so_iwl_parse_nvm_mcc_info_fndecl_4702 iwl_parse_nvm_mcc_info fndecl 3 4702 NULL nohasharray
-+enable_so_single_open_fndecl_4702 single_open fndecl 0 4702 &enable_so_iwl_parse_nvm_mcc_info_fndecl_4702
++enable_so_iwl_parse_nvm_mcc_info_fndecl_4702 iwl_parse_nvm_mcc_info fndecl 3 4702 NULL
+enable_so_xdr_decode_word_fndecl_4707 xdr_decode_word fndecl 2 4707 NULL
+enable_so_gfs2_glock_nq_m_fndecl_4712 gfs2_glock_nq_m fndecl 1 4712 NULL
+enable_so_nr_hw_queues_blk_mq_tag_set_4713 nr_hw_queues blk_mq_tag_set 0 4713 NULL
@@ -155899,7 +155300,8 @@ index 0000000..9da833a
+enable_so_acpi_rs_set_resource_source_fndecl_4776 acpi_rs_set_resource_source fndecl 0-2 4776 NULL
+enable_so_length_property_4777 length property 0 4777 NULL
+enable_so_stride_snd_usb_endpoint_4779 stride snd_usb_endpoint 0 4779 NULL
-+enable_so_max_tfr_mmc_test_area_4780 max_tfr mmc_test_area 0 4780 NULL
++enable_so_max_tfr_mmc_test_area_4780 max_tfr mmc_test_area 0 4780 NULL nohasharray
++enable_so_qed_ilt_cli_blk_fill_fndecl_4780 qed_ilt_cli_blk_fill fndecl 4-5 4780 &enable_so_max_tfr_mmc_test_area_4780
+enable_so_crtc_vsync_start_drm_display_mode_4785 crtc_vsync_start drm_display_mode 0 4785 NULL nohasharray
+enable_so_n_channels_cfg80211_scan_request_4785 n_channels cfg80211_scan_request 0 4785 &enable_so_crtc_vsync_start_drm_display_mode_4785
+enable_so_img_height_s5p_mfc_ctx_4793 img_height s5p_mfc_ctx 0 4793 NULL
@@ -155926,22 +155328,24 @@ index 0000000..9da833a
+enable_so_start_service_discovery_fndecl_4846 start_service_discovery fndecl 4 4846 NULL
+enable_so_btrfs_get_32_fndecl_4847 btrfs_get_32 fndecl 0 4847 NULL
+enable_so_hash_size_cache_detail_4852 hash_size cache_detail 0 4852 NULL
-+enable_so_start__iohandle_4857 start _iohandle 0 4857 NULL
++enable_so_iommu_bit_gk20a_instmem_4857 iommu_bit gk20a_instmem 0 4857 NULL nohasharray
++enable_so_start__iohandle_4857 start _iohandle 0 4857 &enable_so_iommu_bit_gk20a_instmem_4857
+enable_so_do_ipv6_getsockopt_fndecl_4859 do_ipv6_getsockopt fndecl 0 4859 NULL
+enable_so_max_tgts_snic_fw_info_4861 max_tgts snic_fw_info 0 4861 NULL
+enable_so_encode_path_fndecl_4865 encode_path fndecl 3 4865 NULL nohasharray
+enable_so_attach_hdlc_protocol_fndecl_4865 attach_hdlc_protocol fndecl 3 4865 &enable_so_encode_path_fndecl_4865
+enable_so_s_desc_per_block_ext4_sb_info_4867 s_desc_per_block ext4_sb_info 0 4867 NULL nohasharray
+enable_so_gfn_to_hva_memslot_prot_fndecl_4867 gfn_to_hva_memslot_prot fndecl 2 4867 &enable_so_s_desc_per_block_ext4_sb_info_4867
-+enable_so_i40e_reserve_msix_vectors_fndecl_4870 i40e_reserve_msix_vectors fndecl 0 4870 NULL
++enable_so_i40e_reserve_msix_vectors_fndecl_4870 i40e_reserve_msix_vectors fndecl 0 4870 NULL nohasharray
++enable_so_mlx5_ib_alloc_mr_fndecl_4870 mlx5_ib_alloc_mr fndecl 3 4870 &enable_so_i40e_reserve_msix_vectors_fndecl_4870
+enable_so_i_lenEAttr_udf_inode_info_4872 i_lenEAttr udf_inode_info 0 4872 NULL nohasharray
+enable_so_find_overflow_devnum_fndecl_4872 find_overflow_devnum fndecl 0 4872 &enable_so_i_lenEAttr_udf_inode_info_4872
+enable_so_out_args_qlcnic_mailbox_metadata_4881 out_args qlcnic_mailbox_metadata 0 4881 NULL
++enable_so_op_remote_addr_rm_atomic_op_4890 op_remote_addr rm_atomic_op 0 4890 NULL
+enable_so_mlx4_get_eqs_per_port_fndecl_4892 mlx4_get_eqs_per_port fndecl 0 4892 NULL
+enable_so_snd_interval_refine_min_fndecl_4894 snd_interval_refine_min fndecl 2 4894 NULL nohasharray
+enable_so_sc_datablk_cnt_nilfs_sc_info_4894 sc_datablk_cnt nilfs_sc_info 0 4894 &enable_so_snd_interval_refine_min_fndecl_4894 nohasharray
+enable_so_credits_send_context_info_4894 credits send_context_info 0 4894 &enable_so_sc_datablk_cnt_nilfs_sc_info_4894
-+enable_so_tng_serial_setup_fndecl_4896 tng_serial_setup fndecl 4 4896 NULL
+enable_so_head_circ_buf_4897 head circ_buf 0 4897 NULL
+enable_so_wMaxSegmentSize_usb_cdc_ether_desc_4898 wMaxSegmentSize usb_cdc_ether_desc 0 4898 NULL nohasharray
+enable_so_refdiv_arizona_fll_cfg_4898 refdiv arizona_fll_cfg 0 4898 &enable_so_wMaxSegmentSize_usb_cdc_ether_desc_4898
@@ -155951,24 +155355,20 @@ index 0000000..9da833a
+enable_so_diva_um_idi_read_fndecl_4912 diva_um_idi_read fndecl 0 4912 NULL
+enable_so_tree_mod_log_eb_move_fndecl_4920 tree_mod_log_eb_move fndecl 5 4920 NULL
+enable_so_inofreefwd_iag_4921 inofreefwd iag 0 4921 NULL
-+enable_so_event_trigger_write_fndecl_4922 event_trigger_write fndecl 3 4922 NULL
+enable_so_leaf_copy_items_fndecl_4923 leaf_copy_items fndecl 5 4923 NULL
+enable_so_ui_size_ubifs_inode_4934 ui_size ubifs_inode 0 4934 NULL
+enable_so_bpp_drm_mode_fb_cmd_4936 bpp drm_mode_fb_cmd 0 4936 NULL
+enable_so_clear_extent_bits_fndecl_4939 clear_extent_bits fndecl 2-3 4939 NULL
-+enable_so_ocfs2_xattr_security_set_fndecl_4947 ocfs2_xattr_security_set fndecl 4 4947 NULL
+enable_so_update_tind_extent_range_fndecl_4950 update_tind_extent_range fndecl 3 4950 NULL nohasharray
+enable_so_mlx5_ib_db_map_user_fndecl_4950 mlx5_ib_db_map_user fndecl 2 4950 &enable_so_update_tind_extent_range_fndecl_4950 nohasharray
+enable_so_read_tape_fndecl_4950 read_tape fndecl 2 4950 &enable_so_mlx5_ib_db_map_user_fndecl_4950
+enable_so_clear_extent_uptodate_fndecl_4952 clear_extent_uptodate fndecl 2-3 4952 NULL
+enable_so_myri10ge_get_txrx_fndecl_4953 myri10ge_get_txrx fndecl 2 4953 NULL
-+enable_so_aat2870_reg_write_file_fndecl_4965 aat2870_reg_write_file fndecl 3 4965 NULL
+enable_so_fuse_conn_limit_read_fndecl_4967 fuse_conn_limit_read fndecl 3 4967 NULL
+enable_so_team_options_register_fndecl_4968 team_options_register fndecl 3 4968 NULL
+enable_so_radeon_align_pitch_fndecl_4969 radeon_align_pitch fndecl 0-2 4969 NULL
+enable_so_read_len_t4_swsqe_4971 read_len t4_swsqe 0 4971 NULL nohasharray
+enable_so_reiserfs_dir_fsync_fndecl_4971 reiserfs_dir_fsync fndecl 2-3 4971 &enable_so_read_len_t4_swsqe_4971
-+enable_so_iwl_mvm_power_mac_dbgfs_read_fndecl_4976 iwl_mvm_power_mac_dbgfs_read fndecl 0 4976 NULL
+enable_so_len_htc_record_hdr_4978 len htc_record_hdr 0 4978 NULL
+enable_so_t_data_nents_se_cmd_4981 t_data_nents se_cmd 0 4981 NULL nohasharray
+enable_so_dma_tx_num_vardecl_altera_tse_main_c_4981 dma_tx_num vardecl_altera_tse_main.c 0 4981 &enable_so_t_data_nents_se_cmd_4981
@@ -156010,8 +155410,7 @@ index 0000000..9da833a
+enable_so_domain_a_len_ccp_ecc_point_math_5093 domain_a_len ccp_ecc_point_math 0 5093 NULL
+enable_so___radix_tree_create_fndecl_5102 __radix_tree_create fndecl 0 5102 NULL
+enable_so_default_file_splice_write_fndecl_5103 default_file_splice_write fndecl 4 5103 NULL
-+enable_so_efi_get_runtime_map_desc_size_fndecl_5111 efi_get_runtime_map_desc_size fndecl 0 5111 NULL nohasharray
-+enable_so_trusted_set_fndecl_5111 trusted_set fndecl 4 5111 &enable_so_efi_get_runtime_map_desc_size_fndecl_5111
++enable_so_efi_get_runtime_map_desc_size_fndecl_5111 efi_get_runtime_map_desc_size fndecl 0 5111 NULL
+enable_so_bfad_iocmd_fcpim_cfg_lunmask_fndecl_5112 bfad_iocmd_fcpim_cfg_lunmask fndecl 0 5112 NULL nohasharray
+enable_so_mem_eni_dev_5112 mem eni_dev 0 5112 &enable_so_bfad_iocmd_fcpim_cfg_lunmask_fndecl_5112
+enable_so_num_banks_adf_hw_device_data_5115 num_banks adf_hw_device_data 0 5115 NULL
@@ -156021,7 +155420,6 @@ index 0000000..9da833a
+enable_so_replay_log_leb_fndecl_5123 replay_log_leb fndecl 3 5123 NULL
+enable_so_ocfs2_trim_extent_fndecl_5124 ocfs2_trim_extent fndecl 4-3-0 5124 NULL
+enable_so_ceph_alloc_page_vector_fndecl_5125 ceph_alloc_page_vector fndecl 1 5125 NULL
-+enable_so_iwl_dbgfs_rx_handlers_read_fndecl_5127 iwl_dbgfs_rx_handlers_read fndecl 3 5127 NULL
+enable_so_ccp_init_sg_workarea_fndecl_5128 ccp_init_sg_workarea fndecl 4 5128 NULL
+enable_so_fuse_dev_splice_write_fndecl_5131 fuse_dev_splice_write fndecl 4 5131 NULL
+enable_so_nfs4_init_callback_netid_fndecl_5134 nfs4_init_callback_netid fndecl 0 5134 NULL
@@ -156038,7 +155436,8 @@ index 0000000..9da833a
+enable_so_tx_hdr_len_p54_common_5164 tx_hdr_len p54_common 0 5164 NULL nohasharray
+enable_so_wep_packets_read_fndecl_5164 wep_packets_read fndecl 3 5164 &enable_so_tx_hdr_len_p54_common_5164
+enable_so_indices_ixgbe_ring_feature_5170 indices ixgbe_ring_feature 0 5170 NULL
-+enable_so_batadv_tt_local_remove_fndecl_5177 batadv_tt_local_remove fndecl 3 5177 NULL
++enable_so_nfs4_xattr_get_nfs4_label_fndecl_5177 nfs4_xattr_get_nfs4_label fndecl 5 5177 NULL nohasharray
++enable_so_batadv_tt_local_remove_fndecl_5177 batadv_tt_local_remove fndecl 3 5177 &enable_so_nfs4_xattr_get_nfs4_label_fndecl_5177
+enable_so_ext4_es_insert_extent_fndecl_5178 ext4_es_insert_extent fndecl 0-3-2 5178 NULL nohasharray
+enable_so_len_bts_file_action_5178 len bts_file_action 0 5178 &enable_so_ext4_es_insert_extent_fndecl_5178
+enable_so_lpfc_issue_ct_rsp_fndecl_5182 lpfc_issue_ct_rsp fndecl 6 5182 NULL
@@ -156058,8 +155457,10 @@ index 0000000..9da833a
+enable_so_mmc_test_broken_transfer_fndecl_5224 mmc_test_broken_transfer fndecl 3-2 5224 NULL
+enable_so_sq905_read_data_fndecl_5229 sq905_read_data fndecl 0 5229 NULL
+enable_so_madvise_hwpoison_fndecl_5231 madvise_hwpoison fndecl 2 5231 NULL
++enable_so_rx_tpa_end_cmp_misc_v1_rx_tpa_end_cmp_5235 rx_tpa_end_cmp_misc_v1 rx_tpa_end_cmp 0 5235 NULL
+enable_so_nr_extents__ntfs_inode_5242 nr_extents _ntfs_inode 0 5242 NULL
-+enable_so_nf_reject_iphdr_put_fndecl_5243 nf_reject_iphdr_put fndecl 3 5243 NULL
++enable_so_nf_reject_iphdr_put_fndecl_5243 nf_reject_iphdr_put fndecl 3 5243 NULL nohasharray
++enable_so___scif_pin_pages_fndecl_5243 __scif_pin_pages fndecl 2 5243 &enable_so_nf_reject_iphdr_put_fndecl_5243
+enable_so_feednum_dvb_demux_5252 feednum dvb_demux 0 5252 NULL
+enable_so_fdt_next_subnode_fndecl_5258 fdt_next_subnode fndecl 2 5258 NULL
+enable_so_len_fstrim_range_5265 len fstrim_range 0 5265 NULL
@@ -156068,11 +155469,11 @@ index 0000000..9da833a
+enable_so_upload_data_fndecl_5277 upload_data fndecl 2 5277 NULL nohasharray
+enable_so_fi_extents_max_fiemap_extent_info_5277 fi_extents_max fiemap_extent_info 0 5277 &enable_so_upload_data_fndecl_5277
+enable_so_xlog_find_verify_log_record_fndecl_5285 xlog_find_verify_log_record fndecl 2 5285 NULL
-+enable_so_ieee80211_if_read_element_ttl_fndecl_5286 ieee80211_if_read_element_ttl fndecl 3 5286 NULL
+enable_so_count_mpc8xxx_spi_5287 count mpc8xxx_spi 0 5287 NULL
+enable_so_dma_offset_freelQ_5299 dma_offset freelQ 0 5299 NULL nohasharray
+enable_so_lpt_hght_ubifs_info_5299 lpt_hght ubifs_info 0 5299 &enable_so_dma_offset_freelQ_5299
+enable_so_drm_ht_create_fndecl_5302 drm_ht_create fndecl 2 5302 NULL
++enable_so_tx_nr_rings_bnxt_5306 tx_nr_rings bnxt 0 5306 NULL
+enable_so_error_ide_atapi_pc_5308 error ide_atapi_pc 0 5308 NULL
+enable_so_sctp_setsockopt_events_fndecl_5309 sctp_setsockopt_events fndecl 3 5309 NULL
+enable_so_thermal_tx_stop_read_fndecl_5310 thermal_tx_stop_read fndecl 3 5310 NULL
@@ -156080,18 +155481,17 @@ index 0000000..9da833a
+enable_so_devm_mdiobus_alloc_size_fndecl_5317 devm_mdiobus_alloc_size fndecl 2 5317 NULL
+enable_so_matchsize_xt_match_5320 matchsize xt_match 0 5320 NULL
+enable_so____alloc_bootmem_node_fndecl_5329 ___alloc_bootmem_node fndecl 3-2-4-5 5329 NULL
-+enable_so_scsi_change_queue_depth_fndecl_5330 scsi_change_queue_depth fndecl 2 5330 NULL
+enable_so_get_cramfs_inode_fndecl_5332 get_cramfs_inode fndecl 3 5332 NULL
+enable_so_jfs_quota_read_fndecl_5341 jfs_quota_read fndecl 5 5341 NULL
+enable_so_comedi_isadma_alloc_fndecl_5342 comedi_isadma_alloc fndecl 2 5342 NULL
+enable_so_get_cr3_kvm_mmu_5347 get_cr3 kvm_mmu 0 5347 NULL
+enable_so_data_count_iscsi_task_5350 data_count iscsi_task 0 5350 NULL
+enable_so_brcmf_usb_send_ctl_fndecl_5357 brcmf_usb_send_ctl fndecl 3 5357 NULL
-+enable_so_compute_blocknr_fndecl_5361 compute_blocknr fndecl 0-2 5361 NULL nohasharray
-+enable_so_read_user_buf_avail_tomoyo_io_buffer_5361 read_user_buf_avail tomoyo_io_buffer 0 5361 &enable_so_compute_blocknr_fndecl_5361
++enable_so_read_user_buf_avail_tomoyo_io_buffer_5361 read_user_buf_avail tomoyo_io_buffer 0 5361 NULL
+enable_so_ceph_setxattr_fndecl_5362 ceph_setxattr fndecl 4 5362 NULL
+enable_so_michael_mic_fndecl_5363 michael_mic fndecl 5 5363 NULL
+enable_so_nfs4_proc_readdir_fndecl_5367 nfs4_proc_readdir fndecl 5 5367 NULL
++enable_so_scif_prog_signal_fndecl_5368 scif_prog_signal fndecl 2 5368 NULL
+enable_so_xfs_buf_read_uncached_fndecl_5369 xfs_buf_read_uncached fndecl 2-3 5369 NULL
+enable_so_mangle_packet_fndecl_5371 mangle_packet fndecl 2-7-9 5371 NULL
+enable_so_hfsplus_free_extents_fndecl_5372 hfsplus_free_extents fndecl 4 5372 NULL nohasharray
@@ -156103,6 +155503,7 @@ index 0000000..9da833a
+enable_so_flash_dev_cache_miss_fndecl_5381 flash_dev_cache_miss fndecl 4 5381 &enable_so_skbprio_ip_set_ext_5381
+enable_so_regset_tls_set_fndecl_5384 regset_tls_set fndecl 4 5384 NULL
+enable_so_fuse_perform_write_fndecl_5386 fuse_perform_write fndecl 4-0 5386 NULL
++enable_so_max_gen_clk_probe_fndecl_5389 max_gen_clk_probe fndecl 5 5389 NULL
+enable_so_check_iommu_size_fndecl_5390 check_iommu_size fndecl 0-2-1 5390 NULL
+enable_so_pcibios_window_alignment_fndecl_5391 pcibios_window_alignment fndecl 0 5391 NULL
+enable_so_error_thin_bio_list_fndecl_5394 error_thin_bio_list fndecl 3 5394 NULL nohasharray
@@ -156113,15 +155514,14 @@ index 0000000..9da833a
+enable_so_session_key_encryption_key_bytes_ecryptfs_password_5413 session_key_encryption_key_bytes ecryptfs_password 0 5413 NULL
+enable_so_value_xen_pci_op_5416 value xen_pci_op 0 5416 NULL
+enable_so_allocmin_nilfs_sufile_info_5418 allocmin nilfs_sufile_info 0 5418 NULL
-+enable_so_reg_size_intel_iommu_5423 reg_size intel_iommu 0 5423 NULL nohasharray
-+enable_so_nilfs_sufile_truncate_range_fndecl_5423 nilfs_sufile_truncate_range fndecl 3-2 5423 &enable_so_reg_size_intel_iommu_5423 nohasharray
-+enable_so_ino_ncp_entry_info_5423 ino ncp_entry_info 0 5423 &enable_so_nilfs_sufile_truncate_range_fndecl_5423
++enable_so_nilfs_sufile_truncate_range_fndecl_5423 nilfs_sufile_truncate_range fndecl 3-2 5423 NULL nohasharray
++enable_so_ino_ncp_entry_info_5423 ino ncp_entry_info 0 5423 &enable_so_nilfs_sufile_truncate_range_fndecl_5423 nohasharray
++enable_so_reg_size_intel_iommu_5423 reg_size intel_iommu 0 5423 &enable_so_ino_ncp_entry_info_5423
+enable_so_port_mad_size_fndecl_5434 port_mad_size fndecl 0 5434 NULL
+enable_so_sigmadsp_read_i2c_fndecl_5435 sigmadsp_read_i2c fndecl 4 5435 NULL
+enable_so_size_drm_radeon_gem_create_5440 size drm_radeon_gem_create 0 5440 NULL
+enable_so_vlen_nfsd_writeargs_5461 vlen nfsd_writeargs 0 5461 NULL
+enable_so_btrfs_fiemap_fndecl_5462 btrfs_fiemap fndecl 4-3 5462 NULL
-+enable_so_num_stations_il_priv_5465 num_stations il_priv 0 5465 NULL
+enable_so_acpi_register_gsi_ioapic_fndecl_5477 acpi_register_gsi_ioapic fndecl 2 5477 NULL
+enable_so_max_pkeys_mthca_dev_lim_5481 max_pkeys mthca_dev_lim 0 5481 NULL
+enable_so_efs_find_entry_fndecl_5485 efs_find_entry fndecl 0 5485 NULL
@@ -156134,11 +155534,11 @@ index 0000000..9da833a
+enable_so_pn_socket_create_fndecl_5510 pn_socket_create fndecl 3 5510 &enable_so___tipc_sendmsg_fndecl_5510
+enable_so_vmw_execbuf_submit_cmdbuf_fndecl_5516 vmw_execbuf_submit_cmdbuf fndecl 3 5516 NULL
+enable_so_nsrcs_igmpv3_query_5520 nsrcs igmpv3_query 0 5520 NULL
-+enable_so_wiidebug_eeprom_read_fndecl_5523 wiidebug_eeprom_read fndecl 3 5523 NULL
+enable_so_smk_write_rules_list_fndecl_5526 smk_write_rules_list fndecl 3 5526 NULL
+enable_so_line_slgt_info_5527 line slgt_info 0 5527 NULL
+enable_so_ceph_tcp_sendpage_fndecl_5531 ceph_tcp_sendpage fndecl 0-4 5531 NULL
-+enable_so_debug_output_fndecl_5532 debug_output fndecl 3 5532 NULL nohasharray
++enable_so_mlx4_set_path_fndecl_5532 mlx4_set_path fndecl 6 5532 NULL nohasharray
++enable_so_debug_output_fndecl_5532 debug_output fndecl 3 5532 &enable_so_mlx4_set_path_fndecl_5532 nohasharray
+enable_so_tool_dbfn_read_fndecl_5532 tool_dbfn_read fndecl 3 5532 &enable_so_debug_output_fndecl_5532
+enable_so_sq_cnt_queue_set_5538 sq_cnt queue_set 0 5538 NULL nohasharray
+enable_so_batadv_arp_get_type_fndecl_5538 batadv_arp_get_type fndecl 3 5538 &enable_so_sq_cnt_queue_set_5538
@@ -156160,10 +155560,8 @@ index 0000000..9da833a
+enable_so_i2c_read_eeprom_fndecl_5583 i2c_read_eeprom fndecl 5 5583 NULL
+enable_so_nfqnl_get_sk_secctx_fndecl_5586 nfqnl_get_sk_secctx fndecl 0 5586 NULL nohasharray
+enable_so_from_buffer_fndecl_5586 from_buffer fndecl 3 5586 &enable_so_nfqnl_get_sk_secctx_fndecl_5586
-+enable_so_horus3a_i2c_debug_fndecl_5589 horus3a_i2c_debug fndecl 5 5589 NULL
+enable_so_fdt_path_offset_fndecl_5591 fdt_path_offset fndecl 0 5591 NULL
-+enable_so_ext4_xattr_security_set_fndecl_5594 ext4_xattr_security_set fndecl 4 5594 NULL nohasharray
-+enable_so_bg_itable_unused_lo_ext4_group_desc_5594 bg_itable_unused_lo ext4_group_desc 0 5594 &enable_so_ext4_xattr_security_set_fndecl_5594
++enable_so_bg_itable_unused_lo_ext4_group_desc_5594 bg_itable_unused_lo ext4_group_desc 0 5594 NULL
+enable_so_num_scanouts_virtio_gpu_device_5598 num_scanouts virtio_gpu_device 0 5598 NULL
+enable_so_memory_map_bottom_up_fndecl_5599 memory_map_bottom_up fndecl 1-2 5599 NULL nohasharray
+enable_so_size_sched_attr_5599 size sched_attr 0 5599 &enable_so_memory_map_bottom_up_fndecl_5599
@@ -156185,8 +155583,7 @@ index 0000000..9da833a
+enable_so_udpv6_recvmsg_fndecl_5638 udpv6_recvmsg fndecl 3 5638 NULL
+enable_so_ring_buffer_size_vardecl_ldusb_c_5645 ring_buffer_size vardecl_ldusb.c 0 5645 NULL
+enable_so_efi_memdesc_size_efi_info_5654 efi_memdesc_size efi_info 0 5654 NULL nohasharray
-+enable_so_tx_ring_size_altera_tse_private_5654 tx_ring_size altera_tse_private 0 5654 &enable_so_efi_memdesc_size_efi_info_5654 nohasharray
-+enable_so_iwl_dbgfs_reply_tx_error_read_fndecl_5654 iwl_dbgfs_reply_tx_error_read fndecl 3 5654 &enable_so_tx_ring_size_altera_tse_private_5654
++enable_so_tx_ring_size_altera_tse_private_5654 tx_ring_size altera_tse_private 0 5654 &enable_so_efi_memdesc_size_efi_info_5654
+enable_so___spi_map_msg_fndecl_5657 __spi_map_msg fndecl 0 5657 NULL nohasharray
+enable_so_dev_id_pci_id_descr_5657 dev_id pci_id_descr 0 5657 &enable_so___spi_map_msg_fndecl_5657
+enable_so_vmw_kms_stdu_dma_fndecl_5659 vmw_kms_stdu_dma fndecl 7 5659 NULL
@@ -156202,7 +155599,6 @@ index 0000000..9da833a
+enable_so_lbtf_cmd_async_fndecl_5691 lbtf_cmd_async fndecl 4 5691 NULL
+enable_so_totsize_xfs_attr_sf_hdr_5692 totsize xfs_attr_sf_hdr 0 5692 NULL
+enable_so_s_blocks_count_ext2_super_block_5695 s_blocks_count ext2_super_block 0 5695 NULL
-+enable_so_il_dbgfs_rxon_filter_flags_read_fndecl_5698 il_dbgfs_rxon_filter_flags_read fndecl 3 5698 NULL
+enable_so_write_bytes_to_xdr_buf_fndecl_5702 write_bytes_to_xdr_buf fndecl 4-2 5702 NULL
+enable_so_cfg80211_rx_unprot_mlme_mgmt_fndecl_5707 cfg80211_rx_unprot_mlme_mgmt fndecl 3 5707 NULL nohasharray
+enable_so_batadv_tt_save_orig_buffer_fndecl_5707 batadv_tt_save_orig_buffer fndecl 4 5707 &enable_so_cfg80211_rx_unprot_mlme_mgmt_fndecl_5707
@@ -156213,8 +155609,8 @@ index 0000000..9da833a
+enable_so_in_attr_len_ore_io_state_5713 in_attr_len ore_io_state 0 5713 NULL
+enable_so_vt_hdr_vxfs_typed_5715 vt_hdr vxfs_typed 0 5715 NULL
+enable_so_hfsplus_get_block_fndecl_5725 hfsplus_get_block fndecl 2 5725 NULL
-+enable_so_debug_read_fndecl_5737 debug_read fndecl 3 5737 NULL
+enable_so_max_order_mlx4_buddy_5738 max_order mlx4_buddy 0 5738 NULL
++enable_so_max_phys_sect_nvm_dev_ops_5745 max_phys_sect nvm_dev_ops 0 5745 NULL
+enable_so_scrbuf_sisusb_usb_data_5749 scrbuf sisusb_usb_data 0 5749 NULL
+enable_so_event_tx_stuck_read_fndecl_5754 event_tx_stuck_read fndecl 3 5754 NULL
+enable_so_skb_checksum_maybe_trim_fndecl_5755 skb_checksum_maybe_trim fndecl 2 5755 NULL
@@ -156244,7 +155640,6 @@ index 0000000..9da833a
+enable_so_interpret_user_input_fndecl_5842 interpret_user_input fndecl 2 5842 NULL
+enable_so_transferred_vardecl_shuttle_usbat_c_5845 transferred vardecl_shuttle_usbat.c 0 5845 NULL
+enable_so_sync_fill_pt_info_fndecl_5846 sync_fill_pt_info fndecl 0 5846 NULL
-+enable_so_v9fs_xattr_security_set_fndecl_5847 v9fs_xattr_security_set fndecl 4 5847 NULL
+enable_so_get_n_events_by_type_fndecl_5850 get_n_events_by_type fndecl 0 5850 NULL
+enable_so_sound_insert_unit_fndecl_5861 sound_insert_unit fndecl 3-4 5861 NULL
+enable_so_SyS_sched_getaffinity_fndecl_5863 SyS_sched_getaffinity fndecl 2 5863 NULL
@@ -156263,7 +155658,6 @@ index 0000000..9da833a
+enable_so_size_squashfs_dir_entry_5896 size squashfs_dir_entry 0 5896 NULL
+enable_so___nla_reserve_fndecl_5901 __nla_reserve fndecl 3 5901 NULL
+enable_so_alloc_rx_slot_fndecl_5908 alloc_rx_slot fndecl 0 5908 NULL
-+enable_so_bytes_drm_i915_error_state_buf_5909 bytes drm_i915_error_state_buf 0 5909 NULL
+enable_so_sctp_tsnmap_num_gabs_fndecl_5915 sctp_tsnmap_num_gabs fndecl 0 5915 NULL
+enable_so_grec_nsrcs_igmpv3_grec_5916 grec_nsrcs igmpv3_grec 0 5916 NULL
+enable_so_buffer_len_async_pdu_handle_5928 buffer_len async_pdu_handle 0 5928 NULL
@@ -156271,6 +155665,7 @@ index 0000000..9da833a
+enable_so_ocfs2_reflink_xattr_buckets_fndecl_5931 ocfs2_reflink_xattr_buckets fndecl 7 5931 NULL
+enable_so_layout_in_gaps_fndecl_5933 layout_in_gaps fndecl 2 5933 NULL
+enable_so_intel_gtt_unmap_memory_fndecl_5935 intel_gtt_unmap_memory fndecl 2 5935 NULL
++enable_so_num_of_paging_blk_iwl_mvm_5936 num_of_paging_blk iwl_mvm 0 5936 NULL
+enable_so_max_attributes_pmbus_data_5939 max_attributes pmbus_data 0 5939 NULL
+enable_so_ide_config_drive_speed_fndecl_5940 ide_config_drive_speed fndecl 2 5940 NULL
+enable_so_gfn_to_pfn_atomic_fndecl_5942 gfn_to_pfn_atomic fndecl 2 5942 NULL
@@ -156314,7 +155709,6 @@ index 0000000..9da833a
+enable_so_map_base_tpm_inf_dev_6056 map_base tpm_inf_dev 0 6056 NULL
+enable_so_spu_base_info_size_ipath_user_info_6059 spu_base_info_size ipath_user_info 0 6059 NULL
+enable_so_scsi_debug_dev_size_mb_vardecl_scsi_debug_c_6060 scsi_debug_dev_size_mb vardecl_scsi_debug.c 0 6060 NULL
-+enable_so_sta_last_seq_ctrl_read_fndecl_6065 sta_last_seq_ctrl_read fndecl 3 6065 NULL
+enable_so_count_vardecl_speedtest_c_6069 count vardecl_speedtest.c 0 6069 NULL
+enable_so_cifs_readv_from_socket_fndecl_6070 cifs_readv_from_socket fndecl 0-4-3 6070 NULL
+enable_so_length_hci_ev_le_advertising_info_6074 length hci_ev_le_advertising_info 0 6074 NULL
@@ -156353,14 +155747,14 @@ index 0000000..9da833a
+enable_so_sensor_write_regs_fndecl_6181 sensor_write_regs fndecl 0 6181 NULL
+enable_so_arizona_calc_fratio_fndecl_6185 arizona_calc_fratio fndecl 0 6185 NULL
+enable_so_start_mtd_oob_buf64_6198 start mtd_oob_buf64 0 6198 NULL
-+enable_so___einj_error_trigger_fndecl_6200 __einj_error_trigger fndecl 1 6200 NULL nohasharray
-+enable_so_venus_rename_fndecl_6200 venus_rename fndecl 4-5 6200 &enable_so___einj_error_trigger_fndecl_6200
++enable_so_venus_rename_fndecl_6200 venus_rename fndecl 4-5 6200 NULL
+enable_so___send_write_same_fndecl_6201 __send_write_same fndecl 0 6201 NULL
+enable_so_height_linux_logo_6207 height linux_logo 0 6207 NULL nohasharray
+enable_so_digi_write_oob_command_fndecl_6207 digi_write_oob_command fndecl 3 6207 &enable_so_height_linux_logo_6207
+enable_so_mmc_spi_readtoken_fndecl_6208 mmc_spi_readtoken fndecl 0 6208 NULL
+enable_so_index_lola_stream_6210 index lola_stream 0 6210 NULL nohasharray
+enable_so_dac_channels_pcm_oxygen_model_6210 dac_channels_pcm oxygen_model 0 6210 &enable_so_index_lola_stream_6210
++enable_so_bnxt_calc_nr_ring_pages_fndecl_6213 bnxt_calc_nr_ring_pages fndecl 0-2-1 6213 NULL
+enable_so_val_bits_regmap_config_6218 val_bits regmap_config 0 6218 NULL
+enable_so_sc_ssid_len_wl18xx_event_mailbox_6223 sc_ssid_len wl18xx_event_mailbox 0 6223 NULL
+enable_so_exofs_read_lookup_dev_table_fndecl_6230 exofs_read_lookup_dev_table fndecl 3 6230 NULL
@@ -156388,8 +155782,6 @@ index 0000000..9da833a
+enable_so__snd_pcm_lib_alloc_vmalloc_buffer_fndecl_6287 _snd_pcm_lib_alloc_vmalloc_buffer fndecl 2 6287 NULL
+enable_so_hOver_plus_panel_info_6297 hOver_plus panel_info 0 6297 NULL
+enable_so_lpuart_copy_rx_to_tty_fndecl_6298 lpuart_copy_rx_to_tty fndecl 3 6298 NULL
-+enable_so__iwl_dbgfs_set_nic_temperature_write_fndecl_6303 _iwl_dbgfs_set_nic_temperature_write fndecl 3 6303 NULL
-+enable_so_count_leafs_fndecl_6305 count_leafs fndecl 0 6305 NULL
+enable_so_sn9c2028_command_fndecl_6307 sn9c2028_command fndecl 0 6307 NULL
+enable_so_em28xx_audio_ep_packet_size_fndecl_6311 em28xx_audio_ep_packet_size fndecl 0 6311 NULL
+enable_so_shadow_fetch_fndecl_6315 shadow_fetch fndecl 3 6315 NULL
@@ -156431,15 +155823,14 @@ index 0000000..9da833a
+enable_so_xfs_rtallocate_extent_near_fndecl_6383 xfs_rtallocate_extent_near fndecl 3-5-9 6383 NULL
+enable_so_snd_info_entry_llseek_fndecl_6384 snd_info_entry_llseek fndecl 2 6384 NULL
+enable_so_partition_sched_domains_fndecl_6386 partition_sched_domains fndecl 1 6386 NULL
-+enable_so_length_fusbh200_qtd_6388 length fusbh200_qtd 0 6388 NULL
+enable_so_wps_probe_req_ie_len_mlme_priv_6393 wps_probe_req_ie_len mlme_priv 0 6393 NULL
-+enable_so_totalreserve_pages_vardecl_6395 totalreserve_pages vardecl 0 6395 NULL nohasharray
-+enable_so_max_agbno_xfs_alloc_arg_6395 max_agbno xfs_alloc_arg 0 6395 &enable_so_totalreserve_pages_vardecl_6395
++enable_so_max_agbno_xfs_alloc_arg_6395 max_agbno xfs_alloc_arg 0 6395 NULL nohasharray
++enable_so_totalreserve_pages_vardecl_6395 totalreserve_pages vardecl 0 6395 &enable_so_max_agbno_xfs_alloc_arg_6395
+enable_so_i_file_acl_ext2_inode_info_6396 i_file_acl ext2_inode_info 0 6396 NULL
-+enable_so_lpfc_debugfs_dif_err_write_fndecl_6403 lpfc_debugfs_dif_err_write fndecl 3 6403 NULL
+enable_so_srpt_post_send_fndecl_6405 srpt_post_send fndecl 3 6405 NULL nohasharray
+enable_so_compat_sys_ppoll_fndecl_6405 compat_sys_ppoll fndecl 2 6405 &enable_so_srpt_post_send_fndecl_6405
+enable_so_alloc_blocks_hfs_inode_info_6406 alloc_blocks hfs_inode_info 0 6406 NULL
++enable_so_brcmf_chip_sysmem_ramsize_fndecl_6407 brcmf_chip_sysmem_ramsize fndecl 0 6407 NULL
+enable_so_copy_from_iter_fndecl_6410 copy_from_iter fndecl 2-0 6410 NULL
+enable_so_fwnet_change_mtu_fndecl_6424 fwnet_change_mtu fndecl 2 6424 NULL nohasharray
+enable_so_x509_note_serial_fndecl_6424 x509_note_serial fndecl 5 6424 &enable_so_fwnet_change_mtu_fndecl_6424
@@ -156462,7 +155853,6 @@ index 0000000..9da833a
+enable_so_datasize_vub300_mmc_host_6490 datasize vub300_mmc_host 0 6490 NULL nohasharray
+enable_so_beep_amp_ad198x_spec_6490 beep_amp ad198x_spec 0 6490 &enable_so_datasize_vub300_mmc_host_6490 nohasharray
+enable_so_probe_kernel_write_fndecl_6490 probe_kernel_write fndecl 3 6490 &enable_so_beep_amp_ad198x_spec_6490
-+enable_so_v9fs_xattr_trusted_set_fndecl_6494 v9fs_xattr_trusted_set fndecl 4 6494 NULL
+enable_so_curr_dma_words_tegra_spi_data_6500 curr_dma_words tegra_spi_data 0 6500 NULL
+enable_so_new_offset_mdp_superblock_1_6501 new_offset mdp_superblock_1 0 6501 NULL
+enable_so_f_read_cntrs_qib_devdata_6502 f_read_cntrs qib_devdata 0 6502 NULL
@@ -156482,13 +155872,12 @@ index 0000000..9da833a
+enable_so_tx_ring_size_vmxnet3_adapter_6541 tx_ring_size vmxnet3_adapter 0 6541 NULL
+enable_so_fe_logical_ext4_free_extent_6542 fe_logical ext4_free_extent 0 6542 NULL
+enable_so_max_vfs_vardecl_igb_main_c_6547 max_vfs vardecl_igb_main.c 0 6547 NULL
-+enable_so_count_ixgb_desc_ring_6548 count ixgb_desc_ring 0 6548 NULL
-+enable_so_v9fs_xattr_trusted_get_fndecl_6549 v9fs_xattr_trusted_get fndecl 4 6549 NULL
++enable_so_pcm_snd_bebob_stream_formation_6548 pcm snd_bebob_stream_formation 0 6548 NULL nohasharray
++enable_so_count_ixgb_desc_ring_6548 count ixgb_desc_ring 0 6548 &enable_so_pcm_snd_bebob_stream_formation_6548
+enable_so_xlog_do_log_recovery_fndecl_6557 xlog_do_log_recovery fndecl 3 6557 NULL
+enable_so_active_duplex_tg3_link_config_6559 active_duplex tg3_link_config 0 6559 NULL
+enable_so_verity_verify_io_fndecl_6564 verity_verify_io fndecl 0 6564 NULL
+enable_so_vlan_tpid_ovs_action_push_vlan_6565 vlan_tpid ovs_action_push_vlan 0 6565 NULL
-+enable_so_num_x_edt_ft5x06_ts_data_6566 num_x edt_ft5x06_ts_data 0 6566 NULL
+enable_so_sddr09_read21_fndecl_6568 sddr09_read21 fndecl 4-3-6 6568 NULL nohasharray
+enable_so_neigh_hash_alloc_fndecl_6568 neigh_hash_alloc fndecl 1 6568 &enable_so_sddr09_read21_fndecl_6568
+enable_so_acpi_ut_create_package_object_fndecl_6569 acpi_ut_create_package_object fndecl 1 6569 NULL
@@ -156500,8 +155889,7 @@ index 0000000..9da833a
+enable_so_gcd_fndecl_6579 gcd fndecl 0-2-1 6579 NULL
+enable_so_argc_tomoyo_condition_6587 argc tomoyo_condition 0 6587 NULL
+enable_so_wil_write_file_rxon_fndecl_6590 wil_write_file_rxon fndecl 3 6590 NULL
-+enable_so_capture_frlog_rme96_6593 capture_frlog rme96 0 6593 NULL nohasharray
-+enable_so_ieee80211_if_read_dot11MeshHWMPactivePathToRootTimeout_fndecl_6593 ieee80211_if_read_dot11MeshHWMPactivePathToRootTimeout fndecl 3 6593 &enable_so_capture_frlog_rme96_6593
++enable_so_capture_frlog_rme96_6593 capture_frlog rme96 0 6593 NULL
+enable_so_bfad_iocmd_vport_clr_stats_fndecl_6597 bfad_iocmd_vport_clr_stats fndecl 0 6597 NULL
+enable_so_pci_get_device_fndecl_6606 pci_get_device fndecl 2 6606 NULL
+enable_so_dma_map_page_fndecl_6607 dma_map_page fndecl 0 6607 NULL
@@ -156535,7 +155923,6 @@ index 0000000..9da833a
+enable_so_img_imem_size_fw_hdr_6675 img_imem_size fw_hdr 0 6675 NULL nohasharray
+enable_so_pccard_store_cis_fndecl_6675 pccard_store_cis fndecl 6 6675 &enable_so_img_imem_size_fw_hdr_6675
+enable_so_compatsize_xt_match_6677 compatsize xt_match 0 6677 NULL
-+enable_so_lpfc_debugfs_lseek_fndecl_6679 lpfc_debugfs_lseek fndecl 2 6679 NULL
+enable_so_present_pages_zone_6685 present_pages zone 0 6685 NULL
+enable_so_ac_2order_ext4_allocation_context_6690 ac_2order ext4_allocation_context 0 6690 NULL
+enable_so_param_ssp_completion_resp_6691 param ssp_completion_resp 0 6691 NULL
@@ -156554,11 +155941,11 @@ index 0000000..9da833a
+enable_so_iova_mlx5_core_mr_6733 iova mlx5_core_mr 0 6733 NULL
+enable_so_pagesize_sddr09_card_info_6735 pagesize sddr09_card_info 0 6735 NULL
+enable_so_gnttab_alloc_grant_references_fndecl_6739 gnttab_alloc_grant_references fndecl 1 6739 NULL
++enable_so_num_vectors_qed_int_param_6741 num_vectors qed_int_param 0 6741 NULL
+enable_so__read_and_match_data_map_fndecl_6747 _read_and_match_data_map fndecl 2 6747 NULL
+enable_so_rfcomm_sock_setsockopt_fndecl_6749 rfcomm_sock_setsockopt fndecl 5 6749 NULL
+enable_so_before_xfs_da_node_entry_6750 before xfs_da_node_entry 0 6750 NULL
+enable_so_bfad_iocmd_diag_queuetest_fndecl_6752 bfad_iocmd_diag_queuetest fndecl 0 6752 NULL
-+enable_so_openings_ahd_linux_device_6755 openings ahd_linux_device 0 6755 NULL
+enable_so_alloc_size__osd_req_data_segment_6757 alloc_size _osd_req_data_segment 0 6757 NULL
+enable_so_um_idi_write_fndecl_6758 um_idi_write fndecl 3 6758 NULL
+enable_so_tun_opts_len_sw_flow_key_6759 tun_opts_len sw_flow_key 0 6759 NULL
@@ -156617,10 +156004,10 @@ index 0000000..9da833a
+enable_so_jffs2_zlib_decompress_fndecl_6892 jffs2_zlib_decompress fndecl 3-4 6892 &enable_so___kfifo_in_r_fndecl_6892
+enable_so_hpfs_bplus_lookup_fndecl_6896 hpfs_bplus_lookup fndecl 0-4 6896 NULL nohasharray
+enable_so_index_mlx5_uar_6896 index mlx5_uar 0 6896 &enable_so_hpfs_bplus_lookup_fndecl_6896
-+enable_so_adis16136_show_serial_fndecl_6897 adis16136_show_serial fndecl 3 6897 NULL
+enable_so_link_duplex_e1000_adapter_6902 link_duplex e1000_adapter 0 6902 NULL
+enable_so_jfs_quota_write_fndecl_6903 jfs_quota_write fndecl 5 6903 NULL
-+enable_so_write_inflate_state_6907 write inflate_state 0 6907 NULL
++enable_so_offset_clone_root_6907 offset clone_root 0 6907 NULL nohasharray
++enable_so_write_inflate_state_6907 write inflate_state 0 6907 &enable_so_offset_clone_root_6907
+enable_so_table_size_radeon_gart_6911 table_size radeon_gart 0 6911 NULL
+enable_so_pwr_sleep_time_count_read_fndecl_6914 pwr_sleep_time_count_read fndecl 3 6914 NULL
+enable_so_error_dm_io_6915 error dm_io 0 6915 NULL
@@ -156639,23 +156026,29 @@ index 0000000..9da833a
+enable_so_mq_msg_max_ipc_namespace_6978 mq_msg_max ipc_namespace 0 6978 NULL
+enable_so_pvr2_v4l2_read_fndecl_6981 pvr2_v4l2_read fndecl 3 6981 NULL
+enable_so_async_set_registers_fndecl_6987 async_set_registers fndecl 3 6987 NULL
++enable_so_log_start_r5l_log_6989 log_start r5l_log 0 6989 NULL
+enable_so_mappable_base_i915_gtt_6993 mappable_base i915_gtt 0 6993 NULL
+enable_so_sq_spare_wqes_mlx4_ib_qp_6994 sq_spare_wqes mlx4_ib_qp 0 6994 NULL
++enable_so_bits_from_user_fndecl_6996 bits_from_user fndecl 2-3 6996 NULL
+enable_so_smk_write_cipso_fndecl_6998 smk_write_cipso fndecl 3 6998 NULL
++enable_so_rx_agg_nr_pages_bnxt_7000 rx_agg_nr_pages bnxt 0 7000 NULL
+enable_so_gnttab_max_grant_frames_fndecl_7002 gnttab_max_grant_frames fndecl 0 7002 NULL
+enable_so_ft_data_ro_fcp_txrdy_7005 ft_data_ro fcp_txrdy 0 7005 NULL
+enable_so_p_start_nilfs_period_7008 p_start nilfs_period 0 7008 NULL nohasharray
+enable_so___posix_lock_file_fndecl_7008 __posix_lock_file fndecl 0 7008 &enable_so_p_start_nilfs_period_7008
++enable_so_num_rss_qede_dev_7011 num_rss qede_dev 0 7011 NULL
+enable_so_s_groups_count_ext4_sb_info_7012 s_groups_count ext4_sb_info 0 7012 NULL
+enable_so_ocfs2_cache_cluster_dealloc_fndecl_7016 ocfs2_cache_cluster_dealloc fndecl 3-2 7016 NULL
+enable_so_attr_bytes_osdv2_attributes_list_element_7018 attr_bytes osdv2_attributes_list_element 0 7018 NULL
+enable_so_channels_snd_pcm_plugin_format_7026 channels snd_pcm_plugin_format 0 7026 NULL
++enable_so_ip_tun_to_nlattr_fndecl_7028 ip_tun_to_nlattr fndecl 4 7028 NULL
+enable_so_virtio_gpu_alloc_object_fndecl_7030 virtio_gpu_alloc_object fndecl 2 7030 NULL
+enable_so_h_sync_strt_wid_crtc_7033 h_sync_strt_wid crtc 0 7033 NULL
+enable_so_fat_short2lower_uni_fndecl_7036 fat_short2lower_uni fndecl 0 7036 NULL
+enable_so_mq_msg_default_ipc_namespace_7041 mq_msg_default ipc_namespace 0 7041 NULL nohasharray
+enable_so_fpregs_get_fndecl_7041 fpregs_get fndecl 4 7041 &enable_so_mq_msg_default_ipc_namespace_7041
+enable_so_n_krcv_queues_hfi1_devdata_7042 n_krcv_queues hfi1_devdata 0 7042 NULL
++enable_so_fp_msix_cnt_qed_int_params_7045 fp_msix_cnt qed_int_params 0 7045 NULL
+enable_so_kvm_read_guest_page_fndecl_7049 kvm_read_guest_page fndecl 2-5 7049 NULL
+enable_so_iforce_send_packet_fndecl_7050 iforce_send_packet fndecl 2 7050 NULL
+enable_so_srq_entry_sz_mlx4_dev_cap_7052 srq_entry_sz mlx4_dev_cap 0 7052 NULL
@@ -156671,9 +156064,9 @@ index 0000000..9da833a
+enable_so_jt_size_gfx_firmware_header_v1_0_7064 jt_size gfx_firmware_header_v1_0 0 7064 NULL
+enable_so_zisofs_fill_pages_fndecl_7066 zisofs_fill_pages fndecl 3 7066 NULL
+enable_so_lua_sysfs_read_fndecl_7069 lua_sysfs_read fndecl 6 7069 NULL
++enable_so_msdc_tune_response_fndecl_7073 msdc_tune_response fndecl 2 7073 NULL
+enable_so_command_hdac_bus_ops_7079 command hdac_bus_ops 0 7079 NULL
-+enable_so_pref_height_vmw_display_unit_7089 pref_height vmw_display_unit 0 7089 NULL nohasharray
-+enable_so_tot_nodes_mic_bootparam_7089 tot_nodes mic_bootparam 0 7089 &enable_so_pref_height_vmw_display_unit_7089
++enable_so_pref_height_vmw_display_unit_7089 pref_height vmw_display_unit 0 7089 NULL
+enable_so_rx_pending_sky2_port_7090 rx_pending sky2_port 0 7090 NULL
+enable_so_get_vm_area_fndecl_7091 get_vm_area fndecl 1 7091 NULL
+enable_so_dma_mt7601u_dma_buf_7098 dma mt7601u_dma_buf 0 7098 NULL
@@ -156683,6 +156076,7 @@ index 0000000..9da833a
+enable_so_paging32_gpte_to_gfn_lvl_fndecl_7104 paging32_gpte_to_gfn_lvl fndecl 0-2-1 7104 NULL nohasharray
+enable_so_scan_ies_len_ieee80211_local_7104 scan_ies_len ieee80211_local 0 7104 &enable_so_paging32_gpte_to_gfn_lvl_fndecl_7104
+enable_so_nfsd4_encode_readv_fndecl_7110 nfsd4_encode_readv fndecl 4 7110 NULL
++enable_so_intel_fbc_calculate_cfb_size_fndecl_7116 intel_fbc_calculate_cfb_size fndecl 0 7116 NULL
+enable_so_rsxx_dma_queue_bio_fndecl_7118 rsxx_dma_queue_bio fndecl 0 7118 NULL
+enable_so_wil_tid_ampdu_rx_alloc_fndecl_7119 wil_tid_ampdu_rx_alloc fndecl 2 7119 NULL
+enable_so_alloc_pv_object_fndecl_7121 alloc_pv_object fndecl 3 7121 NULL
@@ -156693,7 +156087,6 @@ index 0000000..9da833a
+enable_so_acpi_rs_set_resource_length_fndecl_7131 acpi_rs_set_resource_length fndecl 1 7131 &enable_so_link_chain_affs_tail_7131 nohasharray
+enable_so_svc_getnl_fndecl_7131 svc_getnl fndecl 0 7131 &enable_so_acpi_rs_set_resource_length_fndecl_7131
+enable_so_nstids_tid_info_7139 nstids tid_info 0 7139 NULL
-+enable_so_mdiobus_read_fndecl_7146 mdiobus_read fndecl 0 7146 NULL
+enable_so_vc_origin_vc_data_7148 vc_origin vc_data 0 7148 NULL
+enable_so_ea_secno_fnode_7151 ea_secno fnode 0 7151 NULL nohasharray
+enable_so_privsize_nft_set_ops_7151 privsize nft_set_ops 0 7151 &enable_so_ea_secno_fnode_7151
@@ -156709,10 +156102,11 @@ index 0000000..9da833a
+enable_so_mfd_add_devices_fndecl_7183 mfd_add_devices fndecl 6-2-4 7183 &enable_so_vdisplay_moderec_7183
+enable_so_ino_node_footer_7185 ino node_footer 0 7185 NULL
+enable_so_acc_accl_accessdata_dn_7186 acc_accl accessdata_dn 0 7186 NULL
-+enable_so_vc_rows_vc_data_7192 vc_rows vc_data 0 7192 NULL nohasharray
-+enable_so___shmem_file_setup_fndecl_7192 __shmem_file_setup fndecl 2 7192 &enable_so_vc_rows_vc_data_7192 nohasharray
-+enable_so_btrfs_get_token_32_fndecl_7192 btrfs_get_token_32 fndecl 0 7192 &enable_so___shmem_file_setup_fndecl_7192 nohasharray
-+enable_so_ic_size_xlog_in_core_7192 ic_size xlog_in_core 0 7192 &enable_so_btrfs_get_token_32_fndecl_7192
++enable_so_btrfs_get_token_32_fndecl_7192 btrfs_get_token_32 fndecl 0 7192 NULL nohasharray
++enable_so___shmem_file_setup_fndecl_7192 __shmem_file_setup fndecl 2 7192 &enable_so_btrfs_get_token_32_fndecl_7192 nohasharray
++enable_so_vc_rows_vc_data_7192 vc_rows vc_data 0 7192 &enable_so___shmem_file_setup_fndecl_7192 nohasharray
++enable_so_ic_size_xlog_in_core_7192 ic_size xlog_in_core 0 7192 &enable_so_vc_rows_vc_data_7192 nohasharray
++enable_so_remote_addr_ib_atomic_wr_7192 remote_addr ib_atomic_wr 0 7192 &enable_so_ic_size_xlog_in_core_7192
+enable_so_mmc_calc_max_discard_fndecl_7198 mmc_calc_max_discard fndecl 0 7198 NULL
+enable_so_z_incomp_fndecl_7201 z_incomp fndecl 3 7201 NULL
+enable_so_length_pnfs_layout_range_7207 length pnfs_layout_range 0 7207 NULL nohasharray
@@ -156722,7 +156116,6 @@ index 0000000..9da833a
+enable_so_drbd_drain_block_fndecl_7210 drbd_drain_block fndecl 2 7210 &enable_so_size_srp_iu_7210
+enable_so_rivafb_do_maximize_fndecl_7212 rivafb_do_maximize fndecl 3-4 7212 NULL nohasharray
+enable_so_eq_ecount_lpfc_sli4_hba_7212 eq_ecount lpfc_sli4_hba 0 7212 &enable_so_rivafb_do_maximize_fndecl_7212
-+enable_so__iwl_dbgfs_bt_force_ant_write_fndecl_7214 _iwl_dbgfs_bt_force_ant_write fndecl 3 7214 NULL
+enable_so_max_id_Scsi_Host_7217 max_id Scsi_Host 0 7217 NULL
+enable_so_num_chipselect_spi_gpio_platform_data_7218 num_chipselect spi_gpio_platform_data 0 7218 NULL
+enable_so_bfad_iocmd_qos_get_attr_fndecl_7226 bfad_iocmd_qos_get_attr fndecl 0 7226 NULL
@@ -156742,7 +156135,8 @@ index 0000000..9da833a
+enable_so_trailer_len_dst_entry_7294 trailer_len dst_entry 0 7294 NULL nohasharray
+enable_so_pci_default_setup_fndecl_7294 pci_default_setup fndecl 4 7294 &enable_so_trailer_len_dst_entry_7294
+enable_so_cmd_size_vmw_view_7295 cmd_size vmw_view 0 7295 NULL nohasharray
-+enable_so_ubifs_update_one_lp_fndecl_7295 ubifs_update_one_lp fndecl 3 7295 &enable_so_cmd_size_vmw_view_7295 nohasharray
++enable_so_mlx4_ib_send_to_wire_fndecl_7295 mlx4_ib_send_to_wire fndecl 3 7295 &enable_so_cmd_size_vmw_view_7295 nohasharray
++enable_so_ubifs_update_one_lp_fndecl_7295 ubifs_update_one_lp fndecl 3 7295 &enable_so_mlx4_ib_send_to_wire_fndecl_7295 nohasharray
+enable_so___copy_to_user_swizzled_fndecl_7295 __copy_to_user_swizzled fndecl 3-4 7295 &enable_so_ubifs_update_one_lp_fndecl_7295
+enable_so_next_send_psn_mlx4_qp_context_7298 next_send_psn mlx4_qp_context 0 7298 NULL
+enable_so_height_vpe_q_data_7303 height vpe_q_data 0 7303 NULL
@@ -156756,7 +156150,6 @@ index 0000000..9da833a
+enable_so_control_cnt_pvr2_hdw_7335 control_cnt pvr2_hdw 0 7335 NULL
+enable_so_drm_malloc_ab_fndecl_7340 drm_malloc_ab fndecl 1-2 7340 NULL
+enable_so_pvr2_i2c_read_fndecl_7344 pvr2_i2c_read fndecl 4-6 7344 NULL
-+enable_so_sdebug_change_qdepth_fndecl_7345 sdebug_change_qdepth fndecl 2 7345 NULL
+enable_so_jpegqual_s2255_vc_7351 jpegqual s2255_vc 0 7351 NULL nohasharray
+enable_so_btusb_recv_intr_fndecl_7351 btusb_recv_intr fndecl 3 7351 &enable_so_jpegqual_s2255_vc_7351 nohasharray
+enable_so_get_server_iovec_fndecl_7351 get_server_iovec fndecl 2 7351 &enable_so_btusb_recv_intr_fndecl_7351
@@ -156793,7 +156186,6 @@ index 0000000..9da833a
+enable_so_xfs_file_fsync_fndecl_7433 xfs_file_fsync fndecl 2-3 7433 NULL
+enable_so_iio_device_add_event_fndecl_7439 iio_device_add_event fndecl 0 7439 NULL
+enable_so_data_len_sk_buff_7447 data_len sk_buff 0 7447 NULL
-+enable_so_rate_ctrl_alg_read_fndecl_7449 rate_ctrl_alg_read fndecl 3 7449 NULL
+enable_so_shdma_prep_memcpy_fndecl_7451 shdma_prep_memcpy fndecl 4-3 7451 NULL nohasharray
+enable_so_stat_st_vardecl_drv_c_7451 stat_st vardecl_drv.c 0 7451 &enable_so_shdma_prep_memcpy_fndecl_7451
+enable_so_drVBMSt_hfs_mdb_7456 drVBMSt hfs_mdb 0 7456 NULL
@@ -156808,12 +156200,12 @@ index 0000000..9da833a
+enable_so_minors_gigaset_driver_7468 minors gigaset_driver 0 7468 &enable_so_buffer_dma_ehci_qtd_7468
+enable_so_block_to_sectors_fndecl_7472 block_to_sectors fndecl 0-2 7472 NULL
+enable_so_devmem_is_allowed_fndecl_7475 devmem_is_allowed fndecl 1 7475 NULL
-+enable_so_ieee80211_if_read_tsf_fndecl_7479 ieee80211_if_read_tsf fndecl 3 7479 NULL
+enable_so_status_c67x00_urb_priv_7480 status c67x00_urb_priv 0 7480 NULL
+enable_so_rxrpc_server_keyring_fndecl_7484 rxrpc_server_keyring fndecl 3 7484 NULL
+enable_so_f_width_fimc_frame_7488 f_width fimc_frame 0 7488 NULL nohasharray
+enable_so_req_capsule_get_size_fndecl_7488 req_capsule_get_size fndecl 0 7488 &enable_so_f_width_fimc_frame_7488
+enable_so_s_log_block_size_ext2_super_block_7490 s_log_block_size ext2_super_block 0 7490 NULL
++enable_so_cookie_rds_atomic_args_7495 cookie rds_atomic_args 0 7495 NULL
+enable_so_can_nice_fndecl_7498 can_nice fndecl 2 7498 NULL
+enable_so_ri_lsegs_start_nilfs_recovery_info_7501 ri_lsegs_start nilfs_recovery_info 0 7501 NULL
+enable_so_calculate_inocache_hashsize_fndecl_7506 calculate_inocache_hashsize fndecl 0-1 7506 NULL
@@ -156828,7 +156220,8 @@ index 0000000..9da833a
+enable_so_size_hpi_response_header_7541 size hpi_response_header 0 7541 NULL
+enable_so_hd_nirqs_hpet_data_7558 hd_nirqs hpet_data 0 7558 NULL
+enable_so_raid10_resize_fndecl_7562 raid10_resize fndecl 2 7562 NULL
-+enable_so_max_channels_snd_pcm_chmap_7565 max_channels snd_pcm_chmap 0 7565 NULL
++enable_so_acpi_copy_property_array_u8_fndecl_7565 acpi_copy_property_array_u8 fndecl 0 7565 NULL nohasharray
++enable_so_max_channels_snd_pcm_chmap_7565 max_channels snd_pcm_chmap 0 7565 &enable_so_acpi_copy_property_array_u8_fndecl_7565
+enable_so_duplicateIXtree_fndecl_7568 duplicateIXtree fndecl 3-2 7568 NULL
+enable_so_len_cpl_rx_data_7570 len cpl_rx_data 0 7570 NULL
+enable_so_wqe_fcoe_cqe_7572 wqe fcoe_cqe 0 7572 NULL
@@ -156840,7 +156233,6 @@ index 0000000..9da833a
+enable_so_count_ivtvfb_dma_frame_7586 count ivtvfb_dma_frame 0 7586 NULL
+enable_so_length_sctp_chunkhdr_7587 length sctp_chunkhdr 0 7587 NULL
+enable_so_ftdi_elan_edset_input_fndecl_7588 ftdi_elan_edset_input fndecl 0 7588 NULL
-+enable_so_lpfc_debugfs_read_fndecl_7589 lpfc_debugfs_read fndecl 3 7589 NULL
+enable_so_scan_index_iio_chan_spec_7597 scan_index iio_chan_spec 0 7597 NULL
+enable_so_q_blkno_xfs_dquot_7601 q_blkno xfs_dquot 0 7601 NULL
+enable_so_pathmtu_sctp_transport_7603 pathmtu sctp_transport 0 7603 NULL
@@ -156873,7 +156265,8 @@ index 0000000..9da833a
+enable_so_ipoib_dev_init_fndecl_7687 ipoib_dev_init fndecl 3 7687 NULL nohasharray
+enable_so_cfg80211_sme_get_conn_ies_fndecl_7687 cfg80211_sme_get_conn_ies fndecl 3 7687 &enable_so_ipoib_dev_init_fndecl_7687
+enable_so_num_gpios_stmpe_7689 num_gpios stmpe 0 7689 NULL
-+enable_so_di_extsize_xfs_icdinode_7693 di_extsize xfs_icdinode 0 7693 NULL
++enable_so_ext2_xattr_trusted_set_fndecl_7693 ext2_xattr_trusted_set fndecl 5 7693 NULL nohasharray
++enable_so_di_extsize_xfs_icdinode_7693 di_extsize xfs_icdinode 0 7693 &enable_so_ext2_xattr_trusted_set_fndecl_7693
+enable_so_n_tty_receive_buf_real_raw_fndecl_7696 n_tty_receive_buf_real_raw fndecl 4 7696 NULL
+enable_so_record_length_cper_record_header_7697 record_length cper_record_header 0 7697 NULL
+enable_so_mxt_upload_cfg_mem_fndecl_7702 mxt_upload_cfg_mem fndecl 4 7702 NULL
@@ -156903,9 +156296,11 @@ index 0000000..9da833a
+enable_so_ocfs2_get_suballoc_slot_bit_fndecl_7773 ocfs2_get_suballoc_slot_bit fndecl 2 7773 NULL
+enable_so_t_data_nents_orig_se_cmd_7775 t_data_nents_orig se_cmd 0 7775 NULL
+enable_so_split_mem_range_fndecl_7776 split_mem_range fndecl 4-3 7776 NULL
-+enable_so_mode_size_cyttsp4_sysinfo_ofs_7780 mode_size cyttsp4_sysinfo_ofs 0 7780 NULL
++enable_so_record_one_subtree_extent_fndecl_7780 record_one_subtree_extent fndecl 3-0 7780 NULL nohasharray
++enable_so_mode_size_cyttsp4_sysinfo_ofs_7780 mode_size cyttsp4_sysinfo_ofs 0 7780 &enable_so_record_one_subtree_extent_fndecl_7780
+enable_so_alloc_ep_fndecl_7782 alloc_ep fndecl 1 7782 NULL
-+enable_so_mmu_private_affs_inode_info_7785 mmu_private affs_inode_info 0 7785 NULL
++enable_so_mmu_private_affs_inode_info_7785 mmu_private affs_inode_info 0 7785 NULL nohasharray
++enable_so_pkt_len_rx_desc_7785 pkt_len rx_desc 0 7785 &enable_so_mmu_private_affs_inode_info_7785
+enable_so_st_do_scsi_fndecl_7789 st_do_scsi fndecl 4 7789 NULL
+enable_so_qxl_framebuffer_surface_dirty_fndecl_7791 qxl_framebuffer_surface_dirty fndecl 6 7791 NULL nohasharray
+enable_so_pg_read_fndecl_7791 pg_read fndecl 3 7791 &enable_so_qxl_framebuffer_surface_dirty_fndecl_7791
@@ -156924,7 +156319,6 @@ index 0000000..9da833a
+enable_so_get_pipe_fndecl_7825 get_pipe fndecl 0-2 7825 NULL
+enable_so_nabs_joydev_7827 nabs joydev 0 7827 NULL
+enable_so_x1_virtio_gpu_framebuffer_7830 x1 virtio_gpu_framebuffer 0 7830 NULL
-+enable_so_minstrel_stats_read_fndecl_7833 minstrel_stats_read fndecl 3 7833 NULL
+enable_so_rtpref_nfs_fsinfo_7835 rtpref nfs_fsinfo 0 7835 NULL
+enable_so_nonstatic_find_mem_region_fndecl_7838 nonstatic_find_mem_region fndecl 1-2 7838 NULL
+enable_so_sys_truncate_fndecl_7846 sys_truncate fndecl 2 7846 NULL
@@ -156932,6 +156326,7 @@ index 0000000..9da833a
+enable_so_sl_datalen_nfsd4_slot_7859 sl_datalen nfsd4_slot 0 7859 NULL
+enable_so_wqe_shift_mlx4_ib_wq_7860 wqe_shift mlx4_ib_wq 0 7860 NULL
+enable_so_offset_iscsi_data_7862 offset iscsi_data 0 7862 NULL
++enable_so_n_vifs_ath10k_mac_change_chanctx_arg_7864 n_vifs ath10k_mac_change_chanctx_arg 0 7864 NULL
+enable_so_block_aligned_filename_size_ecryptfs_parse_tag_70_packet_silly_stack_7865 block_aligned_filename_size ecryptfs_parse_tag_70_packet_silly_stack 0 7865 NULL nohasharray
+enable_so_s_fpbshift_ufs_sb_private_info_7865 s_fpbshift ufs_sb_private_info 0 7865 &enable_so_block_aligned_filename_size_ecryptfs_parse_tag_70_packet_silly_stack_7865
+enable_so_cyapa_i2c_read_fndecl_7870 cyapa_i2c_read fndecl 3 7870 NULL
@@ -156943,14 +156338,14 @@ index 0000000..9da833a
+enable_so_sd_read_data_fndecl_7884 sd_read_data fndecl 3-0 7884 &enable_so_rxstatus_epic_rx_desc_7884 nohasharray
+enable_so_freecom_readdata_fndecl_7884 freecom_readdata fndecl 3-4 7884 &enable_so_sd_read_data_fndecl_7884
+enable_so_ath6kl_wmi_send_mgmt_cmd_fndecl_7888 ath6kl_wmi_send_mgmt_cmd fndecl 7-2 7888 NULL
-+enable_so_ieee80211_if_read_dot11MeshHWMPperrMinInterval_fndecl_7889 ieee80211_if_read_dot11MeshHWMPperrMinInterval fndecl 3 7889 NULL
+enable_so_i2400m_unknown_barker_fndecl_7903 i2400m_unknown_barker fndecl 3 7903 NULL
-+enable_so_ath6kl_wmi_info_req_cmd_fndecl_7906 ath6kl_wmi_info_req_cmd fndecl 2 7906 NULL nohasharray
-+enable_so_vdi_size_vxfs_inode_info_7906 vdi_size vxfs_inode_info 0 7906 &enable_so_ath6kl_wmi_info_req_cmd_fndecl_7906
++enable_so_vdi_size_vxfs_inode_info_7906 vdi_size vxfs_inode_info 0 7906 NULL nohasharray
++enable_so_ath6kl_wmi_info_req_cmd_fndecl_7906 ath6kl_wmi_info_req_cmd fndecl 2 7906 &enable_so_vdi_size_vxfs_inode_info_7906
+enable_so_mode_id_vbe_mode_ib_7913 mode_id vbe_mode_ib 0 7913 NULL
+enable_so_depth_s5p_jpeg_fmt_7914 depth s5p_jpeg_fmt 0 7914 NULL
+enable_so_rx_ring_size_vmxnet3_adapter_7917 rx_ring_size vmxnet3_adapter 0 7917 NULL
-+enable_so_ccw_bmove_fndecl_7918 ccw_bmove fndecl 5-7-3-8-6-4 7918 NULL
++enable_so_ccw_bmove_fndecl_7918 ccw_bmove fndecl 5-7-3-8-6-4 7918 NULL nohasharray
++enable_so_remote_addr_ib_rdma_wr_7918 remote_addr ib_rdma_wr 0 7918 &enable_so_ccw_bmove_fndecl_7918
+enable_so_uvesafb_setpalette_fndecl_7922 uvesafb_setpalette fndecl 2 7922 NULL
+enable_so_raid5_size_fndecl_7933 raid5_size fndecl 0-3-2 7933 NULL
+enable_so_jp_journal_size_journal_params_7943 jp_journal_size journal_params 0 7943 NULL
@@ -156964,9 +156359,9 @@ index 0000000..9da833a
+enable_so_peb_count_ubi_device_7987 peb_count ubi_device 0 7987 NULL
+enable_so_initrd_end_vardecl_7989 initrd_end vardecl 0 7989 NULL
+enable_so_ip_append_data_fndecl_7997 ip_append_data fndecl 6-5 7997 NULL
-+enable_so_find_resource_fndecl_8013 find_resource fndecl 3 8013 NULL nohasharray
-+enable_so_encode_opaque_fixed_fndecl_8013 encode_opaque_fixed fndecl 3 8013 &enable_so_find_resource_fndecl_8013 nohasharray
-+enable_so_ocfs2_read_quota_phys_block_fndecl_8013 ocfs2_read_quota_phys_block fndecl 2 8013 &enable_so_encode_opaque_fixed_fndecl_8013
++enable_so_encode_opaque_fixed_fndecl_8013 encode_opaque_fixed fndecl 3 8013 NULL nohasharray
++enable_so_ocfs2_read_quota_phys_block_fndecl_8013 ocfs2_read_quota_phys_block fndecl 2 8013 &enable_so_encode_opaque_fixed_fndecl_8013 nohasharray
++enable_so_find_resource_fndecl_8013 find_resource fndecl 3 8013 &enable_so_ocfs2_read_quota_phys_block_fndecl_8013
+enable_so_max_mtu_mlx4_en_priv_8015 max_mtu mlx4_en_priv 0 8015 NULL
+enable_so_svcxdr_dupstr_fndecl_8016 svcxdr_dupstr fndecl 3 8016 NULL
+enable_so_keyctl_instantiate_key_iov_fndecl_8026 keyctl_instantiate_key_iov fndecl 3 8026 NULL
@@ -156984,7 +156379,6 @@ index 0000000..9da833a
+enable_so_goldfish_tty_line_count_vardecl_goldfish_c_8058 goldfish_tty_line_count vardecl_goldfish.c 0 8058 &enable_so_mmio_megabytes_vmbus_channel_offer_8058
+enable_so_ceph_read_dir_fndecl_8062 ceph_read_dir fndecl 3 8062 NULL
+enable_so_btrfs_unlink_inode_fndecl_8064 btrfs_unlink_inode fndecl 6 8064 NULL
-+enable_so_jffs2_trusted_setxattr_fndecl_8075 jffs2_trusted_setxattr fndecl 4 8075 NULL
+enable_so_vlan_dev_vlan_proto_fndecl_8077 vlan_dev_vlan_proto fndecl 0 8077 NULL
+enable_so_savage_map_video_fndecl_8078 savage_map_video fndecl 2 8078 NULL
+enable_so_encode_string_fndecl_8079 encode_string fndecl 2 8079 NULL
@@ -156998,7 +156392,8 @@ index 0000000..9da833a
+enable_so_batchcount_kmem_cache_8098 batchcount kmem_cache 0 8098 &enable_so_dvb_dvr_read_fndecl_8098
+enable_so_sddr55_read_data_fndecl_8099 sddr55_read_data fndecl 4-3 8099 NULL nohasharray
+enable_so_error_num_frame_cts_nul_flid_read_fndecl_8099 error_num_frame_cts_nul_flid_read fndecl 3 8099 &enable_so_sddr55_read_data_fndecl_8099
-+enable_so_simple_transaction_read_fndecl_8103 simple_transaction_read fndecl 3 8103 NULL
++enable_so_rx_cmp_meta_data_rx_cmp_ext_8103 rx_cmp_meta_data rx_cmp_ext 0 8103 NULL nohasharray
++enable_so_simple_transaction_read_fndecl_8103 simple_transaction_read fndecl 3 8103 &enable_so_rx_cmp_meta_data_rx_cmp_ext_8103
+enable_so_ext4_end_io_dio_fndecl_8107 ext4_end_io_dio fndecl 2-3 8107 NULL
+enable_so_tgt_count_blogic_adapter_8109 tgt_count blogic_adapter 0 8109 NULL
+enable_so_acpi_ut_get_resource_header_length_fndecl_8110 acpi_ut_get_resource_header_length fndecl 0 8110 NULL
@@ -157025,14 +156420,12 @@ index 0000000..9da833a
+enable_so_ubifs_scanned_corruption_fndecl_8170 ubifs_scanned_corruption fndecl 3 8170 NULL
+enable_so_tx_ring_count_igb_adapter_8171 tx_ring_count igb_adapter 0 8171 NULL
+enable_so_jumpshot_write_data_fndecl_8172 jumpshot_write_data fndecl 4 8172 NULL
-+enable_so_blksz_mmc_data_8174 blksz mmc_data 0 8174 NULL nohasharray
-+enable_so_ptr_mask_efx_tx_queue_8174 ptr_mask efx_tx_queue 0 8174 &enable_so_blksz_mmc_data_8174
++enable_so_blksz_mmc_data_8174 blksz mmc_data 0 8174 NULL
+enable_so_avail_ubifs_wbuf_8176 avail ubifs_wbuf 0 8176 NULL
+enable_so_pdu_read_fndecl_8183 pdu_read fndecl 3 8183 NULL
+enable_so_nsftids_tid_info_8187 nsftids tid_info 0 8187 NULL
+enable_so_brcms_c_get_header_len_fndecl_8189 brcms_c_get_header_len fndecl 0 8189 NULL
+enable_so_resource_alignment_fndecl_8199 resource_alignment fndecl 0 8199 NULL
-+enable_so_sci_dma_rx_push_fndecl_8206 sci_dma_rx_push fndecl 2 8206 NULL
+enable_so_tx_ring_count_fm10k_intfc_8210 tx_ring_count fm10k_intfc 0 8210 NULL
+enable_so_mmap_size_kioctx_8213 mmap_size kioctx 0 8213 NULL
+enable_so_clear_extent_bit_fndecl_8215 clear_extent_bit fndecl 2-3 8215 NULL nohasharray
@@ -157072,6 +156465,7 @@ index 0000000..9da833a
+enable_so_i2c_wr_fndecl_8325 i2c_wr fndecl 4 8325 NULL
+enable_so_xfs_bmap_longest_free_extent_fndecl_8327 xfs_bmap_longest_free_extent fndecl 2 8327 NULL
+enable_so_vhci_urb_dequeue_fndecl_8333 vhci_urb_dequeue fndecl 3 8333 NULL
++enable_so_sec_per_lun_nvm_dev_8335 sec_per_lun nvm_dev 0 8335 NULL
+enable_so_early_init_dt_check_for_initrd_fndecl_8345 early_init_dt_check_for_initrd fndecl 1 8345 NULL
+enable_so_disks_stripe_head_8349 disks stripe_head 0 8349 NULL
+enable_so_ch_do_scsi_fndecl_8353 ch_do_scsi fndecl 5 8353 NULL nohasharray
@@ -157116,8 +156510,7 @@ index 0000000..9da833a
+enable_so_screen_size_fb_info_8480 screen_size fb_info 0 8480 NULL
+enable_so_length_btrfs_bio_stripe_8481 length btrfs_bio_stripe 0 8481 NULL
+enable_so_i915_gem_get_gtt_alignment_fndecl_8484 i915_gem_get_gtt_alignment fndecl 2 8484 NULL
-+enable_so_mt76_ampdu_action_fndecl_8487 mt76_ampdu_action fndecl 5 8487 NULL nohasharray
-+enable_so_max_feed_count_dvb_usb_fe_adapter_8487 max_feed_count dvb_usb_fe_adapter 0 8487 &enable_so_mt76_ampdu_action_fndecl_8487
++enable_so_max_feed_count_dvb_usb_fe_adapter_8487 max_feed_count dvb_usb_fe_adapter 0 8487 NULL
+enable_so_ecryptfs_send_message_locked_fndecl_8490 ecryptfs_send_message_locked fndecl 2 8490 NULL
+enable_so_get_count_order_fndecl_8491 get_count_order fndecl 0 8491 NULL
+enable_so_data_size_ipmi_smi_msg_8493 data_size ipmi_smi_msg 0 8493 NULL
@@ -157128,10 +156521,12 @@ index 0000000..9da833a
+enable_so_usblp_cache_device_id_string_fndecl_8509 usblp_cache_device_id_string fndecl 0 8509 NULL
+enable_so_dy_fb_copyarea_8510 dy fb_copyarea 0 8510 NULL
+enable_so_num_processors_vardecl_8512 num_processors vardecl 0 8512 NULL
++enable_so_st_nci_hci_dm_direct_load_fndecl_8517 st_nci_hci_dm_direct_load fndecl 3 8517 NULL
+enable_so_follows_u132_command_8527 follows u132_command 0 8527 NULL
+enable_so_alloc_blksz_shift_hfsplus_sb_info_8530 alloc_blksz_shift hfsplus_sb_info 0 8530 NULL
+enable_so_strnlen_user_fndecl_8532 strnlen_user fndecl 0-2 8532 NULL
+enable_so_rtsx_usb_write_register_fndecl_8533 rtsx_usb_write_register fndecl 0 8533 NULL
++enable_so_r5l_recovery_flush_one_stripe_fndecl_8538 r5l_recovery_flush_one_stripe fndecl 3 8538 NULL
+enable_so_overlay_out_left_vivid_dev_8540 overlay_out_left vivid_dev 0 8540 NULL
+enable_so_logfs_seek_data_fndecl_8541 logfs_seek_data fndecl 2-0 8541 NULL nohasharray
+enable_so_limit_kmem_cache_8541 limit kmem_cache 0 8541 &enable_so_logfs_seek_data_fndecl_8541
@@ -157141,6 +156536,7 @@ index 0000000..9da833a
+enable_so_vfront_porch_videomode_8550 vfront_porch videomode 0 8550 NULL nohasharray
+enable_so_memsize_vardecl_tridentfb_c_8550 memsize vardecl_tridentfb.c 0 8550 &enable_so_vfront_porch_videomode_8550
+enable_so_mailbox_add_intel_sst_drv_8554 mailbox_add intel_sst_drv 0 8554 NULL
++enable_so_caps_size_skl_specific_cfg_8559 caps_size skl_specific_cfg 0 8559 NULL
+enable_so_SyS_ppoll_fndecl_8572 SyS_ppoll fndecl 2 8572 NULL
+enable_so_clone_bio_fndecl_8573 clone_bio fndecl 3-4 8573 NULL
+enable_so_len_vmxnet3_rx_buf_info_8575 len vmxnet3_rx_buf_info 0 8575 NULL nohasharray
@@ -157155,7 +156551,6 @@ index 0000000..9da833a
+enable_so_dvb_ringbuffer_free_fndecl_8603 dvb_ringbuffer_free fndecl 0 8603 NULL
+enable_so_size_hw_bank_8604 size hw_bank 0 8604 NULL
+enable_so_uar_scratch_entry_sz_mthca_dev_lim_8606 uar_scratch_entry_sz mthca_dev_lim 0 8606 NULL
-+enable_so_hw_token_fusbh200_qh_hw_8607 hw_token fusbh200_qh_hw 0 8607 NULL
+enable_so_seq_buf_commit_fndecl_8608 seq_buf_commit fndecl 2 8608 NULL
+enable_so_irq_spi_device_8610 irq spi_device 0 8610 NULL
+enable_so_kmem_alloc_fndecl_8611 kmem_alloc fndecl 1 8611 NULL
@@ -157181,7 +156576,6 @@ index 0000000..9da833a
+enable_so_len_ipath_diag_xpkt_8673 len ipath_diag_xpkt 0 8673 NULL
+enable_so_write_data_done_iscsi_cmd_8676 write_data_done iscsi_cmd 0 8676 NULL
+enable_so_aml_offset_acpi_rsconvert_info_8678 aml_offset acpi_rsconvert_info 0 8678 NULL
-+enable_so_lustre_acl_xattr_merge2posix_fndecl_8683 lustre_acl_xattr_merge2posix fndecl 2 8683 NULL
+enable_so_status_whc_urb_8685 status whc_urb 0 8685 NULL
+enable_so_end_data_prctl_mm_map_8687 end_data prctl_mm_map 0 8687 NULL
+enable_so_mtd_add_partition_fndecl_8688 mtd_add_partition fndecl 3 8688 NULL
@@ -157199,13 +156593,14 @@ index 0000000..9da833a
+enable_so_rx_buf_sz_sh_eth_private_8709 rx_buf_sz sh_eth_private 0 8709 NULL nohasharray
+enable_so_max_unmap_blocks_scsi_disk_8709 max_unmap_blocks scsi_disk 0 8709 &enable_so_rx_buf_sz_sh_eth_private_8709 nohasharray
+enable_so_out_ptr_mdc800_data_8709 out_ptr mdc800_data 0 8709 &enable_so_max_unmap_blocks_scsi_disk_8709
-+enable_so_ieee80211_if_read_estab_plinks_fndecl_8710 ieee80211_if_read_estab_plinks fndecl 3 8710 NULL
++enable_so_key_len_host_if_wep_attr_8712 key_len host_if_wep_attr 0 8712 NULL
+enable_so_ieee80211_send_auth_fndecl_8716 ieee80211_send_auth fndecl 6 8716 NULL
+enable_so_inode_number_squashfs_dir_header_8723 inode_number squashfs_dir_header 0 8723 NULL
+enable_so_iram_end_intel_sst_drv_8725 iram_end intel_sst_drv 0 8725 NULL
+enable_so_qsfp_read_fndecl_8729 qsfp_read fndecl 2-4-0 8729 NULL
+enable_so_read_hdlc_status_fritz_adapter_8730 read_hdlc_status fritz_adapter 0 8730 NULL nohasharray
-+enable_so_disconnect_fndecl_8730 disconnect fndecl 4 8730 &enable_so_read_hdlc_status_fritz_adapter_8730
++enable_so_disconnect_fndecl_8730 disconnect fndecl 4 8730 &enable_so_read_hdlc_status_fritz_adapter_8730 nohasharray
++enable_so_ip_set_elem_len_fndecl_8730 ip_set_elem_len fndecl 0-4-3 8730 &enable_so_disconnect_fndecl_8730
+enable_so_ext_param_page_length_nand_onfi_params_8736 ext_param_page_length nand_onfi_params 0 8736 NULL
+enable_so___blockdev_direct_IO_fndecl_8738 __blockdev_direct_IO fndecl 5-0 8738 NULL nohasharray
+enable_so_ipgre_header_fndecl_8738 ipgre_header fndecl 3 8738 &enable_so___blockdev_direct_IO_fndecl_8738
@@ -157214,24 +156609,20 @@ index 0000000..9da833a
+enable_so_fd_execute_unmap_fndecl_8745 fd_execute_unmap fndecl 3-2 8745 NULL
+enable_so_perf_ustack_task_size_fndecl_8746 perf_ustack_task_size fndecl 0 8746 NULL
+enable_so_bits_per_pixel_smiapp_pll_8747 bits_per_pixel smiapp_pll 0 8747 NULL
-+enable_so___vlan_add_fndecl_8748 __vlan_add fndecl 2 8748 NULL
+enable_so_max_epid_fjes_hw_8751 max_epid fjes_hw 0 8751 NULL
+enable_so_btrfs_double_extent_lock_fndecl_8752 btrfs_double_extent_lock fndecl 5-4-2 8752 NULL
+enable_so__netlbl_catmap_getnode_fndecl_8754 _netlbl_catmap_getnode fndecl 2 8754 NULL
+enable_so_my_skb_align_fndecl_8755 my_skb_align fndecl 2 8755 NULL
-+enable_so_format_devstat_counter_fndecl_8757 format_devstat_counter fndecl 3 8757 NULL
+enable_so_snd_pcm_hw_param_set_fndecl_8761 snd_pcm_hw_param_set fndecl 4 8761 NULL
+enable_so_length_acpi_nfit_system_address_8762 length acpi_nfit_system_address 0 8762 NULL
+enable_so_max_swap_info_struct_8767 max swap_info_struct 0 8767 NULL
-+enable_so_read_file_beacon_fndecl_8768 read_file_beacon fndecl 3 8768 NULL nohasharray
-+enable_so_max_pfn_radeon_vm_manager_8768 max_pfn radeon_vm_manager 0 8768 &enable_so_read_file_beacon_fndecl_8768
-+enable_so_ieee80211_if_read_dropped_frames_congestion_fndecl_8776 ieee80211_if_read_dropped_frames_congestion fndecl 3 8776 NULL
++enable_so_read_file_beacon_fndecl_8768 read_file_beacon fndecl 3 8768 NULL
++enable_so_amdtp_stream_set_parameters_fndecl_8769 amdtp_stream_set_parameters fndecl 3 8769 NULL
+enable_so_gfs2_adjust_quota_fndecl_8777 gfs2_adjust_quota fndecl 2 8777 NULL
+enable_so_data_dma_powermate_device_8783 data_dma powermate_device 0 8783 NULL
+enable_so_rx_tr_cfv_info_8786 rx_tr cfv_info 0 8786 NULL nohasharray
+enable_so___pg_advance_sg_page_iter_8786 __pg_advance sg_page_iter 0 8786 &enable_so_rx_tr_cfv_info_8786
-+enable_so_nfs_setup_write_request_fndecl_8793 nfs_setup_write_request fndecl 3-4 8793 NULL nohasharray
-+enable_so_mem_swapout_entry_fndecl_8793 mem_swapout_entry fndecl 3 8793 &enable_so_nfs_setup_write_request_fndecl_8793
++enable_so_nfs_setup_write_request_fndecl_8793 nfs_setup_write_request fndecl 3-4 8793 NULL
+enable_so_lcd_vblank_len_atyfb_par_8796 lcd_vblank_len atyfb_par 0 8796 NULL
+enable_so_logic_start_scrub_parity_8798 logic_start scrub_parity 0 8798 NULL
+enable_so_write_ext_msg_fndecl_8804 write_ext_msg fndecl 3 8804 NULL
@@ -157265,17 +156656,17 @@ index 0000000..9da833a
+enable_so_batps_powernow_k8_data_8899 batps powernow_k8_data 0 8899 NULL
+enable_so_byt_serial_setup_fndecl_8903 byt_serial_setup fndecl 4 8903 NULL nohasharray
+enable_so_pages_squashfs_cache_8903 pages squashfs_cache 0 8903 &enable_so_byt_serial_setup_fndecl_8903
-+enable_so_bits_per_pixel_fb_var_screeninfo_8906 bits_per_pixel fb_var_screeninfo 0 8906 NULL nohasharray
-+enable_so_a_data_exec_8906 a_data exec 0 8906 &enable_so_bits_per_pixel_fb_var_screeninfo_8906
++enable_so_a_data_exec_8906 a_data exec 0 8906 NULL nohasharray
++enable_so_bits_per_pixel_fb_var_screeninfo_8906 bits_per_pixel fb_var_screeninfo 0 8906 &enable_so_a_data_exec_8906
+enable_so_fll_factors_fndecl_8907 fll_factors fndecl 2-3 8907 NULL
+enable_so__xfs_buf_get_pages_fndecl_8920 _xfs_buf_get_pages fndecl 2 8920 NULL
-+enable_so_rt2x00debug_read_queue_dump_fndecl_8923 rt2x00debug_read_queue_dump fndecl 3 8923 NULL
+enable_so_data_size_mdp_superblock_1_8925 data_size mdp_superblock_1 0 8925 NULL nohasharray
+enable_so_max_transfer_size_dwc2_core_params_8925 max_transfer_size dwc2_core_params 0 8925 &enable_so_data_size_mdp_superblock_1_8925
+enable_so_fip_flags_fip_header_8926 fip_flags fip_header 0 8926 NULL
+enable_so_nbufread_gspca_dev_8934 nbufread gspca_dev 0 8934 NULL
+enable_so_begin_cmd_fndecl_8941 begin_cmd fndecl 0 8941 NULL
-+enable_so_i40e_pci_sriov_enable_fndecl_8949 i40e_pci_sriov_enable fndecl 2 8949 NULL
++enable_so_i40e_pci_sriov_enable_fndecl_8949 i40e_pci_sriov_enable fndecl 2 8949 NULL nohasharray
++enable_so_mon_mgmt_tx_fndecl_8949 mon_mgmt_tx fndecl 3 8949 &enable_so_i40e_pci_sriov_enable_fndecl_8949
+enable_so_tree_root_btrfs_root_backup_8950 tree_root btrfs_root_backup 0 8950 NULL
+enable_so_get_arg_page_fndecl_8953 get_arg_page fndecl 2 8953 NULL
+enable_so_rx_metadata_offset_brcmf_msgbuf_8954 rx_metadata_offset brcmf_msgbuf 0 8954 NULL
@@ -157301,8 +156692,8 @@ index 0000000..9da833a
+enable_so_add_dts_thermal_zone_fndecl_9019 add_dts_thermal_zone fndecl 4 9019 NULL
+enable_so_pcan_usb_decode_data_fndecl_9023 pcan_usb_decode_data fndecl 2 9023 NULL nohasharray
+enable_so_bfad_iocmd_diag_dport_show_fndecl_9023 bfad_iocmd_diag_dport_show fndecl 0 9023 &enable_so_pcan_usb_decode_data_fndecl_9023
-+enable_so_cdrom_read_cd_fndecl_9024 cdrom_read_cd fndecl 5-4 9024 NULL nohasharray
-+enable_so_xen_del_extra_mem_fndecl_9024 xen_del_extra_mem fndecl 2-1 9024 &enable_so_cdrom_read_cd_fndecl_9024
++enable_so_xen_del_extra_mem_fndecl_9024 xen_del_extra_mem fndecl 2-1 9024 NULL nohasharray
++enable_so_cdrom_read_cd_fndecl_9024 cdrom_read_cd fndecl 5-4 9024 &enable_so_xen_del_extra_mem_fndecl_9024
+enable_so_report_desc_size_mousevsc_dev_9027 report_desc_size mousevsc_dev 0 9027 NULL
+enable_so_nextread_isowbuf_t_9028 nextread isowbuf_t 0 9028 NULL nohasharray
+enable_so_offset_gro_remcsum_9028 offset gro_remcsum 0 9028 &enable_so_nextread_isowbuf_t_9028
@@ -157312,7 +156703,6 @@ index 0000000..9da833a
+enable_so_svc_create_pooled_fndecl_9043 svc_create_pooled fndecl 2 9043 NULL
+enable_so_raid_disks_geom_9044 raid_disks geom 0 9044 NULL
+enable_so_ath6kl_wmi_delete_pstream_cmd_fndecl_9048 ath6kl_wmi_delete_pstream_cmd fndecl 2 9048 NULL
-+enable_so_bounce_sgl_count_storvsc_cmd_request_9051 bounce_sgl_count storvsc_cmd_request 0 9051 NULL
+enable_so__drbd_bm_find_next_fndecl_9063 _drbd_bm_find_next fndecl 2-0 9063 NULL nohasharray
+enable_so_keys_bset_9063 keys bset 0 9063 &enable_so__drbd_bm_find_next_fndecl_9063 nohasharray
+enable_so_tx_buf_sz_iadev_priv_9063 tx_buf_sz iadev_priv 0 9063 &enable_so_keys_bset_9063 nohasharray
@@ -157329,8 +156719,7 @@ index 0000000..9da833a
+enable_so_dispatch_ioctl_fndecl_9078 dispatch_ioctl fndecl 2 9078 &enable_so_bfad_iocmd_fcpim_throttle_query_fndecl_9078
+enable_so_count_afs_call_9081 count afs_call 0 9081 NULL nohasharray
+enable_so_sel_read_initcon_fndecl_9081 sel_read_initcon fndecl 3 9081 &enable_so_count_afs_call_9081
-+enable_so_start_brk_mm_struct_9085 start_brk mm_struct 0 9085 NULL nohasharray
-+enable_so_iwl_dbgfs_tof_range_abort_read_fndecl_9085 iwl_dbgfs_tof_range_abort_read fndecl 3 9085 &enable_so_start_brk_mm_struct_9085
++enable_so_start_brk_mm_struct_9085 start_brk mm_struct 0 9085 NULL
+enable_so_inet_create_fndecl_9087 inet_create fndecl 3 9087 NULL nohasharray
+enable_so_optlen_rdma_ucm_set_option_9087 optlen rdma_ucm_set_option 0 9087 &enable_so_inet_create_fndecl_9087
+enable_so_event_count_Fsm_9088 event_count Fsm 0 9088 NULL
@@ -157348,6 +156737,7 @@ index 0000000..9da833a
+enable_so_qla4_82xx_pci_mem_write_2M_fndecl_9117 qla4_82xx_pci_mem_write_2M fndecl 2 9117 NULL
+enable_so_numEntries__ATOM_PPLIB_VCE_Clock_Voltage_Limit_Table_9118 numEntries _ATOM_PPLIB_VCE_Clock_Voltage_Limit_Table 0 9118 NULL
+enable_so_break_ksm_fndecl_9124 break_ksm fndecl 2 9124 NULL
++enable_so_skl_substream_alloc_pages_fndecl_9125 skl_substream_alloc_pages fndecl 3 9125 NULL
+enable_so_reiserfs_direct_IO_fndecl_9131 reiserfs_direct_IO fndecl 3 9131 NULL
+enable_so_neigh_priv_len_net_device_9133 neigh_priv_len net_device 0 9133 NULL
+enable_so_rx_buf_sz_vardecl_r8169_c_9136 rx_buf_sz vardecl_r8169.c 0 9136 NULL
@@ -157371,8 +156761,7 @@ index 0000000..9da833a
+enable_so_max_vfio_pci_fill_info_9182 max vfio_pci_fill_info 0 9182 NULL
+enable_so_form_cm_frame_fndecl_9184 form_cm_frame fndecl 4-6 9184 NULL
+enable_so_device_sis_chipset_9193 device sis_chipset 0 9193 NULL
-+enable_so_stb0899_write_regs_fndecl_9197 stb0899_write_regs fndecl 4 9197 NULL nohasharray
-+enable_so_wiimote_cmd_read_fndecl_9197 wiimote_cmd_read fndecl 4 9197 &enable_so_stb0899_write_regs_fndecl_9197
++enable_so_stb0899_write_regs_fndecl_9197 stb0899_write_regs fndecl 4 9197 NULL
+enable_so_buflen_xfs_fsop_attrlist_handlereq_9199 buflen xfs_fsop_attrlist_handlereq 0 9199 NULL
+enable_so_efx_rx_packet_fndecl_9200 efx_rx_packet fndecl 4-3 9200 NULL
+enable_so_byte_per_page_nand_onfi_params_9202 byte_per_page nand_onfi_params 0 9202 NULL
@@ -157388,10 +156777,9 @@ index 0000000..9da833a
+enable_so_pcicfg_size_sst_pdata_9222 pcicfg_size sst_pdata 0 9222 NULL
+enable_so_ext4_create_inline_data_fndecl_9231 ext4_create_inline_data fndecl 3 9231 NULL
+enable_so_supported_rates_len_station_parameters_9235 supported_rates_len station_parameters 0 9235 NULL
-+enable_so_read_file_bt_ant_diversity_fndecl_9236 read_file_bt_ant_diversity fndecl 3 9236 NULL
+enable_so_i2400mu_rx_size_grow_fndecl_9246 i2400mu_rx_size_grow fndecl 0 9246 NULL
-+enable_so_phys_pmd_init_fndecl_9251 phys_pmd_init fndecl 0-2-3 9251 NULL nohasharray
-+enable_so_vram_start_vml_info_9251 vram_start vml_info 0 9251 &enable_so_phys_pmd_init_fndecl_9251
++enable_so_vram_start_vml_info_9251 vram_start vml_info 0 9251 NULL nohasharray
++enable_so_phys_pmd_init_fndecl_9251 phys_pmd_init fndecl 0-2-3 9251 &enable_so_vram_start_vml_info_9251
+enable_so_n_sbufs_stk_camera_9256 n_sbufs stk_camera 0 9256 NULL
+enable_so_sk_priority_sock_9258 sk_priority sock 0 9258 NULL
+enable_so_alloc_order_ioatdma_chan_9262 alloc_order ioatdma_chan 0 9262 NULL
@@ -157399,12 +156787,14 @@ index 0000000..9da833a
+enable_so_acpi_ns_build_normalized_path_fndecl_9269 acpi_ns_build_normalized_path fndecl 0 9269 NULL
+enable_so_wl1251_sdio_write_fndecl_9274 wl1251_sdio_write fndecl 4 9274 NULL
+enable_so_ResponseDataLength__MSG_SMP_PASSTHROUGH_REPLY_9278 ResponseDataLength _MSG_SMP_PASSTHROUGH_REPLY 0 9278 NULL
-+enable_so_nr_pages_start_info_9283 nr_pages start_info 0 9283 NULL
++enable_so_nr_pages_start_info_9283 nr_pages start_info 0 9283 NULL nohasharray
++enable_so_regmap_encx24j600_write_fndecl_9283 regmap_encx24j600_write fndecl 3 9283 &enable_so_nr_pages_start_info_9283
+enable_so_lbs_failcount_read_fndecl_9284 lbs_failcount_read fndecl 3 9284 NULL
+enable_so_offset_ivtv_dma_page_info_9286 offset ivtv_dma_page_info 0 9286 NULL
+enable_so_rx_cmd_ep_usb_card_rec_9290 rx_cmd_ep usb_card_rec 0 9290 NULL nohasharray
+enable_so_buffer_bytes_st_buffer_9290 buffer_bytes st_buffer 0 9290 &enable_so_rx_cmd_ep_usb_card_rec_9290 nohasharray
-+enable_so_format_reserved_ms_boot_header_9290 format_reserved ms_boot_header 0 9290 &enable_so_buffer_bytes_st_buffer_9290
++enable_so_get_ramsize_brcmf_bus_ops_9290 get_ramsize brcmf_bus_ops 0 9290 &enable_so_buffer_bytes_st_buffer_9290 nohasharray
++enable_so_format_reserved_ms_boot_header_9290 format_reserved ms_boot_header 0 9290 &enable_so_get_ramsize_brcmf_bus_ops_9290
+enable_so_cxd2820r_wr_regs_fndecl_9307 cxd2820r_wr_regs fndecl 4 9307 NULL
+enable_so_sys_splice_fndecl_9308 sys_splice fndecl 5 9308 NULL
+enable_so_sctp_setsockopt_context_fndecl_9312 sctp_setsockopt_context fndecl 3 9312 NULL
@@ -157445,6 +156835,7 @@ index 0000000..9da833a
+enable_so_dgap_config_get_num_prts_fndecl_9435 dgap_config_get_num_prts fndecl 0 9435 NULL
+enable_so_ext4_restore_inline_data_fndecl_9436 ext4_restore_inline_data fndecl 5 9436 NULL
+enable_so_height_stk1160_9446 height stk1160 0 9446 NULL
++enable_so_evdev_get_mask_fndecl_9457 evdev_get_mask fndecl 4 9457 NULL
+enable_so_mtdchar_readoob_fndecl_9459 mtdchar_readoob fndecl 4-3 9459 NULL
+enable_so_si21_writeregs_fndecl_9460 si21_writeregs fndecl 4 9460 NULL
+enable_so_async_wrap_skb_fndecl_9465 async_wrap_skb fndecl 0 9465 NULL
@@ -157470,8 +156861,7 @@ index 0000000..9da833a
+enable_so_rx_skb_reserve_vardecl_he_c_9559 rx_skb_reserve vardecl_he.c 0 9559 NULL
+enable_so_glocont_endpoint_keyspan_device_details_9560 glocont_endpoint keyspan_device_details 0 9560 NULL
+enable_so_vlan_alloc_res_fndecl_9561 vlan_alloc_res fndecl 7 9561 NULL
-+enable_so_p9_client_statsize_fndecl_9568 p9_client_statsize fndecl 0 9568 NULL nohasharray
-+enable_so_ath10k_write_fw_dbglog_fndecl_9568 ath10k_write_fw_dbglog fndecl 3 9568 &enable_so_p9_client_statsize_fndecl_9568
++enable_so_p9_client_statsize_fndecl_9568 p9_client_statsize fndecl 0 9568 NULL
+enable_so_page_order_cas_9572 page_order cas 0 9572 NULL nohasharray
+enable_so_pwr_sleep_time_avg_read_fndecl_9572 pwr_sleep_time_avg_read fndecl 3 9572 &enable_so_page_order_cas_9572
+enable_so_width_drm_mode_create_dumb_9575 width drm_mode_create_dumb 0 9575 NULL
@@ -157480,7 +156870,6 @@ index 0000000..9da833a
+enable_so_mode_buf_len_udl_device_9578 mode_buf_len udl_device 0 9578 NULL nohasharray
+enable_so_of_gpio_named_count_fndecl_9578 of_gpio_named_count fndecl 0 9578 &enable_so_mode_buf_len_udl_device_9578
+enable_so_cfg80211_rx_mgmt_fndecl_9583 cfg80211_rx_mgmt fndecl 5 9583 NULL
-+enable_so_amdgpu_fence_wait_any_fndecl_9585 amdgpu_fence_wait_any fndecl 3 9585 NULL
+enable_so_crtc_vblank_start_drm_display_mode_9587 crtc_vblank_start drm_display_mode 0 9587 NULL
+enable_so_dn_create_fndecl_9590 dn_create fndecl 3 9590 NULL
+enable_so_wm5102_set_fll_fndecl_9596 wm5102_set_fll fndecl 5 9596 NULL nohasharray
@@ -157489,6 +156878,7 @@ index 0000000..9da833a
+enable_so_writerids_fndecl_9601 writerids fndecl 0 9601 NULL
+enable_so_ileb_len_ubifs_info_9607 ileb_len ubifs_info 0 9607 NULL
+enable_so_skd_max_pass_thru_vardecl_skd_main_c_9608 skd_max_pass_thru vardecl_skd_main.c 0 9608 NULL
++enable_so_acpi_copy_property_array_u16_fndecl_9618 acpi_copy_property_array_u16 fndecl 0 9618 NULL
+enable_so_free_bg_ocfs2_cached_block_free_9619 free_bg ocfs2_cached_block_free 0 9619 NULL
+enable_so_size_scif_rb_9622 size scif_rb 0 9622 NULL
+enable_so_blk_end_request_err_fndecl_9623 blk_end_request_err fndecl 2 9623 NULL
@@ -157524,7 +156914,8 @@ index 0000000..9da833a
+enable_so_fill_from_dev_buffer_fndecl_9695 fill_from_dev_buffer fndecl 3 9695 NULL
+enable_so_adp5589_build_gpiomap_fndecl_9697 adp5589_build_gpiomap fndecl 0 9697 NULL
+enable_so__fdt_resize_property_fndecl_9703 _fdt_resize_property fndecl 2-4 9703 NULL
-+enable_so_srp_add_port_fndecl_9704 srp_add_port fndecl 2 9704 NULL nohasharray
++enable_so_GnrlAsyncInfoReceived_fndecl_9704 GnrlAsyncInfoReceived fndecl 2 9704 NULL nohasharray
++enable_so_srp_add_port_fndecl_9704 srp_add_port fndecl 2 9704 &enable_so_GnrlAsyncInfoReceived_fndecl_9704 nohasharray
+enable_so_phys_addr_ntb_transport_mw_9704 phys_addr ntb_transport_mw 0 9704 &enable_so_srp_add_port_fndecl_9704
+enable_so_payload_len_cfg80211_wowlan_tcp_9706 payload_len cfg80211_wowlan_tcp 0 9706 NULL nohasharray
+enable_so_tty_insert_flip_string_flags_fndecl_9706 tty_insert_flip_string_flags fndecl 4 9706 &enable_so_payload_len_cfg80211_wowlan_tcp_9706
@@ -157533,11 +156924,12 @@ index 0000000..9da833a
+enable_so_xprt_rdma_max_inline_write_vardecl_transport_c_9715 xprt_rdma_max_inline_write vardecl_transport.c 0 9715 NULL
+enable_so_page_size_dataflash_9722 page_size dataflash 0 9722 NULL nohasharray
+enable_so_tx_ringsz_alx_priv_9722 tx_ringsz alx_priv 0 9722 &enable_so_page_size_dataflash_9722
-+enable_so_setup_port_fndecl_9724 setup_port fndecl 5-4 9724 NULL nohasharray
-+enable_so_ieee80211_build_preq_ies_band_fndecl_9724 ieee80211_build_preq_ies_band fndecl 0 9724 &enable_so_setup_port_fndecl_9724 nohasharray
-+enable_so_start_bidx_of_node_fndecl_9724 start_bidx_of_node fndecl 0-1 9724 &enable_so_ieee80211_build_preq_ies_band_fndecl_9724
++enable_so_ieee80211_build_preq_ies_band_fndecl_9724 ieee80211_build_preq_ies_band fndecl 0 9724 NULL nohasharray
++enable_so_start_bidx_of_node_fndecl_9724 start_bidx_of_node fndecl 0-1 9724 &enable_so_ieee80211_build_preq_ies_band_fndecl_9724 nohasharray
++enable_so_setup_port_fndecl_9724 setup_port fndecl 5-4 9724 &enable_so_start_bidx_of_node_fndecl_9724
+enable_so_mask_myri10ge_tx_buf_9725 mask myri10ge_tx_buf 0 9725 NULL
+enable_so_vicam_control_msg_fndecl_9727 vicam_control_msg fndecl 0 9727 NULL
++enable_so_midi_out_ports_snd_efw_9740 midi_out_ports snd_efw 0 9740 NULL
+enable_so_qsfp_2_read_fndecl_9744 qsfp_2_read fndecl 3 9744 NULL
+enable_so_blkdev_fsync_fndecl_9745 blkdev_fsync fndecl 2-3 9745 NULL
+enable_so_bnx2x_mcast_handle_current_cmd_fndecl_9747 bnx2x_mcast_handle_current_cmd fndecl 0 9747 NULL
@@ -157573,9 +156965,10 @@ index 0000000..9da833a
+enable_so_pref_erase_mmc_card_9824 pref_erase mmc_card 0 9824 NULL
+enable_so_flags_rtl8187se_rx_desc_9826 flags rtl8187se_rx_desc 0 9826 NULL
+enable_so_list_bytes_osdv1_attributes_list_header_9829 list_bytes osdv1_attributes_list_header 0 9829 NULL
-+enable_so_section_count_f2fs_super_block_9832 section_count f2fs_super_block 0 9832 NULL nohasharray
-+enable_so_iwl_dbgfs_ucode_tx_stats_read_fndecl_9832 iwl_dbgfs_ucode_tx_stats_read fndecl 3 9832 &enable_so_section_count_f2fs_super_block_9832
++enable_so_section_count_f2fs_super_block_9832 section_count f2fs_super_block 0 9832 NULL
++enable_so_v9fs_xattr_handler_get_fndecl_9833 v9fs_xattr_handler_get fndecl 5 9833 NULL
+enable_so_sectors_r10bio_9834 sectors r10bio 0 9834 NULL
++enable_so_msc_buffer_contig_alloc_fndecl_9835 msc_buffer_contig_alloc fndecl 2 9835 NULL
+enable_so_msg_length_sms_msg_hdr_9842 msg_length sms_msg_hdr 0 9842 NULL
+enable_so_mlx4_ib_demux_mad_fndecl_9843 mlx4_ib_demux_mad fndecl 2 9843 NULL nohasharray
+enable_so_snd_compr_get_avail_fndecl_9843 snd_compr_get_avail fndecl 0 9843 &enable_so_mlx4_ib_demux_mad_fndecl_9843
@@ -157608,6 +157001,7 @@ index 0000000..9da833a
+enable_so_audit_log_n_string_fndecl_9930 audit_log_n_string fndecl 3 9930 NULL
+enable_so_len_load_info_9931 len load_info 0 9931 NULL
+enable_so_num_wsm_set_tx_rate_retry_policy_9933 num wsm_set_tx_rate_retry_policy 0 9933 NULL
++enable_so_max_ptlrpcds_vardecl_ptlrpcd_c_9939 max_ptlrpcds vardecl_ptlrpcd.c 0 9939 NULL
+enable_so_wb_pgbase_nfs_page_9940 wb_pgbase nfs_page 0 9940 NULL nohasharray
+enable_so_object_name_len_ncp_objectname_ioctl_9940 object_name_len ncp_objectname_ioctl 0 9940 &enable_so_wb_pgbase_nfs_page_9940
+enable_so_forced_ps_read_fndecl_9942 forced_ps_read fndecl 3 9942 NULL
@@ -157620,19 +157014,18 @@ index 0000000..9da833a
+enable_so_xfs_difree_inobt_fndecl_9961 xfs_difree_inobt fndecl 4 9961 NULL
+enable_so_shmem_pwrite_slow_fndecl_9966 shmem_pwrite_slow fndecl 2-3 9966 NULL
+enable_so_rt2x00dev_extra_tx_headroom_fndecl_9971 rt2x00dev_extra_tx_headroom fndecl 0 9971 NULL
-+enable_so_rs_pretty_print_rate_fndecl_9980 rs_pretty_print_rate fndecl 0 9980 NULL nohasharray
-+enable_so_pg_vec_len_netlink_ring_9980 pg_vec_len netlink_ring 0 9980 &enable_so_rs_pretty_print_rate_fndecl_9980
++enable_so_pg_vec_len_netlink_ring_9980 pg_vec_len netlink_ring 0 9980 NULL
+enable_so_count_tun_filter_9984 count tun_filter 0 9984 NULL
+enable_so_start_extent_buffer_9986 start extent_buffer 0 9986 NULL
+enable_so_map_sg_ib_dma_mapping_ops_9988 map_sg ib_dma_mapping_ops 0 9988 NULL
+enable_so_hugepage_add_anon_rmap_fndecl_9989 hugepage_add_anon_rmap fndecl 3 9989 NULL
+enable_so_nilfs_insert_inode_locked_fndecl_9991 nilfs_insert_inode_locked fndecl 3 9991 NULL
+enable_so_dm_rh_region_to_sector_fndecl_9992 dm_rh_region_to_sector fndecl 0-2 9992 NULL
-+enable_so_ieee80211_if_read_last_beacon_fndecl_9994 ieee80211_if_read_last_beacon fndecl 3 9994 NULL
+enable_so_sample_bits_twl4030_priv_10002 sample_bits twl4030_priv 0 10002 NULL
+enable_so_rpcrdma_inline_fixup_fndecl_10007 rpcrdma_inline_fixup fndecl 3 10007 NULL
+enable_so_setifbcnt_fndecl_10012 setifbcnt fndecl 3 10012 NULL
+enable_so__create_sg_bios_fndecl_10015 _create_sg_bios fndecl 4 10015 NULL
++enable_so_tx_bytes_imx_port_10019 tx_bytes imx_port 0 10019 NULL
+enable_so_nouveau_sgdma_create_ttm_fndecl_10022 nouveau_sgdma_create_ttm fndecl 2 10022 NULL
+enable_so_ov_position_drbd_device_10027 ov_position drbd_device 0 10027 NULL
+enable_so_skb_append_datato_frags_fndecl_10028 skb_append_datato_frags fndecl 5 10028 NULL
@@ -157640,8 +157033,7 @@ index 0000000..9da833a
+enable_so___cookie_v6_check_fndecl_10035 __cookie_v6_check fndecl 0 10035 NULL
+enable_so_get_img_width_s5p_mfc_hw_ops_10036 get_img_width s5p_mfc_hw_ops 0 10036 NULL
+enable_so_mwifiex_send_tdls_action_frame_fndecl_10044 mwifiex_send_tdls_action_frame fndecl 7 10044 NULL
-+enable_so_block_count_hfsplus_extent_10045 block_count hfsplus_extent 0 10045 NULL nohasharray
-+enable_so_bd_iov_count_ptlrpc_bulk_desc_10045 bd_iov_count ptlrpc_bulk_desc 0 10045 &enable_so_block_count_hfsplus_extent_10045
++enable_so_block_count_hfsplus_extent_10045 block_count hfsplus_extent 0 10045 NULL
+enable_so_sisusbcon_scroll_fndecl_10048 sisusbcon_scroll fndecl 5-2-3 10048 NULL
+enable_so_send_buf_size_netvsc_device_10051 send_buf_size netvsc_device 0 10051 NULL
+enable_so_ath6kl_wmi_powermode_cmd_fndecl_10052 ath6kl_wmi_powermode_cmd fndecl 2 10052 NULL
@@ -157653,7 +157045,6 @@ index 0000000..9da833a
+enable_so_rx_buf_sz_sis190_private_10068 rx_buf_sz sis190_private 0 10068 NULL nohasharray
+enable_so_uvc_simplify_fraction_fndecl_10068 uvc_simplify_fraction fndecl 3 10068 &enable_so_rx_buf_sz_sis190_private_10068
+enable_so_max_pages_fuse_req_10069 max_pages fuse_req 0 10069 NULL
-+enable_so_iwl_dbgfs_set_nic_temperature_read_fndecl_10071 iwl_dbgfs_set_nic_temperature_read fndecl 3 10071 NULL
+enable_so_qpn_ib_ucm_rep_10073 qpn ib_ucm_rep 0 10073 NULL
+enable_so_sg_size_octnic_gather_10076 sg_size octnic_gather 0 10076 NULL
+enable_so_ocfs2_refcount_xattr_tree_rec_fndecl_10077 ocfs2_refcount_xattr_tree_rec fndecl 3 10077 NULL
@@ -157666,11 +157057,11 @@ index 0000000..9da833a
+enable_so_em28xx_init_usb_xfer_fndecl_10106 em28xx_init_usb_xfer fndecl 5-6-4 10106 NULL
+enable_so_finish_wqe_fndecl_10107 finish_wqe fndecl 3 10107 NULL nohasharray
+enable_so__regmap_raw_multi_reg_write_fndecl_10107 _regmap_raw_multi_reg_write fndecl 3 10107 &enable_so_finish_wqe_fndecl_10107
-+enable_so_trace_parser_get_init_fndecl_10112 trace_parser_get_init fndecl 2 10112 NULL
+enable_so_req_sz__MPT_ADAPTER_10113 req_sz _MPT_ADAPTER 0 10113 NULL
+enable_so_tfms_count_crypt_config_10114 tfms_count crypt_config 0 10114 NULL
-+enable_so_total_len_extlog_l1_head_10117 total_len extlog_l1_head 0 10117 NULL nohasharray
-+enable_so_uvc_video_encode_data_fndecl_10117 uvc_video_encode_data fndecl 0-4 10117 &enable_so_total_len_extlog_l1_head_10117
++enable_so_uvc_video_encode_data_fndecl_10117 uvc_video_encode_data fndecl 0-4 10117 NULL nohasharray
++enable_so_total_len_extlog_l1_head_10117 total_len extlog_l1_head 0 10117 &enable_so_uvc_video_encode_data_fndecl_10117
++enable_so_pxa2xx_spi_get_port_id_fndecl_10119 pxa2xx_spi_get_port_id fndecl 0 10119 NULL
+enable_so_len_pda_entry_10121 len pda_entry 0 10121 NULL nohasharray
+enable_so_netlbl_mgmt_add_common_fndecl_10121 netlbl_mgmt_add_common fndecl 0 10121 &enable_so_len_pda_entry_10121
+enable_so_MaxBlocksPerCommand_DAC960_Controller_10124 MaxBlocksPerCommand DAC960_Controller 0 10124 NULL nohasharray
@@ -157683,11 +157074,11 @@ index 0000000..9da833a
+enable_so_qlcnic_83xx_diag_alloc_res_fndecl_10139 qlcnic_83xx_diag_alloc_res fndecl 3 10139 NULL
+enable_so_xprt_rdma_allocate_fndecl_10143 xprt_rdma_allocate fndecl 2 10143 NULL
+enable_so_ns_cno_the_nilfs_10144 ns_cno the_nilfs 0 10144 NULL nohasharray
-+enable_so_sg_segs_osst_buffer_10144 sg_segs osst_buffer 0 10144 &enable_so_ns_cno_the_nilfs_10144 nohasharray
-+enable_so_key_ifindex_read_fndecl_10144 key_ifindex_read fndecl 3 10144 &enable_so_sg_segs_osst_buffer_10144
++enable_so_sg_segs_osst_buffer_10144 sg_segs osst_buffer 0 10144 &enable_so_ns_cno_the_nilfs_10144
+enable_so_ldebugfs_fid_space_seq_write_fndecl_10152 ldebugfs_fid_space_seq_write fndecl 3 10152 NULL
+enable_so_udp_tun_rx_dst_fndecl_10154 udp_tun_rx_dst fndecl 4-5 10154 NULL
+enable_so__sp2d_max_pg_fndecl_10157 _sp2d_max_pg fndecl 0 10157 NULL
++enable_so_host_int_add_ptk_fndecl_10158 host_int_add_ptk fndecl 3 10158 NULL
+enable_so_usnic_vnic_res_spec_update_fndecl_10169 usnic_vnic_res_spec_update fndecl 3 10169 NULL
+enable_so_error_block_length_acpi_hest_generic_10170 error_block_length acpi_hest_generic 0 10170 NULL
+enable_so_cluster_size_msdos_sb_info_10172 cluster_size msdos_sb_info 0 10172 NULL
@@ -157713,7 +157104,8 @@ index 0000000..9da833a
+enable_so_input_get_new_minor_fndecl_10235 input_get_new_minor fndecl 0 10235 NULL
+enable_so_iio_devt_vardecl_industrialio_core_c_10237 iio_devt vardecl_industrialio-core.c 0 10237 NULL nohasharray
+enable_so_req_pages_pvscsi_adapter_10237 req_pages pvscsi_adapter 0 10237 &enable_so_iio_devt_vardecl_industrialio_core_c_10237
-+enable_so_uarc_size_mthca_uar_table_10238 uarc_size mthca_uar_table 0 10238 NULL
++enable_so_dio_get_pages_alloc_fndecl_10238 dio_get_pages_alloc fndecl 2 10238 NULL nohasharray
++enable_so_uarc_size_mthca_uar_table_10238 uarc_size mthca_uar_table 0 10238 &enable_so_dio_get_pages_alloc_fndecl_10238
+enable_so_bv_len_bio_vec_10239 bv_len bio_vec 0 10239 NULL nohasharray
+enable_so_do_fcntl_fndecl_10239 do_fcntl fndecl 3 10239 &enable_so_bv_len_bio_vec_10239
+enable_so_q1_depth_bna_rx_config_10241 q1_depth bna_rx_config 0 10241 NULL
@@ -157736,10 +157128,12 @@ index 0000000..9da833a
+enable_so_num_vfs_i40e_hw_capabilities_10302 num_vfs i40e_hw_capabilities 0 10302 NULL
+enable_so_bfad_iocmd_fcport_reset_stats_fndecl_10304 bfad_iocmd_fcport_reset_stats fndecl 0 10304 NULL nohasharray
+enable_so_ieee80211_tdls_add_chan_switch_req_ies_fndecl_10304 ieee80211_tdls_add_chan_switch_req_ies fndecl 6 10304 &enable_so_bfad_iocmd_fcport_reset_stats_fndecl_10304
++enable_so_tlen_sdma_txreq_10305 tlen sdma_txreq 0 10305 NULL
+enable_so_scsi_vpd_inquiry_fndecl_10315 scsi_vpd_inquiry fndecl 4-0 10315 NULL
+enable_so_num_mnt_opts_security_mnt_opts_10327 num_mnt_opts security_mnt_opts 0 10327 NULL
+enable_so_blk_stack_limits_fndecl_10332 blk_stack_limits fndecl 3 10332 NULL
-+enable_so_dev_mem_write_fndecl_10335 dev_mem_write fndecl 3 10335 NULL
++enable_so_xfs_get_blocks_dax_fault_fndecl_10335 xfs_get_blocks_dax_fault fndecl 2 10335 NULL nohasharray
++enable_so_dev_mem_write_fndecl_10335 dev_mem_write fndecl 3 10335 &enable_so_xfs_get_blocks_dax_fault_fndecl_10335
+enable_so_down_bplus_internal_node_10336 down bplus_internal_node 0 10336 NULL
+enable_so_boot_max_nr_grant_frames_vardecl_grant_table_c_10337 boot_max_nr_grant_frames vardecl_grant-table.c 0 10337 NULL
+enable_so_len_xdr_buf_10338 len xdr_buf 0 10338 NULL
@@ -157772,6 +157166,7 @@ index 0000000..9da833a
+enable_so_num_vss_cfgs_wm8994_pdata_10405 num_vss_cfgs wm8994_pdata 0 10405 &enable_so__osd_req_sizeof_alist_header_fndecl_10405
+enable_so_zap_vma_ptes_fndecl_10406 zap_vma_ptes fndecl 3-2 10406 NULL
+enable_so_u_memcpya_fndecl_10408 u_memcpya fndecl 2-3 10408 NULL
++enable_so_addr_page_req_dsc_10411 addr page_req_dsc 0 10411 NULL
+enable_so_off_xtsplit_10412 off xtsplit 0 10412 NULL
+enable_so_max_ctrl_size_ims_pcu_10413 max_ctrl_size ims_pcu 0 10413 NULL
+enable_so_nent_mlx4_eq_10414 nent mlx4_eq 0 10414 NULL
@@ -157791,13 +157186,13 @@ index 0000000..9da833a
+enable_so_length_acpi_mem_space_context_10460 length acpi_mem_space_context 0 10460 NULL
+enable_so_vxlan_change_mtu_fndecl_10464 vxlan_change_mtu fndecl 2 10464 NULL nohasharray
+enable_so___btt_map_write_fndecl_10464 __btt_map_write fndecl 0 10464 &enable_so_vxlan_change_mtu_fndecl_10464
-+enable_so_wNdpOutDivisor_usb_cdc_ncm_ntb_parameters_10467 wNdpOutDivisor usb_cdc_ncm_ntb_parameters 0 10467 NULL nohasharray
-+enable_so_notesize_fndecl_10467 notesize fndecl 0 10467 &enable_so_wNdpOutDivisor_usb_cdc_ncm_ntb_parameters_10467
++enable_so_wNdpOutDivisor_usb_cdc_ncm_ntb_parameters_10467 wNdpOutDivisor usb_cdc_ncm_ntb_parameters 0 10467 NULL
+enable_so___genwqe_readq_fndecl_10470 __genwqe_readq fndecl 0 10470 NULL
+enable_so_usblp_ioctl_fndecl_10472 usblp_ioctl fndecl 2 10472 NULL
+enable_so_nfsd4_get_drc_mem_fndecl_10473 nfsd4_get_drc_mem fndecl 0 10473 NULL
+enable_so_devnum_usb_device_10474 devnum usb_device 0 10474 NULL
+enable_so_signature_mspro_attribute_10483 signature mspro_attribute 0 10483 NULL
++enable_so_num_pqs_qed_qm_info_10488 num_pqs qed_qm_info 0 10488 NULL
+enable_so_out_min_chans_snd_card_asihpi_10490 out_min_chans snd_card_asihpi 0 10490 NULL nohasharray
+enable_so_avc_tuner_dsd_dvb_c_fndecl_10490 avc_tuner_dsd_dvb_c fndecl 0 10490 &enable_so_out_min_chans_snd_card_asihpi_10490
+enable_so_nbpf_prep_memcpy_fndecl_10492 nbpf_prep_memcpy fndecl 4 10492 NULL
@@ -157805,6 +157200,7 @@ index 0000000..9da833a
+enable_so_ext4_ext_direct_IO_fndecl_10503 ext4_ext_direct_IO fndecl 3 10503 NULL nohasharray
+enable_so_xfs_bmap_punch_delalloc_range_fndecl_10503 xfs_bmap_punch_delalloc_range fndecl 2 10503 &enable_so_ext4_ext_direct_IO_fndecl_10503
+enable_so_cidlen_he_rbrq_10504 cidlen he_rbrq 0 10504 NULL
++enable_so_nouveau_channel_prep_fndecl_10506 nouveau_channel_prep fndecl 3 10506 NULL
+enable_so_cr_namelen_nfsd4_create_10516 cr_namelen nfsd4_create 0 10516 NULL
+enable_so_dma_burst_size_chip_data_10519 dma_burst_size chip_data 0 10519 NULL nohasharray
+enable_so_ipmi_major_vardecl_ipmi_devintf_c_10519 ipmi_major vardecl_ipmi_devintf.c 0 10519 &enable_so_dma_burst_size_chip_data_10519
@@ -157833,8 +157229,8 @@ index 0000000..9da833a
+enable_so_initialized_size__ntfs_inode_10576 initialized_size _ntfs_inode 0 10576 NULL
+enable_so_resource_addr_nvkm_device_func_10582 resource_addr nvkm_device_func 0 10582 NULL nohasharray
+enable_so_fuse_fsync_fndecl_10582 fuse_fsync fndecl 2-3 10582 &enable_so_resource_addr_nvkm_device_func_10582
-+enable_so_vmw_compat_shader_add_fndecl_10585 vmw_compat_shader_add fndecl 6 10585 NULL nohasharray
-+enable_so_buf_idx_mei_cl_cb_10585 buf_idx mei_cl_cb 0 10585 &enable_so_vmw_compat_shader_add_fndecl_10585
++enable_so_buf_idx_mei_cl_cb_10585 buf_idx mei_cl_cb 0 10585 NULL nohasharray
++enable_so_vmw_compat_shader_add_fndecl_10585 vmw_compat_shader_add fndecl 6 10585 &enable_so_buf_idx_mei_cl_cb_10585
+enable_so_pcmcia_make_resource_fndecl_10591 pcmcia_make_resource fndecl 2-1 10591 NULL
+enable_so_wcn36xx_smd_send_and_wait_fndecl_10595 wcn36xx_smd_send_and_wait fndecl 2 10595 NULL
+enable_so_size_ib_uverbs_flow_attr_10597 size ib_uverbs_flow_attr 0 10597 NULL
@@ -157846,14 +157242,13 @@ index 0000000..9da833a
+enable_so_rq_depth_p9_rdma_opts_10608 rq_depth p9_rdma_opts 0 10608 NULL nohasharray
+enable_so_index_vardecl_mtpav_c_10608 index vardecl_mtpav.c 0 10608 &enable_so_rq_depth_p9_rdma_opts_10608
+enable_so_brightness_sd_gl860_10611 brightness sd_gl860 0 10611 NULL
-+enable_so_epp_free_pages_ptlrpc_enc_page_pool_10614 epp_free_pages ptlrpc_enc_page_pool 0 10614 NULL
+enable_so_ext4_trim_all_free_fndecl_10621 ext4_trim_all_free fndecl 0-4-2 10621 NULL
-+enable_so_rfs_ipg_rx_10623 rfs ipg_rx 0 10623 NULL
+enable_so___probe_kernel_write_fndecl_10625 __probe_kernel_write fndecl 3 10625 NULL
+enable_so_rx_queues_nicvf_10628 rx_queues nicvf 0 10628 NULL
+enable_so_pkt_alignment_factor_rndis_initialize_complete_10633 pkt_alignment_factor rndis_initialize_complete 0 10633 NULL
+enable_so_pgbase_nfs_pgio_args_10636 pgbase nfs_pgio_args 0 10636 NULL
+enable_so_tcp_sendpage_fndecl_10646 tcp_sendpage fndecl 4-3 10646 NULL
++enable_so_smk_write_relabel_self_fndecl_10657 smk_write_relabel_self fndecl 3 10657 NULL
+enable_so_memory_size_vhost_memory_region_10658 memory_size vhost_memory_region 0 10658 NULL
+enable_so_tlv_put_fndecl_10659 tlv_put fndecl 4-0 10659 NULL
+enable_so_start_mtd_oob_buf32_10664 start mtd_oob_buf32 0 10664 NULL
@@ -157884,6 +157279,7 @@ index 0000000..9da833a
+enable_so_dma_rx_num_vardecl_altera_tse_main_c_10728 dma_rx_num vardecl_altera_tse_main.c 0 10728 &enable_so_ipv6_recv_error_fndecl_10728
+enable_so_xen_p2m_size_vardecl_10730 xen_p2m_size vardecl 0 10730 NULL
+enable_so_iomem_reg_shift_serial_struct_10733 iomem_reg_shift serial_struct 0 10733 NULL
++enable_so_ntp_fltr_count_bnxt_10734 ntp_fltr_count bnxt 0 10734 NULL
+enable_so_write_file_queue_fndecl_10737 write_file_queue fndecl 3 10737 NULL
+enable_so_sb_dirblklog_xfs_sb_10738 sb_dirblklog xfs_sb 0 10738 NULL
+enable_so___memblock_find_range_bottom_up_fndecl_10739 __memblock_find_range_bottom_up fndecl 0-4-1-2 10739 NULL
@@ -157901,12 +157297,10 @@ index 0000000..9da833a
+enable_so_ocrdma_reg_user_mr_fndecl_10777 ocrdma_reg_user_mr fndecl 2-3 10777 NULL
+enable_so_amdgpu_ttm_tt_create_fndecl_10779 amdgpu_ttm_tt_create fndecl 2 10779 NULL
+enable_so_setexposure_fndecl_10781 setexposure fndecl 0 10781 NULL
-+enable_so_btrfs_free_extent_fndecl_10784 btrfs_free_extent fndecl 4-3 10784 NULL
+enable_so_iptunnel_xmit_fndecl_10787 iptunnel_xmit fndecl 6 10787 NULL
+enable_so_soc_camera_calc_client_output_fndecl_10789 soc_camera_calc_client_output fndecl 6 10789 NULL
+enable_so_pnode_sz_ubifs_info_10791 pnode_sz ubifs_info 0 10791 NULL nohasharray
-+enable_so_ea_write_fndecl_10791 ea_write fndecl 3 10791 &enable_so_pnode_sz_ubifs_info_10791 nohasharray
-+enable_so_dwc3_testmode_write_fndecl_10791 dwc3_testmode_write fndecl 3 10791 &enable_so_ea_write_fndecl_10791
++enable_so_ea_write_fndecl_10791 ea_write fndecl 3 10791 &enable_so_pnode_sz_ubifs_info_10791
+enable_so_read32_brcmf_buscore_ops_10795 read32 brcmf_buscore_ops 0 10795 NULL
+enable_so_set_config_fndecl_10797 set_config fndecl 0 10797 NULL
+enable_so_num_events_kfd_ioctl_wait_events_args_10811 num_events kfd_ioctl_wait_events_args 0 10811 NULL nohasharray
@@ -157944,23 +157338,19 @@ index 0000000..9da833a
+enable_so_max_sge_per_wr_iwch_rnic_attributes_10892 max_sge_per_wr iwch_rnic_attributes 0 10892 NULL
+enable_so_ecryptfs_lower_header_size_fndecl_10894 ecryptfs_lower_header_size fndecl 0 10894 NULL
+enable_so_slot_device_offset_controller_10895 slot_device_offset controller 0 10895 NULL
-+enable_so_table_size_acpi_einj_trigger_10899 table_size acpi_einj_trigger 0 10899 NULL
+enable_so_i2c_hid_get_report_length_fndecl_10901 i2c_hid_get_report_length fndecl 0 10901 NULL nohasharray
+enable_so_n_cell_devs_intel_soc_pmic_config_10901 n_cell_devs intel_soc_pmic_config 0 10901 &enable_so_i2c_hid_get_report_length_fndecl_10901
+enable_so_udf_read_ptagged_fndecl_10905 udf_read_ptagged fndecl 3 10905 NULL
+enable_so_vfio_lock_acct_fndecl_10907 vfio_lock_acct fndecl 1 10907 NULL
-+enable_so_msix_vector_count_MPT2SAS_ADAPTER_10911 msix_vector_count MPT2SAS_ADAPTER 0 10911 NULL
+enable_so_SyS_listxattr_fndecl_10916 SyS_listxattr fndecl 3 10916 NULL
+enable_so_data_len_rndis_packet_10918 data_len rndis_packet 0 10918 NULL nohasharray
+enable_so_compat_sys_msgsnd_fndecl_10918 compat_sys_msgsnd fndecl 3 10918 &enable_so_data_len_rndis_packet_10918
+enable_so_isdn_audio_adpcm2xlaw_fndecl_10927 isdn_audio_adpcm2xlaw fndecl 0 10927 NULL
+enable_so_ieee802154_max_payload_fndecl_10928 ieee802154_max_payload fndecl 0 10928 NULL
+enable_so_ud_bmove_fndecl_10929 ud_bmove fndecl 8-6-4-7-5-3 10929 NULL
-+enable_so_ieee80211_if_read_dot11MeshAwakeWindowDuration_fndecl_10932 ieee80211_if_read_dot11MeshAwakeWindowDuration fndecl 3 10932 NULL
+enable_so_dma_acm_rb_10934 dma acm_rb 0 10934 NULL
+enable_so_l_offset_lbuf_10935 l_offset lbuf 0 10935 NULL
+enable_so_compat_raw_setsockopt_fndecl_10937 compat_raw_setsockopt fndecl 5 10937 NULL
-+enable_so_mlx5_ib_alloc_fast_reg_page_list_fndecl_10941 mlx5_ib_alloc_fast_reg_page_list fndecl 2 10941 NULL
+enable_so_bmp_len_xfrm_replay_state_esn_10945 bmp_len xfrm_replay_state_esn 0 10945 NULL
+enable_so_max_i2c_msg_len_r820t_config_10951 max_i2c_msg_len r820t_config 0 10951 NULL nohasharray
+enable_so_acc_passl_accessdata_dn_10951 acc_passl accessdata_dn 0 10951 &enable_so_max_i2c_msg_len_r820t_config_10951
@@ -157999,19 +157389,18 @@ index 0000000..9da833a
+enable_so_snd_ac97_pcm_assign_fndecl_11033 snd_ac97_pcm_assign fndecl 2 11033 NULL
+enable_so_sectors_per_block_pool_11035 sectors_per_block pool 0 11035 NULL nohasharray
+enable_so_audio_outs_vx_core_11035 audio_outs vx_core 0 11035 &enable_so_sectors_per_block_pool_11035
-+enable_so_namelen_xfs_dir2_data_entry_11036 namelen xfs_dir2_data_entry 0 11036 NULL nohasharray
-+enable_so_ep_msg_in_peak_usb_device_11036 ep_msg_in peak_usb_device 0 11036 &enable_so_namelen_xfs_dir2_data_entry_11036
++enable_so_ep_msg_in_peak_usb_device_11036 ep_msg_in peak_usb_device 0 11036 NULL nohasharray
++enable_so_namelen_xfs_dir2_data_entry_11036 namelen xfs_dir2_data_entry 0 11036 &enable_so_ep_msg_in_peak_usb_device_11036
+enable_so_iic_tpm_write_fndecl_11039 iic_tpm_write fndecl 3 11039 NULL
+enable_so_DataTransferLength_DAC960_V2_UserCommand_11040 DataTransferLength DAC960_V2_UserCommand 0 11040 NULL
+enable_so_xlog_write_log_records_fndecl_11042 xlog_write_log_records fndecl 4-3 11042 NULL
+enable_so_isr_pci_pm_read_fndecl_11052 isr_pci_pm_read fndecl 3 11052 NULL
+enable_so_va_size_coda_vattr_11053 va_size coda_vattr 0 11053 NULL
+enable_so_drbd_send_drequest_fndecl_11057 drbd_send_drequest fndecl 3-4 11057 NULL
-+enable_so_do_mlock_fndecl_11062 do_mlock fndecl 2-1 11062 NULL
++enable_so_do_mlock_fndecl_11062 do_mlock fndecl 1-2 11062 NULL
+enable_so_default_rds_buf_vardecl_fmdrv_common_c_11072 default_rds_buf vardecl_fmdrv_common.c 0 11072 NULL
+enable_so_i2c_writebytes_fndecl_11073 i2c_writebytes fndecl 4 11073 NULL
-+enable_so_ib_agent_port_open_fndecl_11074 ib_agent_port_open fndecl 2 11074 NULL nohasharray
-+enable_so_show_attribute_configfs_item_operations_11074 show_attribute configfs_item_operations 0 11074 &enable_so_ib_agent_port_open_fndecl_11074
++enable_so_ib_agent_port_open_fndecl_11074 ib_agent_port_open fndecl 2 11074 NULL
+enable_so_pipeline_sec_frag_swi_read_fndecl_11077 pipeline_sec_frag_swi_read fndecl 3 11077 NULL
+enable_so_entry_fat_entry_11079 entry fat_entry 0 11079 NULL
+enable_so_irda_sendmsg_dgram_fndecl_11080 irda_sendmsg_dgram fndecl 3 11080 NULL
@@ -158021,8 +157410,8 @@ index 0000000..9da833a
+enable_so_read_bytes_sh_flctl_11094 read_bytes sh_flctl 0 11094 NULL
+enable_so_do_brk_fndecl_11101 do_brk fndecl 1-2 11101 NULL
+enable_so_acpi_processor_power_verify_fndecl_11105 acpi_processor_power_verify fndecl 0 11105 NULL
-+enable_so_ext4_acl_from_disk_fndecl_11107 ext4_acl_from_disk fndecl 2 11107 NULL nohasharray
-+enable_so___getblk_gfp_fndecl_11107 __getblk_gfp fndecl 3-2 11107 &enable_so_ext4_acl_from_disk_fndecl_11107
++enable_so___getblk_gfp_fndecl_11107 __getblk_gfp fndecl 3-2 11107 NULL nohasharray
++enable_so_ext4_acl_from_disk_fndecl_11107 ext4_acl_from_disk fndecl 2 11107 &enable_so___getblk_gfp_fndecl_11107
+enable_so_wm9081_set_sysclk_fndecl_11108 wm9081_set_sysclk fndecl 4 11108 NULL nohasharray
+enable_so_wTotalBlockNumber_ms_bootblock_sysinf_11108 wTotalBlockNumber ms_bootblock_sysinf 0 11108 &enable_so_wm9081_set_sysclk_fndecl_11108
+enable_so_addr_last_netup_dma_11114 addr_last netup_dma 0 11114 NULL
@@ -158057,14 +157446,15 @@ index 0000000..9da833a
+enable_so_mangle_sdp_packet_fndecl_11198 mangle_sdp_packet fndecl 2-10 11198 NULL
+enable_so_snoop_send_pio_handler_fndecl_11203 snoop_send_pio_handler fndecl 3 11203 NULL
+enable_so_vb2_fop_write_fndecl_11207 vb2_fop_write fndecl 3 11207 NULL
++enable_so_wipers_mcp4531_cfg_11208 wipers mcp4531_cfg 0 11208 NULL
+enable_so_used_bytes_ubi_volume_info_11209 used_bytes ubi_volume_info 0 11209 NULL
+enable_so_mq_create_fndecl_11210 mq_create fndecl 1 11210 NULL nohasharray
+enable_so_lstcon_session_info_fndecl_11210 lstcon_session_info fndecl 6 11210 &enable_so_mq_create_fndecl_11210
+enable_so_tx_tx_template_prepared_read_fndecl_11211 tx_tx_template_prepared_read fndecl 3 11211 NULL
++enable_so_vid_end_switchdev_obj_port_vlan_11218 vid_end switchdev_obj_port_vlan 0 11218 NULL
+enable_so_num_encoder_drm_mode_config_11220 num_encoder drm_mode_config 0 11220 NULL
+enable_so_max_flash_intensity_adp1653_platform_data_11225 max_flash_intensity adp1653_platform_data 0 11225 NULL
+enable_so_bcd2000_dump_buffer_fndecl_11234 bcd2000_dump_buffer fndecl 3 11234 NULL
-+enable_so_hiwat_bus_param_11240 hiwat bus_param 0 11240 NULL
+enable_so_hdr_len_ieee80211_cipher_scheme_11241 hdr_len ieee80211_cipher_scheme 0 11241 NULL
+enable_so_enable_write_fndecl_11243 enable_write fndecl 3 11243 NULL
+enable_so_tx_tx_template_programmed_read_fndecl_11246 tx_tx_template_programmed_read fndecl 3 11246 NULL
@@ -158103,28 +157493,25 @@ index 0000000..9da833a
+enable_so_fd_execute_rw_fndecl_11359 fd_execute_rw fndecl 3 11359 NULL
+enable_so_amdgpu_gem_object_create_fndecl_11366 amdgpu_gem_object_create fndecl 2 11366 NULL nohasharray
+enable_so_clkrc_div_ov965x_interval_11366 clkrc_div ov965x_interval 0 11366 &enable_so_amdgpu_gem_object_create_fndecl_11366
-+enable_so_ieee80211_if_read_ht_opmode_fndecl_11367 ieee80211_if_read_ht_opmode fndecl 3 11367 NULL
+enable_so_tso_fragment_fndecl_11369 tso_fragment fndecl 3 11369 NULL
+enable_so_build_dpcd_write_fndecl_11376 build_dpcd_write fndecl 4 11376 NULL
+enable_so_xz_dec_init_fndecl_11382 xz_dec_init fndecl 2 11382 NULL
+enable_so_sync_io_fndecl_11385 sync_io fndecl 0 11385 NULL
-+enable_so_alloc_streams_hc_driver_11390 alloc_streams hc_driver 0 11390 NULL
-+enable_so_sctp_getsockopt_assoc_stats_fndecl_11393 sctp_getsockopt_assoc_stats fndecl 2 11393 NULL
++enable_so_max_tchs_cyttsp4_opcfg_11393 max_tchs cyttsp4_opcfg 0 11393 NULL nohasharray
++enable_so_sctp_getsockopt_assoc_stats_fndecl_11393 sctp_getsockopt_assoc_stats fndecl 2 11393 &enable_so_max_tchs_cyttsp4_opcfg_11393
+enable_so_txs_vardecl_ambassador_c_11398 txs vardecl_ambassador.c 0 11398 NULL
+enable_so_setup_data_setup_header_11411 setup_data setup_header 0 11411 NULL
+enable_so_in_args_qlcnic_mailbox_metadata_11413 in_args qlcnic_mailbox_metadata 0 11413 NULL
+enable_so_iso_packets_buffer_init_fndecl_11414 iso_packets_buffer_init fndecl 3-4 11414 NULL
-+enable_so_lpfc_idiag_extacc_drivr_get_fndecl_11416 lpfc_idiag_extacc_drivr_get fndecl 3-0 11416 NULL
+enable_so_cnt_qib_ctxtdata_11417 cnt qib_ctxtdata 0 11417 NULL
+enable_so_smt_build_frame_fndecl_11428 smt_build_frame fndecl 4 11428 NULL
+enable_so_isdn_ppp_write_fndecl_11430 isdn_ppp_write fndecl 4 11430 NULL
+enable_so_rxBytesRemaining_edgeport_serial_11436 rxBytesRemaining edgeport_serial 0 11436 NULL nohasharray
+enable_so_rule_cnt_ethtool_rxnfc_11436 rule_cnt ethtool_rxnfc 0 11436 &enable_so_rxBytesRemaining_edgeport_serial_11436
-+enable_so_iwl_dbgfs_log_event_write_fndecl_11443 iwl_dbgfs_log_event_write fndecl 3 11443 NULL
++enable_so_acpi_node_prop_read_fndecl_11442 acpi_node_prop_read fndecl 0 11442 NULL
+enable_so_llsec_do_decrypt_auth_fndecl_11445 llsec_do_decrypt_auth fndecl 0 11445 NULL
+enable_so_ccp_init_dm_workarea_fndecl_11450 ccp_init_dm_workarea fndecl 3 11450 NULL
+enable_so___compat_sys_preadv64_fndecl_11452 __compat_sys_preadv64 fndecl 3 11452 NULL
-+enable_so_wmi_evt_tx_mgmt_fndecl_11458 wmi_evt_tx_mgmt fndecl 4 11458 NULL
+enable_so_proc_scsi_write_fndecl_11461 proc_scsi_write fndecl 3 11461 NULL
+enable_so_reshape_ring_fndecl_11464 reshape_ring fndecl 2 11464 NULL
+enable_so_len_cq_rsp_desc_11465 len_cq rsp_desc 0 11465 NULL
@@ -158174,9 +157561,8 @@ index 0000000..9da833a
+enable_so_prev_free_msdos_sb_info_11603 prev_free msdos_sb_info 0 11603 NULL nohasharray
+enable_so_spi_execute_fndecl_11603 spi_execute fndecl 5 11603 &enable_so_prev_free_msdos_sb_info_11603 nohasharray
+enable_so_slave_num_vardecl_shdma_base_c_11603 slave_num vardecl_shdma-base.c 0 11603 &enable_so_spi_execute_fndecl_11603
-+enable_so_read_file_btcoex_fndecl_11604 read_file_btcoex fndecl 3 11604 NULL
-+enable_so_send_reply_fndecl_11610 send_reply fndecl 7 11610 NULL
-+enable_so_dvb_net_sec_callback_fndecl_11617 dvb_net_sec_callback fndecl 2 11617 NULL
++enable_so_send_reply_fndecl_11610 send_reply fndecl 7 11610 NULL nohasharray
++enable_so_desc_num_hnae_ring_11610 desc_num hnae_ring 0 11610 &enable_so_send_reply_fndecl_11610
+enable_so_batadv_tt_hash_find_fndecl_11619 batadv_tt_hash_find fndecl 3 11619 NULL
+enable_so_word1_atl1e_recv_ret_status_11620 word1 atl1e_recv_ret_status 0 11620 NULL
+enable_so_btrfs_add_ordered_extent_dio_fndecl_11621 btrfs_add_ordered_extent_dio fndecl 4-2-5-3 11621 NULL
@@ -158205,16 +157591,13 @@ index 0000000..9da833a
+enable_so_stride_efifb_dmi_info_11695 stride efifb_dmi_info 0 11695 NULL
+enable_so_num_rates_wmi_rate_set_arg_11696 num_rates wmi_rate_set_arg 0 11696 NULL
+enable_so_kernel_tree_alloc_fndecl_11698 kernel_tree_alloc fndecl 1 11698 NULL
-+enable_so_iwl_dbgfs_rxon_filter_flags_read_fndecl_11699 iwl_dbgfs_rxon_filter_flags_read fndecl 3 11699 NULL
+enable_so_shared_mic_nid_ca0132_spec_11702 shared_mic_nid ca0132_spec 0 11702 NULL
-+enable_so___vma_reservation_common_fndecl_11707 __vma_reservation_common fndecl 3 11707 NULL nohasharray
-+enable_so_mwifiex_debug_mask_write_fndecl_11707 mwifiex_debug_mask_write fndecl 3 11707 &enable_so___vma_reservation_common_fndecl_11707
++enable_so___vma_reservation_common_fndecl_11707 __vma_reservation_common fndecl 3 11707 NULL
+enable_so_phys_lcr_base__synclinkmp_info_11713 phys_lcr_base _synclinkmp_info 0 11713 NULL
+enable_so_sizeof_partition_entry__gpt_header_11718 sizeof_partition_entry _gpt_header 0 11718 NULL
+enable_so_ipv6_renew_options_fndecl_11728 ipv6_renew_options fndecl 5 11728 NULL
+enable_so_ov511_pkt_scan_fndecl_11737 ov511_pkt_scan fndecl 3 11737 NULL
-+enable_so_length_v4l2_plane_11738 length v4l2_plane 0 11738 NULL nohasharray
-+enable_so_epp_total_pages_ptlrpc_enc_page_pool_11738 epp_total_pages ptlrpc_enc_page_pool 0 11738 &enable_so_length_v4l2_plane_11738
++enable_so_num_clocks_cam_clk_provider_11741 num_clocks cam_clk_provider 0 11741 NULL
+enable_so_gart_pin_size_radeon_device_11745 gart_pin_size radeon_device 0 11745 NULL
+enable_so_symlink_size_squashfs_symlink_inode_11747 symlink_size squashfs_symlink_inode 0 11747 NULL
+enable_so_log_num_cqs_mlx4_init_hca_param_11748 log_num_cqs mlx4_init_hca_param 0 11748 NULL
@@ -158230,29 +157613,29 @@ index 0000000..9da833a
+enable_so_p9_client_prepare_req_fndecl_11803 p9_client_prepare_req fndecl 3 11803 NULL
+enable_so___kmalloc_node_fndecl_11804 __kmalloc_node fndecl 1 11804 NULL
+enable_so_depth_cx23885_fmt_11806 depth cx23885_fmt 0 11806 NULL
-+enable_so_num_resources_nd_namespace_blk_11815 num_resources nd_namespace_blk 0 11815 NULL
++enable_so_num_resources_nd_namespace_blk_11815 num_resources nd_namespace_blk 0 11815 NULL nohasharray
++enable_so_max_hw_sectors_queue_limits_11815 max_hw_sectors queue_limits 0 11815 &enable_so_num_resources_nd_namespace_blk_11815
+enable_so_SyS_flistxattr_fndecl_11825 SyS_flistxattr fndecl 3 11825 NULL
+enable_so_bufflen_alua_dh_data_11826 bufflen alua_dh_data 0 11826 NULL
+enable_so_be_change_mtu_fndecl_11828 be_change_mtu fndecl 2 11828 NULL
-+enable_so_acpi_allocate_root_table_fndecl_11829 acpi_allocate_root_table fndecl 1 11829 NULL nohasharray
-+enable_so_do_register_entry_fndecl_11829 do_register_entry fndecl 4 11829 &enable_so_acpi_allocate_root_table_fndecl_11829
-+enable_so_atk_debugfs_ggrp_read_fndecl_11841 atk_debugfs_ggrp_read fndecl 3 11841 NULL
++enable_so_acpi_allocate_root_table_fndecl_11829 acpi_allocate_root_table fndecl 1 11829 NULL
+enable_so_length_TAG_TW_SG_Entry_ISO_11846 length TAG_TW_SG_Entry_ISO 0 11846 NULL
+enable_so_mic_vringh_copy_fndecl_11848 mic_vringh_copy fndecl 4 11848 NULL
+enable_so_num_crtc_mga_device_11851 num_crtc mga_device 0 11851 NULL
+enable_so_number_of_packets_urb_11853 number_of_packets urb 0 11853 NULL nohasharray
+enable_so_add_to_page_cache_lru_fndecl_11853 add_to_page_cache_lru fndecl 0 11853 &enable_so_number_of_packets_urb_11853
+enable_so_sg_tablesize_srp_target_port_11858 sg_tablesize srp_target_port 0 11858 NULL
-+enable_so_btmrvl_pscmd_write_fndecl_11859 btmrvl_pscmd_write fndecl 3 11859 NULL
+enable_so_frame_rate_sd_11862 frame_rate sd 0 11862 NULL
+enable_so_s_nsegments_nilfs_super_block_11865 s_nsegments nilfs_super_block 0 11865 NULL
+enable_so_wr_host_buf_pos_xilly_channel_11866 wr_host_buf_pos xilly_channel 0 11866 NULL
+enable_so_heads_ssfdcr_record_11869 heads ssfdcr_record 0 11869 NULL
++enable_so_u8ssidlen_hidden_net_info_11872 u8ssidlen hidden_net_info 0 11872 NULL
+enable_so_domain_child_num_acl_role_label_11875 domain_child_num acl_role_label 0 11875 NULL
++enable_so_dm_btree_lookup_next_fndecl_11876 dm_btree_lookup_next fndecl 2-0 11876 NULL
+enable_so_idetape_queue_rw_tail_fndecl_11881 idetape_queue_rw_tail fndecl 3 11881 NULL
-+enable_so_alloc_empty_pages_fndecl_11885 alloc_empty_pages fndecl 2 11885 NULL nohasharray
-+enable_so_bochs_dispi_read_fndecl_11885 bochs_dispi_read fndecl 0 11885 &enable_so_alloc_empty_pages_fndecl_11885 nohasharray
-+enable_so_leaf_dealloc_fndecl_11885 leaf_dealloc fndecl 4-3 11885 &enable_so_bochs_dispi_read_fndecl_11885
++enable_so_leaf_dealloc_fndecl_11885 leaf_dealloc fndecl 4-3 11885 NULL nohasharray
++enable_so_alloc_empty_pages_fndecl_11885 alloc_empty_pages fndecl 2 11885 &enable_so_leaf_dealloc_fndecl_11885 nohasharray
++enable_so_bochs_dispi_read_fndecl_11885 bochs_dispi_read fndecl 0 11885 &enable_so_alloc_empty_pages_fndecl_11885
+enable_so_f_width_gsc_frame_11886 f_width gsc_frame 0 11886 NULL
+enable_so_num_channels_iw_scan_req_11889 num_channels iw_scan_req 0 11889 NULL
+enable_so_vfs_read_fndecl_11892 vfs_read fndecl 3-0 11892 NULL nohasharray
@@ -158263,7 +157646,6 @@ index 0000000..9da833a
+enable_so_libipw_change_mtu_fndecl_11901 libipw_change_mtu fndecl 2 11901 NULL
+enable_so_fw_dump_size_scsi_qla_host_11903 fw_dump_size scsi_qla_host 0 11903 NULL
+enable_so_iwl_dbgfs_missed_beacon_write_fndecl_11905 iwl_dbgfs_missed_beacon_write fndecl 3 11905 NULL
-+enable_so_mwifiex_histogram_read_fndecl_11910 mwifiex_histogram_read fndecl 3 11910 NULL
+enable_so_num_dma_mlx5e_tx_skb_cb_11911 num_dma mlx5e_tx_skb_cb 0 11911 NULL nohasharray
+enable_so_snd_device_new_fndecl_11911 snd_device_new fndecl 0 11911 &enable_so_num_dma_mlx5e_tx_skb_cb_11911
+enable_so_dio_set_defer_completion_fndecl_11916 dio_set_defer_completion fndecl 0 11916 NULL
@@ -158275,12 +157657,12 @@ index 0000000..9da833a
+enable_so_orig_start_move_extent_11928 orig_start move_extent 0 11928 NULL
+enable_so_length_p_header100_11933 length p_header100 0 11933 NULL
+enable_so_ext4_move_extents_fndecl_11935 ext4_move_extents fndecl 5-3-4 11935 NULL
-+enable_so_alloc_low_pages_fndecl_11940 alloc_low_pages fndecl 1 11940 NULL nohasharray
-+enable_so_v9fs_remote_get_acl_fndecl_11940 v9fs_remote_get_acl fndecl 4 11940 &enable_so_alloc_low_pages_fndecl_11940
++enable_so_alloc_low_pages_fndecl_11940 alloc_low_pages fndecl 1 11940 NULL
+enable_so_mss_request_sock_11943 mss request_sock 0 11943 NULL
+enable_so_spi_write_fndecl_11948 spi_write fndecl 0 11948 NULL
+enable_so_choose_data_offset_fndecl_11950 choose_data_offset fndecl 0 11950 NULL
+enable_so_bpp_bdisp_fmt_11954 bpp bdisp_fmt 0 11954 NULL
++enable_so_mmc_send_tuning_fndecl_11955 mmc_send_tuning fndecl 2 11955 NULL
+enable_so_qla4_82xx_pci_set_window_fndecl_11958 qla4_82xx_pci_set_window fndecl 0-2 11958 NULL
+enable_so_osc_cached_mb_seq_write_fndecl_11961 osc_cached_mb_seq_write fndecl 3 11961 NULL
+enable_so_fdt_subnode_offset_namelen_fndecl_11971 fdt_subnode_offset_namelen fndecl 2-0 11971 NULL
@@ -158292,6 +157674,7 @@ index 0000000..9da833a
+enable_so_total_mapping_size_fndecl_11985 total_mapping_size fndecl 0 11985 NULL
+enable_so_ssp_create_msg_fndecl_11986 ssp_create_msg fndecl 2 11986 NULL
+enable_so_tx_frag_cache_hit_read_fndecl_11988 tx_frag_cache_hit_read fndecl 3 11988 NULL
++enable_so_host_int_setup_multicast_filter_fndecl_11989 host_int_setup_multicast_filter fndecl 3 11989 NULL
+enable_so_x_size_mms114_platform_data_11991 x_size mms114_platform_data 0 11991 NULL
+enable_so_virtualUnits_INFTLPartition_11994 virtualUnits INFTLPartition 0 11994 NULL
+enable_so_rx_buffer_size_peak_usb_adapter_11997 rx_buffer_size peak_usb_adapter 0 11997 NULL
@@ -158333,19 +157716,16 @@ index 0000000..9da833a
+enable_so_d_size_size_entry_12084 d_size size_entry 0 12084 NULL
+enable_so_nr_relocs_drm_nouveau_gem_pushbuf_12085 nr_relocs drm_nouveau_gem_pushbuf 0 12085 NULL
+enable_so_nvme_trans_copy_from_user_fndecl_12088 nvme_trans_copy_from_user fndecl 3 12088 NULL
-+enable_so_security_socket_recvmsg_fndecl_12091 security_socket_recvmsg fndecl 0 12091 NULL nohasharray
-+enable_so_iwl_dbgfs_temperature_read_fndecl_12091 iwl_dbgfs_temperature_read fndecl 3 12091 &enable_so_security_socket_recvmsg_fndecl_12091
++enable_so_security_socket_recvmsg_fndecl_12091 security_socket_recvmsg fndecl 0 12091 NULL
+enable_so_nla_len_nlattr_12092 nla_len nlattr 0 12092 NULL
+enable_so_n_posix_ace_state_array_12096 n posix_ace_state_array 0 12096 NULL
+enable_so_pad_size_asd_flash_de_12100 pad_size asd_flash_de 0 12100 NULL
-+enable_so_lpfc_debugfs_dumpHostSlim_data_fndecl_12108 lpfc_debugfs_dumpHostSlim_data fndecl 0 12108 NULL
+enable_so_mirror_array_cnt_nfs4_ff_layout_segment_12109 mirror_array_cnt nfs4_ff_layout_segment 0 12109 NULL
+enable_so_length_framebuf_12110 length framebuf 0 12110 NULL nohasharray
+enable_so_prism2_set_genericelement_fndecl_12110 prism2_set_genericelement fndecl 3 12110 &enable_so_length_framebuf_12110
+enable_so_security_context_to_sid_core_fndecl_12115 security_context_to_sid_core fndecl 2 12115 NULL
+enable_so_get_num_tx_queues_rtnl_link_ops_12119 get_num_tx_queues rtnl_link_ops 0 12119 NULL
+enable_so_super_1_rdev_size_change_fndecl_12120 super_1_rdev_size_change fndecl 2 12120 NULL
-+enable_so_mwifiex_hscfg_write_fndecl_12125 mwifiex_hscfg_write fndecl 3 12125 NULL
+enable_so_key_size_ccp_rsa_engine_12126 key_size ccp_rsa_engine 0 12126 NULL
+enable_so_ProgRegShift_cfi_intelext_programming_regioninfo_12129 ProgRegShift cfi_intelext_programming_regioninfo 0 12129 NULL
+enable_so_ext4_fiemap_fndecl_12131 ext4_fiemap fndecl 4-3 12131 NULL
@@ -158358,11 +157738,14 @@ index 0000000..9da833a
+enable_so_ip_vs_receive_fndecl_12161 ip_vs_receive fndecl 3 12161 NULL
+enable_so_set_page_fndecl_12165 set_page fndecl 0 12165 NULL
+enable_so___alloc_ei_netdev_fndecl_12169 __alloc_ei_netdev fndecl 1 12169 NULL
++enable_so_index_cosm_device_12170 index cosm_device 0 12170 NULL
+enable_so___fuse_get_req_fndecl_12176 __fuse_get_req fndecl 2 12176 NULL
-+enable_so_brcmf_sdio_tx_ctrlframe_fndecl_12177 brcmf_sdio_tx_ctrlframe fndecl 3 12177 NULL
++enable_so_brcmf_sdio_tx_ctrlframe_fndecl_12177 brcmf_sdio_tx_ctrlframe fndecl 3 12177 NULL nohasharray
++enable_so_num_ch_nvm_id_group_12177 num_ch nvm_id_group 0 12177 &enable_so_brcmf_sdio_tx_ctrlframe_fndecl_12177
+enable_so_bulk_in_size_sur40_state_12178 bulk_in_size sur40_state 0 12178 NULL
+enable_so_rx_count_rx_header_12180 rx_count rx_header 0 12180 NULL
+enable_so_default_file_splice_read_fndecl_12182 default_file_splice_read fndecl 4 12182 NULL
++enable_so_nci_conn_max_data_pkt_payload_size_fndecl_12183 nci_conn_max_data_pkt_payload_size fndecl 0 12183 NULL
+enable_so_lprocfs_write_helper_fndecl_12184 lprocfs_write_helper fndecl 2 12184 NULL
+enable_so_se_callback_addr_len_nfsd4_setclientid_12186 se_callback_addr_len nfsd4_setclientid 0 12186 NULL
+enable_so_alignment_acpi_resource_memory24_12188 alignment acpi_resource_memory24 0 12188 NULL
@@ -158375,9 +157758,10 @@ index 0000000..9da833a
+enable_so_vmci_transport_set_min_buffer_size_fndecl_12216 vmci_transport_set_min_buffer_size fndecl 2 12216 NULL
+enable_so_hci_sock_sendmsg_fndecl_12231 hci_sock_sendmsg fndecl 3 12231 NULL
+enable_so_virtscsi_kick_cmd_fndecl_12237 virtscsi_kick_cmd fndecl 3-4 12237 NULL
-+enable_so_read_file_tx99_power_fndecl_12238 read_file_tx99_power fndecl 3 12238 NULL
++enable_so_btrfs_alloc_data_chunk_ondemand_fndecl_12238 btrfs_alloc_data_chunk_ondemand fndecl 0 12238 NULL
+enable_so_generic_file_llseek_size_fndecl_12242 generic_file_llseek_size fndecl 2-5 12242 NULL
+enable_so_synproxy_tstamp_adjust_fndecl_12243 synproxy_tstamp_adjust fndecl 2 12243 NULL
++enable_so_tipc_bearer_mtu_fndecl_12247 tipc_bearer_mtu fndecl 0 12247 NULL
+enable_so_max_pkt_size_em28xx_usb_bufs_12248 max_pkt_size em28xx_usb_bufs 0 12248 NULL
+enable_so_write_block_fndecl_12253 write_block fndecl 3 12253 NULL
+enable_so_hpfs_map_fnode_fndecl_12255 hpfs_map_fnode fndecl 2 12255 NULL
@@ -158400,7 +157784,6 @@ index 0000000..9da833a
+enable_so_sctp_make_abort_violation_fndecl_12324 sctp_make_abort_violation fndecl 4 12324 &enable_so_length_sg_mapping_iter_12324
+enable_so_ubifs_change_lp_fndecl_12325 ubifs_change_lp fndecl 3 12325 NULL
+enable_so_no_of_triplet_mwifiex_802_11d_domain_reg_12326 no_of_triplet mwifiex_802_11d_domain_reg 0 12326 NULL
-+enable_so_tracing_clock_write_fndecl_12330 tracing_clock_write fndecl 3 12330 NULL
+enable_so_s_log_block_size_nilfs_super_block_12332 s_log_block_size nilfs_super_block 0 12332 NULL
+enable_so_read_regr_pi_protocol_12333 read_regr pi_protocol 0 12333 NULL
+enable_so_status_w840_rx_desc_12335 status w840_rx_desc 0 12335 NULL nohasharray
@@ -158412,8 +157795,7 @@ index 0000000..9da833a
+enable_so_max_buf_size_tegra_slink_data_12348 max_buf_size tegra_slink_data 0 12348 NULL
+enable_so_ocfs2_symlink_get_block_fndecl_12352 ocfs2_symlink_get_block fndecl 2 12352 NULL
+enable_so_td_done_fndecl_12358 td_done fndecl 0 12358 NULL
-+enable_so_reserve_additional_memory_fndecl_12359 reserve_additional_memory fndecl 1 12359 NULL nohasharray
-+enable_so_limit_scaled_size_lock_fndecl_12359 limit_scaled_size_lock fndecl 5-6 12359 &enable_so_reserve_additional_memory_fndecl_12359 nohasharray
++enable_so_limit_scaled_size_lock_fndecl_12359 limit_scaled_size_lock fndecl 5-6 12359 NULL nohasharray
+enable_so_igb_pci_sriov_configure_fndecl_12359 igb_pci_sriov_configure fndecl 2 12359 &enable_so_limit_scaled_size_lock_fndecl_12359
+enable_so_ioremap_uc_fndecl_12363 ioremap_uc fndecl 2-1 12363 NULL
+enable_so_xb_blkno_ocfs2_xattr_block_12365 xb_blkno ocfs2_xattr_block 0 12365 NULL
@@ -158424,8 +157806,8 @@ index 0000000..9da833a
+enable_so_iscsi_segment_seek_sg_fndecl_12378 iscsi_segment_seek_sg fndecl 5-4 12378 NULL nohasharray
+enable_so_pci_enable_device_flags_fndecl_12378 pci_enable_device_flags fndecl 0 12378 &enable_so_iscsi_segment_seek_sg_fndecl_12378
+enable_so_rx_prefix_size_efx_nic_12381 rx_prefix_size efx_nic 0 12381 NULL
-+enable_so_serial8250_port_size_fndecl_12384 serial8250_port_size fndecl 0 12384 NULL nohasharray
-+enable_so_if_usb_host_to_card_fndecl_12384 if_usb_host_to_card fndecl 4 12384 &enable_so_serial8250_port_size_fndecl_12384
++enable_so_if_usb_host_to_card_fndecl_12384 if_usb_host_to_card fndecl 4 12384 NULL nohasharray
++enable_so_serial8250_port_size_fndecl_12384 serial8250_port_size fndecl 0 12384 &enable_so_if_usb_host_to_card_fndecl_12384
+enable_so_get_packet_pg_fndecl_12388 get_packet_pg fndecl 4 12388 NULL
+enable_so_stb6100_write_reg_range_fndecl_12391 stb6100_write_reg_range fndecl 4 12391 NULL nohasharray
+enable_so_frag_size_mlx4_en_frag_info_12391 frag_size mlx4_en_frag_info 0 12391 &enable_so_stb6100_write_reg_range_fndecl_12391
@@ -158433,11 +157815,9 @@ index 0000000..9da833a
+enable_so_num_ufbufs_vardecl_12394 num_ufbufs vardecl 0 12394 NULL
+enable_so_memory_block_action_fndecl_12395 memory_block_action fndecl 1 12395 NULL
+enable_so_alloc_one_pg_vec_page_fndecl_12396 alloc_one_pg_vec_page fndecl 1 12396 NULL
-+enable_so_ath10k_read_quiet_period_fndecl_12397 ath10k_read_quiet_period fndecl 3 12397 NULL
+enable_so_buffer_size_zoran_buffer_col_12398 buffer_size zoran_buffer_col 0 12398 NULL
+enable_so_powercap_register_zone_fndecl_12399 powercap_register_zone fndecl 6 12399 NULL
+enable_so_ieee802154_alloc_hw_fndecl_12400 ieee802154_alloc_hw fndecl 1 12400 NULL
-+enable_so_edt_ft5x06_debugfs_raw_data_read_fndecl_12401 edt_ft5x06_debugfs_raw_data_read fndecl 3 12401 NULL
+enable_so_acl_len_nfs_setaclargs_12402 acl_len nfs_setaclargs 0 12402 NULL
+enable_so_length_iw_point_12404 length iw_point 0 12404 NULL
+enable_so_reg_read_fndecl_12405 reg_read fndecl 4 12405 NULL
@@ -158450,7 +157830,6 @@ index 0000000..9da833a
+enable_so_len_SL_component_12428 len SL_component 0 12428 NULL
+enable_so_ext4_quota_read_fndecl_12429 ext4_quota_read fndecl 5 12429 NULL nohasharray
+enable_so_add_pid_filter_fndecl_12429 add_pid_filter fndecl 0 12429 &enable_so_ext4_quota_read_fndecl_12429
-+enable_so_lpfc_idiag_mbxacc_read_fndecl_12430 lpfc_idiag_mbxacc_read fndecl 3 12430 NULL
+enable_so_pkey_tbl_len_ib_port_attr_12434 pkey_tbl_len ib_port_attr 0 12434 NULL
+enable_so_hcd_priv_size_hc_driver_12440 hcd_priv_size hc_driver 0 12440 NULL
+enable_so_informationLength_fileEntry_12442 informationLength fileEntry 0 12442 NULL nohasharray
@@ -158470,12 +157849,11 @@ index 0000000..9da833a
+enable_so_tp_block_nr_tpacket_req_12465 tp_block_nr tpacket_req 0 12465 NULL
+enable_so_tx_frag_bad_mblk_num_read_fndecl_12467 tx_frag_bad_mblk_num_read fndecl 3 12467 NULL
+enable_so_num_leds_pca9532_chip_info_12471 num_leds pca9532_chip_info 0 12471 NULL
-+enable_so_lpfc_lun_queue_depth_init_fndecl_12474 lpfc_lun_queue_depth_init fndecl 2 12474 NULL
+enable_so_rx_defrag_need_defrag_read_fndecl_12486 rx_defrag_need_defrag_read fndecl 3 12486 NULL
+enable_so_lock_extent_fndecl_12493 lock_extent fndecl 3-2 12493 NULL
+enable_so_vgacon_adjust_height_fndecl_12495 vgacon_adjust_height fndecl 2 12495 NULL nohasharray
-+enable_so_acpi_tb_install_standard_table_fndecl_12495 acpi_tb_install_standard_table fndecl 1 12495 &enable_so_vgacon_adjust_height_fndecl_12495 nohasharray
-+enable_so_ih_item_len_item_head_12495 ih_item_len item_head 0 12495 &enable_so_acpi_tb_install_standard_table_fndecl_12495
++enable_so_ih_item_len_item_head_12495 ih_item_len item_head 0 12495 &enable_so_vgacon_adjust_height_fndecl_12495 nohasharray
++enable_so_acpi_tb_install_standard_table_fndecl_12495 acpi_tb_install_standard_table fndecl 1 12495 &enable_so_ih_item_len_item_head_12495
+enable_so_blk_update_nr_requests_fndecl_12497 blk_update_nr_requests fndecl 2 12497 NULL
+enable_so_map_off_xfs_dir2_leaf_map_info_12499 map_off xfs_dir2_leaf_map_info 0 12499 NULL
+enable_so_dccp_feat_valid_nn_length_fndecl_12500 dccp_feat_valid_nn_length fndecl 0 12500 NULL
@@ -158484,12 +157862,10 @@ index 0000000..9da833a
+enable_so_stream_next_buffer_fndecl_12502 stream_next_buffer fndecl 0 12502 NULL
+enable_so_nclips_saa7134_dev_12507 nclips saa7134_dev 0 12507 NULL
+enable_so_brcmf_chip_tcm_ramsize_fndecl_12513 brcmf_chip_tcm_ramsize fndecl 0 12513 NULL
-+enable_so_max_tchs_cyttsp4_sysinfo_ofs_12516 max_tchs cyttsp4_sysinfo_ofs 0 12516 NULL
+enable_so_madvise_dontneed_fndecl_12517 madvise_dontneed fndecl 3-4 12517 NULL
+enable_so_alloc_skb_with_frags_fndecl_12518 alloc_skb_with_frags fndecl 2 12518 NULL nohasharray
+enable_so_num_pointers_whc_std_12518 num_pointers whc_std 0 12518 &enable_so_alloc_skb_with_frags_fndecl_12518
+enable_so_video_read_fndecl_12519 video_read fndecl 3 12519 NULL
-+enable_so_stats_dot11FCSErrorCount_read_fndecl_12521 stats_dot11FCSErrorCount_read fndecl 3 12521 NULL
+enable_so_snd_midi_channel_alloc_set_fndecl_12522 snd_midi_channel_alloc_set fndecl 1 12522 NULL
+enable_so_index_mtd_info_12524 index mtd_info 0 12524 NULL
+enable_so_al_tr_number_to_on_disk_sector_fndecl_12526 al_tr_number_to_on_disk_sector fndecl 0 12526 NULL
@@ -158510,8 +157886,8 @@ index 0000000..9da833a
+enable_so_address_length_acpi_resource_memory32_12576 address_length acpi_resource_memory32 0 12576 NULL
+enable_so_fs_path_add_from_extent_buffer_fndecl_12581 fs_path_add_from_extent_buffer fndecl 0-4 12581 NULL
+enable_so_rate_den_snd_pcm_hw_params_12586 rate_den snd_pcm_hw_params 0 12586 NULL
-+enable_so_acpi_tb_acquire_temp_table_fndecl_12590 acpi_tb_acquire_temp_table fndecl 2 12590 NULL nohasharray
-+enable_so_raid_disk_md_rdev_12590 raid_disk md_rdev 0 12590 &enable_so_acpi_tb_acquire_temp_table_fndecl_12590
++enable_so_raid_disk_md_rdev_12590 raid_disk md_rdev 0 12590 NULL nohasharray
++enable_so_acpi_tb_acquire_temp_table_fndecl_12590 acpi_tb_acquire_temp_table fndecl 2 12590 &enable_so_raid_disk_md_rdev_12590
+enable_so_pt1_nr_tables_vardecl_pt1_c_12591 pt1_nr_tables vardecl_pt1.c 0 12591 NULL
+enable_so_pci_scan_root_bus_msi_fndecl_12593 pci_scan_root_bus_msi fndecl 2 12593 NULL
+enable_so_pn544_hci_probe_fndecl_12594 pn544_hci_probe fndecl 6-4 12594 NULL
@@ -158556,13 +157932,11 @@ index 0000000..9da833a
+enable_so_fld_debugfs_hash_seq_write_fndecl_12713 fld_debugfs_hash_seq_write fndecl 3 12713 &enable_so_mdio_phys_octeon_mdiobus_12713
+enable_so_total_len_ocrdma_hdr_wqe_12714 total_len ocrdma_hdr_wqe 0 12714 NULL nohasharray
+enable_so_sys_listxattr_fndecl_12714 sys_listxattr fndecl 3 12714 &enable_so_total_len_ocrdma_hdr_wqe_12714
-+enable_so_blk_ioctl_discard_fndecl_12725 blk_ioctl_discard fndecl 3-2 12725 NULL
+enable_so_ss_in_channels_hdsp_12726 ss_in_channels hdsp 0 12726 NULL
+enable_so_start_brk_prctl_mm_map_12729 start_brk prctl_mm_map 0 12729 NULL
+enable_so_btrfs_truncate_item_fndecl_12731 btrfs_truncate_item fndecl 3 12731 NULL
+enable_so_xfs_iomap_write_direct_fndecl_12733 xfs_iomap_write_direct fndecl 2 12733 NULL
+enable_so_read_profile_fndecl_12736 read_profile fndecl 3 12736 NULL
-+enable_so_sky2_pci_read16_fndecl_12740 sky2_pci_read16 fndecl 0 12740 NULL
+enable_so_count_nfsd3_readres_12745 count nfsd3_readres 0 12745 NULL
+enable_so_aead_assoclen_aead_ctx_12755 aead_assoclen aead_ctx 0 12755 NULL nohasharray
+enable_so_nfsd4_encode_splice_read_fndecl_12755 nfsd4_encode_splice_read fndecl 4 12755 &enable_so_aead_assoclen_aead_ctx_12755
@@ -158571,34 +157945,30 @@ index 0000000..9da833a
+enable_so_wl1251_sdio_read_fndecl_12773 wl1251_sdio_read fndecl 4 12773 NULL
+enable_so_driver_add_groups_fndecl_12778 driver_add_groups fndecl 0 12778 NULL
+enable_so_height_mxr_block_12780 height mxr_block 0 12780 NULL
-+enable_so_ieee80211_if_read_dot11MeshHWMProotInterval_fndecl_12786 ieee80211_if_read_dot11MeshHWMProotInterval fndecl 3 12786 NULL
+enable_so_rx_max_pg_ring_bnx2_12789 rx_max_pg_ring bnx2 0 12789 NULL
+enable_so_sb_fseg_start_nilfs_segment_buffer_12802 sb_fseg_start nilfs_segment_buffer 0 12802 NULL
+enable_so_mpage_readpages_fndecl_12807 mpage_readpages fndecl 3 12807 NULL
+enable_so_object_num_mxt_info_12810 object_num mxt_info 0 12810 NULL
-+enable_so_testmode_write_fndecl_12814 testmode_write fndecl 3 12814 NULL
+enable_so_hint_events_per_packet_input_dev_12818 hint_events_per_packet input_dev 0 12818 NULL nohasharray
+enable_so_subdev_ioctl_fndecl_12818 subdev_ioctl fndecl 2 12818 &enable_so_hint_events_per_packet_input_dev_12818
+enable_so_xen_pirq_from_irq_fndecl_12820 xen_pirq_from_irq fndecl 0 12820 NULL
+enable_so___videobuf_mmap_setup_fndecl_12822 __videobuf_mmap_setup fndecl 0-3 12822 NULL
+enable_so_ksocknal_alloc_tx_fndecl_12825 ksocknal_alloc_tx fndecl 2 12825 NULL
+enable_so_falcon_spi_device_init_fndecl_12835 falcon_spi_device_init fndecl 4 12835 NULL
-+enable_so_vmw_du_crtc_cursor_set_fndecl_12844 vmw_du_crtc_cursor_set fndecl 5-4 12844 NULL
+enable_so_xfs_rtfind_back_fndecl_12849 xfs_rtfind_back fndecl 3 12849 NULL
+enable_so_sbs_setup_fndecl_12851 sbs_setup fndecl 4 12851 NULL
-+enable_so_key_mic_failures_read_fndecl_12858 key_mic_failures_read fndecl 3 12858 NULL
+enable_so_rx_buffer_size_macb_12864 rx_buffer_size macb 0 12864 NULL
+enable_so_snd_interval_refine_max_fndecl_12865 snd_interval_refine_max fndecl 2 12865 NULL
+enable_so_frameoffset_b43legacy_dmaring_12869 frameoffset b43legacy_dmaring 0 12869 NULL
+enable_so_max_ddbs_hw_profile_12873 max_ddbs hw_profile 0 12873 NULL
+enable_so_tcp_remove_reno_sacks_fndecl_12874 tcp_remove_reno_sacks fndecl 2 12874 NULL
++enable_so_rx_buf_size_qede_rx_queue_12878 rx_buf_size qede_rx_queue 0 12878 NULL
+enable_so_length_i2c_hid_cmd_12879 length i2c_hid_cmd 0 12879 NULL
+enable_so_response_length_ib_uverbs_ex_create_cq_resp_12889 response_length ib_uverbs_ex_create_cq_resp 0 12889 NULL
+enable_so_udp_uncompress_fndecl_12890 udp_uncompress fndecl 2 12890 NULL
+enable_so_max_response_pages_fndecl_12895 max_response_pages fndecl 0 12895 NULL
+enable_so_offset_ceph_dentry_info_12896 offset ceph_dentry_info 0 12896 NULL
+enable_so_early_init_dt_alloc_memory_arch_fndecl_12899 early_init_dt_alloc_memory_arch fndecl 2-1 12899 NULL
-+enable_so_dbgfs_sram_len_iwl_mvm_12900 dbgfs_sram_len iwl_mvm 0 12900 NULL
+enable_so_tool_db_read_fndecl_12902 tool_db_read fndecl 3 12902 NULL
+enable_so_ccw_cursor_fndecl_12903 ccw_cursor fndecl 4 12903 NULL
+enable_so_capinc_tty_write_fndecl_12904 capinc_tty_write fndecl 3 12904 NULL
@@ -158609,10 +157979,10 @@ index 0000000..9da833a
+enable_so_nilfs_sufile_delete_segment_usage_block_fndecl_12921 nilfs_sufile_delete_segment_usage_block fndecl 2 12921 NULL
+enable_so_qs_out_channels_hdspm_12922 qs_out_channels hdspm 0 12922 NULL
+enable_so_idetape_mtioctop_fndecl_12923 idetape_mtioctop fndecl 3 12923 NULL
-+enable_so_sh_irda_init_iobuf_fndecl_12924 sh_irda_init_iobuf fndecl 2 12924 NULL nohasharray
-+enable_so_i2400m_tx_stats_read_fndecl_12924 i2400m_tx_stats_read fndecl 3 12924 &enable_so_sh_irda_init_iobuf_fndecl_12924
++enable_so_sh_irda_init_iobuf_fndecl_12924 sh_irda_init_iobuf fndecl 2 12924 NULL
+enable_so_ath6kl_wmi_disconnect_cmd_fndecl_12926 ath6kl_wmi_disconnect_cmd fndecl 2 12926 NULL
-+enable_so_obufsize_sisusb_usb_data_12932 obufsize sisusb_usb_data 0 12932 NULL nohasharray
++enable_so_of_fdt_limit_memory_fndecl_12932 of_fdt_limit_memory fndecl 1 12932 NULL nohasharray
++enable_so_obufsize_sisusb_usb_data_12932 obufsize sisusb_usb_data 0 12932 &enable_so_of_fdt_limit_memory_fndecl_12932 nohasharray
+enable_so_mangle_content_len_fndecl_12932 mangle_content_len fndecl 2 12932 &enable_so_obufsize_sisusb_usb_data_12932 nohasharray
+enable_so_asymmetric_verify_fndecl_12932 asymmetric_verify fndecl 3 12932 &enable_so_mangle_content_len_fndecl_12932
+enable_so_ext4_split_extent_at_fndecl_12936 ext4_split_extent_at fndecl 4 12936 NULL
@@ -158635,7 +158005,7 @@ index 0000000..9da833a
+enable_so_clone_update_extent_map_fndecl_12984 clone_update_extent_map fndecl 4-5 12984 NULL nohasharray
+enable_so_newwin_mad_rmpp_recv_12984 newwin mad_rmpp_recv 0 12984 &enable_so_clone_update_extent_map_fndecl_12984
+enable_so_num_outbound_streams_sctp_inithdr_12987 num_outbound_streams sctp_inithdr 0 12987 NULL
-+enable_so_ql4xmaxqdepth_vardecl_ql4_os_c_12992 ql4xmaxqdepth vardecl_ql4_os.c 0 12992 NULL
++enable_so_rohm_i2c_burst_read_fndecl_12996 rohm_i2c_burst_read fndecl 4 12996 NULL
+enable_so_xdr_reserve_space_fndecl_12997 xdr_reserve_space fndecl 2 12997 NULL
+enable_so_end_file_extent_cluster_13001 end file_extent_cluster 0 13001 NULL
+enable_so_pm3fb_size_memory_fndecl_13002 pm3fb_size_memory fndecl 0 13002 NULL
@@ -158649,8 +158019,7 @@ index 0000000..9da833a
+enable_so_snd_nm256_capture_copy_fndecl_13021 snd_nm256_capture_copy fndecl 5 13021 NULL
+enable_so_do_mbind_fndecl_13022 do_mbind fndecl 2-1 13022 NULL
+enable_so_format_supported_num_intel_sdvo_connector_13024 format_supported_num intel_sdvo_connector 0 13024 NULL
-+enable_so___free_memory_core_fndecl_13029 __free_memory_core fndecl 0-1-2 13029 NULL nohasharray
-+enable_so_iwl_dbgfs_nic_temp_read_fndecl_13029 iwl_dbgfs_nic_temp_read fndecl 3 13029 &enable_so___free_memory_core_fndecl_13029
++enable_so___free_memory_core_fndecl_13029 __free_memory_core fndecl 0-1-2 13029 NULL
+enable_so_blk_queue_resize_tags_fndecl_13037 blk_queue_resize_tags fndecl 2 13037 NULL
+enable_so_copy_align_dma_device_13054 copy_align dma_device 0 13054 NULL
+enable_so_p9_fcall_alloc_fndecl_13055 p9_fcall_alloc fndecl 1 13055 NULL nohasharray
@@ -158674,6 +158043,7 @@ index 0000000..9da833a
+enable_so_set_wep_key_fndecl_13094 set_wep_key fndecl 4 13094 NULL
+enable_so___exclude_logged_extent_fndecl_13095 __exclude_logged_extent fndecl 3-2 13095 NULL
+enable_so_end_data_mm_struct_13099 end_data mm_struct 0 13099 NULL
++enable_so_ext4_xattr_security_set_fndecl_13101 ext4_xattr_security_set fndecl 5 13101 NULL
+enable_so_ocfs2_cow_sync_writeback_fndecl_13102 ocfs2_cow_sync_writeback fndecl 3-4 13102 NULL nohasharray
+enable_so_user_trans_num_acl_subject_label_13102 user_trans_num acl_subject_label 0 13102 &enable_so_ocfs2_cow_sync_writeback_fndecl_13102
+enable_so___qp_memcpy_from_queue_fndecl_13103 __qp_memcpy_from_queue fndecl 4-3 13103 NULL nohasharray
@@ -158694,12 +158064,13 @@ index 0000000..9da833a
+enable_so_max_response_packet_size_ec_response_get_protocol_info_13148 max_response_packet_size ec_response_get_protocol_info 0 13148 NULL
+enable_so_key_affs_ext_key_13149 key affs_ext_key 0 13149 NULL
+enable_so_calc_available_memory_size_fndecl_13151 calc_available_memory_size fndecl 0 13151 NULL
-+enable_so_last_load_s3c_hsotg_ep_13153 last_load s3c_hsotg_ep 0 13153 NULL
+enable_so_len_mtd_write_req_13154 len mtd_write_req 0 13154 NULL nohasharray
+enable_so_EraseUnitSize_erase_unit_header_t_13154 EraseUnitSize erase_unit_header_t 0 13154 &enable_so_len_mtd_write_req_13154
++enable_so_num_pg_nvm_id_group_13160 num_pg nvm_id_group 0 13160 NULL
+enable_so_inline_xattr_size_fndecl_13166 inline_xattr_size fndecl 0 13166 NULL
+enable_so_hpfs_add_to_dnode_fndecl_13167 hpfs_add_to_dnode fndecl 4-2 13167 NULL
-+enable_so_nouveau_compat_ioctl_fndecl_13186 nouveau_compat_ioctl fndecl 2 13186 NULL
++enable_so_len_rsv_13186 len rsv 0 13186 NULL nohasharray
++enable_so_nouveau_compat_ioctl_fndecl_13186 nouveau_compat_ioctl fndecl 2 13186 &enable_so_len_rsv_13186
+enable_so_blocksize_f2fs_sb_info_13191 blocksize f2fs_sb_info 0 13191 NULL
+enable_so_bsg_setup_queue_fndecl_13194 bsg_setup_queue fndecl 5 13194 NULL
+enable_so_generic_access_phys_fndecl_13197 generic_access_phys fndecl 2-4 13197 NULL
@@ -158729,7 +158100,7 @@ index 0000000..9da833a
+enable_so_maxid_scif_info_13259 maxid scif_info 0 13259 &enable_so_blocklen_bytes_drbg_core_13259
+enable_so_rsp_pay_size_qlcnic_bc_trans_13274 rsp_pay_size qlcnic_bc_trans 0 13274 NULL nohasharray
+enable_so_rx_len_acpi_ipmi_msg_13274 rx_len acpi_ipmi_msg 0 13274 &enable_so_rsp_pay_size_qlcnic_bc_trans_13274
-+enable_so_xfs_iomap_write_unwritten_fndecl_13278 xfs_iomap_write_unwritten fndecl 2-3 13278 NULL
++enable_so_xfs_iomap_write_unwritten_fndecl_13278 xfs_iomap_write_unwritten fndecl 3-2 13278 NULL
+enable_so_status_usb_iso_packet_descriptor_13287 status usb_iso_packet_descriptor 0 13287 NULL
+enable_so_num_bytes_sigma_fw_chunk_control_13289 num_bytes sigma_fw_chunk_control 0 13289 NULL
+enable_so_compress_file_range_fndecl_13295 compress_file_range fndecl 3-4 13295 NULL
@@ -158745,6 +158116,7 @@ index 0000000..9da833a
+enable_so_req_len_snic_req_info_13319 req_len snic_req_info 0 13319 &enable_so_token_size_iw_ioctl_description_13319
+enable_so_slhc_uncompress_fndecl_13322 slhc_uncompress fndecl 0-3 13322 NULL
+enable_so_skb_zerocopy_headlen_fndecl_13325 skb_zerocopy_headlen fndecl 0 13325 NULL
++enable_so_msi_check_msi_domain_ops_13329 msi_check msi_domain_ops 0 13329 NULL
+enable_so_csum_and_copy_from_iter_fndecl_13338 csum_and_copy_from_iter fndecl 2 13338 NULL
+enable_so_copy_buffer_fndecl_13339 copy_buffer fndecl 1-2-3 13339 NULL
+enable_so_brcmf_usb_dl_cmd_fndecl_13344 brcmf_usb_dl_cmd fndecl 4 13344 NULL
@@ -158791,13 +158163,11 @@ index 0000000..9da833a
+enable_so_di_nblocks_xfs_icdinode_13426 di_nblocks xfs_icdinode 0 13426 NULL
+enable_so_tb_path_alloc_fndecl_13427 tb_path_alloc fndecl 2 13427 NULL
+enable_so_get_origin_minimum_chunksize_fndecl_13432 get_origin_minimum_chunksize fndecl 0 13432 NULL
-+enable_so_nouveau_channel_prep_fndecl_13435 nouveau_channel_prep fndecl 4 13435 NULL
+enable_so_usbdev_lseek_fndecl_13441 usbdev_lseek fndecl 2 13441 NULL
-+enable_so_promote_fndecl_13442 promote fndecl 4-3 13442 NULL nohasharray
-+enable_so_mwifiex_memrw_write_fndecl_13442 mwifiex_memrw_write fndecl 3 13442 &enable_so_promote_fndecl_13442
++enable_so_promote_fndecl_13442 promote fndecl 4-3 13442 NULL
+enable_so_kvm_read_guest_phys_system_fndecl_13445 kvm_read_guest_phys_system fndecl 2-4 13445 NULL
+enable_so_nports_adapter_params_13446 nports adapter_params 0 13446 NULL
-+enable_so_vlan_mlx4_ib_tunnel_header_13451 vlan mlx4_ib_tunnel_header 0 13451 NULL
++enable_so_drvinfo_sz_rtl8xxxu_rx_desc_13448 drvinfo_sz rtl8xxxu_rx_desc 0 13448 NULL
+enable_so_fill_read_buf_fndecl_13455 fill_read_buf fndecl 0-2 13455 NULL
+enable_so_me_start_ocfs2_move_extents_13461 me_start ocfs2_move_extents 0 13461 NULL nohasharray
+enable_so_max_eq_mlx4_func_cap_13461 max_eq mlx4_func_cap 0 13461 &enable_so_me_start_ocfs2_move_extents_13461
@@ -158817,7 +158187,7 @@ index 0000000..9da833a
+enable_so_curchunk_len_drm_dp_sideband_msg_rx_13501 curchunk_len drm_dp_sideband_msg_rx 0 13501 NULL
+enable_so_sendpage_proto_ops_13505 sendpage proto_ops 0 13505 NULL nohasharray
+enable_so_hwtstamp_ioctl_fndecl_13505 hwtstamp_ioctl fndecl 0 13505 &enable_so_sendpage_proto_ops_13505
-+enable_so_btmrvl_hscmd_write_fndecl_13506 btmrvl_hscmd_write fndecl 3 13506 NULL
++enable_so_scif_vreadfrom_fndecl_13516 scif_vreadfrom fndecl 4-3 13516 NULL
+enable_so_max_channels_cmipci_13517 max_channels cmipci 0 13517 NULL nohasharray
+enable_so_len_unix_address_13517 len unix_address 0 13517 &enable_so_max_channels_cmipci_13517
+enable_so_max_out_size_ims_pcu_13527 max_out_size ims_pcu 0 13527 NULL
@@ -158836,9 +158206,12 @@ index 0000000..9da833a
+enable_so_ib_qib_qp_table_size_vardecl_qib_verbs_c_13559 ib_qib_qp_table_size vardecl_qib_verbs.c 0 13559 &enable_so___devcgroup_inode_permission_fndecl_13559
+enable_so_buf_len_vp702x_device_state_13562 buf_len vp702x_device_state 0 13562 NULL
+enable_so_capture_periodsize_rme96_13564 capture_periodsize rme96 0 13564 NULL
-+enable_so_edt_ft5x06_ts_readwrite_fndecl_13570 edt_ft5x06_ts_readwrite fndecl 2-4-0 13570 NULL
++enable_so_trusted_set_fndecl_13568 trusted_set fndecl 5 13568 NULL nohasharray
++enable_so_init_currently_empty_zone_fndecl_13568 init_currently_empty_zone fndecl 2 13568 &enable_so_trusted_set_fndecl_13568
++enable_so_edt_ft5x06_ts_readwrite_fndecl_13570 edt_ft5x06_ts_readwrite fndecl 2-4 13570 NULL
+enable_so_avc_tuner_dsd_dvb_t_fndecl_13571 avc_tuner_dsd_dvb_t fndecl 0 13571 NULL
-+enable_so_amdtp_stream_get_max_payload_fndecl_13574 amdtp_stream_get_max_payload fndecl 0 13574 NULL
++enable_so_pitch_drm_mode_create_dumb_13574 pitch drm_mode_create_dumb 0 13574 NULL nohasharray
++enable_so_amdtp_stream_get_max_payload_fndecl_13574 amdtp_stream_get_max_payload fndecl 0 13574 &enable_so_pitch_drm_mode_create_dumb_13574
+enable_so_irq_alloc_generic_chip_fndecl_13577 irq_alloc_generic_chip fndecl 2 13577 NULL
+enable_so_fd_do_prot_fill_fndecl_13583 fd_do_prot_fill fndecl 5-3 13583 NULL
+enable_so_pwr_fix_tsf_ps_read_fndecl_13584 pwr_fix_tsf_ps_read fndecl 3 13584 NULL
@@ -158849,13 +158222,11 @@ index 0000000..9da833a
+enable_so_pxa168_eth_change_mtu_fndecl_13596 pxa168_eth_change_mtu fndecl 2 13596 NULL nohasharray
+enable_so_sysctl_wmem_default_vardecl_13596 sysctl_wmem_default vardecl 0 13596 &enable_so_pxa168_eth_change_mtu_fndecl_13596
+enable_so_fb_x_vmw_fb_par_13597 fb_x vmw_fb_par 0 13597 NULL
-+enable_so_active_ahc_linux_device_13601 active ahc_linux_device 0 13601 NULL
+enable_so_size_drm_mm_node_13605 size drm_mm_node 0 13605 NULL
+enable_so_flowinfo_read_fndecl_13608 flowinfo_read fndecl 3 13608 NULL
+enable_so_id_pcap_subdev_13609 id pcap_subdev 0 13609 NULL
+enable_so_cipso_v4_map_cat_rbm_hton_fndecl_13611 cipso_v4_map_cat_rbm_hton fndecl 0 13611 NULL nohasharray
+enable_so_size_sm501_mem_13611 size sm501_mem 0 13611 &enable_so_cipso_v4_map_cat_rbm_hton_fndecl_13611
-+enable_so___alloc_pred_stack_fndecl_13612 __alloc_pred_stack fndecl 2 13612 NULL
+enable_so_nvoices_snd_seq_oss_reg_13613 nvoices snd_seq_oss_reg 0 13613 NULL
+enable_so_us122l_start_fndecl_13617 us122l_start fndecl 2-3 13617 NULL
+enable_so_softback_top_vardecl_fbcon_c_13621 softback_top vardecl_fbcon.c 0 13621 NULL nohasharray
@@ -158881,22 +158252,19 @@ index 0000000..9da833a
+enable_so_qpn_ib_ucm_req_13672 qpn ib_ucm_req 0 13672 NULL
+enable_so_length_rbd_img_request_13674 length rbd_img_request 0 13674 NULL
+enable_so_vsync_psb_pipe_13675 vsync psb_pipe 0 13675 NULL
-+enable_so_virtscsi_change_queue_depth_fndecl_13676 virtscsi_change_queue_depth fndecl 2 13676 NULL
-+enable_so_fixup_pmc551_fndecl_13679 fixup_pmc551 fndecl 0 13679 NULL nohasharray
-+enable_so_mpls_rt_alloc_fndecl_13679 mpls_rt_alloc fndecl 1 13679 &enable_so_fixup_pmc551_fndecl_13679
++enable_so_fixup_pmc551_fndecl_13679 fixup_pmc551 fndecl 0 13679 NULL
+enable_so_nfc_hci_send_cmd_async_fndecl_13680 nfc_hci_send_cmd_async fndecl 5 13680 NULL
+enable_so_receive_big_fndecl_13686 receive_big fndecl 5 13686 NULL
+enable_so_writing_osst_buffer_13689 writing osst_buffer 0 13689 NULL
-+enable_so_lo_hi_readq_fndecl_13693 lo_hi_readq fndecl 0 13693 NULL
+enable_so_w_align_bdisp_fmt_13694 w_align bdisp_fmt 0 13694 NULL
+enable_so_hpfs_free_sectors_fndecl_13696 hpfs_free_sectors fndecl 3 13696 NULL
-+enable_so_skb_size_qlcnic_host_rds_ring_13698 skb_size qlcnic_host_rds_ring 0 13698 NULL nohasharray
-+enable_so_hfi1_alloc_fast_reg_page_list_fndecl_13698 hfi1_alloc_fast_reg_page_list fndecl 2 13698 &enable_so_skb_size_qlcnic_host_rds_ring_13698
++enable_so_skb_size_qlcnic_host_rds_ring_13698 skb_size qlcnic_host_rds_ring 0 13698 NULL
+enable_so_resize_platform_label_table_fndecl_13711 resize_platform_label_table fndecl 2 13711 NULL
+enable_so_bos_desc_fndecl_13715 bos_desc fndecl 0 13715 NULL
+enable_so_valuelen_lo_extended_attribute_13722 valuelen_lo extended_attribute 0 13722 NULL
+enable_so_payload_len_pptp_gre_header_13724 payload_len pptp_gre_header 0 13724 NULL
+enable_so_wsm_buf_reserve_fndecl_13730 wsm_buf_reserve fndecl 2 13730 NULL
++enable_so_ocfs2_xattr_security_set_fndecl_13732 ocfs2_xattr_security_set fndecl 5 13732 NULL
+enable_so_channels_max_snd_soc_pcm_stream_13737 channels_max snd_soc_pcm_stream 0 13737 NULL nohasharray
+enable_so_bfad_iocmd_adapter_cfg_mode_fndecl_13737 bfad_iocmd_adapter_cfg_mode fndecl 0 13737 &enable_so_channels_max_snd_soc_pcm_stream_13737 nohasharray
+enable_so_mfd_add_device_fndecl_13737 mfd_add_device fndecl 6-2 13737 &enable_so_bfad_iocmd_adapter_cfg_mode_fndecl_13737
@@ -158905,7 +158273,8 @@ index 0000000..9da833a
+enable_so_pof_write_buffer_fndecl_13741 pof_write_buffer fndecl 0 13741 &enable_so_nr_segments_vscsiif_request_13741
+enable_so_len_tcf_em_nbyte_13742 len tcf_em_nbyte 0 13742 NULL
+enable_so_cipso_v4_genopt_fndecl_13743 cipso_v4_genopt fndecl 0 13743 NULL nohasharray
-+enable_so_write_pipe_ezusb_priv_13743 write_pipe ezusb_priv 0 13743 &enable_so_cipso_v4_genopt_fndecl_13743
++enable_so_write_pipe_ezusb_priv_13743 write_pipe ezusb_priv 0 13743 &enable_so_cipso_v4_genopt_fndecl_13743 nohasharray
++enable_so_regmap_ibt_write_fndecl_13743 regmap_ibt_write fndecl 3 13743 &enable_so_write_pipe_ezusb_priv_13743
+enable_so_level_guest_walker32_13749 level guest_walker32 0 13749 NULL
+enable_so_qlcnic_alloc_sds_rings_fndecl_13752 qlcnic_alloc_sds_rings fndecl 2 13752 NULL
+enable_so_compat_sys_recv_fndecl_13753 compat_sys_recv fndecl 3 13753 NULL
@@ -158942,9 +158311,9 @@ index 0000000..9da833a
+enable_so_seq_read_fndecl_13824 seq_read fndecl 3 13824 &enable_so_phys_pte_init_fndecl_13824
+enable_so_brcmf_sdio_firmware_callback_fndecl_13829 brcmf_sdio_firmware_callback fndecl 4 13829 NULL
+enable_so_ib_dma_map_sg_fndecl_13830 ib_dma_map_sg fndecl 0 13830 NULL
++enable_so_vmem_size_bnxt_ring_struct_13831 vmem_size bnxt_ring_struct 0 13831 NULL
+enable_so_logical_offset_btrfs_dio_private_13833 logical_offset btrfs_dio_private 0 13833 NULL
-+enable_so_acpi_os_get_root_pointer_fndecl_13835 acpi_os_get_root_pointer fndecl 0 13835 NULL nohasharray
-+enable_so_ieee80211_if_read_smps_fndecl_13835 ieee80211_if_read_smps fndecl 3 13835 &enable_so_acpi_os_get_root_pointer_fndecl_13835
++enable_so_acpi_os_get_root_pointer_fndecl_13835 acpi_os_get_root_pointer fndecl 0 13835 NULL
+enable_so_cypress_write_fndecl_13836 cypress_write fndecl 4 13836 NULL
+enable_so_ceph_fallocate_fndecl_13837 ceph_fallocate fndecl 4-3 13837 NULL
+enable_so_nr_vecs_biovec_slab_13838 nr_vecs biovec_slab 0 13838 NULL
@@ -158981,6 +158350,7 @@ index 0000000..9da833a
+enable_so_nla_append_fndecl_13971 nla_append fndecl 2 13971 NULL
+enable_so_ib_copy_to_udata_fndecl_13974 ib_copy_to_udata fndecl 3 13974 NULL
+enable_so_yres_panel_info_13976 yres panel_info 0 13976 NULL
++enable_so_fill_user_buffer_vb2_buf_ops_13979 fill_user_buffer vb2_buf_ops 0 13979 NULL
+enable_so_e_phnum_elf32_hdr_13980 e_phnum elf32_hdr 0 13980 NULL
+enable_so_isdn_tty_handleDLEdown_fndecl_13981 isdn_tty_handleDLEdown fndecl 0 13981 NULL
+enable_so_SyS_fgetxattr_fndecl_13984 SyS_fgetxattr fndecl 4 13984 NULL
@@ -158990,10 +158360,11 @@ index 0000000..9da833a
+enable_so_size_urb_list_13995 size urb_list 0 13995 NULL
+enable_so_i2400mu_notification_grok_fndecl_13997 i2400mu_notification_grok fndecl 3 13997 NULL
+enable_so_pnp_add_io_resource_fndecl_14000 pnp_add_io_resource fndecl 3-2 14000 NULL
-+enable_so_nilfs_read_super_root_block_fndecl_14003 nilfs_read_super_root_block fndecl 2 14003 NULL nohasharray
-+enable_so_wanted_disk_byte___prelim_ref_14003 wanted_disk_byte __prelim_ref 0 14003 &enable_so_nilfs_read_super_root_block_fndecl_14003 nohasharray
-+enable_so_blkno_xfs_da_state_blk_14003 blkno xfs_da_state_blk 0 14003 &enable_so_wanted_disk_byte___prelim_ref_14003 nohasharray
-+enable_so_i_len_xfs_log_iovec_14003 i_len xfs_log_iovec 0 14003 &enable_so_blkno_xfs_da_state_blk_14003
++enable_so_n_grants_vscsibk_pend_14001 n_grants vscsibk_pend 0 14001 NULL
++enable_so_blkno_xfs_da_state_blk_14003 blkno xfs_da_state_blk 0 14003 NULL nohasharray
++enable_so_i_len_xfs_log_iovec_14003 i_len xfs_log_iovec 0 14003 &enable_so_blkno_xfs_da_state_blk_14003 nohasharray
++enable_so_nilfs_read_super_root_block_fndecl_14003 nilfs_read_super_root_block fndecl 2 14003 &enable_so_i_len_xfs_log_iovec_14003 nohasharray
++enable_so_wanted_disk_byte___prelim_ref_14003 wanted_disk_byte __prelim_ref 0 14003 &enable_so_nilfs_read_super_root_block_fndecl_14003
+enable_so_buffer_top_vardecl_nm256_c_14008 buffer_top vardecl_nm256.c 0 14008 NULL
+enable_so_n_phy_mvs_chip_info_14009 n_phy mvs_chip_info 0 14009 NULL
+enable_so_ino_logfs_transaction_14011 ino logfs_transaction 0 14011 NULL nohasharray
@@ -159023,12 +158394,12 @@ index 0000000..9da833a
+enable_so_cyttsp_spi_write_block_data_fndecl_14068 cyttsp_spi_write_block_data fndecl 4 14068 NULL
+enable_so_error_async_submit_bio_14075 error async_submit_bio 0 14075 NULL
+enable_so_end_switchdev_vlan_dump_14086 end switchdev_vlan_dump 0 14086 NULL
++enable_so_regmap_ibt_gather_write_fndecl_14087 regmap_ibt_gather_write fndecl 5 14087 NULL
+enable_so_sh_msiof_dma_once_fndecl_14090 sh_msiof_dma_once fndecl 4 14090 NULL nohasharray
+enable_so_filemark_cnt_os_aux_s_14090 filemark_cnt os_aux_s 0 14090 &enable_so_sh_msiof_dma_once_fndecl_14090
+enable_so_phantom_major_vardecl_phantom_c_14093 phantom_major vardecl_phantom.c 0 14093 NULL
+enable_so_snd_compr_calc_avail_fndecl_14094 snd_compr_calc_avail fndecl 0 14094 NULL
+enable_so___ext4_handle_dirty_metadata_fndecl_14098 __ext4_handle_dirty_metadata fndecl 0 14098 NULL
-+enable_so_btmrvl_hscfgcmd_write_fndecl_14100 btmrvl_hscfgcmd_write fndecl 3 14100 NULL
+enable_so_data_len_vscsibk_pend_14106 data_len vscsibk_pend 0 14106 NULL
+enable_so_gue_gro_remcsum_fndecl_14109 gue_gro_remcsum fndecl 5-2 14109 NULL nohasharray
+enable_so_wil_write_file_wmi_fndecl_14109 wil_write_file_wmi fndecl 3 14109 &enable_so_gue_gro_remcsum_fndecl_14109
@@ -159040,8 +158411,7 @@ index 0000000..9da833a
+enable_so_size_mlx4_en_rx_ring_14125 size mlx4_en_rx_ring 0 14125 NULL
+enable_so_efd_count_ext4_free_data_14128 efd_count ext4_free_data 0 14128 NULL
+enable_so_i2400m_net_rx_fndecl_14129 i2400m_net_rx fndecl 5 14129 NULL
-+enable_so_size_uhid_input2_req_14140 size uhid_input2_req 0 14140 NULL nohasharray
-+enable_so_ieee80211_if_read_rc_rateidx_mask_5ghz_fndecl_14140 ieee80211_if_read_rc_rateidx_mask_5ghz fndecl 3 14140 &enable_so_size_uhid_input2_req_14140
++enable_so_size_uhid_input2_req_14140 size uhid_input2_req 0 14140 NULL
+enable_so_cros_ec_spi_receive_packet_fndecl_14142 cros_ec_spi_receive_packet fndecl 2 14142 NULL
+enable_so_dqi_entry_size_qtree_mem_dqinfo_14150 dqi_entry_size qtree_mem_dqinfo 0 14150 NULL
+enable_so_short_len_fat_ioctl_filldir_callback_14151 short_len fat_ioctl_filldir_callback 0 14151 NULL
@@ -159064,7 +158434,6 @@ index 0000000..9da833a
+enable_so_len_hv_multipage_buffer_14208 len hv_multipage_buffer 0 14208 NULL nohasharray
+enable_so_get_rx_fifo_content_fndecl_14208 get_rx_fifo_content fndecl 0 14208 &enable_so_len_hv_multipage_buffer_14208
+enable_so_remote_qpn_qib_qp_14212 remote_qpn qib_qp 0 14212 NULL
-+enable_so_num_ports_mlx4_func_cap_14214 num_ports mlx4_func_cap 0 14214 NULL
+enable_so_cmd_bounce_size_vmw_sw_context_14217 cmd_bounce_size vmw_sw_context 0 14217 NULL
+enable_so_num_gsm_mux_14221 num gsm_mux 0 14221 NULL
+enable_so_e1000_copybreak_fndecl_14223 e1000_copybreak fndecl 3 14223 NULL
@@ -159082,6 +158451,7 @@ index 0000000..9da833a
+enable_so_cy8ctmg110_read_regs_fndecl_14259 cy8ctmg110_read_regs fndecl 3 14259 NULL nohasharray
+enable_so_octeon_allocate_device_mem_fndecl_14259 octeon_allocate_device_mem fndecl 2 14259 &enable_so_cy8ctmg110_read_regs_fndecl_14259 nohasharray
+enable_so___wmi_send_fndecl_14259 __wmi_send fndecl 4 14259 &enable_so_octeon_allocate_device_mem_fndecl_14259
++enable_so_nr_blocks_msc_window_14262 nr_blocks msc_window 0 14262 NULL
+enable_so_size_drm_scatter_gather_14264 size drm_scatter_gather 0 14264 NULL
+enable_so_copy_from_buf_fndecl_14271 copy_from_buf fndecl 2-4 14271 NULL
+enable_so_afs_cell_create_fndecl_14273 afs_cell_create fndecl 2 14273 NULL
@@ -159121,12 +158491,11 @@ index 0000000..9da833a
+enable_so_max_tokens_iw_ioctl_description_14373 max_tokens iw_ioctl_description 0 14373 &enable_so_dm_bufio_get_fndecl_14373
+enable_so_nvme_trans_mode_page_create_fndecl_14375 nvme_trans_mode_page_create fndecl 7-4 14375 NULL
+enable_so_length_scsiif_request_segment_14376 length scsiif_request_segment 0 14376 NULL
-+enable_so_start_extent_map_14377 start extent_map 0 14377 NULL nohasharray
-+enable_so_ahd_linux_user_tagdepth_fndecl_14377 ahd_linux_user_tagdepth fndecl 0 14377 &enable_so_start_extent_map_14377
++enable_so_start_extent_map_14377 start extent_map 0 14377 NULL
+enable_so_tclass_flow_ocrdma_grh_14379 tclass_flow ocrdma_grh 0 14379 NULL
-+enable_so_rcname_read_fndecl_14380 rcname_read fndecl 3 14380 NULL
+enable_so_num_phys__sas_node_14384 num_phys _sas_node 0 14384 NULL
-+enable_so_word15_lpfc_mbx_read_config_14387 word15 lpfc_mbx_read_config 0 14387 NULL
++enable_so_blks_per_lun_nvm_dev_14387 blks_per_lun nvm_dev 0 14387 NULL nohasharray
++enable_so_word15_lpfc_mbx_read_config_14387 word15 lpfc_mbx_read_config 0 14387 &enable_so_blks_per_lun_nvm_dev_14387
+enable_so_dma_in_iguanair_14391 dma_in iguanair 0 14391 NULL
+enable_so_sisusbcon_scroll_area_fndecl_14392 sisusbcon_scroll_area fndecl 3-4 14392 NULL
+enable_so_run_delalloc_nocow_fndecl_14395 run_delalloc_nocow fndecl 3-4 14395 NULL
@@ -159140,7 +158509,6 @@ index 0000000..9da833a
+enable_so_rl_space_gfs2_rgrp_list_14412 rl_space gfs2_rgrp_list 0 14412 &enable_so_min_snd_interval_14412
+enable_so_num_channels_hsi_config_14414 num_channels hsi_config 0 14414 NULL
+enable_so_bigdirlen_adfs_bigdirentry_14420 bigdirlen adfs_bigdirentry 0 14420 NULL
-+enable_so_key_flags_read_fndecl_14424 key_flags_read fndecl 3 14424 NULL
+enable_so_snd_es1938_capture_copy_fndecl_14425 snd_es1938_capture_copy fndecl 5 14425 NULL
+enable_so_xlog_recover_process_one_iunlink_fndecl_14426 xlog_recover_process_one_iunlink fndecl 3-0-2 14426 NULL
+enable_so_up_cfg80211_dscp_exception_14433 up cfg80211_dscp_exception 0 14433 NULL
@@ -159162,6 +158530,7 @@ index 0000000..9da833a
+enable_so_rdmarc_entry_sz_mlx4_dev_cap_14475 rdmarc_entry_sz mlx4_dev_cap 0 14475 &enable_so_num_chn_netvsc_device_14475
+enable_so_groups_netlink_table_14476 groups netlink_table 0 14476 NULL
+enable_so_t1_change_mtu_fndecl_14478 t1_change_mtu fndecl 2 14478 NULL
++enable_so_len_nci_cmd_param_14480 len nci_cmd_param 0 14480 NULL
+enable_so_udp_setsockopt_fndecl_14482 udp_setsockopt fndecl 5 14482 NULL
+enable_so_rx_unit_if_sdio_card_14483 rx_unit if_sdio_card 0 14483 NULL nohasharray
+enable_so_compressed_smiapp_csi_data_format_14483 compressed smiapp_csi_data_format 0 14483 &enable_so_rx_unit_if_sdio_card_14483 nohasharray
@@ -159169,8 +158538,8 @@ index 0000000..9da833a
+enable_so_ntfs_perform_write_fndecl_14496 ntfs_perform_write fndecl 3-0 14496 NULL
+enable_so_btrfs_lookup_bio_sums_dio_fndecl_14498 btrfs_lookup_bio_sums_dio fndecl 4 14498 NULL
+enable_so_gsm_control_send_fndecl_14499 gsm_control_send fndecl 4 14499 NULL
-+enable_so_free_area_init_node_fndecl_14500 free_area_init_node fndecl 3 14500 NULL nohasharray
-+enable_so_bfad_iocmd_fcport_enable_fndecl_14500 bfad_iocmd_fcport_enable fndecl 0 14500 &enable_so_free_area_init_node_fndecl_14500
++enable_so_bfad_iocmd_fcport_enable_fndecl_14500 bfad_iocmd_fcport_enable fndecl 0 14500 NULL nohasharray
++enable_so_free_area_init_node_fndecl_14500 free_area_init_node fndecl 3 14500 &enable_so_bfad_iocmd_fcport_enable_fndecl_14500
+enable_so_selinux_inode_post_setxattr_fndecl_14502 selinux_inode_post_setxattr fndecl 4 14502 NULL
+enable_so_num_vq_mic_device_desc_14503 num_vq mic_device_desc 0 14503 NULL
+enable_so_bnad_q_num_adjust_fndecl_14512 bnad_q_num_adjust fndecl 2 14512 NULL
@@ -159186,8 +158555,7 @@ index 0000000..9da833a
+enable_so_word17_lpfc_mbx_read_config_14545 word17 lpfc_mbx_read_config 0 14545 &enable_so_density_scsi_tape_14545
+enable_so_snd_ftu_create_effect_switch_fndecl_14546 snd_ftu_create_effect_switch fndecl 3-2 14546 NULL
+enable_so_lsave_cnt_ubifs_info_14547 lsave_cnt ubifs_info 0 14547 NULL
-+enable_so_len_btrfsic_block_data_ctx_14548 len btrfsic_block_data_ctx 0 14548 NULL nohasharray
-+enable_so_dump_fh_il_ops_14548 dump_fh il_ops 0 14548 &enable_so_len_btrfsic_block_data_ctx_14548
++enable_so_len_btrfsic_block_data_ctx_14548 len btrfsic_block_data_ctx 0 14548 NULL
+enable_so___alloc_memory_core_early_fndecl_14550 __alloc_memory_core_early fndecl 3-2-4-5 14550 NULL nohasharray
+enable_so_bus_shift_altera_uart_platform_uart_14550 bus_shift altera_uart_platform_uart 0 14550 &enable_so___alloc_memory_core_early_fndecl_14550
+enable_so_rn_snamelen_nfsd4_rename_14552 rn_snamelen nfsd4_rename 0 14552 NULL
@@ -159200,8 +158568,8 @@ index 0000000..9da833a
+enable_so_acpi_io_base_intel_pmc_ipc_dev_14580 acpi_io_base intel_pmc_ipc_dev 0 14580 NULL
+enable_so_btrfs_wait_ordered_range_fndecl_14581 btrfs_wait_ordered_range fndecl 2-3 14581 NULL
+enable_so_cur_pos_tegra_slink_data_14583 cur_pos tegra_slink_data 0 14583 NULL
-+enable_so_ext2_xattr_trusted_set_fndecl_14586 ext2_xattr_trusted_set fndecl 4 14586 NULL nohasharray
-+enable_so_be_length_pnfs_block_extent_14586 be_length pnfs_block_extent 0 14586 &enable_so_ext2_xattr_trusted_set_fndecl_14586
++enable_so_mic_x100_load_command_line_fndecl_14585 mic_x100_load_command_line fndecl 0 14585 NULL
++enable_so_be_length_pnfs_block_extent_14586 be_length pnfs_block_extent 0 14586 NULL
+enable_so_fs_firstcg_efs_super_14587 fs_firstcg efs_super 0 14587 NULL
+enable_so_channel_spacing_adf4350_platform_data_14594 channel_spacing adf4350_platform_data 0 14594 NULL
+enable_so_link_pipe_fndecl_14595 link_pipe fndecl 3 14595 NULL
@@ -159226,6 +158594,7 @@ index 0000000..9da833a
+enable_so_wNdpOutAlignment_usb_cdc_ncm_ntb_parameters_14656 wNdpOutAlignment usb_cdc_ncm_ntb_parameters 0 14656 NULL
+enable_so_ep_usbip_header_basic_14659 ep usbip_header_basic 0 14659 NULL
+enable_so_interval_solo_enc_dev_14661 interval solo_enc_dev 0 14661 NULL
++enable_so___btrfs_qgroup_release_data_fndecl_14664 __btrfs_qgroup_release_data fndecl 2-3 14664 NULL
+enable_so_ext2_try_to_allocate_fndecl_14672 ext2_try_to_allocate fndecl 0-4 14672 NULL
+enable_so_sg_tablesize_usb_bus_14673 sg_tablesize usb_bus 0 14673 NULL
+enable_so_di_anextents_xfs_dinode_14674 di_anextents xfs_dinode 0 14674 NULL
@@ -159233,7 +158602,6 @@ index 0000000..9da833a
+enable_so_file_size_squashfs_reg_inode_14679 file_size squashfs_reg_inode 0 14679 NULL
+enable_so_x86_virt_bits_cpuinfo_x86_14680 x86_virt_bits cpuinfo_x86 0 14680 NULL
+enable_so_mtu_vnic_devcmd_notify_14682 mtu vnic_devcmd_notify 0 14682 NULL
-+enable_so_lpfc_idiag_cmd_get_fndecl_14683 lpfc_idiag_cmd_get fndecl 2 14683 NULL
+enable_so_rx_queue_entry_next_fndecl_14688 rx_queue_entry_next fndecl 0 14688 NULL nohasharray
+enable_so_stream_sctp_datahdr_14688 stream sctp_datahdr 0 14688 &enable_so_rx_queue_entry_next_fndecl_14688
+enable_so_ibmasm_new_command_fndecl_14689 ibmasm_new_command fndecl 2 14689 NULL
@@ -159248,6 +158616,7 @@ index 0000000..9da833a
+enable_so_sel_write_context_fndecl_14701 sel_write_context fndecl 3 14701 &enable_so___alloc_bootmem_low_node_fndecl_14701
+enable_so_set_extent_new_fndecl_14709 set_extent_new fndecl 3-2 14709 NULL
+enable_so_AdapterFibsSize_aac_init_14712 AdapterFibsSize aac_init 0 14712 NULL
++enable_so_jffs2_trusted_setxattr_fndecl_14716 jffs2_trusted_setxattr fndecl 5 14716 NULL
+enable_so_ftop_swregs_state_14719 ftop swregs_state 0 14719 NULL
+enable_so_cxgbi_device_portmap_create_fndecl_14720 cxgbi_device_portmap_create fndecl 3 14720 NULL
+enable_so_mmc_spi_data_do_fndecl_14728 mmc_spi_data_do fndecl 4 14728 NULL
@@ -159273,7 +158642,7 @@ index 0000000..9da833a
+enable_so_sg_read_fndecl_14804 sg_read fndecl 3 14804 NULL
+enable_so_sb_max_fwd_alloc_hpfs_sb_info_14807 sb_max_fwd_alloc hpfs_sb_info 0 14807 NULL
+enable_so_nr_sectors_fat_floppy_defaults_14809 nr_sectors fat_floppy_defaults 0 14809 NULL
-+enable_so_type_sctp_paramhdr_14810 type sctp_paramhdr 0 14810 NULL
++enable_so_wm8998_set_fll_fndecl_14815 wm8998_set_fll fndecl 5 14815 NULL
+enable_so_read_fn_xusb_udc_14819 read_fn xusb_udc 0 14819 NULL
+enable_so_fout_arizona_fll_14821 fout arizona_fll 0 14821 NULL
+enable_so_wDescriptorLength_hid_descriptor_14825 wDescriptorLength hid_descriptor 0 14825 NULL
@@ -159294,6 +158663,7 @@ index 0000000..9da833a
+enable_so_inocache_hashsize_jffs2_sb_info_14875 inocache_hashsize jffs2_sb_info 0 14875 NULL
+enable_so_submit_queues_vardecl_null_blk_c_14881 submit_queues vardecl_null_blk.c 0 14881 NULL
+enable_so_pg_first_page_collect_14888 pg_first page_collect 0 14888 NULL
++enable_so___vb2_get_done_vb_fndecl_14889 __vb2_get_done_vb fndecl 0 14889 NULL
+enable_so_invalidate_inode_pages2_range_fndecl_14896 invalidate_inode_pages2_range fndecl 0-3 14896 NULL
+enable_so_ebcnt_vardecl_pagetest_c_14897 ebcnt vardecl_pagetest.c 0 14897 NULL
+enable_so_crtc_vsync_end_drm_display_mode_14898 crtc_vsync_end drm_display_mode 0 14898 NULL
@@ -159310,8 +158680,7 @@ index 0000000..9da833a
+enable_so_fdt_path_offset_namelen_fndecl_14918 fdt_path_offset_namelen fndecl 0 14918 NULL
+enable_so_num_mic_vqconfig_14919 num mic_vqconfig 0 14919 NULL
+enable_so_tx_fifo_size_sh_msiof_spi_priv_14926 tx_fifo_size sh_msiof_spi_priv 0 14926 NULL nohasharray
-+enable_so_tower_read_fndecl_14926 tower_read fndecl 3 14926 &enable_so_tx_fifo_size_sh_msiof_spi_priv_14926 nohasharray
-+enable_so_enc_pools_add_pages_fndecl_14926 enc_pools_add_pages fndecl 1 14926 &enable_so_tower_read_fndecl_14926
++enable_so_tower_read_fndecl_14926 tower_read fndecl 3 14926 &enable_so_tx_fifo_size_sh_msiof_spi_priv_14926
+enable_so_e1000_frag_len_fndecl_14930 e1000_frag_len fndecl 0 14930 NULL
+enable_so_at25_bin_read_fndecl_14936 at25_bin_read fndecl 5-6 14936 NULL
+enable_so_get_allocated_memblock_reserved_regions_info_fndecl_14938 get_allocated_memblock_reserved_regions_info fndecl 0 14938 NULL nohasharray
@@ -159322,13 +158691,13 @@ index 0000000..9da833a
+enable_so_dump_smb_fndecl_14947 dump_smb fndecl 2 14947 NULL
+enable_so_tailout_ignore_xpnet_message_14949 tailout_ignore xpnet_message 0 14949 NULL
+enable_so_ulong_write_file_fndecl_14950 ulong_write_file fndecl 3 14950 NULL
-+enable_so_dvb_ca_en50221_io_ioctl_fndecl_14953 dvb_ca_en50221_io_ioctl fndecl 2 14953 NULL
++enable_so_msi_verify_entries_fndecl_14953 msi_verify_entries fndecl 0 14953 NULL nohasharray
++enable_so_dvb_ca_en50221_io_ioctl_fndecl_14953 dvb_ca_en50221_io_ioctl fndecl 2 14953 &enable_so_msi_verify_entries_fndecl_14953
+enable_so_osst_max_sg_segs_vardecl_osst_c_14954 osst_max_sg_segs vardecl_osst.c 0 14954 NULL
+enable_so_smiapp_write_no_quirk_fndecl_14958 smiapp_write_no_quirk fndecl 2 14958 NULL
+enable_so_dvb_net_eth_type_trans_fndecl_14972 dvb_net_eth_type_trans fndecl 0 14972 NULL
+enable_so_bop_lookup_nilfs_bmap_operations_14977 bop_lookup nilfs_bmap_operations 0 14977 NULL
+enable_so_l2cap_build_conf_req_fndecl_14978 l2cap_build_conf_req fndecl 0 14978 NULL
-+enable_so_iwl_dbgfs_rf_reset_read_fndecl_14979 iwl_dbgfs_rf_reset_read fndecl 3 14979 NULL
+enable_so_romfs_iget_fndecl_14980 romfs_iget fndecl 2 14980 NULL
+enable_so_fuse_read_update_size_fndecl_14982 fuse_read_update_size fndecl 2 14982 NULL
+enable_so_icv_len_ieee80211_key_conf_14983 icv_len ieee80211_key_conf 0 14983 NULL nohasharray
@@ -159337,7 +158706,8 @@ index 0000000..9da833a
+enable_so_device_config_dma_device_14988 device_config dma_device 0 14988 NULL
+enable_so_uhid_char_write_fndecl_14997 uhid_char_write fndecl 3 14997 NULL
+enable_so_read_vmcore_fndecl_14998 read_vmcore fndecl 3 14998 NULL
-+enable_so_vfio_pci_set_msi_trigger_fndecl_15000 vfio_pci_set_msi_trigger fndecl 4-3 15000 NULL
++enable_so_tx_len_atmel_uart_port_15000 tx_len atmel_uart_port 0 15000 NULL nohasharray
++enable_so_vfio_pci_set_msi_trigger_fndecl_15000 vfio_pci_set_msi_trigger fndecl 4-3 15000 &enable_so_tx_len_atmel_uart_port_15000
+enable_so_drbd_bm_words_fndecl_15003 drbd_bm_words fndecl 0 15003 NULL nohasharray
+enable_so_length_sge_ieee1212_15003 length sge_ieee1212 0 15003 &enable_so_drbd_bm_words_fndecl_15003
+enable_so_alloc_gtt_mem_fndecl_15005 alloc_gtt_mem fndecl 2 15005 NULL
@@ -159371,8 +158741,7 @@ index 0000000..9da833a
+enable_so_lpt_offs_bits_ubifs_info_15067 lpt_offs_bits ubifs_info 0 15067 &enable_so_ctrlbuf_dma_usbhid_device_15067
+enable_so_write_len_ddb_flashio_15069 write_len ddb_flashio 0 15069 NULL
+enable_so_saturation_sd_gl860_15076 saturation sd_gl860 0 15076 NULL
-+enable_so_xfs_rtcheck_range_fndecl_15077 xfs_rtcheck_range fndecl 3 15077 NULL nohasharray
-+enable_so_starting_offset_mpt2_diag_read_buffer_15077 starting_offset mpt2_diag_read_buffer 0 15077 &enable_so_xfs_rtcheck_range_fndecl_15077
++enable_so_xfs_rtcheck_range_fndecl_15077 xfs_rtcheck_range fndecl 3 15077 NULL
+enable_so_bm_words_bm_xfer_ctx_15081 bm_words bm_xfer_ctx 0 15081 NULL
+enable_so_start_send_fndecl_15083 start_send fndecl 3 15083 NULL
+enable_so_offs_ubifs_ref_node_15088 offs ubifs_ref_node 0 15088 NULL
@@ -159392,11 +158761,10 @@ index 0000000..9da833a
+enable_so_mid_get_vbt_data_r1_fndecl_15145 mid_get_vbt_data_r1 fndecl 2 15145 NULL
+enable_so_elem_size_snd_array_15155 elem_size snd_array 0 15155 NULL nohasharray
+enable_so_chaoskey_read_fndecl_15155 chaoskey_read fndecl 3 15155 &enable_so_elem_size_snd_array_15155
-+enable_so___fswab64_fndecl_15160 __fswab64 fndecl 0 15160 NULL
+enable_so_i_disk_sec_hpfs_inode_info_15165 i_disk_sec hpfs_inode_info 0 15165 NULL
+enable_so_ovl_dir_llseek_fndecl_15169 ovl_dir_llseek fndecl 2 15169 NULL
-+enable_so_frontswap_curr_pages_fndecl_15172 frontswap_curr_pages fndecl 0 15172 NULL nohasharray
-+enable_so_xfs_idata_realloc_fndecl_15172 xfs_idata_realloc fndecl 2 15172 &enable_so_frontswap_curr_pages_fndecl_15172
++enable_so_xfs_idata_realloc_fndecl_15172 xfs_idata_realloc fndecl 2 15172 NULL nohasharray
++enable_so_frontswap_curr_pages_fndecl_15172 frontswap_curr_pages fndecl 0 15172 &enable_so_xfs_idata_realloc_fndecl_15172
+enable_so_si_namelen_nfsd4_secinfo_15174 si_namelen nfsd4_secinfo 0 15174 NULL
+enable_so_perform_sglist_fndecl_15184 perform_sglist fndecl 3-6 15184 NULL
+enable_so_nr_pages_videobuf_dmabuf_15190 nr_pages videobuf_dmabuf 0 15190 NULL nohasharray
@@ -159404,7 +158772,6 @@ index 0000000..9da833a
+enable_so_sg_len_mmc_test_area_15192 sg_len mmc_test_area 0 15192 NULL
+enable_so_ucStateEntrySize__ATOM_PPLIB_POWERPLAYTABLE_15196 ucStateEntrySize _ATOM_PPLIB_POWERPLAYTABLE 0 15196 NULL
+enable_so_p9_client_write_fndecl_15200 p9_client_write fndecl 0 15200 NULL
-+enable_so_mwifiex_regrdwr_write_fndecl_15202 mwifiex_regrdwr_write fndecl 3 15202 NULL
+enable_so_size_nforce2_smbus_15203 size nforce2_smbus 0 15203 NULL
+enable_so_top_qxl_urect_15205 top qxl_urect 0 15205 NULL
+enable_so_simple_setattr_fndecl_15209 simple_setattr fndecl 0 15209 NULL nohasharray
@@ -159425,14 +158792,14 @@ index 0000000..9da833a
+enable_so_sb_rextsize_xfs_sb_15250 sb_rextsize xfs_sb 0 15250 NULL
+enable_so_ecryptfs_read_lower_page_segment_fndecl_15255 ecryptfs_read_lower_page_segment fndecl 4 15255 NULL
+enable_so_rmsg_size_hv_netvsc_packet_15256 rmsg_size hv_netvsc_packet 0 15256 NULL
-+enable_so_current_credit_fndecl_15260 current_credit fndecl 0 15260 NULL nohasharray
-+enable_so_dm_block_location_fndecl_15260 dm_block_location fndecl 0 15260 &enable_so_current_credit_fndecl_15260 nohasharray
-+enable_so_msb_mark_page_bad_fndecl_15260 msb_mark_page_bad fndecl 2 15260 &enable_so_dm_block_location_fndecl_15260
++enable_so_dm_block_location_fndecl_15260 dm_block_location fndecl 0 15260 NULL nohasharray
++enable_so_current_credit_fndecl_15260 current_credit fndecl 0 15260 &enable_so_dm_block_location_fndecl_15260 nohasharray
++enable_so_msb_mark_page_bad_fndecl_15260 msb_mark_page_bad fndecl 2 15260 &enable_so_current_credit_fndecl_15260
+enable_so_num_tx_queues_net_device_15263 num_tx_queues net_device 0 15263 NULL
+enable_so_writequeue_entry_complete_fndecl_15264 writequeue_entry_complete fndecl 2 15264 NULL
+enable_so_qce_import_common_fndecl_15267 qce_import_common fndecl 2 15267 NULL
+enable_so_la_peer_max_bio_size_meta_data_on_disk_15270 la_peer_max_bio_size meta_data_on_disk 0 15270 NULL
-+enable_so_bstr_printf_fndecl_15271 bstr_printf fndecl 0 15271 NULL
++enable_so_mdio_read_mdio_if_info_15272 mdio_read mdio_if_info 0 15272 NULL
+enable_so_recursive_scan_fndecl_15275 recursive_scan fndecl 5 15275 NULL
+enable_so_nsect_ide_taskfile_15283 nsect ide_taskfile 0 15283 NULL
+enable_so_srp_max_req_size_vardecl_ib_srpt_c_15291 srp_max_req_size vardecl_ib_srpt.c 0 15291 NULL nohasharray
@@ -159449,7 +158816,6 @@ index 0000000..9da833a
+enable_so_snd_pcm_plug_client_channels_buf_fndecl_15318 snd_pcm_plug_client_channels_buf fndecl 0-3 15318 NULL
+enable_so_hpfs_dir_lseek_fndecl_15324 hpfs_dir_lseek fndecl 2 15324 NULL nohasharray
+enable_so_h_vlan_proto_vlan_ethhdr_15324 h_vlan_proto vlan_ethhdr 0 15324 &enable_so_hpfs_dir_lseek_fndecl_15324
-+enable_so_ath10k_dbg_sta_write_addba_resp_fndecl_15326 ath10k_dbg_sta_write_addba_resp fndecl 3 15326 NULL
+enable_so_ehci_urb_dequeue_fndecl_15333 ehci_urb_dequeue fndecl 3 15333 NULL
+enable_so_dup_to_netobj_fndecl_15336 dup_to_netobj fndecl 3 15336 NULL
+enable_so_cifs_readdata_alloc_fndecl_15339 cifs_readdata_alloc fndecl 1 15339 NULL
@@ -159464,12 +158830,10 @@ index 0000000..9da833a
+enable_so_num_total_plane_drm_mode_config_15377 num_total_plane drm_mode_config 0 15377 NULL
+enable_so_size_affs_tail_15386 size affs_tail 0 15386 NULL
+enable_so_size_mtd_info_15393 size mtd_info 0 15393 NULL
-+enable_so_id_mic_device_15395 id mic_device 0 15395 NULL
+enable_so_rds_ib_ring_init_fndecl_15404 rds_ib_ring_init fndecl 2 15404 NULL
+enable_so_udf_bread_fndecl_15411 udf_bread fndecl 2 15411 NULL
+enable_so_pnp_alloc_fndecl_15414 pnp_alloc fndecl 1 15414 NULL
+enable_so_setup_buffering_fndecl_15419 setup_buffering fndecl 3 15419 NULL
-+enable_so_queues_read_fndecl_15422 queues_read fndecl 3 15422 NULL
+enable_so_logical_reada_extent_15426 logical reada_extent 0 15426 NULL
+enable_so_pwc_set_video_mode_fndecl_15427 pwc_set_video_mode fndecl 5 15427 NULL
+enable_so_size_cmd_header_15429 size cmd_header 0 15429 NULL
@@ -159480,7 +158844,6 @@ index 0000000..9da833a
+enable_so_callout_len_request_key_auth_15448 callout_len request_key_auth 0 15448 NULL nohasharray
+enable_so_smk_write_net6addr_fndecl_15448 smk_write_net6addr fndecl 3 15448 &enable_so_callout_len_request_key_auth_15448
+enable_so_code_page_dir_hpfs_spare_block_15449 code_page_dir hpfs_spare_block 0 15449 NULL
-+enable_so_codec_list_read_file_fndecl_15453 codec_list_read_file fndecl 3 15453 NULL
+enable_so_wdm_create_fndecl_15456 wdm_create fndecl 3 15456 NULL
+enable_so_rtsx_pci_write_ppbuf_fndecl_15464 rtsx_pci_write_ppbuf fndecl 0 15464 NULL
+enable_so_octeon_setup_iq_fndecl_15466 octeon_setup_iq fndecl 3 15466 NULL
@@ -159489,7 +158852,6 @@ index 0000000..9da833a
+enable_so_priv_size_iscsit_transport_15489 priv_size iscsit_transport 0 15489 NULL
+enable_so_nf_nat_sdp_port_fndecl_15490 nf_nat_sdp_port fndecl 2-7 15490 NULL
+enable_so_old_oblock_policy_result_15494 old_oblock policy_result 0 15494 NULL
-+enable_so_ath10k_fw_crash_dump_read_fndecl_15496 ath10k_fw_crash_dump_read fndecl 3 15496 NULL
+enable_so_cached_start_hfs_inode_info_15502 cached_start hfs_inode_info 0 15502 NULL
+enable_so_sys_rt_sigpending_fndecl_15506 sys_rt_sigpending fndecl 2 15506 NULL
+enable_so_size_videobuf_buffer_15508 size videobuf_buffer 0 15508 NULL
@@ -159499,12 +158861,11 @@ index 0000000..9da833a
+enable_so_wl1273_fm_get_tx_ctune_fndecl_15534 wl1273_fm_get_tx_ctune fndecl 0 15534 NULL
+enable_so_space_bits_ubifs_info_15538 space_bits ubifs_info 0 15538 NULL
+enable_so_hi_priority_depth_MPT3SAS_ADAPTER_15543 hi_priority_depth MPT3SAS_ADAPTER 0 15543 NULL
-+enable_so_genwqe_user_vmap_fndecl_15544 genwqe_user_vmap fndecl 4 15544 NULL nohasharray
-+enable_so_key_conf_hw_key_idx_read_fndecl_15544 key_conf_hw_key_idx_read fndecl 3 15544 &enable_so_genwqe_user_vmap_fndecl_15544
++enable_so_genwqe_user_vmap_fndecl_15544 genwqe_user_vmap fndecl 4 15544 NULL
+enable_so_index_btframe_15545 index btframe 0 15545 NULL
+enable_so_data_length_mts_transfer_context_15546 data_length mts_transfer_context 0 15546 NULL
-+enable_so_map_size_drm_amdgpu_gem_va_15550 map_size drm_amdgpu_gem_va 0 15550 NULL nohasharray
-+enable_so_il_dbgfs_channels_read_fndecl_15550 il_dbgfs_channels_read fndecl 3 15550 &enable_so_map_size_drm_amdgpu_gem_va_15550
++enable_so_map_size_drm_amdgpu_gem_va_15550 map_size drm_amdgpu_gem_va 0 15550 NULL
++enable_so_lowpan_xmit_fragment_fndecl_15552 lowpan_xmit_fragment fndecl 4-6 15552 NULL
+enable_so_ep_in_kingsun_cb_15553 ep_in kingsun_cb 0 15553 NULL
+enable_so_diff_usnic_uiom_reg_15554 diff usnic_uiom_reg 0 15554 NULL
+enable_so_video_buffer_size_vivid_dev_15556 video_buffer_size vivid_dev 0 15556 NULL
@@ -159513,7 +158874,6 @@ index 0000000..9da833a
+enable_so_swiotlb_late_init_with_tbl_fndecl_15566 swiotlb_late_init_with_tbl fndecl 2 15566 NULL nohasharray
+enable_so_push_frame_fndecl_15566 push_frame fndecl 2 15566 &enable_so_swiotlb_late_init_with_tbl_fndecl_15566
+enable_so_s_map2blk_adfs_sb_info_15569 s_map2blk adfs_sb_info 0 15569 NULL
-+enable_so_m_min_aptina_pll_limits_15576 m_min aptina_pll_limits 0 15576 NULL
+enable_so_acpi20_efi_15582 acpi20 efi 0 15582 NULL
+enable_so_NumTransferUnits_erase_unit_header_t_15585 NumTransferUnits erase_unit_header_t 0 15585 NULL
+enable_so___split_and_process_non_flush_fndecl_15587 __split_and_process_non_flush fndecl 0 15587 NULL nohasharray
@@ -159527,18 +158887,17 @@ index 0000000..9da833a
+enable_so_num_edbs_asd_seq_data_15621 num_edbs asd_seq_data 0 15621 NULL
+enable_so_ch_r_head_jsm_channel_15625 ch_r_head jsm_channel 0 15625 NULL
+enable_so_drm_addmap_core_fndecl_15627 drm_addmap_core fndecl 3-2 15627 NULL nohasharray
-+enable_so_nents_sg_table_15627 nents sg_table 0 15627 &enable_so_drm_addmap_core_fndecl_15627 nohasharray
-+enable_so_count_preds_fndecl_15627 count_preds fndecl 0 15627 &enable_so_nents_sg_table_15627
-+enable_so_i915_error_state_buf_init_fndecl_15630 i915_error_state_buf_init fndecl 4-3 15630 NULL
++enable_so_nents_sg_table_15627 nents sg_table 0 15627 &enable_so_drm_addmap_core_fndecl_15627
++enable_so_i915_error_state_buf_init_fndecl_15630 i915_error_state_buf_init fndecl 3 15630 NULL
+enable_so_mcs_wrap_mir_skb_fndecl_15633 mcs_wrap_mir_skb fndecl 0 15633 NULL
+enable_so_netlbl_domhsh_init_fndecl_15635 netlbl_domhsh_init fndecl 1 15635 NULL
+enable_so_end_bttv_vbi_fmt_15637 end bttv_vbi_fmt 0 15637 NULL nohasharray
+enable_so_SyS_pselect6_fndecl_15637 SyS_pselect6 fndecl 1 15637 &enable_so_end_bttv_vbi_fmt_15637
+enable_so_dma_in_redrat3_dev_15639 dma_in redrat3_dev 0 15639 NULL
+enable_so_akid_raw_issuer_size_x509_parse_context_15651 akid_raw_issuer_size x509_parse_context 0 15651 NULL
-+enable_so_mapped_vram_radeonfb_info_15654 mapped_vram radeonfb_info 0 15654 NULL nohasharray
-+enable_so_read_bytes_from_xdr_buf_fndecl_15654 read_bytes_from_xdr_buf fndecl 4-2 15654 &enable_so_mapped_vram_radeonfb_info_15654 nohasharray
-+enable_so_extra_msdu_prefix_len_lib80211_crypto_ops_15654 extra_msdu_prefix_len lib80211_crypto_ops 0 15654 &enable_so_read_bytes_from_xdr_buf_fndecl_15654
++enable_so_read_bytes_from_xdr_buf_fndecl_15654 read_bytes_from_xdr_buf fndecl 4-2 15654 NULL nohasharray
++enable_so_mapped_vram_radeonfb_info_15654 mapped_vram radeonfb_info 0 15654 &enable_so_read_bytes_from_xdr_buf_fndecl_15654 nohasharray
++enable_so_extra_msdu_prefix_len_lib80211_crypto_ops_15654 extra_msdu_prefix_len lib80211_crypto_ops 0 15654 &enable_so_mapped_vram_radeonfb_info_15654
+enable_so_kvm_pv_enable_async_pf_fndecl_15662 kvm_pv_enable_async_pf fndecl 2 15662 NULL
+enable_so_sb_rblocks_xfs_sb_15668 sb_rblocks xfs_sb 0 15668 NULL
+enable_so_SyS_poll_fndecl_15679 SyS_poll fndecl 2 15679 NULL
@@ -159548,8 +158907,7 @@ index 0000000..9da833a
+enable_so_iov_len_kvec_15702 iov_len kvec 0 15702 NULL nohasharray
+enable_so_context_alloc_fndecl_15702 context_alloc fndecl 3 15702 &enable_so_iov_len_kvec_15702
+enable_so_blk_rq_err_bytes_fndecl_15705 blk_rq_err_bytes fndecl 0 15705 NULL
-+enable_so_numa_scan_offset_mm_struct_15710 numa_scan_offset mm_struct 0 15710 NULL nohasharray
-+enable_so__iwl_dbgfs_tof_responder_params_write_fndecl_15710 _iwl_dbgfs_tof_responder_params_write fndecl 3 15710 &enable_so_numa_scan_offset_mm_struct_15710
++enable_so_numa_scan_offset_mm_struct_15710 numa_scan_offset mm_struct 0 15710 NULL
+enable_so_btrfs_chunk_sub_stripes_fndecl_15711 btrfs_chunk_sub_stripes fndecl 0 15711 NULL
+enable_so_ib_umem_page_count_fndecl_15714 ib_umem_page_count fndecl 0 15714 NULL
+enable_so_name_len_nilfs_dir_entry_15715 name_len nilfs_dir_entry 0 15715 NULL
@@ -159559,7 +158917,8 @@ index 0000000..9da833a
+enable_so_datafab_write_data_fndecl_15723 datafab_write_data fndecl 4 15723 NULL
+enable_so_fdt_set_name_fndecl_15724 fdt_set_name fndecl 2 15724 NULL
+enable_so_n_window_iwl_queue_15731 n_window iwl_queue 0 15731 NULL
-+enable_so_setup_boot_parameters_fndecl_15734 setup_boot_parameters fndecl 6-3-4-5 15734 NULL
++enable_so_setup_boot_parameters_fndecl_15734 setup_boot_parameters fndecl 5-6-3-4 15734 NULL
++enable_so_amdtp_am824_set_parameters_fndecl_15737 amdtp_am824_set_parameters fndecl 4-3 15737 NULL
+enable_so_lcd_height_atyfb_par_15743 lcd_height atyfb_par 0 15743 NULL
+enable_so_num_locks_dlm_migratable_lockres_15745 num_locks dlm_migratable_lockres 0 15745 NULL
+enable_so_hotfix_map_hpfs_spare_block_15748 hotfix_map hpfs_spare_block 0 15748 NULL
@@ -159578,7 +158937,7 @@ index 0000000..9da833a
+enable_so_btrfs_create_qgroup_fndecl_15772 btrfs_create_qgroup fndecl 3 15772 NULL
+enable_so_size_order_mesh_table_15774 size_order mesh_table 0 15774 NULL
+enable_so_kgdb_hex2mem_fndecl_15776 kgdb_hex2mem fndecl 3 15776 NULL
-+enable_so_rdma_read_chunk_lcl_fndecl_15778 rdma_read_chunk_lcl fndecl 7 15778 NULL nohasharray
++enable_so_rdma_read_chunk_lcl_fndecl_15778 rdma_read_chunk_lcl fndecl 7-8 15778 NULL nohasharray
+enable_so_ntfs_copy_from_user_iter_fndecl_15778 ntfs_copy_from_user_iter fndecl 5-3 15778 &enable_so_rdma_read_chunk_lcl_fndecl_15778
+enable_so_xfs_bmap_split_extent_at_fndecl_15780 xfs_bmap_split_extent_at fndecl 3 15780 NULL
+enable_so_PacketLength_wa_xfer_packet_status_len_hwaiso_15781 PacketLength wa_xfer_packet_status_len_hwaiso 0 15781 NULL
@@ -159593,8 +158952,7 @@ index 0000000..9da833a
+enable_so_datablob_hmac_verify_fndecl_15809 datablob_hmac_verify fndecl 4 15809 NULL
+enable_so_cache_read_fndecl_15813 cache_read fndecl 3 15813 NULL
+enable_so_length_idma64_desc_15822 length idma64_desc 0 15822 NULL
-+enable_so_n_match_sets_cfg80211_sched_scan_request_15823 n_match_sets cfg80211_sched_scan_request 0 15823 NULL nohasharray
-+enable_so_user_regset_copyout_fndecl_15823 user_regset_copyout fndecl 7 15823 &enable_so_n_match_sets_cfg80211_sched_scan_request_15823
++enable_so_user_regset_copyout_fndecl_15823 user_regset_copyout fndecl 7 15823 NULL
+enable_so_rsssize_pkd_fw_vi_cmd_15824 rsssize_pkd fw_vi_cmd 0 15824 NULL
+enable_so_word13_lpfc_mbx_read_config_15832 word13 lpfc_mbx_read_config 0 15832 NULL
+enable_so_ocfs2_read_blocks_fndecl_15834 ocfs2_read_blocks fndecl 0-2 15834 NULL
@@ -159640,7 +158998,7 @@ index 0000000..9da833a
+enable_so_ebt_buf_add_pad_fndecl_15958 ebt_buf_add_pad fndecl 0 15958 &enable_so_nr_rtc_mem_15958
+enable_so_data_dma_usb_acecad_15962 data_dma usb_acecad 0 15962 NULL
+enable_so_splice_pipe_to_pipe_fndecl_15964 splice_pipe_to_pipe fndecl 3 15964 NULL
-+enable_so_dai_list_read_file_fndecl_15966 dai_list_read_file fndecl 3 15966 NULL
++enable_so_scif_off_to_dma_addr_fndecl_15965 scif_off_to_dma_addr fndecl 0-2 15965 NULL
+enable_so_brcmf_bus_add_txhdrlen_fndecl_15969 brcmf_bus_add_txhdrlen fndecl 2 15969 NULL
+enable_so_ath6kl_wmi_beginscan_cmd_fndecl_15973 ath6kl_wmi_beginscan_cmd fndecl 8-2 15973 NULL
+enable_so_first_burst_iscsi_session_15974 first_burst iscsi_session 0 15974 NULL
@@ -159674,14 +159032,12 @@ index 0000000..9da833a
+enable_so_compat_sys_sendfile64_fndecl_16066 compat_sys_sendfile64 fndecl 4 16066 NULL nohasharray
+enable_so_set_parameters_fndecl_16066 set_parameters fndecl 8-7 16066 &enable_so_compat_sys_sendfile64_fndecl_16066
+enable_so_do_swap_page_fndecl_16068 do_swap_page fndecl 3 16068 NULL
-+enable_so_ht_print_chan_fndecl_16071 ht_print_chan fndecl 0 16071 NULL
+enable_so_max_rxd_qlcnic_adapter_16074 max_rxd qlcnic_adapter 0 16074 NULL
+enable_so_mgag200_ttm_tt_create_fndecl_16093 mgag200_ttm_tt_create fndecl 2 16093 NULL
+enable_so_pci_add_resource_offset_fndecl_16095 pci_add_resource_offset fndecl 3 16095 NULL
+enable_so_w_mode_size_16096 w mode_size 0 16096 NULL
+enable_so_param_len_mgmt_pending_cmd_16099 param_len mgmt_pending_cmd 0 16099 NULL
+enable_so_grow_dev_page_fndecl_16100 grow_dev_page fndecl 4-5-3 16100 NULL
-+enable_so_instances_minus_one_mxt_object_16107 instances_minus_one mxt_object 0 16107 NULL
+enable_so_find_extend_vma_fndecl_16110 find_extend_vma fndecl 2 16110 NULL
+enable_so_brcmf_usb_dl_send_bulk_fndecl_16113 brcmf_usb_dl_send_bulk fndecl 3 16113 NULL nohasharray
+enable_so_xillybus_llseek_fndecl_16113 xillybus_llseek fndecl 2 16113 &enable_so_brcmf_usb_dl_send_bulk_fndecl_16113
@@ -159694,8 +159050,8 @@ index 0000000..9da833a
+enable_so_hci_req_add_ev_fndecl_16136 hci_req_add_ev fndecl 3 16136 NULL
+enable_so_port_length_c67x00_td_16141 port_length c67x00_td 0 16141 NULL nohasharray
+enable_so_fanout_set_data_ebpf_fndecl_16141 fanout_set_data_ebpf fndecl 3 16141 &enable_so_port_length_c67x00_td_16141
-+enable_so_get_partial_shdma_ops_16144 get_partial shdma_ops 0 16144 NULL
+enable_so_samples_per_line_v4l2_vbi_format_16148 samples_per_line v4l2_vbi_format 0 16148 NULL
++enable_so_vlan_tag_eth_fast_path_rx_reg_cqe_16155 vlan_tag eth_fast_path_rx_reg_cqe 0 16155 NULL
+enable_so_max_packet_length_mv_dqh_16157 max_packet_length mv_dqh 0 16157 NULL
+enable_so_beep_amp_via_spec_16168 beep_amp via_spec 0 16168 NULL
+enable_so_read_for_csum_fndecl_16170 read_for_csum fndecl 3-2 16170 NULL
@@ -159714,7 +159070,6 @@ index 0000000..9da833a
+enable_so_blksize_mtd_blktrans_ops_16221 blksize mtd_blktrans_ops 0 16221 NULL nohasharray
+enable_so_rose_create_fndecl_16221 rose_create fndecl 3 16221 &enable_so_blksize_mtd_blktrans_ops_16221 nohasharray
+enable_so_sys_fgetxattr_fndecl_16221 sys_fgetxattr fndecl 4 16221 &enable_so_rose_create_fndecl_16221
-+enable_so_port_hdspm_16225 port hdspm 0 16225 NULL
+enable_so_mmio_vardecl_via_wdt_c_16227 mmio vardecl_via_wdt.c 0 16227 NULL
+enable_so_m_in_maxlevels_xfs_mount_16231 m_in_maxlevels xfs_mount 0 16231 NULL nohasharray
+enable_so_bfad_iocmd_port_reset_stats_fndecl_16231 bfad_iocmd_port_reset_stats fndecl 0 16231 &enable_so_m_in_maxlevels_xfs_mount_16231
@@ -159751,11 +159106,11 @@ index 0000000..9da833a
+enable_so_l2tp_session_create_fndecl_16341 l2tp_session_create fndecl 1 16341 NULL
+enable_so_sys_dup2_fndecl_16343 sys_dup2 fndecl 2 16343 NULL nohasharray
+enable_so_max_vfs_be_resources_16343 max_vfs be_resources 0 16343 &enable_so_sys_dup2_fndecl_16343
++enable_so_set_record_extent_bits_fndecl_16345 set_record_extent_bits fndecl 0-3-2 16345 NULL
+enable_so_fuse_dir_compat_ioctl_fndecl_16346 fuse_dir_compat_ioctl fndecl 2 16346 NULL
+enable_so_channels_snd_emu10k1_fx8010_pcm_16368 channels snd_emu10k1_fx8010_pcm 0 16368 NULL
+enable_so_udf_get_pblock_virt15_fndecl_16373 udf_get_pblock_virt15 fndecl 4 16373 NULL
-+enable_so_help_fndecl_16375 help fndecl 3-5 16375 NULL nohasharray
-+enable_so_ath9k_debugfs_read_buf_fndecl_16375 ath9k_debugfs_read_buf fndecl 3 16375 &enable_so_help_fndecl_16375
++enable_so_help_fndecl_16375 help fndecl 3-5 16375 NULL
+enable_so_len_iwl_mvm_dump_desc_16383 len iwl_mvm_dump_desc 0 16383 NULL
+enable_so_zd_mac_preinit_hw_fndecl_16386 zd_mac_preinit_hw fndecl 0 16386 NULL
+enable_so_sr_set_blocklength_fndecl_16390 sr_set_blocklength fndecl 2 16390 NULL
@@ -159764,7 +159119,6 @@ index 0000000..9da833a
+enable_so_set_pio_mode_fndecl_16395 set_pio_mode fndecl 2 16395 NULL nohasharray
+enable_so_ip_options_get_alloc_fndecl_16395 ip_options_get_alloc fndecl 1 16395 &enable_so_set_pio_mode_fndecl_16395 nohasharray
+enable_so_pci_map_page_fndecl_16395 pci_map_page fndecl 0 16395 &enable_so_ip_options_get_alloc_fndecl_16395
-+enable_so_rt2x00debug_read_queue_stats_fndecl_16396 rt2x00debug_read_queue_stats fndecl 3 16396 NULL
+enable_so_SYSC_setgroups_fndecl_16397 SYSC_setgroups fndecl 1 16397 NULL
+enable_so___logfs_seek_data_fndecl_16398 __logfs_seek_data fndecl 2-0 16398 NULL
+enable_so_usbat_execute_command_fndecl_16400 usbat_execute_command fndecl 3 16400 NULL
@@ -159776,6 +159130,7 @@ index 0000000..9da833a
+enable_so_bcnt_aoeif_16414 bcnt aoeif 0 16414 NULL
+enable_so_n_sectors_hpfs_super_block_16421 n_sectors hpfs_super_block 0 16421 NULL
+enable_so_bNrInPins_uac_selector_unit_descriptor_16423 bNrInPins uac_selector_unit_descriptor 0 16423 NULL
++enable_so_gem_allocate_guc_obj_fndecl_16428 gem_allocate_guc_obj fndecl 2 16428 NULL
+enable_so_numa_emulation_fndecl_16441 numa_emulation fndecl 2 16441 NULL
+enable_so_ep_in_usbtest_info_16442 ep_in usbtest_info 0 16442 NULL
+enable_so_batadv_bla_answer_request_fndecl_16443 batadv_bla_answer_request fndecl 3 16443 NULL nohasharray
@@ -159787,10 +159142,12 @@ index 0000000..9da833a
+enable_so_frame_size_au0828_dev_16447 frame_size au0828_dev 0 16447 NULL
+enable_so_wp_page_copy_fndecl_16450 wp_page_copy fndecl 3 16450 NULL
+enable_so_sdhci_alloc_host_fndecl_16454 sdhci_alloc_host fndecl 2 16454 NULL
++enable_so_sec_per_pg_nvm_dev_16472 sec_per_pg nvm_dev 0 16472 NULL
+enable_so_prism2_change_mtu_fndecl_16473 prism2_change_mtu fndecl 2 16473 NULL
+enable_so_m_sectbb_log_xfs_mount_16477 m_sectbb_log xfs_mount 0 16477 NULL nohasharray
+enable_so_nfs_proc_symlink_fndecl_16477 nfs_proc_symlink fndecl 4 16477 &enable_so_m_sectbb_log_xfs_mount_16477
+enable_so_nilfs_iget_fndecl_16478 nilfs_iget fndecl 3 16478 NULL
++enable_so_nvme_nvm_get_bb_tbl_fndecl_16482 nvme_nvm_get_bb_tbl fndecl 3 16482 NULL
+enable_so_msg_count_amd8111e_rx_dr_16493 msg_count amd8111e_rx_dr 0 16493 NULL
+enable_so_fc_plogi_x_build_fndecl_16495 fc_plogi_x_build fndecl 8 16495 NULL
+enable_so_blksz_fw_dl_mwifiex_pcie_device_16498 blksz_fw_dl mwifiex_pcie_device 0 16498 NULL nohasharray
@@ -159803,11 +159160,11 @@ index 0000000..9da833a
+enable_so_xb_suballoc_loc_ocfs2_xattr_block_16523 xb_suballoc_loc ocfs2_xattr_block 0 16523 NULL
+enable_so_io_throttle_count_vnic_snic_config_16529 io_throttle_count vnic_snic_config 0 16529 NULL
+enable_so_comm_size_perf_comm_event_16533 comm_size perf_comm_event 0 16533 NULL
-+enable_so_ath10k_read_htt_stats_mask_fndecl_16534 ath10k_read_htt_stats_mask fndecl 3 16534 NULL
+enable_so_lpt_lebs_ubifs_info_16535 lpt_lebs ubifs_info 0 16535 NULL
+enable_so_smk_read_mapped_fndecl_16537 smk_read_mapped fndecl 3 16537 NULL
+enable_so_tmds_register_read_bytes_fndecl_16541 tmds_register_read_bytes fndecl 3 16541 NULL
+enable_so_MaxSimpleVolumes_aac_get_container_count_resp_16542 MaxSimpleVolumes aac_get_container_count_resp 0 16542 NULL
++enable_so_mlxsw_sp_port_change_mtu_fndecl_16550 mlxsw_sp_port_change_mtu fndecl 2 16550 NULL
+enable_so_max_mthca_srq_16551 max mthca_srq 0 16551 NULL
+enable_so_max_srq_sz_mlx4_dev_cap_16554 max_srq_sz mlx4_dev_cap 0 16554 NULL
+enable_so_groups_alloc_fndecl_16557 groups_alloc fndecl 1 16557 NULL
@@ -159815,7 +159172,8 @@ index 0000000..9da833a
+enable_so_cramfs_uncompress_block_fndecl_16569 cramfs_uncompress_block fndecl 4-2 16569 NULL
+enable_so___mei_cl_send_fndecl_16571 __mei_cl_send fndecl 3 16571 NULL
+enable_so_n_barrier_cbs_vardecl_rcutorture_c_16575 n_barrier_cbs vardecl_rcutorture.c 0 16575 NULL
-+enable_so_descriptor_elements_timb_dma_platform_data_channel_16581 descriptor_elements timb_dma_platform_data_channel 0 16581 NULL
++enable_so_nfs4_xattr_set_nfs4_label_fndecl_16581 nfs4_xattr_set_nfs4_label fndecl 5 16581 NULL nohasharray
++enable_so_descriptor_elements_timb_dma_platform_data_channel_16581 descriptor_elements timb_dma_platform_data_channel 0 16581 &enable_so_nfs4_xattr_set_nfs4_label_fndecl_16581
+enable_so_n_phy_pm8001_chip_info_16585 n_phy pm8001_chip_info 0 16585 NULL
+enable_so_len_atmel_priv_ioctl_16592 len atmel_priv_ioctl 0 16592 NULL
+enable_so_ino_logfs_block_16599 ino logfs_block 0 16599 NULL
@@ -159823,12 +159181,10 @@ index 0000000..9da833a
+enable_so_ext4_group_extend_fndecl_16613 ext4_group_extend fndecl 3 16613 NULL
+enable_so_coda_upcall_fndecl_16614 coda_upcall fndecl 2 16614 NULL
+enable_so_agf_freeblks_xfs_agf_16620 agf_freeblks xfs_agf 0 16620 NULL
-+enable_so_amdgpu_ttm_gtt_read_fndecl_16621 amdgpu_ttm_gtt_read fndecl 3 16621 NULL
+enable_so_ceph_fsync_fndecl_16625 ceph_fsync fndecl 2-3 16625 NULL
+enable_so_len_t4_cqe_16627 len t4_cqe 0 16627 NULL
+enable_so_ext_tree_remove_fndecl_16629 ext_tree_remove fndecl 3-4 16629 NULL nohasharray
+enable_so_uc_outSize_upc_req_16629 uc_outSize upc_req 0 16629 &enable_so_ext_tree_remove_fndecl_16629
-+enable_so_fault_inject_write_fndecl_16637 fault_inject_write fndecl 3 16637 NULL
+enable_so_crtc_hsync_start_drm_display_mode_16643 crtc_hsync_start drm_display_mode 0 16643 NULL
+enable_so_svc_pool_map_init_pernode_fndecl_16648 svc_pool_map_init_pernode fndecl 0 16648 NULL
+enable_so_nfc_hci_allocate_device_fndecl_16649 nfc_hci_allocate_device fndecl 8-6 16649 NULL
@@ -159848,8 +159204,7 @@ index 0000000..9da833a
+enable_so___alloc_objio_seg_fndecl_16688 __alloc_objio_seg fndecl 1 16688 NULL nohasharray
+enable_so_cons_read_buffer_16688 cons read_buffer 0 16688 &enable_so___alloc_objio_seg_fndecl_16688
+enable_so_jffs2_scan_xref_node_fndecl_16692 jffs2_scan_xref_node fndecl 4 16692 NULL
-+enable_so_size_loaded_s3c_hsotg_ep_16693 size_loaded s3c_hsotg_ep 0 16693 NULL nohasharray
-+enable_so_batadv_check_unicast_ttvn_fndecl_16693 batadv_check_unicast_ttvn fndecl 3 16693 &enable_so_size_loaded_s3c_hsotg_ep_16693
++enable_so_batadv_check_unicast_ttvn_fndecl_16693 batadv_check_unicast_ttvn fndecl 3 16693 NULL
+enable_so_efx_ef10_pci_sriov_enable_fndecl_16694 efx_ef10_pci_sriov_enable fndecl 2 16694 NULL
+enable_so_llcp_tlv_miux_fndecl_16699 llcp_tlv_miux fndecl 0 16699 NULL
+enable_so_ad714x_spi_read_fndecl_16700 ad714x_spi_read fndecl 4 16700 NULL
@@ -159871,7 +159226,6 @@ index 0000000..9da833a
+enable_so_lib80211_wep_encrypt_fndecl_16752 lib80211_wep_encrypt fndecl 2 16752 NULL
+enable_so_skb_pull_rcsum_fndecl_16757 skb_pull_rcsum fndecl 2 16757 NULL
+enable_so_discard_next_dnode_fndecl_16758 discard_next_dnode fndecl 2 16758 NULL
-+enable_so_cpu_msix_table_sz_MPT2SAS_ADAPTER_16760 cpu_msix_table_sz MPT2SAS_ADAPTER 0 16760 NULL
+enable_so___vfs_write_fndecl_16765 __vfs_write fndecl 0-3 16765 NULL
+enable_so___blk_end_request_all_fndecl_16766 __blk_end_request_all fndecl 2 16766 NULL
+enable_so_cluster_vardecl_pd_c_16770 cluster vardecl_pd.c 0 16770 NULL nohasharray
@@ -159888,29 +159242,28 @@ index 0000000..9da833a
+enable_so_iscsit_build_text_rsp_fndecl_16784 iscsit_build_text_rsp fndecl 0 16784 &enable_so_max_iu_len_srp_target_port_16784 nohasharray
+enable_so_num_pfns_virtio_balloon_16784 num_pfns virtio_balloon 0 16784 &enable_so_iscsit_build_text_rsp_fndecl_16784
+enable_so_get_string_fndecl_16789 get_string fndecl 0 16789 NULL
-+enable_so_data_in_size_mpt2_ioctl_command_16804 data_in_size mpt2_ioctl_command 0 16804 NULL
+enable_so_batch_shrinker_16806 batch shrinker 0 16806 NULL
+enable_so_spu_subctxt_cnt_qib_user_info_16810 spu_subctxt_cnt qib_user_info 0 16810 NULL nohasharray
+enable_so_iscsit_map_iovec_fndecl_16810 iscsit_map_iovec fndecl 4-3-0 16810 &enable_so_spu_subctxt_cnt_qib_user_info_16810
+enable_so_diva_xdi_read_fndecl_16814 diva_xdi_read fndecl 0 16814 NULL
++enable_so_csecs_nvm_id_group_16817 csecs nvm_id_group 0 16817 NULL
+enable_so_offset_btrfs_disk_key_16819 offset btrfs_disk_key 0 16819 NULL
+enable_so_hfs_cat_build_record_fndecl_16823 hfs_cat_build_record fndecl 2 16823 NULL nohasharray
+enable_so_vxlan_gro_remcsum_fndecl_16823 vxlan_gro_remcsum fndecl 5-4-2 16823 &enable_so_hfs_cat_build_record_fndecl_16823
+enable_so_count_range_bits_fndecl_16830 count_range_bits fndecl 0-3 16830 NULL
+enable_so_audit_send_reply_fndecl_16835 audit_send_reply fndecl 7 16835 NULL
+enable_so_nr_p2m_frames_start_info_16837 nr_p2m_frames start_info 0 16837 NULL
-+enable_so_max_gen_ptrs_vardecl_net_namespace_c_16838 max_gen_ptrs vardecl_net_namespace.c 0 16838 NULL
+enable_so_alignment_ubi_mkvol_req_16842 alignment ubi_mkvol_req 0 16842 NULL nohasharray
+enable_so_execute_tuning_mmc_host_ops_16842 execute_tuning mmc_host_ops 0 16842 &enable_so_alignment_ubi_mkvol_req_16842 nohasharray
+enable_so_esrt_data_size_vardecl_esrt_c_16842 esrt_data_size vardecl_esrt.c 0 16842 &enable_so_execute_tuning_mmc_host_ops_16842
+enable_so_tx_headroom_nfc_digital_dev_16844 tx_headroom nfc_digital_dev 0 16844 NULL
+enable_so_ccp_do_cmac_update_fndecl_16848 ccp_do_cmac_update fndecl 2 16848 NULL
+enable_so_base_jfs_log_16858 base jfs_log 0 16858 NULL
-+enable_so_ieee80211_if_read_dot11MeshHWMPactivePathTimeout_fndecl_16859 ieee80211_if_read_dot11MeshHWMPactivePathTimeout fndecl 3 16859 NULL
+enable_so_radeon_bo_create_fndecl_16863 radeon_bo_create fndecl 2 16863 NULL
+enable_so_no_channels_ltr501_chip_info_16866 no_channels ltr501_chip_info 0 16866 NULL nohasharray
+enable_so_cnic_alloc_new_id_fndecl_16866 cnic_alloc_new_id fndecl 0 16866 &enable_so_no_channels_ltr501_chip_info_16866
+enable_so_drm_property_create_blob_fndecl_16869 drm_property_create_blob fndecl 2 16869 NULL
++enable_so_len_snd_fw_async_midi_port_16875 len snd_fw_async_midi_port 0 16875 NULL
+enable_so_size_nvs_page_16880 size nvs_page 0 16880 NULL
+enable_so_cik_get_csb_size_fndecl_16882 cik_get_csb_size fndecl 0 16882 NULL
+enable_so__ore_add_stripe_unit_fndecl_16884 _ore_add_stripe_unit fndecl 3-6 16884 NULL nohasharray
@@ -159918,26 +159271,29 @@ index 0000000..9da833a
+enable_so_from_offset_xt_string_info_16886 from_offset xt_string_info 0 16886 NULL nohasharray
+enable_so_dma_buf_size_ddb_output_16886 dma_buf_size ddb_output 0 16886 &enable_so_from_offset_xt_string_info_16886
+enable_so_sl_change_mtu_fndecl_16887 sl_change_mtu fndecl 2 16887 NULL
-+enable_so_register_sound_special_device_fndecl_16891 register_sound_special_device fndecl 2 16891 NULL nohasharray
-+enable_so_audmux_read_file_fndecl_16891 audmux_read_file fndecl 3 16891 &enable_so_register_sound_special_device_fndecl_16891
++enable_so_register_sound_special_device_fndecl_16891 register_sound_special_device fndecl 2 16891 NULL
+enable_so_buf_sz_ath10k_pci_pipe_16896 buf_sz ath10k_pci_pipe 0 16896 NULL
+enable_so_ncbflooders_vardecl_rcutorture_c_16899 ncbflooders vardecl_rcutorture.c 0 16899 NULL
+enable_so_smk_write_load_self_fndecl_16901 smk_write_load_self fndecl 3 16901 NULL
+enable_so_cqe_size_mlx4_caps_16902 cqe_size mlx4_caps 0 16902 NULL
+enable_so_integrity_digsig_verify_fndecl_16903 integrity_digsig_verify fndecl 3 16903 NULL
-+enable_so_msi2500_ctrl_msg_fndecl_16907 msi2500_ctrl_msg fndecl 0 16907 NULL
++enable_so_target_unpopulated_balloon_stats_16907 target_unpopulated balloon_stats 0 16907 NULL nohasharray
++enable_so_msi2500_ctrl_msg_fndecl_16907 msi2500_ctrl_msg fndecl 0 16907 &enable_so_target_unpopulated_balloon_stats_16907
+enable_so_n_ai_urbs_usbduxsigma_private_16912 n_ai_urbs usbduxsigma_private 0 16912 NULL
+enable_so_tx_ring_order_vardecl_main_c_16915 tx_ring_order vardecl_main.c 0 16915 NULL
+enable_so_fsnotify_fndecl_16916 fsnotify fndecl 0 16916 NULL nohasharray
+enable_so_idx_mxser_board_16916 idx mxser_board 0 16916 &enable_so_fsnotify_fndecl_16916
++enable_so_geneve_build_header_fndecl_16917 geneve_build_header fndecl 4 16917 NULL
+enable_so_bpf_program_num_elem_xt_bpf_info_16920 bpf_program_num_elem xt_bpf_info 0 16920 NULL
+enable_so_cont_size_rock_state_16925 cont_size rock_state 0 16925 NULL
+enable_so_snd_rawmidi_transmit_fndecl_16928 snd_rawmidi_transmit fndecl 0-3 16928 NULL
++enable_so_rocker_group_l2_fan_out_fndecl_16932 rocker_group_l2_fan_out fndecl 4 16932 NULL
+enable_so_sys_mbind_fndecl_16933 sys_mbind fndecl 2-1-5 16933 NULL
+enable_so_size_intel_ringbuffer_16937 size intel_ringbuffer 0 16937 NULL
+enable_so_len_t3_cqe_16946 len t3_cqe 0 16946 NULL
+enable_so_vidioc_dqbuf_fndecl_16948 vidioc_dqbuf fndecl 0 16948 NULL
-+enable_so_ath10k_wmi_alloc_skb_fndecl_16949 ath10k_wmi_alloc_skb fndecl 2 16949 NULL
++enable_so_ath10k_wmi_alloc_skb_fndecl_16949 ath10k_wmi_alloc_skb fndecl 2 16949 NULL nohasharray
++enable_so_rrpc_map_page_fndecl_16949 rrpc_map_page fndecl 2 16949 &enable_so_ath10k_wmi_alloc_skb_fndecl_16949
+enable_so_len_pcan_usb_pro_rxmsg_16950 len pcan_usb_pro_rxmsg 0 16950 NULL
+enable_so_intel_framebuffer_pitch_for_width_fndecl_16956 intel_framebuffer_pitch_for_width fndecl 0-2-1 16956 NULL
+enable_so_admin_mtu_ipoib_dev_priv_16960 admin_mtu ipoib_dev_priv 0 16960 NULL
@@ -159961,13 +159317,14 @@ index 0000000..9da833a
+enable_so_offset_ipw_tx_packet_17004 offset ipw_tx_packet 0 17004 NULL
+enable_so_id_rtc_device_17005 id rtc_device 0 17005 NULL
+enable_so_snd_hdac_bus_exec_verb_fndecl_17009 snd_hdac_bus_exec_verb fndecl 0 17009 NULL
-+enable_so_consumed_unix_skb_parms_17012 consumed unix_skb_parms 0 17012 NULL
++enable_so_consumed_unix_skb_parms_17012 consumed unix_skb_parms 0 17012 NULL nohasharray
++enable_so_len_sh_eth_rxdesc_17012 len sh_eth_rxdesc 0 17012 &enable_so_consumed_unix_skb_parms_17012
+enable_so_ds_segment_shift_logfs_disk_super_17013 ds_segment_shift logfs_disk_super 0 17013 NULL
+enable_so_u132_hcd_abandon_urb_fndecl_17016 u132_hcd_abandon_urb fndecl 4 17016 NULL
-+enable_so_error_param2_vardecl_einj_c_17022 error_param2 vardecl_einj.c 0 17022 NULL nohasharray
-+enable_so_num_pads_media_entity_17022 num_pads media_entity 0 17022 &enable_so_error_param2_vardecl_einj_c_17022
++enable_so_num_pads_media_entity_17022 num_pads media_entity 0 17022 NULL
+enable_so_ext4_mb_load_buddy_fndecl_17030 ext4_mb_load_buddy fndecl 2-0 17030 NULL
-+enable_so_rx_buf_len_i40e_ring_17034 rx_buf_len i40e_ring 0 17034 NULL
++enable_so_ast_get_vram_info_fndecl_17034 ast_get_vram_info fndecl 0 17034 NULL nohasharray
++enable_so_rx_buf_len_i40e_ring_17034 rx_buf_len i40e_ring 0 17034 &enable_so_ast_get_vram_info_fndecl_17034
+enable_so_hw_context_size_drm_i915_private_17036 hw_context_size drm_i915_private 0 17036 NULL
+enable_so_inuse_kmem_cache_17038 inuse kmem_cache 0 17038 NULL
+enable_so_reiserfs_sync_file_fndecl_17045 reiserfs_sync_file fndecl 2-3 17045 NULL
@@ -159982,18 +159339,18 @@ index 0000000..9da833a
+enable_so_venus_lookup_fndecl_17066 venus_lookup fndecl 4 17066 NULL
+enable_so___scsi_error_from_host_byte_fndecl_17069 __scsi_error_from_host_byte fndecl 0 17069 NULL nohasharray
+enable_so_number_of_packets_usbip_header_cmd_submit_17069 number_of_packets usbip_header_cmd_submit 0 17069 &enable_so___scsi_error_from_host_byte_fndecl_17069
-+enable_so_vmbus_sendpacket_pagebuffer_ctl_fndecl_17076 vmbus_sendpacket_pagebuffer_ctl fndecl 3-5 17076 NULL
++enable_so_vmbus_sendpacket_pagebuffer_ctl_fndecl_17076 vmbus_sendpacket_pagebuffer_ctl fndecl 5 17076 NULL
+enable_so_offset_xen_netif_tx_request_17081 offset xen_netif_tx_request 0 17081 NULL
+enable_so_rsp_que_len_qla_hw_data_17082 rsp_que_len qla_hw_data 0 17082 NULL nohasharray
-+enable_so_ax88179_read_cmd_fndecl_17082 ax88179_read_cmd fndecl 5 17082 &enable_so_rsp_que_len_qla_hw_data_17082
++enable_so_ax88179_read_cmd_fndecl_17082 ax88179_read_cmd fndecl 5 17082 &enable_so_rsp_que_len_qla_hw_data_17082 nohasharray
++enable_so_packet_len_sdma_txreq_17082 packet_len sdma_txreq 0 17082 &enable_so_ax88179_read_cmd_fndecl_17082
+enable_so_ccp_prepare_data_fndecl_17091 ccp_prepare_data fndecl 4 17091 NULL
+enable_so_xfs_file_fallocate_fndecl_17093 xfs_file_fallocate fndecl 3-4 17093 NULL
+enable_so_obfuscate_tx_buffer_fndecl_17095 obfuscate_tx_buffer fndecl 0-2 17095 NULL
+enable_so_tx_tx_stop_read_fndecl_17096 tx_tx_stop_read fndecl 3 17096 NULL
+enable_so_size_ipack_region_17100 size ipack_region 0 17100 NULL nohasharray
+enable_so_phys_base_fore200e_17100 phys_base fore200e 0 17100 &enable_so_size_ipack_region_17100
-+enable_so_ocfs2_xattr_trusted_set_fndecl_17102 ocfs2_xattr_trusted_set fndecl 4 17102 NULL nohasharray
-+enable_so_nr_voices_seq_oss_synth_17102 nr_voices seq_oss_synth 0 17102 &enable_so_ocfs2_xattr_trusted_set_fndecl_17102
++enable_so_nr_voices_seq_oss_synth_17102 nr_voices seq_oss_synth 0 17102 NULL
+enable_so_cx18_queue_get_mdl_fndecl_17103 cx18_queue_get_mdl fndecl 3 17103 NULL
+enable_so_len_st_fifo_entry_17104 len st_fifo_entry 0 17104 NULL nohasharray
+enable_so_ro_step_fndecl_17104 ro_step fndecl 2 17104 &enable_so_len_st_fifo_entry_17104 nohasharray
@@ -160012,7 +159369,6 @@ index 0000000..9da833a
+enable_so_lnet_ipif_enumerate_fndecl_17135 lnet_ipif_enumerate fndecl 0 17135 NULL
+enable_so_dccp_send_sync_fndecl_17137 dccp_send_sync fndecl 2 17137 NULL nohasharray
+enable_so_irq_stmpe_variant_block_17137 irq stmpe_variant_block 0 17137 &enable_so_dccp_send_sync_fndecl_17137
-+enable_so_csio_lun_qdepth_vardecl_17143 csio_lun_qdepth vardecl 0 17143 NULL
+enable_so_blockSize_ms_lib_ctrl_17144 blockSize ms_lib_ctrl 0 17144 NULL
+enable_so_irq_dma_yealink_dev_17149 irq_dma yealink_dev 0 17149 NULL
+enable_so_mr_page_mask_srp_device_17151 mr_page_mask srp_device 0 17151 NULL nohasharray
@@ -160035,9 +159391,9 @@ index 0000000..9da833a
+enable_so_sys_pread64_fndecl_17210 sys_pread64 fndecl 3 17210 NULL
+enable_so_type_to_neq_fw_pfvf_cmd_17213 type_to_neq fw_pfvf_cmd 0 17213 NULL
+enable_so_logical_blk_num_osst_tape_17216 logical_blk_num osst_tape 0 17216 NULL
++enable_so_roff_scifioctl_fence_signal_17218 roff scifioctl_fence_signal 0 17218 NULL
+enable_so_ud_clear_fndecl_17219 ud_clear fndecl 6-4-5-3 17219 NULL nohasharray
+enable_so_srp_map_finish_fmr_fndecl_17219 srp_map_finish_fmr fndecl 0 17219 &enable_so_ud_clear_fndecl_17219
-+enable_so_iwl_dbgfs_bt_cmd_read_fndecl_17225 iwl_dbgfs_bt_cmd_read fndecl 3 17225 NULL
+enable_so_eth_type_trans_fndecl_17226 eth_type_trans fndecl 0 17226 NULL
+enable_so_vsync_start_drm_display_mode_17229 vsync_start drm_display_mode 0 17229 NULL
+enable_so_ioread32be_fndecl_17230 ioread32be fndecl 0 17230 NULL
@@ -160144,7 +159500,8 @@ index 0000000..9da833a
+enable_so_encode_nfspath3_fndecl_17536 encode_nfspath3 fndecl 3 17536 NULL nohasharray
+enable_so_rndis_set_oid_fndecl_17536 rndis_set_oid fndecl 4 17536 &enable_so_encode_nfspath3_fndecl_17536
+enable_so_how_many_channels_fndecl_17540 how_many_channels fndecl 0 17540 NULL
-+enable_so_wdm_read_fndecl_17542 wdm_read fndecl 3 17542 NULL
++enable_so_num_pln_nvm_id_group_17542 num_pln nvm_id_group 0 17542 NULL nohasharray
++enable_so_wdm_read_fndecl_17542 wdm_read fndecl 3 17542 &enable_so_num_pln_nvm_id_group_17542
+enable_so_fb_alloc_cmap_fndecl_17545 fb_alloc_cmap fndecl 2 17545 NULL
+enable_so_root_cluster_msdos_sb_info_17547 root_cluster msdos_sb_info 0 17547 NULL
+enable_so_mlx4_en_rx_skb_fndecl_17554 mlx4_en_rx_skb fndecl 4 17554 NULL
@@ -160165,6 +159522,7 @@ index 0000000..9da833a
+enable_so_qlf_len_xfs_dq_logformat_17603 qlf_len xfs_dq_logformat 0 17603 NULL nohasharray
+enable_so_ent_bread_fatent_operations_17603 ent_bread fatent_operations 0 17603 &enable_so_qlf_len_xfs_dq_logformat_17603
+enable_so_isoc_ep_stk_camera_17604 isoc_ep stk_camera 0 17604 NULL
++enable_so_nr_planes_nvm_dev_17609 nr_planes nvm_dev 0 17609 NULL
+enable_so_tl_retry_count_srp_target_port_17624 tl_retry_count srp_target_port 0 17624 NULL
+enable_so_min_alloc_order_gen_pool_17628 min_alloc_order gen_pool 0 17628 NULL
+enable_so_ctxts_extrabuf_qib_devdata_17634 ctxts_extrabuf qib_devdata 0 17634 NULL
@@ -160181,7 +159539,6 @@ index 0000000..9da833a
+enable_so_f2fs_update_extent_cache_range_fndecl_17671 f2fs_update_extent_cache_range fndecl 4-2-3 17671 NULL
+enable_so_vdma_mem_alloc_fndecl_17672 vdma_mem_alloc fndecl 1 17672 NULL
+enable_so_wl1251_cmd_template_set_fndecl_17679 wl1251_cmd_template_set fndecl 4 17679 NULL
-+enable_so_iwl_dbgfs_tof_range_request_read_fndecl_17682 iwl_dbgfs_tof_range_request_read fndecl 3 17682 NULL
+enable_so_memory_block_size_probed_vardecl_init_64_c_17683 memory_block_size_probed vardecl_init_64.c 0 17683 NULL nohasharray
+enable_so_whci_capdata_quirks_fndecl_17683 whci_capdata_quirks fndecl 0-2 17683 &enable_so_memory_block_size_probed_vardecl_init_64_c_17683
+enable_so_iov_misc_count_iscsi_cmd_17684 iov_misc_count iscsi_cmd 0 17684 NULL nohasharray
@@ -160233,19 +159590,19 @@ index 0000000..9da833a
+enable_so_snd_hda_override_conn_list_fndecl_17817 snd_hda_override_conn_list fndecl 3 17817 NULL nohasharray
+enable_so_xenbus_file_write_fndecl_17817 xenbus_file_write fndecl 3 17817 &enable_so_snd_hda_override_conn_list_fndecl_17817
+enable_so_tx_tx_start_null_frame_read_fndecl_17818 tx_tx_start_null_frame_read fndecl 3 17818 NULL
++enable_so_ib_map_mr_sg_fndecl_17821 ib_map_mr_sg fndecl 0 17821 NULL
+enable_so_i_blkbits_inode_17823 i_blkbits inode 0 17823 NULL
+enable_so_tipc_recvmsg_fndecl_17825 tipc_recvmsg fndecl 3 17825 NULL
+enable_so_SyS_mincore_fndecl_17834 SyS_mincore fndecl 1-2 17834 NULL
-+enable_so_max_sgl_entries_vardecl_mpt2sas_base_c_17839 max_sgl_entries vardecl_mpt2sas_base.c 0 17839 NULL
+enable_so_qlcnic_sriov_alloc_bc_msg_fndecl_17846 qlcnic_sriov_alloc_bc_msg fndecl 2 17846 NULL
+enable_so_mid_get_vbt_data_r10_fndecl_17847 mid_get_vbt_data_r10 fndecl 2 17847 NULL
+enable_so_xenvif_count_requests_fndecl_17849 xenvif_count_requests fndecl 0 17849 NULL
+enable_so_cifs_lockv_fndecl_17853 cifs_lockv fndecl 6-5 17853 NULL
+enable_so_discard_alignment_queue_limits_17856 discard_alignment queue_limits 0 17856 NULL
+enable_so_preferred_minor_md_rdev_17857 preferred_minor md_rdev 0 17857 NULL
-+enable_so_mei_dbgfs_read_devstate_fndecl_17859 mei_dbgfs_read_devstate fndecl 3 17859 NULL
+enable_so_current_table_count_acpi_table_list_17862 current_table_count acpi_table_list 0 17862 NULL
+enable_so_bip_vcnt_bio_integrity_payload_17865 bip_vcnt bio_integrity_payload 0 17865 NULL
++enable_so_host_int_get_assoc_res_info_fndecl_17869 host_int_get_assoc_res_info fndecl 3 17869 NULL
+enable_so_len_hfi1_cmd_17873 len hfi1_cmd 0 17873 NULL
+enable_so_fuse_get_req_for_background_fndecl_17874 fuse_get_req_for_background fndecl 2 17874 NULL nohasharray
+enable_so_used_ebs_ubi_fm_volhdr_17874 used_ebs ubi_fm_volhdr 0 17874 &enable_so_fuse_get_req_for_background_fndecl_17874 nohasharray
@@ -160261,7 +159618,8 @@ index 0000000..9da833a
+enable_so_msb_write_block_fndecl_17912 msb_write_block fndecl 0-5-2-3 17912 &enable_so_fd_size_fip_size_desc_17912
+enable_so_osd_req_read_sg_kern_fndecl_17913 osd_req_read_sg_kern fndecl 5 17913 NULL nohasharray
+enable_so_sync_fence_alloc_fndecl_17913 sync_fence_alloc fndecl 1 17913 &enable_so_osd_req_read_sg_kern_fndecl_17913
-+enable_so_sg_pcopy_to_buffer_fndecl_17914 sg_pcopy_to_buffer fndecl 5-4 17914 NULL
++enable_so_rx_agg_cmp_len_flags_type_rx_agg_cmp_17914 rx_agg_cmp_len_flags_type rx_agg_cmp 0 17914 NULL nohasharray
++enable_so_sg_pcopy_to_buffer_fndecl_17914 sg_pcopy_to_buffer fndecl 5-4 17914 &enable_so_rx_agg_cmp_len_flags_type_rx_agg_cmp_17914
+enable_so_translate_compat_table_fndecl_17917 translate_compat_table fndecl 7 17917 NULL
+enable_so_ipath_verbs_send_dma_fndecl_17922 ipath_verbs_send_dma fndecl 6 17922 NULL
+enable_so_br_blockcount_xfs_bmbt_irec_17931 br_blockcount xfs_bmbt_irec 0 17931 NULL
@@ -160277,8 +159635,7 @@ index 0000000..9da833a
+enable_so_ieee80211_tx_radiotap_len_fndecl_17953 ieee80211_tx_radiotap_len fndecl 0 17953 &enable_so_dm_io_fndecl_17953
+enable_so_pch_uart_hal_read_fndecl_17954 pch_uart_hal_read fndecl 0 17954 NULL
+enable_so_n_special_skd_device_17960 n_special skd_device 0 17960 NULL
-+enable_so_pkt_align_netvsc_device_17961 pkt_align netvsc_device 0 17961 NULL nohasharray
-+enable_so_cydata_size_cyttsp4_sysinfo_ofs_17961 cydata_size cyttsp4_sysinfo_ofs 0 17961 &enable_so_pkt_align_netvsc_device_17961
++enable_so_pkt_align_netvsc_device_17961 pkt_align netvsc_device 0 17961 NULL
+enable_so_scan_async_group_fndecl_17964 scan_async_group fndecl 3 17964 NULL
+enable_so_do_tee_fndecl_17969 do_tee fndecl 3 17969 NULL
+enable_so_qsfp_cks_fndecl_17970 qsfp_cks fndecl 2-0 17970 NULL
@@ -160296,8 +159653,8 @@ index 0000000..9da833a
+enable_so_get_context_size_fndecl_17999 get_context_size fndecl 0 17999 NULL
+enable_so_order_per_bit_cma_18000 order_per_bit cma 0 18000 NULL
+enable_so_target_xcopy_read_source_fndecl_18003 target_xcopy_read_source fndecl 5 18003 NULL
-+enable_so_size_aper_size_info_8_18012 size aper_size_info_8 0 18012 NULL nohasharray
-+enable_so_data_xfer_length_aac_srb_reply_18012 data_xfer_length aac_srb_reply 0 18012 &enable_so_size_aper_size_info_8_18012
++enable_so_data_xfer_length_aac_srb_reply_18012 data_xfer_length aac_srb_reply 0 18012 NULL nohasharray
++enable_so_size_aper_size_info_8_18012 size aper_size_info_8 0 18012 &enable_so_data_xfer_length_aac_srb_reply_18012
+enable_so_request_key_async_fndecl_18013 request_key_async fndecl 4 18013 NULL
+enable_so_rx_frag_size_vardecl_be_main_c_18017 rx_frag_size vardecl_be_main.c 0 18017 NULL
+enable_so_raid56_parity_recover_fndecl_18019 raid56_parity_recover fndecl 0-4 18019 NULL
@@ -160321,7 +159678,6 @@ index 0000000..9da833a
+enable_so_xfer_len_iscsi_seq_18047 xfer_len iscsi_seq 0 18047 NULL
+enable_so_sctp_make_op_error_fndecl_18050 sctp_make_op_error fndecl 5-6 18050 NULL
+enable_so_ts_packet_size_cx23885_tsport_18052 ts_packet_size cx23885_tsport 0 18052 NULL
-+enable_so_rmsg_pgcnt_hv_netvsc_packet_18054 rmsg_pgcnt hv_netvsc_packet 0 18054 NULL
+enable_so_sll_halen_sockaddr_ll_18063 sll_halen sockaddr_ll 0 18063 NULL
+enable_so_ipath_get_base_info_fndecl_18064 ipath_get_base_info fndecl 3 18064 NULL
+enable_so_beacon_interval_read_fndecl_18080 beacon_interval_read fndecl 3 18080 NULL
@@ -160333,6 +159689,7 @@ index 0000000..9da833a
+enable_so_bfad_iocmd_ioc_fw_sig_inv_fndecl_18091 bfad_iocmd_ioc_fw_sig_inv fndecl 0 18091 NULL
+enable_so_inode2sd_fndecl_18094 inode2sd fndecl 3 18094 NULL
+enable_so_thermal_irq_thr_high_read_fndecl_18102 thermal_irq_thr_high_read fndecl 3 18102 NULL
++enable_so_btrfs_qgroup_reserve_data_fndecl_18109 btrfs_qgroup_reserve_data fndecl 0-3-2 18109 NULL
+enable_so_do_async_mmap_readahead_fndecl_18112 do_async_mmap_readahead fndecl 5 18112 NULL nohasharray
+enable_so_readcount_usblp_18112 readcount usblp 0 18112 &enable_so_do_async_mmap_readahead_fndecl_18112
+enable_so_addr_width_fsl_edma_slave_config_18115 addr_width fsl_edma_slave_config 0 18115 NULL
@@ -160342,15 +159699,16 @@ index 0000000..9da833a
+enable_so_send_mpa_reject_fndecl_18124 send_mpa_reject fndecl 3 18124 NULL
+enable_so_ring_prod_per_user_data_18125 ring_prod per_user_data 0 18125 NULL
+enable_so_bnx2x_num_queues_vardecl_18126 bnx2x_num_queues vardecl 0 18126 NULL
-+enable_so_pipeline_enc_rx_stat_fifo_int_read_fndecl_18128 pipeline_enc_rx_stat_fifo_int_read fndecl 3 18128 NULL
++enable_so_qed_unzip_data_fndecl_18128 qed_unzip_data fndecl 4-2 18128 NULL nohasharray
++enable_so_pipeline_enc_rx_stat_fifo_int_read_fndecl_18128 pipeline_enc_rx_stat_fifo_int_read fndecl 3 18128 &enable_so_qed_unzip_data_fndecl_18128
+enable_so_tlb_preload_count_gru_create_context_req_18130 tlb_preload_count gru_create_context_req 0 18130 NULL nohasharray
+enable_so_reshape_request_fndecl_18130 reshape_request fndecl 2 18130 &enable_so_tlb_preload_count_gru_create_context_req_18130
+enable_so_fs_start_hfs_sb_info_18132 fs_start hfs_sb_info 0 18132 NULL
+enable_so_num_ddr_avs_mthca_av_table_18139 num_ddr_avs mthca_av_table 0 18139 NULL
+enable_so_byte_cnt_rx_desc_18142 byte_cnt rx_desc 0 18142 NULL
+enable_so_i_iget5_block_iso_inode_info_18143 i_iget5_block iso_inode_info 0 18143 NULL
-+enable_so_softback_in_vardecl_fbcon_c_18148 softback_in vardecl_fbcon.c 0 18148 NULL nohasharray
-+enable_so_mtu_net_device_18148 mtu net_device 0 18148 &enable_so_softback_in_vardecl_fbcon_c_18148
++enable_so_mtu_net_device_18148 mtu net_device 0 18148 NULL nohasharray
++enable_so_softback_in_vardecl_fbcon_c_18148 softback_in vardecl_fbcon.c 0 18148 &enable_so_mtu_net_device_18148
+enable_so_read_word_onenand_chip_18150 read_word onenand_chip 0 18150 NULL
+enable_so_bmv_length_getbmapx_18151 bmv_length getbmapx 0 18151 NULL
+enable_so_nfs_dreq_bytes_left_fndecl_18154 nfs_dreq_bytes_left fndecl 0 18154 NULL
@@ -160362,13 +159720,13 @@ index 0000000..9da833a
+enable_so_ocfs2_test_suballoc_bit_fndecl_18180 ocfs2_test_suballoc_bit fndecl 6-5-4 18180 &enable_so_ide_read_error_fndecl_18180 nohasharray
+enable_so_process_rcvd_data_fndecl_18180 process_rcvd_data fndecl 3 18180 &enable_so_ocfs2_test_suballoc_bit_fndecl_18180
+enable_so_offset_pktcdvd_device_18183 offset pktcdvd_device 0 18183 NULL
++enable_so_hdac_ext_dma_alloc_pages_fndecl_18184 hdac_ext_dma_alloc_pages fndecl 3 18184 NULL
+enable_so_aac_srcv_ioremap_fndecl_18192 aac_srcv_ioremap fndecl 2 18192 NULL
+enable_so_natsemi_change_mtu_fndecl_18207 natsemi_change_mtu fndecl 2 18207 NULL
+enable_so_sd_head_align_brcmfmac_sdio_platform_data_18210 sd_head_align brcmfmac_sdio_platform_data 0 18210 NULL
+enable_so_ibmpex_query_sensor_count_fndecl_18214 ibmpex_query_sensor_count fndecl 0 18214 NULL nohasharray
+enable_so_fw_size_intel_dmc_header_18214 fw_size intel_dmc_header 0 18214 &enable_so_ibmpex_query_sensor_count_fndecl_18214
+enable_so_mpeg_read_fndecl_18215 mpeg_read fndecl 3 18215 NULL
-+enable_so___xfs_get_blocks_fndecl_18216 __xfs_get_blocks fndecl 2 18216 NULL
+enable_so_check_clk_sync_fndecl_18222 check_clk_sync fndecl 2 18222 NULL
+enable_so_xmit_cnt_mgsl_struct_18223 xmit_cnt mgsl_struct 0 18223 NULL
+enable_so_ql_process_mac_rx_skb_fndecl_18226 ql_process_mac_rx_skb fndecl 5-4 18226 NULL
@@ -160379,6 +159737,7 @@ index 0000000..9da833a
+enable_so_vol_id_ubi_volume_18238 vol_id ubi_volume 0 18238 NULL
+enable_so_ocfs2_insert_extent_fndecl_18242 ocfs2_insert_extent fndecl 4-3 18242 NULL
+enable_so_payload_size_vmci_datagram_18243 payload_size vmci_datagram 0 18243 NULL
++enable_so_scif_writeto_fndecl_18246 scif_writeto fndecl 2-4-3 18246 NULL
+enable_so_next_free_transient_c_18248 next_free transient_c 0 18248 NULL
+enable_so_vid_batadv_bla_claim_18249 vid batadv_bla_claim 0 18249 NULL nohasharray
+enable_so_hfi1_reg_phys_mr_fndecl_18249 hfi1_reg_phys_mr fndecl 3 18249 &enable_so_vid_batadv_bla_claim_18249
@@ -160390,6 +159749,7 @@ index 0000000..9da833a
+enable_so_end_extent_state_18270 end extent_state 0 18270 NULL
+enable_so_sfi_check_table_fndecl_18279 sfi_check_table fndecl 1 18279 NULL
+enable_so__nfs4_get_security_label_fndecl_18285 _nfs4_get_security_label fndecl 3 18285 NULL
++enable_so_scif_create_window_fndecl_18291 scif_create_window fndecl 3-2 18291 NULL
+enable_so_tda18218_rd_regs_fndecl_18293 tda18218_rd_regs fndecl 4-2 18293 NULL
+enable_so_i915_parse_cmds_fndecl_18295 i915_parse_cmds fndecl 4-5 18295 NULL
+enable_so_index_sg_device_18304 index sg_device 0 18304 NULL
@@ -160397,22 +159757,19 @@ index 0000000..9da833a
+enable_so_essid_len_iw_scan_req_18306 essid_len iw_scan_req 0 18306 NULL
+enable_so_add_pfn_range_mapped_fndecl_18307 add_pfn_range_mapped fndecl 2-1 18307 NULL
+enable_so_twl4030_init_irq_fndecl_18308 twl4030_init_irq fndecl 0 18308 NULL
-+enable_so_do_kmem_cache_create_fndecl_18316 do_kmem_cache_create fndecl 3-4-2 18316 NULL
+enable_so_zone_spanned_pages_in_node_fndecl_18320 zone_spanned_pages_in_node fndecl 0-3-4 18320 NULL
-+enable_so_ieee80211_if_read_fndecl_18322 ieee80211_if_read fndecl 3 18322 NULL
-+enable_so_iwl_dbgfs_channels_read_fndecl_18323 iwl_dbgfs_channels_read fndecl 3 18323 NULL nohasharray
-+enable_so_rpipes_wahc_18323 rpipes wahc 0 18323 &enable_so_iwl_dbgfs_channels_read_fndecl_18323
++enable_so_rpipes_wahc_18323 rpipes wahc 0 18323 NULL
+enable_so_e820_end_of_low_ram_pfn_fndecl_18324 e820_end_of_low_ram_pfn fndecl 0 18324 NULL
+enable_so_bfad_iocmd_fcpim_throttle_set_fndecl_18326 bfad_iocmd_fcpim_throttle_set fndecl 0 18326 NULL nohasharray
+enable_so_radeon_sa_bo_manager_init_fndecl_18326 radeon_sa_bo_manager_init fndecl 3 18326 &enable_so_bfad_iocmd_fcpim_throttle_set_fndecl_18326
-+enable_so_hdlcdrv_register_fndecl_18331 hdlcdrv_register fndecl 2 18331 NULL nohasharray
-+enable_so_lpfc_lun_queue_depth_vardecl_lpfc_attr_c_18331 lpfc_lun_queue_depth vardecl_lpfc_attr.c 0 18331 &enable_so_hdlcdrv_register_fndecl_18331
++enable_so_hdlcdrv_register_fndecl_18331 hdlcdrv_register fndecl 2 18331 NULL
+enable_so_tx_tx_done_data_read_fndecl_18332 tx_tx_done_data_read fndecl 3 18332 NULL nohasharray
+enable_so_taps_oslec_state_18332 taps oslec_state 0 18332 &enable_so_tx_tx_done_data_read_fndecl_18332
+enable_so_m_blockmask_xfs_mount_18334 m_blockmask xfs_mount 0 18334 NULL
+enable_so_blk_alloc_flush_queue_fndecl_18340 blk_alloc_flush_queue fndecl 3 18340 NULL
+enable_so_calc_pages_for_fndecl_18341 calc_pages_for fndecl 0-2-1 18341 NULL
+enable_so_mon_bin_read_fndecl_18346 mon_bin_read fndecl 3 18346 NULL
++enable_so_nsm_get_handle_fndecl_18347 nsm_get_handle fndecl 5 18347 NULL
+enable_so_snd_cs4281_BA0_read_fndecl_18348 snd_cs4281_BA0_read fndecl 5 18348 NULL
+enable_so_xfs_da_reada_buf_fndecl_18349 xfs_da_reada_buf fndecl 2 18349 NULL
+enable_so_mb_cache_entry_insert_fndecl_18350 mb_cache_entry_insert fndecl 3 18350 NULL
@@ -160434,7 +159791,8 @@ index 0000000..9da833a
+enable_so_reply_payload_rcv_len_fc_bsg_reply_18392 reply_payload_rcv_len fc_bsg_reply 0 18392 NULL
+enable_so_spc_modesense_blockdesc_fndecl_18397 spc_modesense_blockdesc fndecl 0 18397 NULL
+enable_so_vid_batadv_bla_backbone_gw_18402 vid batadv_bla_backbone_gw 0 18402 NULL
-+enable_so_veth_change_mtu_fndecl_18405 veth_change_mtu fndecl 2 18405 NULL
++enable_so_veth_change_mtu_fndecl_18405 veth_change_mtu fndecl 2 18405 NULL nohasharray
++enable_so_lo_offset_loop_info64_18405 lo_offset loop_info64 0 18405 &enable_so_veth_change_mtu_fndecl_18405
+enable_so_max_psize_uac2_rtd_params_18407 max_psize uac2_rtd_params 0 18407 NULL
+enable_so_proc_sessionid_read_fndecl_18412 proc_sessionid_read fndecl 3 18412 NULL nohasharray
+enable_so_acm_alloc_minor_fndecl_18412 acm_alloc_minor fndecl 0 18412 &enable_so_proc_sessionid_read_fndecl_18412
@@ -160480,12 +159838,12 @@ index 0000000..9da833a
+enable_so_kvm_hv_set_msr_pw_fndecl_18553 kvm_hv_set_msr_pw fndecl 3 18553 NULL nohasharray
+enable_so_inodes_squashfs_sb_info_18553 inodes squashfs_sb_info 0 18553 &enable_so_kvm_hv_set_msr_pw_fndecl_18553 nohasharray
+enable_so_pci_enable_msix_exact_fndecl_18553 pci_enable_msix_exact fndecl 0 18553 &enable_so_inodes_squashfs_sb_info_18553
-+enable_so_ucode_size_bytes_common_firmware_header_18554 ucode_size_bytes common_firmware_header 0 18554 NULL
++enable_so_ucode_size_bytes_common_firmware_header_18554 ucode_size_bytes common_firmware_header 0 18554 NULL nohasharray
++enable_so_single_sz_msc_18554 single_sz msc 0 18554 &enable_so_ucode_size_bytes_common_firmware_header_18554
+enable_so_memblock_reserve_fndecl_18556 memblock_reserve fndecl 1-2 18556 NULL
+enable_so_cifs_security_flags_proc_write_fndecl_18559 cifs_security_flags_proc_write fndecl 3 18559 NULL
+enable_so_riva_get_memlen_fndecl_18562 riva_get_memlen fndecl 0 18562 NULL
+enable_so_change_protection_fndecl_18568 change_protection fndecl 3-2 18568 NULL
-+enable_so_rocker_group_l2_flood_fndecl_18575 rocker_group_l2_flood fndecl 5 18575 NULL
+enable_so___max_nr_grant_frames_fndecl_18578 __max_nr_grant_frames fndecl 0 18578 NULL
+enable_so_index_xtsplit_18586 index xtsplit 0 18586 NULL
+enable_so_spidev_message_fndecl_18589 spidev_message fndecl 3 18589 NULL
@@ -160512,28 +159870,27 @@ index 0000000..9da833a
+enable_so_ext2_xattr_set_fndecl_18656 ext2_xattr_set fndecl 5 18656 NULL nohasharray
+enable_so_MaxDevices__MSG_IOC_FACTS_REPLY_18656 MaxDevices _MSG_IOC_FACTS_REPLY 0 18656 &enable_so_ext2_xattr_set_fndecl_18656
+enable_so_compat_copy_entries_fndecl_18658 compat_copy_entries fndecl 0 18658 NULL
++enable_so_length_vb2_plane_18662 length vb2_plane 0 18662 NULL
+enable_so_gfs2_unstuffer_page_fndecl_18663 gfs2_unstuffer_page fndecl 3 18663 NULL
+enable_so_num_ccells_per_conn_iscsi_kwqe_init1_18665 num_ccells_per_conn iscsi_kwqe_init1 0 18665 NULL nohasharray
+enable_so_SYSC_init_module_fndecl_18665 SYSC_init_module fndecl 2 18665 &enable_so_num_ccells_per_conn_iscsi_kwqe_init1_18665
+enable_so_nilfs_move_2nd_super_fndecl_18666 nilfs_move_2nd_super fndecl 2 18666 NULL
+enable_so_iterate_extent_inodes_fndecl_18668 iterate_extent_inodes fndecl 2 18668 NULL
+enable_so_len_xdr_netobj_18672 len xdr_netobj 0 18672 NULL
++enable_so_ies_len_scan_attr_18673 ies_len scan_attr 0 18673 NULL
+enable_so_pn_recvmsg_fndecl_18676 pn_recvmsg fndecl 3 18676 NULL
+enable_so_ldm_frag_add_fndecl_18680 ldm_frag_add fndecl 2 18680 NULL
+enable_so_used_chaoskey_18682 used chaoskey 0 18682 NULL nohasharray
+enable_so_ocd_max_easize_obd_connect_data_18682 ocd_max_easize obd_connect_data 0 18682 &enable_so_used_chaoskey_18682
+enable_so_domain_pci_sysdata_18686 domain pci_sysdata 0 18686 NULL
-+enable_so_i2c_wr_max_cx24120_config_18687 i2c_wr_max cx24120_config 0 18687 NULL nohasharray
-+enable_so_length_iwl_nvm_access_resp_18687 length iwl_nvm_access_resp 0 18687 &enable_so_i2c_wr_max_cx24120_config_18687
++enable_so_i2c_wr_max_cx24120_config_18687 i2c_wr_max cx24120_config 0 18687 NULL
+enable_so_num_tc_net_device_18703 num_tc net_device 0 18703 NULL
+enable_so_size_rxdone_entry_desc_18704 size rxdone_entry_desc 0 18704 NULL
+enable_so_den_step_snd_ratnum_18705 den_step snd_ratnum 0 18705 NULL nohasharray
+enable_so_num_dup_tsns_sctp_tsnmap_18705 num_dup_tsns sctp_tsnmap 0 18705 &enable_so_den_step_snd_ratnum_18705
-+enable_so_ascot2e_i2c_debug_fndecl_18708 ascot2e_i2c_debug fndecl 5 18708 NULL
+enable_so_ent_get_fatent_operations_18715 ent_get fatent_operations 0 18715 NULL
+enable_so_read_reg_isar_hw_18717 read_reg isar_hw 0 18717 NULL
+enable_so_feature_len_mic_device_desc_18719 feature_len mic_device_desc 0 18719 NULL
-+enable_so_iwl_dbgfs_status_read_fndecl_18720 iwl_dbgfs_status_read fndecl 3 18720 NULL
+enable_so___az6007_write_fndecl_18721 __az6007_write fndecl 6 18721 NULL
+enable_so_max_pkeys_ib_device_attr_18722 max_pkeys ib_device_attr 0 18722 NULL
+enable_so_trf7970a_read_cont_fndecl_18728 trf7970a_read_cont fndecl 4 18728 NULL
@@ -160551,7 +159908,8 @@ index 0000000..9da833a
+enable_so_max_in_size_ims_pcu_18752 max_in_size ims_pcu 0 18752 NULL
+enable_so___ocfs2_error_fndecl_18758 __ocfs2_error fndecl 0 18758 NULL
+enable_so_pipe_set_size_fndecl_18759 pipe_set_size fndecl 2 18759 NULL
-+enable_so_i_pos_msdos_inode_info_18764 i_pos msdos_inode_info 0 18764 NULL
++enable_so_intel_tile_height_fndecl_18764 intel_tile_height fndecl 0 18764 NULL nohasharray
++enable_so_i_pos_msdos_inode_info_18764 i_pos msdos_inode_info 0 18764 &enable_so_intel_tile_height_fndecl_18764
+enable_so_ppp_cp_parse_cr_fndecl_18765 ppp_cp_parse_cr fndecl 4-2 18765 NULL
+enable_so_xdr_get_next_encode_buffer_fndecl_18770 xdr_get_next_encode_buffer fndecl 2 18770 NULL nohasharray
+enable_so_adjust_memory_fndecl_18770 adjust_memory fndecl 3-4 18770 &enable_so_xdr_get_next_encode_buffer_fndecl_18770
@@ -160574,7 +159932,8 @@ index 0000000..9da833a
+enable_so_tx_cnt_IsdnCardState_18819 tx_cnt IsdnCardState 0 18819 NULL
+enable_so_dvb_ringbuffer_write_user_fndecl_18821 dvb_ringbuffer_write_user fndecl 3 18821 NULL
+enable_so_shmem_seek_hole_data_fndecl_18824 shmem_seek_hole_data fndecl 0-2-3 18824 NULL
-+enable_so_p_memsz_elf32_phdr_18830 p_memsz elf32_phdr 0 18830 NULL
++enable_so_p_memsz_elf32_phdr_18830 p_memsz elf32_phdr 0 18830 NULL nohasharray
++enable_so_clk_num_clk_onecell_data_18830 clk_num clk_onecell_data 0 18830 &enable_so_p_memsz_elf32_phdr_18830
+enable_so_num_entries_compat_ipt_replace_18835 num_entries compat_ipt_replace 0 18835 NULL
+enable_so_xfs_inobt_insert_rec_fndecl_18839 xfs_inobt_insert_rec fndecl 4 18839 NULL nohasharray
+enable_so_DriverQueueDepth_DAC960_Controller_18839 DriverQueueDepth DAC960_Controller 0 18839 &enable_so_xfs_inobt_insert_rec_fndecl_18839
@@ -160622,14 +159981,13 @@ index 0000000..9da833a
+enable_so_maxReplyBytes_mpt_ioctl_command_18942 maxReplyBytes mpt_ioctl_command 0 18942 NULL
+enable_so_read_pci_config_fndecl_18943 read_pci_config fndecl 0 18943 NULL
+enable_so_rbd_segment_length_fndecl_18944 rbd_segment_length fndecl 0-2-3 18944 NULL
-+enable_so_cram_hmac_alg_len_net_conf_18947 cram_hmac_alg_len net_conf 0 18947 NULL nohasharray
-+enable_so_port_show_regs_fndecl_18947 port_show_regs fndecl 3 18947 &enable_so_cram_hmac_alg_len_net_conf_18947
-+enable_so_i2c_hack_cx25840_fndecl_18948 i2c_hack_cx25840 fndecl 4-6 18948 NULL nohasharray
-+enable_so_uhci_debug_read_fndecl_18948 uhci_debug_read fndecl 3 18948 &enable_so_i2c_hack_cx25840_fndecl_18948
++enable_so_cram_hmac_alg_len_net_conf_18947 cram_hmac_alg_len net_conf 0 18947 NULL
++enable_so_i2c_hack_cx25840_fndecl_18948 i2c_hack_cx25840 fndecl 4-6 18948 NULL
+enable_so_length_rsp_que_18950 length rsp_que 0 18950 NULL
+enable_so_cookie_sg_count_realtek_pci_sdmmc_18954 cookie_sg_count realtek_pci_sdmmc 0 18954 NULL
+enable_so_qla82xx_pci_mem_read_2M_fndecl_18955 qla82xx_pci_mem_read_2M fndecl 2 18955 NULL
-+enable_so_rss_queues_igb_adapter_18957 rss_queues igb_adapter 0 18957 NULL
++enable_so_encx24j600_raw_write_fndecl_18957 encx24j600_raw_write fndecl 4 18957 NULL nohasharray
++enable_so_rss_queues_igb_adapter_18957 rss_queues igb_adapter 0 18957 &enable_so_encx24j600_raw_write_fndecl_18957
+enable_so_new_sync_read_fndecl_18960 new_sync_read fndecl 0-3 18960 NULL
+enable_so_file_offset_btrfs_ordered_extent_18963 file_offset btrfs_ordered_extent 0 18963 NULL
+enable_so_len_dm_target_18965 len dm_target 0 18965 NULL
@@ -160662,7 +160020,6 @@ index 0000000..9da833a
+enable_so_scrollback_max_vardecl_fbcon_c_19040 scrollback_max vardecl_fbcon.c 0 19040 NULL nohasharray
+enable_so_next_cnid_hfsplus_sb_info_19040 next_cnid hfsplus_sb_info 0 19040 &enable_so_scrollback_max_vardecl_fbcon_c_19040
+enable_so_tsize_nfs2_fsstat_19041 tsize nfs2_fsstat 0 19041 NULL
-+enable_so_len_ath10k_dump_file_data_19052 len ath10k_dump_file_data 0 19052 NULL
+enable_so_dma_usb_request_19054 dma usb_request 0 19054 NULL
+enable_so_mod_len_extent_map_19058 mod_len extent_map 0 19058 NULL
+enable_so_count_sgmapraw_19066 count sgmapraw 0 19066 NULL
@@ -160703,22 +160060,22 @@ index 0000000..9da833a
+enable_so_mic_read_spad_fndecl_19184 mic_read_spad fndecl 0 19184 NULL
+enable_so_dfs_global_file_write_fndecl_19187 dfs_global_file_write fndecl 3 19187 NULL
+enable_so_vmw_user_shader_alloc_fndecl_19188 vmw_user_shader_alloc fndecl 3 19188 NULL
-+enable_so_xen_max_p2m_pfn_vardecl_19189 xen_max_p2m_pfn vardecl 0 19189 NULL
++enable_so_st21nfca_hci_dm_get_info_fndecl_19189 st21nfca_hci_dm_get_info fndecl 3 19189 NULL nohasharray
++enable_so_xen_max_p2m_pfn_vardecl_19189 xen_max_p2m_pfn vardecl 0 19189 &enable_so_st21nfca_hci_dm_get_info_fndecl_19189
+enable_so_nci_allocate_device_fndecl_19192 nci_allocate_device fndecl 3 19192 NULL
+enable_so_____smiapp_read_fndecl_19193 ____smiapp_read fndecl 3 19193 NULL
-+enable_so_queue_depth_hpsa_scsi_dev_t_19194 queue_depth hpsa_scsi_dev_t 0 19194 NULL
+enable_so_slot_nr_nfs4_slot_19196 slot_nr nfs4_slot 0 19196 NULL nohasharray
+enable_so_num_retune_mobile_texts_wm8996_priv_19196 num_retune_mobile_texts wm8996_priv 0 19196 &enable_so_slot_nr_nfs4_slot_19196
+enable_so_decode_height_yuv_playback_info_19201 decode_height yuv_playback_info 0 19201 NULL
+enable_so_irq_dma_handle_ttusb_dec_19208 irq_dma_handle ttusb_dec 0 19208 NULL nohasharray
+enable_so_sd_tuning_phase_fndecl_19208 sd_tuning_phase fndecl 2 19208 &enable_so_irq_dma_handle_ttusb_dec_19208
++enable_so_m25p80_write_reg_fndecl_19209 m25p80_write_reg fndecl 4 19209 NULL
+enable_so_ext4_xattr_get_fndecl_19214 ext4_xattr_get fndecl 0 19214 NULL
+enable_so_size_afs_file_status_19215 size afs_file_status 0 19215 NULL
+enable_so_extensions_edid_19218 extensions edid 0 19218 NULL
+enable_so_lfb_size_screen_info_19219 lfb_size screen_info 0 19219 NULL
+enable_so_SYSC_fsetxattr_fndecl_19220 SYSC_fsetxattr fndecl 4 19220 NULL
+enable_so_vmw_cmdbuf_alloc_fndecl_19226 vmw_cmdbuf_alloc fndecl 2 19226 NULL
-+enable_so_csio_add_debugfs_mem_fndecl_19228 csio_add_debugfs_mem fndecl 4 19228 NULL
+enable_so___ai_size_pcpu_alloc_info_19229 __ai_size pcpu_alloc_info 0 19229 NULL
+enable_so_cmds_vardecl_ambassador_c_19230 cmds vardecl_ambassador.c 0 19230 NULL
+enable_so_spi_populate_ppr_msg_fndecl_19239 spi_populate_ppr_msg fndecl 0 19239 NULL
@@ -160753,6 +160110,7 @@ index 0000000..9da833a
+enable_so_rule_size_fib_rules_ops_19335 rule_size fib_rules_ops 0 19335 NULL
+enable_so___vxge_hw_blockpool_malloc_fndecl_19337 __vxge_hw_blockpool_malloc fndecl 2 19337 NULL
+enable_so_compat_sys_writev_fndecl_19339 compat_sys_writev fndecl 3 19339 NULL
++enable_so_NetworkInfoReceived_fndecl_19353 NetworkInfoReceived fndecl 2 19353 NULL
+enable_so_sock_alloc_send_pskb_fndecl_19354 sock_alloc_send_pskb fndecl 3 19354 NULL
+enable_so_data_sge_offset_mpt3_ioctl_command_19355 data_sge_offset mpt3_ioctl_command 0 19355 NULL
+enable_so_qlcnic_83xx_sysfs_flash_read_handler_fndecl_19356 qlcnic_83xx_sysfs_flash_read_handler fndecl 6 19356 NULL nohasharray
@@ -160767,7 +160125,6 @@ index 0000000..9da833a
+enable_so_do_anonymous_page_fndecl_19385 do_anonymous_page fndecl 3 19385 NULL
+enable_so_cx25840_read_fndecl_19386 cx25840_read fndecl 0 19386 NULL nohasharray
+enable_so_ControllerQueueDepth_DAC960_Controller_19386 ControllerQueueDepth DAC960_Controller 0 19386 &enable_so_cx25840_read_fndecl_19386
-+enable_so_error_param1_vardecl_einj_c_19392 error_param1 vardecl_einj.c 0 19392 NULL
+enable_so_padlen_ip_beet_phdr_19393 padlen ip_beet_phdr 0 19393 NULL
+enable_so_ixgb_check_copybreak_fndecl_19396 ixgb_check_copybreak fndecl 3 19396 NULL nohasharray
+enable_so_at25_bin_write_fndecl_19396 at25_bin_write fndecl 6-5 19396 &enable_so_ixgb_check_copybreak_fndecl_19396
@@ -160858,10 +160215,10 @@ index 0000000..9da833a
+enable_so_sys_llistxattr_fndecl_19623 sys_llistxattr fndecl 3 19623 NULL
+enable_so_name_len_ext4_dir_entry_2_19628 name_len ext4_dir_entry_2 0 19628 NULL
+enable_so_logical_io_failure_record_19631 logical io_failure_record 0 19631 NULL
-+enable_so_max_queue_depth_vardecl_eata_c_19636 max_queue_depth vardecl_eata.c 0 19636 NULL
+enable_so_softback_buf_vardecl_fbcon_c_19637 softback_buf vardecl_fbcon.c 0 19637 NULL
+enable_so_sdio_io_rw_ext_helper_fndecl_19641 sdio_io_rw_ext_helper fndecl 6 19641 NULL
-+enable_so_pcfg_ofsh_cyttsp4_sysinfo_data_19644 pcfg_ofsh cyttsp4_sysinfo_data 0 19644 NULL
++enable_so_set_fp_int_qed_common_ops_19644 set_fp_int qed_common_ops 0 19644 NULL nohasharray
++enable_so_pcfg_ofsh_cyttsp4_sysinfo_data_19644 pcfg_ofsh cyttsp4_sysinfo_data 0 19644 &enable_so_set_fp_int_qed_common_ops_19644
+enable_so_memory_maker_code_mspro_sys_info_19650 memory_maker_code mspro_sys_info 0 19650 NULL
+enable_so_af9033_rd_regs_fndecl_19652 af9033_rd_regs fndecl 4 19652 NULL
+enable_so_shadow_step_fndecl_19653 shadow_step fndecl 2 19653 NULL
@@ -160876,7 +160233,6 @@ index 0000000..9da833a
+enable_so_fsl_edma_prep_slave_sg_fndecl_19672 fsl_edma_prep_slave_sg fndecl 3 19672 NULL
+enable_so_recv_intr_pipe_us_data_19678 recv_intr_pipe us_data 0 19678 NULL
+enable_so_bch_alloc_fndecl_19682 bch_alloc fndecl 1 19682 NULL
-+enable_so_ath10k_dbg_sta_write_delba_fndecl_19689 ath10k_dbg_sta_write_delba fndecl 3 19689 NULL
+enable_so_depth_em28xx_fmt_19696 depth em28xx_fmt 0 19696 NULL nohasharray
+enable_so_size_pkt_hdr_19696 size pkt_hdr 0 19696 &enable_so_depth_em28xx_fmt_19696 nohasharray
+enable_so_pcnt_bits_ubifs_info_19696 pcnt_bits ubifs_info 0 19696 &enable_so_size_pkt_hdr_19696 nohasharray
@@ -160884,13 +160240,12 @@ index 0000000..9da833a
+enable_so_st_fixed_buffer_size_vardecl_st_c_19699 st_fixed_buffer_size vardecl_st.c 0 19699 NULL
+enable_so_xfs_buf_get_maps_fndecl_19702 xfs_buf_get_maps fndecl 2 19702 NULL
+enable_so_gfs2_file_splice_write_fndecl_19705 gfs2_file_splice_write fndecl 4 19705 NULL
-+enable_so_fnic_max_qdepth_vardecl_fnic_main_c_19707 fnic_max_qdepth vardecl_fnic_main.c 0 19707 NULL
+enable_so_acpi_read_fast_fndecl_19709 acpi_read_fast fndecl 3-2 19709 NULL
+enable_so_max_blksize_sdio_func_19715 max_blksize sdio_func 0 19715 NULL
+enable_so_LastFreeEUN_NFTLrecord_19717 LastFreeEUN NFTLrecord 0 19717 NULL
+enable_so_slots_end_qxl_rom_19718 slots_end qxl_rom 0 19718 NULL
+enable_so_fat32_info_sector_fat_bios_param_block_19727 fat32_info_sector fat_bios_param_block 0 19727 NULL
-+enable_so_mps_trc_write_fndecl_19736 mps_trc_write fndecl 3 19736 NULL
++enable_so_msc_win_to_user_fndecl_19728 msc_win_to_user fndecl 3 19728 NULL
+enable_so_small_smb_init_no_tc_fndecl_19738 small_smb_init_no_tc fndecl 2 19738 NULL
+enable_so_max_active_conns_bnx2i_hba_19740 max_active_conns bnx2i_hba 0 19740 NULL
+enable_so_bytesperline_v4l2_pix_format_19741 bytesperline v4l2_pix_format 0 19741 NULL
@@ -160919,15 +160274,14 @@ index 0000000..9da833a
+enable_so_packet_space_tso_state_19824 packet_space tso_state 0 19824 NULL
+enable_so_vring_new_virtqueue_fndecl_19828 vring_new_virtqueue fndecl 2 19828 NULL
+enable_so___nfs4_get_acl_uncached_fndecl_19830 __nfs4_get_acl_uncached fndecl 3 19830 NULL
-+enable_so_size_asix_rx_fixup_info_19833 size asix_rx_fixup_info 0 19833 NULL
+enable_so__osd_req_list_objects_fndecl_19839 _osd_req_list_objects fndecl 6-2 19839 NULL
+enable_so_buf_used_uvc_video_queue_19843 buf_used uvc_video_queue 0 19843 NULL
-+enable_so_s3c_hsotg_send_reply_fndecl_19844 s3c_hsotg_send_reply fndecl 4 19844 NULL nohasharray
-+enable_so_rpos_cm4000_dev_19844 rpos cm4000_dev 0 19844 &enable_so_s3c_hsotg_send_reply_fndecl_19844
++enable_so_rpos_cm4000_dev_19844 rpos cm4000_dev 0 19844 NULL
+enable_so_fbmem_start_viafb_dev_19849 fbmem_start viafb_dev 0 19849 NULL
+enable_so_num_jumbo_rxd_qlcnic_adapter_19850 num_jumbo_rxd qlcnic_adapter 0 19850 NULL
+enable_so_xen_released_pages_vardecl_19851 xen_released_pages vardecl 0 19851 NULL
-+enable_so_qp_guest_endpoint_create_fndecl_19852 qp_guest_endpoint_create fndecl 5-4 19852 NULL
++enable_so_qp_guest_endpoint_create_fndecl_19852 qp_guest_endpoint_create fndecl 5-4 19852 NULL nohasharray
++enable_so_real_size_in_page_qed_ilt_cli_blk_19852 real_size_in_page qed_ilt_cli_blk 0 19852 &enable_so_qp_guest_endpoint_create_fndecl_19852
+enable_so_i5k_channel_probe_fndecl_19853 i5k_channel_probe fndecl 2 19853 NULL
+enable_so_ext4_direct_IO_fndecl_19865 ext4_direct_IO fndecl 3 19865 NULL
+enable_so_max_msix_vectors_ixgbe_mac_info_19874 max_msix_vectors ixgbe_mac_info 0 19874 NULL
@@ -160962,17 +160316,19 @@ index 0000000..9da833a
+enable_so_src_len_ccp_passthru_engine_19970 src_len ccp_passthru_engine 0 19970 NULL
+enable_so_vga_arb_read_fndecl_19973 vga_arb_read fndecl 3 19973 NULL
+enable_so_le_max_key_size_read_fndecl_19975 le_max_key_size_read fndecl 3 19975 NULL
++enable_so_cmd_hix5hd2_desc_19977 cmd hix5hd2_desc 0 19977 NULL
+enable_so_protocol_gre_base_hdr_19981 protocol gre_base_hdr 0 19981 NULL
+enable_so_size_packet_settings_19984 size packet_settings 0 19984 NULL
+enable_so_m5mols_read_fndecl_19986 m5mols_read fndecl 2 19986 NULL
+enable_so_palign_qib_devdata_19988 palign qib_devdata 0 19988 NULL
-+enable_so_f2fs_insert_range_fndecl_19990 f2fs_insert_range fndecl 2 19990 NULL
++enable_so_f2fs_insert_range_fndecl_19990 f2fs_insert_range fndecl 2-3 19990 NULL
+enable_so_hid_register_field_fndecl_19993 hid_register_field fndecl 3-2 19993 NULL
+enable_so_ocfs2_defrag_extent_fndecl_19994 ocfs2_defrag_extent fndecl 3-2 19994 NULL
+enable_so_of_get_nand_ecc_step_size_fndecl_20001 of_get_nand_ecc_step_size fndecl 0 20001 NULL
+enable_so_move_extent_per_page_fndecl_20004 move_extent_per_page fndecl 6-5-4-3 20004 NULL
+enable_so_copybreak_vardecl_sky2_c_20006 copybreak vardecl_sky2.c 0 20006 NULL
+enable_so_def_bpp_sm501_platdata_fbsub_20007 def_bpp sm501_platdata_fbsub 0 20007 NULL
++enable_so_tx_nr_rings_per_tc_bnxt_20008 tx_nr_rings_per_tc bnxt 0 20008 NULL
+enable_so_i_inline_size_ext4_inode_info_20015 i_inline_size ext4_inode_info 0 20015 NULL
+enable_so_y_drm_fb_helper_crtc_20016 y drm_fb_helper_crtc 0 20016 NULL nohasharray
+enable_so_start_bus_number_acpi_mcfg_allocation_20016 start_bus_number acpi_mcfg_allocation 0 20016 &enable_so_y_drm_fb_helper_crtc_20016
@@ -160983,6 +160339,7 @@ index 0000000..9da833a
+enable_so_sample_rate_lola_20032 sample_rate lola 0 20032 NULL
+enable_so_block_size_osst_tape_20034 block_size osst_tape 0 20034 NULL
+enable_so_rcvhdrentsize_qib_devdata_20040 rcvhdrentsize qib_devdata 0 20040 NULL
++enable_so_nr_luns_nvm_dev_20042 nr_luns nvm_dev 0 20042 NULL
+enable_so_batadv_interface_change_mtu_fndecl_20043 batadv_interface_change_mtu fndecl 2 20043 NULL nohasharray
+enable_so_id_len_netdev_phys_item_id_20043 id_len netdev_phys_item_id 0 20043 &enable_so_batadv_interface_change_mtu_fndecl_20043
+enable_so_ocrdma_alloc_lkey_fndecl_20045 ocrdma_alloc_lkey fndecl 5 20045 NULL
@@ -160994,7 +160351,6 @@ index 0000000..9da833a
+enable_so_fb_deferred_io_fsync_fndecl_20083 fb_deferred_io_fsync fndecl 2-3 20083 &enable_so_max_rqst_sz_nfs4_channel_attrs_20083
+enable_so_compat_rawv6_setsockopt_fndecl_20084 compat_rawv6_setsockopt fndecl 5 20084 NULL
+enable_so_rxsize_grcan_device_config_20087 rxsize grcan_device_config 0 20087 NULL
-+enable_so_ath10k_read_chip_id_fndecl_20090 ath10k_read_chip_id fndecl 3 20090 NULL
+enable_so_bnx2_set_rx_ring_size_fndecl_20092 bnx2_set_rx_ring_size fndecl 2 20092 NULL
+enable_so_r8712_read32_fndecl_20095 r8712_read32 fndecl 0 20095 NULL
+enable_so_reg_count_cs_extent_def_20096 reg_count cs_extent_def 0 20096 NULL
@@ -161017,6 +160373,7 @@ index 0000000..9da833a
+enable_so_byte_cnt_mlx5_cqe64_20158 byte_cnt mlx5_cqe64 0 20158 &enable_so_trans_usbhs_pkt_20158
+enable_so_snd_mixart_BA1_read_fndecl_20169 snd_mixart_BA1_read fndecl 5 20169 NULL
+enable_so_nr_gpio_tle62x0_state_20178 nr_gpio tle62x0_state 0 20178 NULL
++enable_so_snd_timer_user_status_fndecl_20180 snd_timer_user_status fndecl 0 20180 NULL
+enable_so_usb_ftdi_elan_edset_single_fndecl_20181 usb_ftdi_elan_edset_single fndecl 0 20181 NULL nohasharray
+enable_so_swapRB_sd_20181 swapRB sd 0 20181 &enable_so_usb_ftdi_elan_edset_single_fndecl_20181
+enable_so___kmalloc_track_caller_fndecl_20188 __kmalloc_track_caller fndecl 1 20188 NULL
@@ -161028,7 +160385,6 @@ index 0000000..9da833a
+enable_so_sectors_per_block_bits_dm_bufio_client_20202 sectors_per_block_bits dm_bufio_client 0 20202 NULL
+enable_so_max_frame_size__mgslpc_info_20204 max_frame_size _mgslpc_info 0 20204 NULL
+enable_so_sbq_len_rx_ring_20205 sbq_len rx_ring 0 20205 NULL
-+enable_so_i40e_dbg_netdev_ops_write_fndecl_20206 i40e_dbg_netdev_ops_write fndecl 3 20206 NULL
+enable_so_kfifo_copy_from_user_fndecl_20208 kfifo_copy_from_user fndecl 3-4-0 20208 NULL
+enable_so_dma_limit_tg3_20210 dma_limit tg3 0 20210 NULL
+enable_so_objlayout_write_done_fndecl_20211 objlayout_write_done fndecl 2 20211 NULL nohasharray
@@ -161039,21 +160395,21 @@ index 0000000..9da833a
+enable_so_sound_write_fndecl_20221 sound_write fndecl 3 20221 &enable_so_dmah_acm_wb_20221
+enable_so_produce_va_vmci_qp_page_file_info_20224 produce_va vmci_qp_page_file_info 0 20224 NULL
+enable_so_use_sg_osst_buffer_20225 use_sg osst_buffer 0 20225 NULL
-+enable_so_iwl_dbgfs_tx_queue_read_fndecl_20232 iwl_dbgfs_tx_queue_read fndecl 3 20232 NULL
+enable_so_ll_rw_extents_stats_seq_write_fndecl_20234 ll_rw_extents_stats_seq_write fndecl 3 20234 NULL
+enable_so_setup_sgl_buf_fndecl_20237 setup_sgl_buf fndecl 4 20237 NULL
+enable_so_phys_map_info_20239 phys map_info 0 20239 NULL
+enable_so_mac_find_mode_fndecl_20243 mac_find_mode fndecl 4 20243 NULL
++enable_so_rx_agg_bmap_size_bnxt_rx_ring_info_20244 rx_agg_bmap_size bnxt_rx_ring_info 0 20244 NULL
+enable_so_vtotal_psb_pipe_20245 vtotal psb_pipe 0 20245 NULL
+enable_so_nilfs_read_super_block_fndecl_20246 nilfs_read_super_block fndecl 3-2 20246 NULL
-+enable_so_i2c_writebytes_fndecl_20248 i2c_writebytes fndecl 3 20248 NULL
++enable_so_size_drm_virtgpu_resource_create_20248 size drm_virtgpu_resource_create 0 20248 NULL nohasharray
++enable_so_i2c_writebytes_fndecl_20248 i2c_writebytes fndecl 3 20248 &enable_so_size_drm_virtgpu_resource_create_20248
+enable_so_max_size_inet_frag_queue_20249 max_size inet_frag_queue 0 20249 NULL
+enable_so_ip_append_page_fndecl_20261 ip_append_page fndecl 5-4 20261 NULL
+enable_so_value_len_ocfs2_security_xattr_info_20265 value_len ocfs2_security_xattr_info 0 20265 NULL
+enable_so_build_header_fndecl_20275 build_header fndecl 4-2 20275 NULL
+enable_so_y_skip_top_mt9t031_20278 y_skip_top mt9t031 0 20278 NULL
+enable_so_fifo_size_eg20t_port_20279 fifo_size eg20t_port 0 20279 NULL
-+enable_so_f2fs_xattr_generic_set_fndecl_20280 f2fs_xattr_generic_set fndecl 4 20280 NULL
+enable_so_size_vx_ibl_info_20282 size vx_ibl_info 0 20282 NULL
+enable_so_soc_mbus_bytes_per_line_fndecl_20288 soc_mbus_bytes_per_line fndecl 0-1 20288 NULL
+enable_so_kone_receive_fndecl_20289 kone_receive fndecl 4 20289 NULL
@@ -161067,7 +160423,6 @@ index 0000000..9da833a
+enable_so_xfs_dir2_leaf_trim_data_fndecl_20310 xfs_dir2_leaf_trim_data fndecl 3 20310 NULL nohasharray
+enable_so_index_vardecl_nm256_c_20310 index vardecl_nm256.c 0 20310 &enable_so_xfs_dir2_leaf_trim_data_fndecl_20310
+enable_so_cx18_read_pos_fndecl_20312 cx18_read_pos fndecl 3 20312 NULL
-+enable_so_short_retry_limit_read_fndecl_20316 short_retry_limit_read fndecl 3 20316 NULL
+enable_so_cas_change_mtu_fndecl_20320 cas_change_mtu fndecl 2 20320 NULL
+enable_so_ati_create_gatt_pages_fndecl_20321 ati_create_gatt_pages fndecl 1 20321 NULL
+enable_so_max_rxsz_cxgbi_ddp_info_20322 max_rxsz cxgbi_ddp_info 0 20322 NULL nohasharray
@@ -161080,7 +160435,6 @@ index 0000000..9da833a
+enable_so_cxgbi_alloc_big_mem_fndecl_20336 cxgbi_alloc_big_mem fndecl 1 20336 NULL
+enable_so_ss_out_channels_hdspm_20338 ss_out_channels hdspm 0 20338 NULL
+enable_so_offset_videobuf_dmabuf_20339 offset videobuf_dmabuf 0 20339 NULL
-+enable_so_request_sz_MPT2SAS_ADAPTER_20341 request_sz MPT2SAS_ADAPTER 0 20341 NULL
+enable_so_translate_gpa_kvm_mmu_20350 translate_gpa kvm_mmu 0 20350 NULL nohasharray
+enable_so_sq_wqe_count_mlx5_ib_create_qp_20350 sq_wqe_count mlx5_ib_create_qp 0 20350 &enable_so_translate_gpa_kvm_mmu_20350
+enable_so_sections_pe_hdr_20351 sections pe_hdr 0 20351 NULL
@@ -161098,6 +160452,7 @@ index 0000000..9da833a
+enable_so_ms_transfer_data_fndecl_20384 ms_transfer_data fndecl 0 20384 &enable_so_xfs_qm_fill_state_fndecl_20384
+enable_so_opts1_rx_desc_20387 opts1 rx_desc 0 20387 NULL
+enable_so_btrfs_del_items_fndecl_20388 btrfs_del_items fndecl 5 20388 NULL
++enable_so_sw_nchannels_stm_data_20389 sw_nchannels stm_data 0 20389 NULL
+enable_so_periodic_size_fotg210_hcd_20395 periodic_size fotg210_hcd 0 20395 NULL
+enable_so_leb_size_ubi_device_20396 leb_size ubi_device 0 20396 NULL
+enable_so_inode_efs_dentry_20401 inode efs_dentry 0 20401 NULL
@@ -161116,10 +160471,10 @@ index 0000000..9da833a
+enable_so_ib_max_size_mvumi_hba_20452 ib_max_size mvumi_hba 0 20452 NULL
+enable_so_stride_banshee_reg_20459 stride banshee_reg 0 20459 NULL
+enable_so_error_elp_while_rx_exch_read_fndecl_20460 error_elp_while_rx_exch_read fndecl 3 20460 NULL
-+enable_so_key_tx_spec_read_fndecl_20461 key_tx_spec_read fndecl 3 20461 NULL
+enable_so_gigaset_if_receive_fndecl_20462 gigaset_if_receive fndecl 3 20462 NULL
+enable_so_xfs_setsize_buftarg_fndecl_20465 xfs_setsize_buftarg fndecl 2 20465 NULL
-+enable_so_scsi_end_request_fndecl_20468 scsi_end_request fndecl 3-4-2 20468 NULL
++enable_so_offset_scif_window_iter_20468 offset scif_window_iter 0 20468 NULL nohasharray
++enable_so_scsi_end_request_fndecl_20468 scsi_end_request fndecl 3-4-2 20468 &enable_so_offset_scif_window_iter_20468
+enable_so_tx_data_fndecl_20470 tx_data fndecl 4-3 20470 NULL
+enable_so_wMaxCommand_usb_cdc_dmm_desc_20473 wMaxCommand usb_cdc_dmm_desc 0 20473 NULL
+enable_so_iptunnel_pull_header_fndecl_20476 iptunnel_pull_header fndecl 3-2 20476 NULL nohasharray
@@ -161131,8 +160486,8 @@ index 0000000..9da833a
+enable_so_pageshift_sddr09_card_info_20494 pageshift sddr09_card_info 0 20494 NULL
+enable_so_nrbchan_mISDNdevice_20497 nrbchan mISDNdevice 0 20497 NULL
+enable_so_ocfs2_extend_xattr_bucket_fndecl_20499 ocfs2_extend_xattr_bucket fndecl 4 20499 NULL
-+enable_so_aac_rkt_ioremap_fndecl_20502 aac_rkt_ioremap fndecl 2 20502 NULL nohasharray
-+enable_so___f2fs_add_link_fndecl_20502 __f2fs_add_link fndecl 4 20502 &enable_so_aac_rkt_ioremap_fndecl_20502
++enable_so___f2fs_add_link_fndecl_20502 __f2fs_add_link fndecl 4 20502 NULL nohasharray
++enable_so_aac_rkt_ioremap_fndecl_20502 aac_rkt_ioremap fndecl 2 20502 &enable_so___f2fs_add_link_fndecl_20502
+enable_so_nzones_adfs_discrecord_20503 nzones adfs_discrecord 0 20503 NULL nohasharray
+enable_so_max_pfn_mapped_vardecl_20503 max_pfn_mapped vardecl 0 20503 &enable_so_nzones_adfs_discrecord_20503 nohasharray
+enable_so_id_platform_device_20503 id platform_device 0 20503 &enable_so_max_pfn_mapped_vardecl_20503
@@ -161158,6 +160513,7 @@ index 0000000..9da833a
+enable_so_wacom_calc_hid_res_fndecl_20558 wacom_calc_hid_res fndecl 1 20558 NULL
+enable_so_mtdchar_writeoob_fndecl_20562 mtdchar_writeoob fndecl 3-4 20562 NULL
+enable_so_sg_write_fndecl_20563 sg_write fndecl 3 20563 NULL
++enable_so_free_extents_btrfs_free_space_ctl_20566 free_extents btrfs_free_space_ctl 0 20566 NULL
+enable_so_isdn_readbchan_fndecl_20570 isdn_readbchan fndecl 5-0 20570 NULL
+enable_so_nullb_indexes_vardecl_null_blk_c_20571 nullb_indexes vardecl_null_blk.c 0 20571 NULL
+enable_so_check_defrag_in_cache_fndecl_20573 check_defrag_in_cache fndecl 3-2 20573 NULL
@@ -161209,7 +160565,6 @@ index 0000000..9da833a
+enable_so_flush_data_end_io_fndecl_20735 flush_data_end_io fndecl 2 20735 NULL nohasharray
+enable_so_stv0680_set_video_mode_fndecl_20735 stv0680_set_video_mode fndecl 0 20735 &enable_so_flush_data_end_io_fndecl_20735
+enable_so_max_io_length_ore_layout_20738 max_io_length ore_layout 0 20738 NULL
-+enable_so_bio_integrity_intervals_fndecl_20741 bio_integrity_intervals fndecl 0-2 20741 NULL
+enable_so_read_data_done_iscsi_cmd_20745 read_data_done iscsi_cmd 0 20745 NULL
+enable_so_max_sge_qib_rq_20746 max_sge qib_rq 0 20746 NULL nohasharray
+enable_so_msgbuflen_blogic_adapter_20746 msgbuflen blogic_adapter 0 20746 &enable_so_max_sge_qib_rq_20746
@@ -161217,7 +160572,6 @@ index 0000000..9da833a
+enable_so_sb_pseg_start_nilfs_segment_buffer_20750 sb_pseg_start nilfs_segment_buffer 0 20750 NULL
+enable_so_ath6kl_wmi_probedssid_cmd_fndecl_20751 ath6kl_wmi_probedssid_cmd fndecl 2 20751 NULL nohasharray
+enable_so_ttusb2_msg_fndecl_20751 ttusb2_msg fndecl 4 20751 &enable_so_ath6kl_wmi_probedssid_cmd_fndecl_20751
-+enable_so_read_file_antenna_diversity_fndecl_20758 read_file_antenna_diversity fndecl 3 20758 NULL
+enable_so_TransferCount__MPI2_SCSI_IO_REPLY_20759 TransferCount _MPI2_SCSI_IO_REPLY 0 20759 NULL
+enable_so_do_numa_page_fndecl_20764 do_numa_page fndecl 3 20764 NULL nohasharray
+enable_so_r_readdir_offset_ceph_mds_request_20764 r_readdir_offset ceph_mds_request 0 20764 &enable_so_do_numa_page_fndecl_20764
@@ -161237,7 +160591,6 @@ index 0000000..9da833a
+enable_so_namelen_xfs_da_args_20803 namelen xfs_da_args 0 20803 NULL nohasharray
+enable_so_win_sz_wmi_addba_req_event_20803 win_sz wmi_addba_req_event 0 20803 &enable_so_namelen_xfs_da_args_20803
+enable_so_compat_sys_migrate_pages_fndecl_20806 compat_sys_migrate_pages fndecl 2 20806 NULL
-+enable_so_g_mic_devno_vardecl_mic_main_c_20812 g_mic_devno vardecl_mic_main.c 0 20812 NULL
+enable_so_mgmt_index_event_fndecl_20813 mgmt_index_event fndecl 4 20813 NULL
+enable_so_rcvidx_isac_20815 rcvidx isac 0 20815 NULL
+enable_so_filldir_fndecl_20820 filldir fndecl 3 20820 NULL
@@ -161254,7 +160607,8 @@ index 0000000..9da833a
+enable_so_pathlen_nfs3_symlinkargs_20843 pathlen nfs3_symlinkargs 0 20843 NULL
+enable_so_udp_sendpage_fndecl_20845 udp_sendpage fndecl 4-3 20845 NULL nohasharray
+enable_so_shmem_pread_slow_fndecl_20845 shmem_pread_slow fndecl 2-3 20845 &enable_so_udp_sendpage_fndecl_20845
-+enable_so_dma_init_coherent_memory_fndecl_20846 dma_init_coherent_memory fndecl 3 20846 NULL
++enable_so_acpi_copy_property_array_u64_fndecl_20846 acpi_copy_property_array_u64 fndecl 0 20846 NULL nohasharray
++enable_so_dma_init_coherent_memory_fndecl_20846 dma_init_coherent_memory fndecl 3 20846 &enable_so_acpi_copy_property_array_u64_fndecl_20846
+enable_so_store_limit_l_fscache_object_20847 store_limit_l fscache_object 0 20847 NULL
+enable_so_cur_page_block_dio_submit_20851 cur_page_block dio_submit 0 20851 NULL
+enable_so_pkcs7_sig_note_signature_fndecl_20857 pkcs7_sig_note_signature fndecl 5 20857 NULL
@@ -161268,11 +160622,10 @@ index 0000000..9da833a
+enable_so_length_iwl_ucode_tlv_20871 length iwl_ucode_tlv 0 20871 NULL
+enable_so_btrfs_prealloc_file_range_fndecl_20872 btrfs_prealloc_file_range fndecl 3 20872 NULL
+enable_so_nr_hotspot_blocks_smq_policy_20876 nr_hotspot_blocks smq_policy 0 20876 NULL
++enable_so_max_q_per_vf_rcb_common_cb_20877 max_q_per_vf rcb_common_cb 0 20877 NULL
+enable_so_usb_stor_intr_transfer_fndecl_20883 usb_stor_intr_transfer fndecl 3 20883 NULL
-+enable_so_codec_reg_write_file_fndecl_20887 codec_reg_write_file fndecl 3 20887 NULL
+enable_so_cl_local_node_o2nm_cluster_20896 cl_local_node o2nm_cluster 0 20896 NULL
+enable_so_idiag_info_size_inet_diag_handler_20898 idiag_info_size inet_diag_handler 0 20898 NULL
-+enable_so_check_vendor_extension_fndecl_20901 check_vendor_extension fndecl 1 20901 NULL
+enable_so_num_rows_vardecl_arcfb_c_20902 num_rows vardecl_arcfb.c 0 20902 NULL
+enable_so_radeon_vm_directory_size_fndecl_20909 radeon_vm_directory_size fndecl 0 20909 NULL
+enable_so_aggr_size_tx_agg_len_read_fndecl_20910 aggr_size_tx_agg_len_read fndecl 3 20910 NULL
@@ -161281,13 +160634,11 @@ index 0000000..9da833a
+enable_so_dvb_ringbuffer_pkt_write_fndecl_20914 dvb_ringbuffer_pkt_write fndecl 3 20914 &enable_so_n_dir_band_hpfs_super_block_20914
+enable_so_btrfs_next_leaf_fndecl_20915 btrfs_next_leaf fndecl 0 20915 NULL
+enable_so_zisofs_uncompress_block_fndecl_20917 zisofs_uncompress_block fndecl 2-3-6-0-4 20917 NULL
-+enable_so_key_key_read_fndecl_20922 key_key_read fndecl 3 20922 NULL
+enable_so_mmap_piobufs_fndecl_20927 mmap_piobufs fndecl 4 20927 NULL
+enable_so_qbuf_scan_fndecl_20933 qbuf_scan fndecl 3 20933 NULL
+enable_so_pkey_index_mlx4_qp_path_20950 pkey_index mlx4_qp_path 0 20950 NULL
+enable_so_gid_table_len_mthca_limits_20957 gid_table_len mthca_limits 0 20957 NULL
+enable_so_npages_mlx5_buf_20958 npages mlx5_buf 0 20958 NULL
-+enable_so__iwl_dbgfs_d3_sram_write_fndecl_20960 _iwl_dbgfs_d3_sram_write fndecl 3 20960 NULL
+enable_so_calc_plane_fndecl_20962 calc_plane fndecl 0-2-1 20962 NULL
+enable_so_range_start_writeback_control_20965 range_start writeback_control 0 20965 NULL
+enable_so_dbDiscardAG_fndecl_20969 dbDiscardAG fndecl 0-3 20969 NULL
@@ -161296,8 +160647,7 @@ index 0000000..9da833a
+enable_so_skd_preop_sg_list_fndecl_20975 skd_preop_sg_list fndecl 0 20975 NULL
+enable_so_ieee80211_if_write_beacon_loss_fndecl_20979 ieee80211_if_write_beacon_loss fndecl 3 20979 NULL
+enable_so_offset_fuse_notify_store_out_20985 offset fuse_notify_store_out 0 20985 NULL
-+enable_so___set_extent_bit_fndecl_20986 __set_extent_bit fndecl 3-2 20986 NULL nohasharray
-+enable_so_spidev_compat_ioc_message_fndecl_20986 spidev_compat_ioc_message fndecl 2 20986 &enable_so___set_extent_bit_fndecl_20986
++enable_so_spidev_compat_ioc_message_fndecl_20986 spidev_compat_ioc_message fndecl 2 20986 NULL
+enable_so_dy_fb_image_20988 dy fb_image 0 20988 NULL
+enable_so_gfn_guest_walker32_20990 gfn guest_walker32 0 20990 NULL
+enable_so_do_set_pte_fndecl_20994 do_set_pte fndecl 2 20994 NULL
@@ -161426,7 +160776,6 @@ index 0000000..9da833a
+enable_so_num_paths_bna_rx_config_21315 num_paths bna_rx_config 0 21315 NULL
+enable_so_fuse_copy_page_fndecl_21316 fuse_copy_page fndecl 4-3 21316 NULL
+enable_so_tcp_fragment_fndecl_21318 tcp_fragment fndecl 3 21318 NULL
-+enable_so__iwl_dbgfs_tx_flush_write_fndecl_21320 _iwl_dbgfs_tx_flush_write fndecl 3 21320 NULL
+enable_so_packet_present_len_cfg80211_wowlan_wakeup_21321 packet_present_len cfg80211_wowlan_wakeup 0 21321 NULL nohasharray
+enable_so_sq_len_queue_set_21321 sq_len queue_set 0 21321 &enable_so_packet_present_len_cfg80211_wowlan_wakeup_21321
+enable_so_mincore_unmapped_range_fndecl_21322 mincore_unmapped_range fndecl 1 21322 NULL
@@ -161475,11 +160824,12 @@ index 0000000..9da833a
+enable_so_mmio_start_fb_fix_screeninfo_21486 mmio_start fb_fix_screeninfo 0 21486 NULL
+enable_so_fuse_do_ioctl_fndecl_21491 fuse_do_ioctl fndecl 2 21491 NULL
+enable_so_hpfs_ea_ext_remove_fndecl_21492 hpfs_ea_ext_remove fndecl 4-2 21492 NULL
-+enable_so_memsize_vgastate_21493 memsize vgastate 0 21493 NULL nohasharray
-+enable_so_num_iac_hci_cp_write_current_iac_lap_21493 num_iac hci_cp_write_current_iac_lap 0 21493 &enable_so_memsize_vgastate_21493
++enable_so_num_iac_hci_cp_write_current_iac_lap_21493 num_iac hci_cp_write_current_iac_lap 0 21493 NULL nohasharray
++enable_so_memsize_vgastate_21493 memsize vgastate 0 21493 &enable_so_num_iac_hci_cp_write_current_iac_lap_21493
+enable_so_video_pbase_vivid_dev_21503 video_pbase vivid_dev 0 21503 NULL
+enable_so_vmw_cmdbuf_set_pool_size_fndecl_21513 vmw_cmdbuf_set_pool_size fndecl 2 21513 NULL
-+enable_so_module_load_offset_vardecl_module_c_21518 module_load_offset vardecl_module.c 0 21518 NULL
++enable_so_ocfs2_xattr_user_set_fndecl_21518 ocfs2_xattr_user_set fndecl 5 21518 NULL nohasharray
++enable_so_module_load_offset_vardecl_module_c_21518 module_load_offset vardecl_module.c 0 21518 &enable_so_ocfs2_xattr_user_set_fndecl_21518
+enable_so_max_io_support_mvumi_hs_page1_21519 max_io_support mvumi_hs_page1 0 21519 NULL
+enable_so_fifo_size_hscx_hw_21522 fifo_size hscx_hw 0 21522 NULL nohasharray
+enable_so_c67x00_urb_dequeue_fndecl_21522 c67x00_urb_dequeue fndecl 3 21522 &enable_so_fifo_size_hscx_hw_21522
@@ -161494,6 +160844,7 @@ index 0000000..9da833a
+enable_so_zr364xx_read_fndecl_21537 zr364xx_read fndecl 3 21537 NULL
+enable_so_pvid_be_adapter_21538 pvid be_adapter 0 21538 NULL
+enable_so_viafb_iga2_odev_proc_write_fndecl_21544 viafb_iga2_odev_proc_write fndecl 3 21544 NULL
++enable_so_pcm_snd_oxfw_stream_formation_21546 pcm snd_oxfw_stream_formation 0 21546 NULL
+enable_so_ql_get_full_dup_fndecl_21549 ql_get_full_dup fndecl 0 21549 NULL
+enable_so_nSkipped_vardecl_gl860_c_21557 nSkipped vardecl_gl860.c 0 21557 NULL
+enable_so___erst_read_to_erange_fndecl_21558 __erst_read_to_erange fndecl 0-1 21558 NULL
@@ -161506,7 +160857,6 @@ index 0000000..9da833a
+enable_so_cont_extent_rock_state_21572 cont_extent rock_state 0 21572 &enable_so_start_resource_21572
+enable_so_le_min_key_size_write_fndecl_21573 le_min_key_size_write fndecl 3 21573 NULL
+enable_so_uv_possible_blades_vardecl_21579 uv_possible_blades vardecl 0 21579 NULL
-+enable_so_il_dbgfs_sensitivity_read_fndecl_21585 il_dbgfs_sensitivity_read fndecl 3 21585 NULL
+enable_so_xfs_buf_map_from_irec_fndecl_21587 xfs_buf_map_from_irec fndecl 5 21587 NULL
+enable_so_buf_len_wmi_mgmt_rx_hdr_v1_21592 buf_len wmi_mgmt_rx_hdr_v1 0 21592 NULL
+enable_so_device_count_vardecl_portman2x4_c_21593 device_count vardecl_portman2x4.c 0 21593 NULL
@@ -161530,8 +160880,8 @@ index 0000000..9da833a
+enable_so_hlength_iscsi_hdr_21640 hlength iscsi_hdr 0 21640 NULL
+enable_so_ioremap_nocache_fndecl_21652 ioremap_nocache fndecl 2-1 21652 NULL nohasharray
+enable_so_nvram_npiv_size_qla_hw_data_21652 nvram_npiv_size qla_hw_data 0 21652 &enable_so_ioremap_nocache_fndecl_21652
-+enable_so_arch_add_memory_fndecl_21655 arch_add_memory fndecl 3-2 21655 NULL nohasharray
-+enable_so_cxd2841er_write_regs_fndecl_21655 cxd2841er_write_regs fndecl 5 21655 &enable_so_arch_add_memory_fndecl_21655
++enable_so_cxd2841er_write_regs_fndecl_21655 cxd2841er_write_regs fndecl 5 21655 NULL nohasharray
++enable_so_arch_add_memory_fndecl_21655 arch_add_memory fndecl 3-2 21655 &enable_so_cxd2841er_write_regs_fndecl_21655
+enable_so_tps6507x_i2c_read_device_fndecl_21660 tps6507x_i2c_read_device fndecl 3 21660 NULL
+enable_so_overlay_cap_left_vivid_dev_21663 overlay_cap_left vivid_dev 0 21663 NULL
+enable_so_update_pmkid_fndecl_21666 update_pmkid fndecl 4 21666 NULL
@@ -161540,8 +160890,11 @@ index 0000000..9da833a
+enable_so_bio_alloc_bioset_fndecl_21671 bio_alloc_bioset fndecl 2 21671 &enable_so_length_ccp_dma_info_21671 nohasharray
+enable_so_lwtunnel_state_alloc_fndecl_21671 lwtunnel_state_alloc fndecl 1 21671 &enable_so_bio_alloc_bioset_fndecl_21671
+enable_so_start_data_prctl_mm_map_21673 start_data prctl_mm_map 0 21673 NULL
++enable_so_btrfs_free_extent_fndecl_21683 btrfs_free_extent fndecl 3-4 21683 NULL
+enable_so_in_min_chans_snd_card_asihpi_21686 in_min_chans snd_card_asihpi 0 21686 NULL
-+enable_so_b43legacy_debugfs_read_fndecl_21690 b43legacy_debugfs_read fndecl 3 21690 NULL
++enable_so_mfw_mb_length_qed_mcp_info_21688 mfw_mb_length qed_mcp_info 0 21688 NULL
++enable_so_put_free_pages_fndecl_21690 put_free_pages fndecl 2 21690 NULL nohasharray
++enable_so_b43legacy_debugfs_read_fndecl_21690 b43legacy_debugfs_read fndecl 3 21690 &enable_so_put_free_pages_fndecl_21690
+enable_so_fc_fcp_send_data_fndecl_21692 fc_fcp_send_data fndecl 4-3 21692 NULL
+enable_so_resync_max_sectors_mddev_21693 resync_max_sectors mddev 0 21693 NULL
+enable_so_max_pkt_size_pktgen_dev_21696 max_pkt_size pktgen_dev 0 21696 NULL nohasharray
@@ -161559,6 +160912,7 @@ index 0000000..9da833a
+enable_so_buff_size_host_cmd_ds_txbuf_cfg_21725 buff_size host_cmd_ds_txbuf_cfg 0 21725 NULL
+enable_so_hpfs_set_ea_fndecl_21731 hpfs_set_ea fndecl 5 21731 NULL
+enable_so_amdgpu_cgs_gmap_kmem_fndecl_21734 amdgpu_cgs_gmap_kmem fndecl 3 21734 NULL
++enable_so_cids_qed_qm_iids_21740 cids qed_qm_iids 0 21740 NULL
+enable_so_groups_netlink_kernel_cfg_21741 groups netlink_kernel_cfg 0 21741 NULL
+enable_so_blk_rq_map_integrity_sg_fndecl_21744 blk_rq_map_integrity_sg fndecl 0 21744 NULL nohasharray
+enable_so_sdricoh_blockio_fndecl_21744 sdricoh_blockio fndecl 0 21744 &enable_so_blk_rq_map_integrity_sg_fndecl_21744
@@ -161568,6 +160922,7 @@ index 0000000..9da833a
+enable_so_bufsiz_mousedev_client_21759 bufsiz mousedev_client 0 21759 NULL
+enable_so_width_tm6000_fh_21761 width tm6000_fh 0 21761 NULL
+enable_so_req_lim_delta_srp_login_rsp_21762 req_lim_delta srp_login_rsp 0 21762 NULL
++enable_so_next_checkpoint_r5l_log_21765 next_checkpoint r5l_log 0 21765 NULL
+enable_so_br_startblock_xfs_bmbt_irec_21769 br_startblock xfs_bmbt_irec 0 21769 NULL
+enable_so_regmap_get_val_bytes_fndecl_21774 regmap_get_val_bytes fndecl 0 21774 NULL
+enable_so_ath6kl_fwlog_mask_read_fndecl_21777 ath6kl_fwlog_mask_read fndecl 3 21777 NULL
@@ -161575,7 +160930,6 @@ index 0000000..9da833a
+enable_so_tpg_alloc_fndecl_21789 tpg_alloc fndecl 2 21789 NULL
+enable_so_find_group_dir_fndecl_21790 find_group_dir fndecl 0 21790 NULL
+enable_so_idetape_chrdev_read_fndecl_21794 idetape_chrdev_read fndecl 3 21794 NULL
-+enable_so_iwl_dbgfs_log_event_read_fndecl_21800 iwl_dbgfs_log_event_read fndecl 3 21800 NULL
+enable_so_reg_stride_regmap_21801 reg_stride regmap 0 21801 NULL
+enable_so_num_vss_hpf_cfgs_wm8994_pdata_21802 num_vss_hpf_cfgs wm8994_pdata 0 21802 NULL
+enable_so___svc_create_fndecl_21804 __svc_create fndecl 2-3 21804 NULL
@@ -161604,8 +160958,8 @@ index 0000000..9da833a
+enable_so_mlx4_init_icm_table_fndecl_21876 mlx4_init_icm_table fndecl 4-5 21876 &enable_so_ad_sd_read_reg_fndecl_21876
+enable_so__drbd_send_page_fndecl_21886 _drbd_send_page fndecl 4 21886 NULL nohasharray
+enable_so___copy_to_user_ll_fndecl_21886 __copy_to_user_ll fndecl 0 21886 &enable_so__drbd_send_page_fndecl_21886
-+enable_so_picolcd_debug_reset_write_fndecl_21888 picolcd_debug_reset_write fndecl 3 21888 NULL
+enable_so_bio_integrity_alloc_fndecl_21889 bio_integrity_alloc fndecl 3 21889 NULL
++enable_so_ext4_xattr_trusted_set_fndecl_21891 ext4_xattr_trusted_set fndecl 5 21891 NULL
+enable_so_npwm_pwm_chip_21895 npwm pwm_chip 0 21895 NULL
+enable_so_fat_get_block_fndecl_21902 fat_get_block fndecl 2 21902 NULL
+enable_so_max_torch_intensity_adp1653_platform_data_21907 max_torch_intensity adp1653_platform_data 0 21907 NULL
@@ -161615,18 +160969,16 @@ index 0000000..9da833a
+enable_so_error_bio_and_error_21918 error bio_and_error 0 21918 NULL
+enable_so_addr_width_snd_dmaengine_dai_dma_data_21920 addr_width snd_dmaengine_dai_dma_data 0 21920 NULL
+enable_so_ceph_osdc_new_request_fndecl_21921 ceph_osdc_new_request fndecl 7 21921 NULL
-+enable_so_membase_pm8001_hba_memspace_21924 membase pm8001_hba_memspace 0 21924 NULL nohasharray
-+enable_so_max_q_depth_req_que_21924 max_q_depth req_que 0 21924 &enable_so_membase_pm8001_hba_memspace_21924
++enable_so_membase_pm8001_hba_memspace_21924 membase pm8001_hba_memspace 0 21924 NULL
+enable_so_ath6kl_sdio_bmi_read_fndecl_21930 ath6kl_sdio_bmi_read fndecl 3 21930 NULL
+enable_so_error_memstick_request_21931 error memstick_request 0 21931 NULL nohasharray
+enable_so_bfad_iocmd_rport_set_speed_fndecl_21931 bfad_iocmd_rport_set_speed fndecl 0 21931 &enable_so_error_memstick_request_21931 nohasharray
+enable_so_rx_eth_fndecl_21931 rx_eth fndecl 4 21931 &enable_so_bfad_iocmd_rport_set_speed_fndecl_21931
-+enable_so_page_cache_async_readahead_fndecl_21944 page_cache_async_readahead fndecl 5 21944 NULL nohasharray
-+enable_so_u32_array_read_fndecl_21944 u32_array_read fndecl 3 21944 &enable_so_page_cache_async_readahead_fndecl_21944 nohasharray
-+enable_so_mei_dbgfs_read_meclients_fndecl_21944 mei_dbgfs_read_meclients fndecl 3 21944 &enable_so_u32_array_read_fndecl_21944
++enable_so_page_cache_async_readahead_fndecl_21944 page_cache_async_readahead fndecl 5 21944 NULL
+enable_so_ssb_bus_ssbbus_register_fndecl_21946 ssb_bus_ssbbus_register fndecl 2 21946 NULL
+enable_so_in_pipe_ttusb_dec_21947 in_pipe ttusb_dec 0 21947 NULL
+enable_so_xprt_max_tcp_slot_table_entries_vardecl_xprtsock_c_21949 xprt_max_tcp_slot_table_entries vardecl_xprtsock.c 0 21949 NULL
++enable_so_kvm_hv_set_msr_fndecl_21951 kvm_hv_set_msr fndecl 3 21951 NULL
+enable_so_do_update_counters_fndecl_21952 do_update_counters fndecl 4 21952 NULL
+enable_so_nrprocs_rpc_version_21954 nrprocs rpc_version 0 21954 NULL
+enable_so_sel_write_avc_cache_threshold_fndecl_21955 sel_write_avc_cache_threshold fndecl 3 21955 NULL
@@ -161634,7 +160986,8 @@ index 0000000..9da833a
+enable_so_ocfs2_find_refcount_rec_in_rl_fndecl_21962 ocfs2_find_refcount_rec_in_rl fndecl 3-4 21962 NULL
+enable_so_num_desc_qlcnic_host_rds_ring_21963 num_desc qlcnic_host_rds_ring 0 21963 NULL
+enable_so_reg_page_map_set_fndecl_21967 reg_page_map_set fndecl 0 21967 NULL
-+enable_so_dblock_gfs2_journal_extent_21971 dblock gfs2_journal_extent 0 21971 NULL nohasharray
++enable_so_vram_size_ast_private_21971 vram_size ast_private 0 21971 NULL nohasharray
++enable_so_dblock_gfs2_journal_extent_21971 dblock gfs2_journal_extent 0 21971 &enable_so_vram_size_ast_private_21971 nohasharray
+enable_so_ms_os_descs_ext_prop_count_ffs_data_21971 ms_os_descs_ext_prop_count ffs_data 0 21971 &enable_so_dblock_gfs2_journal_extent_21971
+enable_so_bulk_out_size_usb_cardstate_21974 bulk_out_size usb_cardstate 0 21974 NULL
+enable_so_max_data_sg_nents_target_core_fabric_ops_21975 max_data_sg_nents target_core_fabric_ops 0 21975 NULL nohasharray
@@ -161643,7 +160996,6 @@ index 0000000..9da833a
+enable_so_sched_queue_mlx4_qp_path_21976 sched_queue mlx4_qp_path 0 21976 NULL
+enable_so_nxt200x_writebytes_fndecl_21977 nxt200x_writebytes fndecl 4 21977 NULL nohasharray
+enable_so_donor_start_move_extent_21977 donor_start move_extent 0 21977 &enable_so_nxt200x_writebytes_fndecl_21977
-+enable_so_ieee80211_if_read_dot11MeshHWMPRannInterval_fndecl_21978 ieee80211_if_read_dot11MeshHWMPRannInterval fndecl 3 21978 NULL
+enable_so_calc_fat_clusters_fndecl_21982 calc_fat_clusters fndecl 0 21982 NULL
+enable_so__scif_send_fndecl_21987 _scif_send fndecl 3-0 21987 NULL
+enable_so_split_nodes_interleave_fndecl_21988 split_nodes_interleave fndecl 3-5-4 21988 NULL
@@ -161651,6 +161003,7 @@ index 0000000..9da833a
+enable_so_process_ipsec_fndecl_21991 process_ipsec fndecl 3 21991 NULL
+enable_so_sr_read_cmd_fndecl_21992 sr_read_cmd fndecl 5 21992 NULL
+enable_so_sec_per_clus_msdos_sb_info_21995 sec_per_clus msdos_sb_info 0 21995 NULL
++enable_so_len_tpm_info_21998 len tpm_info 0 21998 NULL
+enable_so_ath6kl_wmi_bssinfo_event_rx_fndecl_22000 ath6kl_wmi_bssinfo_event_rx fndecl 3 22000 NULL
+enable_so_ath6kl_wmi_set_tx_pwr_cmd_fndecl_22001 ath6kl_wmi_set_tx_pwr_cmd fndecl 2 22001 NULL
+enable_so_length_ib_sge_22002 length ib_sge 0 22002 NULL
@@ -161662,6 +161015,7 @@ index 0000000..9da833a
+enable_so_buffer_size_nm256_22021 buffer_size nm256 0 22021 NULL
+enable_so_GlobalCredits__MSG_IOC_FACTS_REPLY_22031 GlobalCredits _MSG_IOC_FACTS_REPLY 0 22031 NULL
+enable_so_nv50_dmac_create_fndecl_22035 nv50_dmac_create fndecl 6 22035 NULL
++enable_so_vmw_du_crtc_cursor_set2_fndecl_22036 vmw_du_crtc_cursor_set2 fndecl 5-4 22036 NULL
+enable_so_rtl8723be_c2h_packet_handler_fndecl_22040 rtl8723be_c2h_packet_handler fndecl 3 22040 NULL
+enable_so_dm_exception_store_set_chunk_size_fndecl_22042 dm_exception_store_set_chunk_size fndecl 2 22042 NULL
+enable_so_roccat_connect_fndecl_22044 roccat_connect fndecl 3 22044 NULL
@@ -161690,17 +161044,20 @@ index 0000000..9da833a
+enable_so_allocsz_cfv_info_22104 allocsz cfv_info 0 22104 NULL
+enable_so_size_perf_output_handle_22117 size perf_output_handle 0 22117 NULL
+enable_so_xfs_da_get_buf_fndecl_22120 xfs_da_get_buf fndecl 3 22120 NULL
++enable_so_qgroup_reserve_fndecl_22126 qgroup_reserve fndecl 0 22126 NULL
+enable_so_ore_check_io_fndecl_22131 ore_check_io fndecl 0 22131 NULL nohasharray
+enable_so_small_ttm_pool_opts_22131 small ttm_pool_opts 0 22131 &enable_so_ore_check_io_fndecl_22131 nohasharray
+enable_so_xferlen_uioc_22131 xferlen uioc 0 22131 &enable_so_small_ttm_pool_opts_22131
+enable_so_numa_add_memblk_fndecl_22136 numa_add_memblk fndecl 2-3 22136 NULL
++enable_so_lo_rw_aio_fndecl_22138 lo_rw_aio fndecl 3 22138 NULL
+enable_so_dm_tm_shadow_block_fndecl_22139 dm_tm_shadow_block fndecl 2 22139 NULL
+enable_so_xfs_trans_get_buf_map_fndecl_22140 xfs_trans_get_buf_map fndecl 4 22140 NULL
+enable_so_num_phys_eqs_mlx4_phys_caps_22142 num_phys_eqs mlx4_phys_caps 0 22142 NULL
+enable_so_jffs2_scan_make_ino_cache_fndecl_22144 jffs2_scan_make_ino_cache fndecl 2 22144 NULL nohasharray
+enable_so_radeon_benchmark_move_fndecl_22144 radeon_benchmark_move fndecl 2 22144 &enable_so_jffs2_scan_make_ino_cache_fndecl_22144
+enable_so_moving_threshold_mms114_platform_data_22146 moving_threshold mms114_platform_data 0 22146 NULL nohasharray
-+enable_so_svc_rdma_xdr_encode_error_fndecl_22146 svc_rdma_xdr_encode_error fndecl 0 22146 &enable_so_moving_threshold_mms114_platform_data_22146
++enable_so_regmap_encx24j600_spi_write_fndecl_22146 regmap_encx24j600_spi_write fndecl 4 22146 &enable_so_moving_threshold_mms114_platform_data_22146 nohasharray
++enable_so_svc_rdma_xdr_encode_error_fndecl_22146 svc_rdma_xdr_encode_error fndecl 0 22146 &enable_so_regmap_encx24j600_spi_write_fndecl_22146
+enable_so_max_cos_bnx2x_22147 max_cos bnx2x 0 22147 NULL
+enable_so_cmd_pipe_uas_dev_info_22148 cmd_pipe uas_dev_info 0 22148 NULL
+enable_so_seg_size_ib_mad_send_buf_22149 seg_size ib_mad_send_buf 0 22149 NULL
@@ -161708,8 +161065,7 @@ index 0000000..9da833a
+enable_so_rxq_entries_efx_nic_22154 rxq_entries efx_nic 0 22154 NULL
+enable_so_collect_rx_frame_fndecl_22155 collect_rx_frame fndecl 3 22155 NULL
+enable_so_nes_read_indexed_fndecl_22161 nes_read_indexed fndecl 0 22161 NULL
-+enable_so_rs_datalen_ath5k_rx_status_22164 rs_datalen ath5k_rx_status 0 22164 NULL nohasharray
-+enable_so_i40e_dbg_prep_dump_buf_fndecl_22164 i40e_dbg_prep_dump_buf fndecl 2 22164 &enable_so_rs_datalen_ath5k_rx_status_22164
++enable_so_rs_datalen_ath5k_rx_status_22164 rs_datalen ath5k_rx_status 0 22164 NULL
+enable_so_tm6000_i2c_recv_regs16_fndecl_22166 tm6000_i2c_recv_regs16 fndecl 5 22166 NULL
+enable_so_set_fast_connectable_fndecl_22171 set_fast_connectable fndecl 4 22171 NULL
+enable_so_tegra_spi_start_cpu_based_transfer_fndecl_22176 tegra_spi_start_cpu_based_transfer fndecl 0 22176 NULL
@@ -161727,7 +161083,6 @@ index 0000000..9da833a
+enable_so_xfrm_dst_alloc_copy_fndecl_22217 xfrm_dst_alloc_copy fndecl 3 22217 &enable_so_nreaders_stress_vardecl_locktorture_c_22217
+enable_so_ram_size_async_extent_22219 ram_size async_extent 0 22219 NULL
+enable_so_get_max_acpi_id_fndecl_22220 get_max_acpi_id fndecl 0 22220 NULL
-+enable_so_lpfc_idiag_mbxacc_write_fndecl_22221 lpfc_idiag_mbxacc_write fndecl 3 22221 NULL
+enable_so_s_dirsize_minix_sb_info_22225 s_dirsize minix_sb_info 0 22225 NULL
+enable_so_num_areas_prism2_download_param_22233 num_areas prism2_download_param 0 22233 NULL
+enable_so_num_vlan_batadv_tvlv_tt_data_22234 num_vlan batadv_tvlv_tt_data 0 22234 NULL
@@ -161744,12 +161099,12 @@ index 0000000..9da833a
+enable_so_nr_free_buffer_pages_fndecl_22263 nr_free_buffer_pages fndecl 0 22263 NULL
+enable_so_bbio_error_fndecl_22264 bbio_error fndecl 3 22264 NULL
+enable_so_usCRTC_V_Total__ATOM_MODE_TIMING_22265 usCRTC_V_Total _ATOM_MODE_TIMING 0 22265 NULL
-+enable_so_il3945_ucode_rx_stats_read_fndecl_22267 il3945_ucode_rx_stats_read fndecl 3 22267 NULL
+enable_so_mangle_contents_fndecl_22272 mangle_contents fndecl 4-6 22272 NULL
-+enable_so_gtt_total_entries__intel_private_22281 gtt_total_entries _intel_private 0 22281 NULL nohasharray
-+enable_so_reord_tcp_sacktag_state_22281 reord tcp_sacktag_state 0 22281 &enable_so_gtt_total_entries__intel_private_22281
++enable_so_reord_tcp_sacktag_state_22281 reord tcp_sacktag_state 0 22281 NULL nohasharray
++enable_so_gtt_total_entries__intel_private_22281 gtt_total_entries _intel_private 0 22281 &enable_so_reord_tcp_sacktag_state_22281
+enable_so_mgsl_write_fndecl_22284 mgsl_write fndecl 3 22284 NULL
+enable_so_sn9c2028_read4_fndecl_22290 sn9c2028_read4 fndecl 0 22290 NULL
++enable_so_scif_get_phys_fndecl_22295 scif_get_phys fndecl 0-1 22295 NULL
+enable_so_gspca_dev_probe_fndecl_22297 gspca_dev_probe fndecl 4 22297 NULL
+enable_so_gfs2_listxattr_fndecl_22298 gfs2_listxattr fndecl 3 22298 NULL nohasharray
+enable_so_di_depth_gfs2_dinode_22298 di_depth gfs2_dinode 0 22298 &enable_so_gfs2_listxattr_fndecl_22298
@@ -161762,8 +161117,7 @@ index 0000000..9da833a
+enable_so_sb_rbmino_xfs_sb_22320 sb_rbmino xfs_sb 0 22320 NULL nohasharray
+enable_so_be_fill_queue_fndecl_22320 be_fill_queue fndecl 2 22320 &enable_so_sb_rbmino_xfs_sb_22320
+enable_so_vc_size_row_vc_data_22325 vc_size_row vc_data 0 22325 NULL
-+enable_so_user_data_len_uioc_22327 user_data_len uioc 0 22327 NULL nohasharray
-+enable_so_iwl_dbgfs_tof_range_response_read_fndecl_22327 iwl_dbgfs_tof_range_response_read fndecl 3 22327 &enable_so_user_data_len_uioc_22327
++enable_so_user_data_len_uioc_22327 user_data_len uioc 0 22327 NULL
+enable_so_atmel_change_mtu_fndecl_22328 atmel_change_mtu fndecl 2 22328 NULL
+enable_so_limit_sfq_sched_data_22334 limit sfq_sched_data 0 22334 NULL
+enable_so_f2fs_getxattr_fndecl_22337 f2fs_getxattr fndecl 0 22337 NULL
@@ -161779,7 +161133,7 @@ index 0000000..9da833a
+enable_so_drXTFlSize_hfs_mdb_22371 drXTFlSize hfs_mdb 0 22371 NULL nohasharray
+enable_so_ffs_ep0_read_fndecl_22371 ffs_ep0_read fndecl 3 22371 &enable_so_drXTFlSize_hfs_mdb_22371
+enable_so_digi_write_fndecl_22372 digi_write fndecl 4 22372 NULL
-+enable_so_nfs4_xattr_set_nfs4_acl_fndecl_22385 nfs4_xattr_set_nfs4_acl fndecl 4 22385 NULL
++enable_so_nr_luns_rrpc_22379 nr_luns rrpc 0 22379 NULL
+enable_so_exposure_step_sd_22386 exposure_step sd 0 22386 NULL
+enable_so_ecc_size_persistent_ram_ecc_info_22390 ecc_size persistent_ram_ecc_info 0 22390 NULL
+enable_so_phys_lcr_base_mgsl_struct_22391 phys_lcr_base mgsl_struct 0 22391 NULL
@@ -161816,8 +161170,8 @@ index 0000000..9da833a
+enable_so_find_group_other_fndecl_22490 find_group_other fndecl 0 22490 NULL
+enable_so_xfs_readdir_fndecl_22492 xfs_readdir fndecl 3 22492 NULL
+enable_so_offset_rbd_img_request_22494 offset rbd_img_request 0 22494 NULL
-+enable_so_tx_hr_cfv_info_22495 tx_hr cfv_info 0 22495 NULL nohasharray
-+enable_so_ovl_cache_entry_new_fndecl_22495 ovl_cache_entry_new fndecl 3 22495 &enable_so_tx_hr_cfv_info_22495
++enable_so_tx_hr_cfv_info_22495 tx_hr cfv_info 0 22495 NULL
++enable_so_size_drm_virtgpu_execbuffer_22498 size drm_virtgpu_execbuffer 0 22498 NULL
+enable_so_hiface_pcm_init_urb_fndecl_22500 hiface_pcm_init_urb fndecl 3 22500 NULL
+enable_so_iwl_dbgfs_clear_ucode_statistics_write_fndecl_22503 iwl_dbgfs_clear_ucode_statistics_write fndecl 3 22503 NULL
+enable_so_irq_bcma_device_22505 irq bcma_device 0 22505 NULL
@@ -161828,9 +161182,9 @@ index 0000000..9da833a
+enable_so_rocker_dma_ring_bufs_alloc_fndecl_22520 rocker_dma_ring_bufs_alloc fndecl 4 22520 NULL
+enable_so_ls_lvblen_dlm_ls_22525 ls_lvblen dlm_ls 0 22525 NULL
+enable_so_ocfs2_bg_discontig_add_extent_fndecl_22531 ocfs2_bg_discontig_add_extent fndecl 4 22531 NULL
-+enable_so_posix_acl_xattr_set_fndecl_22534 posix_acl_xattr_set fndecl 4 22534 NULL nohasharray
-+enable_so_count_pch_gbe_tx_ring_22534 count pch_gbe_tx_ring 0 22534 &enable_so_posix_acl_xattr_set_fndecl_22534
++enable_so_count_pch_gbe_tx_ring_22534 count pch_gbe_tx_ring 0 22534 NULL
+enable_so_pci_iomap_wc_range_fndecl_22536 pci_iomap_wc_range fndecl 4-3 22536 NULL
++enable_so_last_checkpoint_r5l_log_22540 last_checkpoint r5l_log 0 22540 NULL
+enable_so_submit_queue_fndecl_22542 submit_queue fndecl 5 22542 NULL
+enable_so_SyS_flistxattr_fndecl_22548 SyS_flistxattr fndecl 3 22548 NULL
+enable_so_clsb_isar_reg_22551 clsb isar_reg 0 22551 NULL
@@ -161868,6 +161222,7 @@ index 0000000..9da833a
+enable_so_n_compat_sel_arg_struct_22628 n compat_sel_arg_struct 0 22628 NULL
+enable_so_buf_height_s5p_mfc_ctx_22637 buf_height s5p_mfc_ctx 0 22637 NULL
+enable_so_hci_si_event_fndecl_22639 hci_si_event fndecl 3 22639 NULL
++enable_so_scif_vwriteto_fndecl_22640 scif_vwriteto fndecl 4-3 22640 NULL
+enable_so_logfs_write_header_fndecl_22642 logfs_write_header fndecl 3 22642 NULL
+enable_so_num_rcv_bufs_visornic_devdata_22643 num_rcv_bufs visornic_devdata 0 22643 NULL
+enable_so_sctp_setsockopt_initmsg_fndecl_22644 sctp_setsockopt_initmsg fndecl 3 22644 NULL
@@ -161875,6 +161230,7 @@ index 0000000..9da833a
+enable_so_do_msgsnd_fndecl_22648 do_msgsnd fndecl 4 22648 NULL
+enable_so_isight_decode_fndecl_22650 isight_decode fndecl 4 22650 NULL
+enable_so_sample_rate_usb_stream_config_22662 sample_rate usb_stream_config 0 22662 NULL
++enable_so_sw_start_stm_data_22665 sw_start stm_data 0 22665 NULL
+enable_so_md_probe_fndecl_22668 md_probe fndecl 1 22668 NULL
+enable_so_init_rs_internal_fndecl_22671 init_rs_internal fndecl 6-1 22671 NULL
+enable_so_create_huge_pmd_fndecl_22677 create_huge_pmd fndecl 3 22677 NULL
@@ -161891,6 +161247,8 @@ index 0000000..9da833a
+enable_so_tx_queue_len_read_fndecl_22692 tx_queue_len_read fndecl 3 22692 NULL
+enable_so_ctl_dma_yealink_dev_22696 ctl_dma yealink_dev 0 22696 NULL
+enable_so_len_vring_desc_22700 len vring_desc 0 22700 NULL
++enable_so_mxs_auart_dma_tx_fndecl_22702 mxs_auart_dma_tx fndecl 2 22702 NULL
++enable_so_info_element_size_vardecl_host_interface_c_22708 info_element_size vardecl_host_interface.c 0 22708 NULL
+enable_so_brcmf_sdio_read_control_fndecl_22712 brcmf_sdio_read_control fndecl 3 22712 NULL
+enable_so_scif_rb_write_fndecl_22718 scif_rb_write fndecl 0-3 22718 NULL
+enable_so_tail_inbuf_t_22719 tail inbuf_t 0 22719 NULL nohasharray
@@ -161898,7 +161256,6 @@ index 0000000..9da833a
+enable_so_SMB2_ioctl_fndecl_22721 SMB2_ioctl fndecl 8 22721 NULL
+enable_so_ath6kl_wmi_get_tx_pwr_cmd_fndecl_22722 ath6kl_wmi_get_tx_pwr_cmd fndecl 2 22722 NULL nohasharray
+enable_so_niu_parent_index_vardecl_niu_c_22722 niu_parent_index vardecl_niu.c 0 22722 &enable_so_ath6kl_wmi_get_tx_pwr_cmd_fndecl_22722
-+enable_so_sta_num_ps_buf_frames_read_fndecl_22723 sta_num_ps_buf_frames_read fndecl 3 22723 NULL
+enable_so_odm_mirror_cnt_pnfs_osd_data_map_22727 odm_mirror_cnt pnfs_osd_data_map 0 22727 NULL
+enable_so_fcoe_hmc_cntx_num_i40e_pf_22730 fcoe_hmc_cntx_num i40e_pf 0 22730 NULL nohasharray
+enable_so_fpregs_set_fndecl_22730 fpregs_set fndecl 4 22730 &enable_so_fcoe_hmc_cntx_num_i40e_pf_22730
@@ -161950,7 +161307,6 @@ index 0000000..9da833a
+enable_so_lpfc_fcp_io_channel_init_fndecl_22903 lpfc_fcp_io_channel_init fndecl 2 22903 NULL
+enable_so_count_ioctl_gntdev_map_grant_ref_22904 count ioctl_gntdev_map_grant_ref 0 22904 NULL nohasharray
+enable_so_bcma_hcd_create_pdev_fndecl_22904 bcma_hcd_create_pdev fndecl 3 22904 &enable_so_count_ioctl_gntdev_map_grant_ref_22904
-+enable_so_num_y_edt_ft5x06_ts_data_22905 num_y edt_ft5x06_ts_data 0 22905 NULL
+enable_so_membase_phys_efx_nic_22907 membase_phys efx_nic 0 22907 NULL
+enable_so_vmalloc_32_fndecl_22908 vmalloc_32 fndecl 1 22908 NULL
+enable_so_cfg80211_report_obss_beacon_fndecl_22910 cfg80211_report_obss_beacon fndecl 3 22910 NULL
@@ -161962,7 +161318,6 @@ index 0000000..9da833a
+enable_so_port100_send_frame_async_fndecl_22927 port100_send_frame_async fndecl 4 22927 NULL
+enable_so_event_data_len_msgbuf_rx_event_22931 event_data_len msgbuf_rx_event 0 22931 NULL
+enable_so_i2400m_rx_ctl_fndecl_22934 i2400m_rx_ctl fndecl 4 22934 NULL
-+enable_so_vid_begin_switchdev_obj_vlan_22941 vid_begin switchdev_obj_vlan 0 22941 NULL
+enable_so_num_counters_ip6t_replace_22944 num_counters ip6t_replace 0 22944 NULL
+enable_so_i2cdev_read_fndecl_22949 i2cdev_read fndecl 3 22949 NULL
+enable_so_bulk_out_usbatm_driver_22950 bulk_out usbatm_driver 0 22950 NULL
@@ -161999,11 +161354,11 @@ index 0000000..9da833a
+enable_so_rx_frag_size_atl1c_adapter_23034 rx_frag_size atl1c_adapter 0 23034 NULL nohasharray
+enable_so_remap_fndecl_23034 remap fndecl 3 23034 &enable_so_rx_frag_size_atl1c_adapter_23034
+enable_so_io_tlb_start_vardecl_swiotlb_c_23035 io_tlb_start vardecl_swiotlb.c 0 23035 NULL
++enable_so_ext4_xattr_user_set_fndecl_23036 ext4_xattr_user_set fndecl 5 23036 NULL
+enable_so_in_ep_smsusb_device_t_23038 in_ep smsusb_device_t 0 23038 NULL
+enable_so_lost_cnt_hint_tcp_sock_23039 lost_cnt_hint tcp_sock 0 23039 NULL
+enable_so_num_comp_vectors_mlx5_eq_table_23047 num_comp_vectors mlx5_eq_table 0 23047 NULL
-+enable_so_y1_drm_clip_rect_23048 y1 drm_clip_rect 0 23048 NULL nohasharray
-+enable_so_sta_aid_read_fndecl_23048 sta_aid_read fndecl 3 23048 &enable_so_y1_drm_clip_rect_23048
++enable_so_y1_drm_clip_rect_23048 y1 drm_clip_rect 0 23048 NULL
+enable_so_gnttab_free_count_vardecl_grant_table_c_23049 gnttab_free_count vardecl_grant-table.c 0 23049 NULL
+enable_so_gfs2_read_super_fndecl_23055 gfs2_read_super fndecl 2 23055 NULL
+enable_so_ueth_change_mtu_fndecl_23057 ueth_change_mtu fndecl 2 23057 NULL
@@ -162014,6 +161369,7 @@ index 0000000..9da833a
+enable_so_to_clkrc_fndecl_23074 to_clkrc fndecl 0-2-3 23074 NULL
+enable_so_scif_rb_count_fndecl_23076 scif_rb_count fndecl 0 23076 NULL
+enable_so_fm10k_iov_configure_fndecl_23078 fm10k_iov_configure fndecl 2 23078 NULL
++enable_so_v9fs_xattr_handler_set_fndecl_23080 v9fs_xattr_handler_set fndecl 5 23080 NULL
+enable_so_xfs_vm_write_end_fndecl_23085 xfs_vm_write_end fndecl 3-4 23085 NULL nohasharray
+enable_so_ext_ofs_sym_ccb_23085 ext_ofs sym_ccb 0 23085 &enable_so_xfs_vm_write_end_fndecl_23085
+enable_so_vicam_set_camera_power_fndecl_23091 vicam_set_camera_power fndecl 0 23091 NULL
@@ -162030,7 +161386,6 @@ index 0000000..9da833a
+enable_so_num_dv_ports_adv76xx_chip_info_23140 num_dv_ports adv76xx_chip_info 0 23140 NULL
+enable_so_udf_load_pvoldesc_fndecl_23141 udf_load_pvoldesc fndecl 2 23141 NULL
+enable_so_max_tx_urbs_kvaser_usb_23152 max_tx_urbs kvaser_usb 0 23152 NULL
-+enable_so_bits_key_vector_23153 bits key_vector 0 23153 NULL
+enable_so_memblock_free_fndecl_23154 memblock_free fndecl 2-1 23154 NULL
+enable_so_oxu_create_fndecl_23159 oxu_create fndecl 3-2 23159 NULL
+enable_so_isdn_audio_xlaw2adpcm_fndecl_23162 isdn_audio_xlaw2adpcm fndecl 0 23162 NULL nohasharray
@@ -162038,12 +161393,11 @@ index 0000000..9da833a
+enable_so_width_linux_logo_23166 width linux_logo 0 23166 NULL
+enable_so_ip6_tnl_rcv_fndecl_23167 ip6_tnl_rcv fndecl 2 23167 NULL nohasharray
+enable_so_SyS_add_key_fndecl_23167 SyS_add_key fndecl 4 23167 &enable_so_ip6_tnl_rcv_fndecl_23167
-+enable_so_memblock_alloc_base_fndecl_23169 memblock_alloc_base fndecl 2-1-3 23169 NULL nohasharray
++enable_so_memblock_alloc_base_fndecl_23169 memblock_alloc_base fndecl 2-1-0-3 23169 NULL nohasharray
+enable_so_MaxIoCommands_aac_init_23169 MaxIoCommands aac_init 0 23169 &enable_so_memblock_alloc_base_fndecl_23169
+enable_so_retry_count_ib_cm_req_param_23173 retry_count ib_cm_req_param 0 23173 NULL
+enable_so_cyttsp_probe_fndecl_23175 cyttsp_probe fndecl 4 23175 NULL
+enable_so_x_res_vbe_mode_ib_23177 x_res vbe_mode_ib 0 23177 NULL
-+enable_so_nslot_nd_namespace_index_23178 nslot nd_namespace_index 0 23178 NULL
+enable_so_uhid_char_read_fndecl_23187 uhid_char_read fndecl 3 23187 NULL
+enable_so_tx_tx_retry_data_read_fndecl_23189 tx_tx_retry_data_read fndecl 3 23189 NULL
+enable_so_ir_context_mask_fw_ohci_23196 ir_context_mask fw_ohci 0 23196 NULL
@@ -162069,8 +161423,8 @@ index 0000000..9da833a
+enable_so___alloc_bootmem_node_fndecl_23259 __alloc_bootmem_node fndecl 3-2-4 23259 NULL
+enable_so_fr_resid_fcp_resp_ext_23265 fr_resid fcp_resp_ext 0 23265 NULL
+enable_so_avc_data_length_firedtv_23266 avc_data_length firedtv 0 23266 NULL
-+enable_so_devm_ioremap_nocache_fndecl_23271 devm_ioremap_nocache fndecl 3-2 23271 NULL nohasharray
-+enable_so_mlx4_slave_convert_port_fndecl_23271 mlx4_slave_convert_port fndecl 0-3 23271 &enable_so_devm_ioremap_nocache_fndecl_23271
++enable_so_mlx4_slave_convert_port_fndecl_23271 mlx4_slave_convert_port fndecl 0-3 23271 NULL nohasharray
++enable_so_devm_ioremap_nocache_fndecl_23271 devm_ioremap_nocache fndecl 3-2 23271 &enable_so_mlx4_slave_convert_port_fndecl_23271
+enable_so_cifs_read_fndecl_23274 cifs_read fndecl 3 23274 NULL
+enable_so_udf_table_new_block_fndecl_23276 udf_table_new_block fndecl 0 23276 NULL
+enable_so_start_blkpg_partition_23281 start blkpg_partition 0 23281 NULL
@@ -162081,12 +161435,12 @@ index 0000000..9da833a
+enable_so_shmac_num_idents_sctp_hmacalgo_23292 shmac_num_idents sctp_hmacalgo 0 23292 NULL
+enable_so_vtbl_slots_ubi_device_23293 vtbl_slots ubi_device 0 23293 NULL
+enable_so_fnic_get_trace_data_fndecl_23305 fnic_get_trace_data fndecl 0 23305 NULL
++enable_so_mlx4_alloc_priv_pages_fndecl_23308 mlx4_alloc_priv_pages fndecl 3 23308 NULL
+enable_so_transfersize_scsi_cmnd_23314 transfersize scsi_cmnd 0 23314 NULL
+enable_so_s_blocks_per_segment_nilfs_super_block_23318 s_blocks_per_segment nilfs_super_block 0 23318 NULL
+enable_so_max_send_sge_ocrdma_dev_attr_23321 max_send_sge ocrdma_dev_attr 0 23321 NULL
-+enable_so_ieee80211_if_read_dot11MeshHWMPnetDiameterTraversalTime_fndecl_23334 ieee80211_if_read_dot11MeshHWMPnetDiameterTraversalTime fndecl 3 23334 NULL nohasharray
-+enable_so_naces_nfs4_acl_23334 naces nfs4_acl 0 23334 &enable_so_ieee80211_if_read_dot11MeshHWMPnetDiameterTraversalTime_fndecl_23334
-+enable_so_reply_queue_count_MPT2SAS_ADAPTER_23337 reply_queue_count MPT2SAS_ADAPTER 0 23337 NULL
++enable_so_tail_userio_device_23332 tail userio_device 0 23332 NULL
++enable_so_naces_nfs4_acl_23334 naces nfs4_acl 0 23334 NULL
+enable_so_max_header_size_tsap_cb_23342 max_header_size tsap_cb 0 23342 NULL
+enable_so_compat_sys_vmsplice_fndecl_23344 compat_sys_vmsplice fndecl 3 23344 NULL
+enable_so_mark_block_processed_fndecl_23353 mark_block_processed fndecl 3-2 23353 NULL nohasharray
@@ -162102,14 +161456,14 @@ index 0000000..9da833a
+enable_so_sf_entsize_xfs_dir_ops_23386 sf_entsize xfs_dir_ops 0 23386 NULL nohasharray
+enable_so_dstirq_mpc_intsrc_23386 dstirq mpc_intsrc 0 23386 &enable_so_sf_entsize_xfs_dir_ops_23386
+enable_so_new_SSID_size_atmel_private_23387 new_SSID_size atmel_private 0 23387 NULL
-+enable_so___irlan_insert_param_fndecl_23389 __irlan_insert_param fndecl 7 23389 NULL nohasharray
-+enable_so_btmrvl_hscmd_read_fndecl_23389 btmrvl_hscmd_read fndecl 3 23389 &enable_so___irlan_insert_param_fndecl_23389
++enable_so___irlan_insert_param_fndecl_23389 __irlan_insert_param fndecl 7 23389 NULL
+enable_so_xfs_alloc_file_space_fndecl_23394 xfs_alloc_file_space fndecl 2-3 23394 NULL
+enable_so_ptr_mask_amdgpu_ring_23397 ptr_mask amdgpu_ring 0 23397 NULL
+enable_so_de_name_len_gfs2_dirent_23398 de_name_len gfs2_dirent 0 23398 NULL
+enable_so_kt_serial_setup_fndecl_23400 kt_serial_setup fndecl 4 23400 NULL
+enable_so_max_cmds_ips_ha_23401 max_cmds ips_ha 0 23401 NULL nohasharray
+enable_so_ikconfig_read_current_fndecl_23401 ikconfig_read_current fndecl 3 23401 &enable_so_max_cmds_ips_ha_23401
++enable_so_calculate_xstate_size_fndecl_23404 calculate_xstate_size fndecl 0 23404 NULL
+enable_so_s5p_jpeg_get_subsampling_mode_fndecl_23405 s5p_jpeg_get_subsampling_mode fndecl 0 23405 NULL nohasharray
+enable_so_map_block_for_writepage_fndecl_23405 map_block_for_writepage fndecl 3 23405 &enable_so_s5p_jpeg_get_subsampling_mode_fndecl_23405
+enable_so_nx_fw_cmd_set_gbe_port_fndecl_23412 nx_fw_cmd_set_gbe_port fndecl 3 23412 NULL
@@ -162123,15 +161477,14 @@ index 0000000..9da833a
+enable_so_nilfs_attach_snapshot_fndecl_23434 nilfs_attach_snapshot fndecl 2 23434 NULL
+enable_so_ftdi_instances_vardecl_ftdi_elan_c_23438 ftdi_instances vardecl_ftdi-elan.c 0 23438 NULL
+enable_so_set_xfer_rate_fndecl_23440 set_xfer_rate fndecl 2 23440 NULL
-+enable_so_mei_cl_recv_fndecl_23442 mei_cl_recv fndecl 0-3 23442 NULL
+enable_so_seg_size_wa_xfer_23450 seg_size wa_xfer 0 23450 NULL
+enable_so_name_len_ocfs2_dir_entry_23452 name_len ocfs2_dir_entry 0 23452 NULL nohasharray
+enable_so_bytes_number_item_operations_23452 bytes_number item_operations 0 23452 &enable_so_name_len_ocfs2_dir_entry_23452
+enable_so_btrfs_dir_data_len_fndecl_23457 btrfs_dir_data_len fndecl 0 23457 NULL
-+enable_so_size_mwifiex_opt_sleep_confirm_23460 size mwifiex_opt_sleep_confirm 0 23460 NULL
++enable_so_max_size_virtio_gpu_drv_capset_23460 max_size virtio_gpu_drv_capset 0 23460 NULL nohasharray
++enable_so_size_mwifiex_opt_sleep_confirm_23460 size mwifiex_opt_sleep_confirm 0 23460 &enable_so_max_size_virtio_gpu_drv_capset_23460
+enable_so_rsi_sdio_write_register_multiple_fndecl_23471 rsi_sdio_write_register_multiple fndecl 4 23471 NULL
+enable_so_offset_ttm_bus_placement_23475 offset ttm_bus_placement 0 23475 NULL
-+enable_so_iwl_dbgfs_d0i3_refs_read_fndecl_23482 iwl_dbgfs_d0i3_refs_read fndecl 3 23482 NULL
+enable_so_gfn_to_hva_prot_fndecl_23484 gfn_to_hva_prot fndecl 2 23484 NULL nohasharray
+enable_so_coda_psdev_write_fndecl_23484 coda_psdev_write fndecl 3 23484 &enable_so_gfn_to_hva_prot_fndecl_23484
+enable_so_control_skge_rx_desc_23486 control skge_rx_desc 0 23486 NULL
@@ -162144,8 +161497,8 @@ index 0000000..9da833a
+enable_so_usb_ep_align_maybe_fndecl_23516 usb_ep_align_maybe fndecl 0-3 23516 NULL
+enable_so_dev_irnet_read_fndecl_23518 dev_irnet_read fndecl 3 23518 NULL
+enable_so_data_size_rxkad_level2_hdr_23519 data_size rxkad_level2_hdr 0 23519 NULL
-+enable_so_rxHeader2_edgeport_serial_23525 rxHeader2 edgeport_serial 0 23525 NULL
+enable_so_ieee80211_new_mesh_header_fndecl_23538 ieee80211_new_mesh_header fndecl 0 23538 NULL
++enable_so_ring_size_per_user_data_23539 ring_size per_user_data 0 23539 NULL
+enable_so_FbUsableSize_nvidia_par_23541 FbUsableSize nvidia_par 0 23541 NULL nohasharray
+enable_so_mem_size_pch_dev_23541 mem_size pch_dev 0 23541 &enable_so_FbUsableSize_nvidia_par_23541
+enable_so_max_pkt_size_cx231xx_bulk_ctl_23542 max_pkt_size cx231xx_bulk_ctl 0 23542 NULL
@@ -162153,6 +161506,7 @@ index 0000000..9da833a
+enable_so_cosa_write_fndecl_23549 cosa_write fndecl 3 23549 NULL
+enable_so_ufs_inode_getblock_fndecl_23550 ufs_inode_getblock fndecl 4-3-2-0 23550 NULL nohasharray
+enable_so_inode_no_exofs_dir_entry_23550 inode_no exofs_dir_entry 0 23550 &enable_so_ufs_inode_getblock_fndecl_23550
++enable_so_ast_fbdev_set_base_fndecl_23556 ast_fbdev_set_base fndecl 2 23556 NULL
+enable_so_xfs_dabuf_map_fndecl_23558 xfs_dabuf_map fndecl 2 23558 NULL
+enable_so_p_chmask_f_uac2_opts_23559 p_chmask f_uac2_opts 0 23559 NULL
+enable_so_max_length_axi_dmac_chan_23560 max_length axi_dmac_chan 0 23560 NULL
@@ -162163,6 +161517,8 @@ index 0000000..9da833a
+enable_so_rx_max_size_cxgbi_device_23582 rx_max_size cxgbi_device 0 23582 NULL
+enable_so_syslog_print_fndecl_23584 syslog_print fndecl 2 23584 NULL nohasharray
+enable_so_resource_length_aml_resource_large_header_23584 resource_length aml_resource_large_header 0 23584 &enable_so_syslog_print_fndecl_23584
++enable_so_jffs2_user_setxattr_fndecl_23586 jffs2_user_setxattr fndecl 5 23586 NULL
++enable_so_tail_len_beacon_attr_23587 tail_len beacon_attr 0 23587 NULL
+enable_so_nr_devices_ssb_bus_23589 nr_devices ssb_bus 0 23589 NULL
+enable_so_max_cmd_size_ath6kl_bmi_23591 max_cmd_size ath6kl_bmi 0 23591 NULL
+enable_so_dn_setsockopt_fndecl_23593 dn_setsockopt fndecl 5 23593 NULL
@@ -162187,7 +161543,7 @@ index 0000000..9da833a
+enable_so_piobcnt4k_qib_devdata_23655 piobcnt4k qib_devdata 0 23655 NULL
+enable_so_viafb_bpp1_vardecl_viafbdev_c_23657 viafb_bpp1 vardecl_viafbdev.c 0 23657 NULL
+enable_so_cmtp_send_interopmsg_fndecl_23659 cmtp_send_interopmsg fndecl 7 23659 NULL
-+enable_so_unix_stream_sendpage_fndecl_23660 unix_stream_sendpage fndecl 3-4 23660 NULL nohasharray
++enable_so_unix_stream_sendpage_fndecl_23660 unix_stream_sendpage fndecl 4-3 23660 NULL nohasharray
+enable_so_elem_count_mlxsw_pci_queue_ops_23660 elem_count mlxsw_pci_queue_ops 0 23660 &enable_so_unix_stream_sendpage_fndecl_23660
+enable_so_fat_length_msdos_sb_info_23672 fat_length msdos_sb_info 0 23672 NULL
+enable_so_mlx5_core_access_reg_fndecl_23674 mlx5_core_access_reg fndecl 3-5 23674 NULL
@@ -162210,6 +161566,7 @@ index 0000000..9da833a
+enable_so_lbs_rdmac_read_fndecl_23729 lbs_rdmac_read fndecl 3 23729 NULL
+enable_so_mlx4_set_vf_vlan_fndecl_23734 mlx4_set_vf_vlan fndecl 5 23734 NULL
+enable_so_hugetlb_fault_fndecl_23735 hugetlb_fault fndecl 3 23735 NULL
++enable_so_nvme_char_major_vardecl_pci_c_23741 nvme_char_major vardecl_pci.c 0 23741 NULL
+enable_so_logfs_compress_fndecl_23746 logfs_compress fndecl 0-3-4 23746 NULL
+enable_so__alloc_get_attr_desc_fndecl_23749 _alloc_get_attr_desc fndecl 2 23749 NULL
+enable_so_writesize_acm_23756 writesize acm 0 23756 NULL
@@ -162267,7 +161624,6 @@ index 0000000..9da833a
+enable_so_vdisplay_drm_display_mode_23870 vdisplay drm_display_mode 0 23870 NULL
+enable_so_ohead_offs_ubifs_info_23876 ohead_offs ubifs_info 0 23876 NULL nohasharray
+enable_so_c_data_offs_pvr2_ioread_23876 c_data_offs pvr2_ioread 0 23876 &enable_so_ohead_offs_ubifs_info_23876
-+enable_so_write_file_tpc_fndecl_23877 write_file_tpc fndecl 3 23877 NULL
+enable_so_operand_2_len_ccp_ecc_modular_math_23882 operand_2_len ccp_ecc_modular_math 0 23882 NULL
+enable_so_load_msg_fndecl_23884 load_msg fndecl 2 23884 NULL
+enable_so_snd_korg1212_copy_to_fndecl_23887 snd_korg1212_copy_to fndecl 6 23887 NULL
@@ -162283,13 +161639,11 @@ index 0000000..9da833a
+enable_so_ipath_verbs_send_fndecl_23910 ipath_verbs_send fndecl 5-3 23910 NULL
+enable_so_num_pages_fuse_req_23911 num_pages fuse_req 0 23911 NULL
+enable_so_avail_pebs_ubi_device_23916 avail_pebs ubi_device 0 23916 NULL
-+enable_so_data_len_iser_data_buf_23917 data_len iser_data_buf 0 23917 NULL
+enable_so_rd_data_gfs2_rgrpd_23919 rd_data gfs2_rgrpd 0 23919 NULL
+enable_so_nr_items_list_lru_one_23925 nr_items list_lru_one 0 23925 NULL
+enable_so_p9_client_readdir_fndecl_23927 p9_client_readdir fndecl 0-3 23927 NULL
+enable_so_disk_len_btrfs_ordered_extent_23932 disk_len btrfs_ordered_extent 0 23932 NULL
+enable_so_smiapp_write_8_fndecl_23937 smiapp_write_8 fndecl 2 23937 NULL
-+enable_so_tracing_trace_options_write_fndecl_23946 tracing_trace_options_write fndecl 3 23946 NULL
+enable_so_btrfs_setxattr_fndecl_23956 btrfs_setxattr fndecl 4 23956 NULL
+enable_so_init_q_fndecl_23959 init_q fndecl 4 23959 NULL
+enable_so_input_buffer_size_vardecl_seq_midi_c_23961 input_buffer_size vardecl_seq_midi.c 0 23961 NULL
@@ -162326,6 +161680,7 @@ index 0000000..9da833a
+enable_so_vpdma_create_desc_list_fndecl_24044 vpdma_create_desc_list fndecl 2 24044 NULL
+enable_so_start_switch_path_24046 start switch_path 0 24046 NULL nohasharray
+enable_so_buf_size_conf_writedata_24046 buf_size conf_writedata 0 24046 &enable_so_start_switch_path_24046
++enable_so_log_start_r5l_io_unit_24048 log_start r5l_io_unit 0 24048 NULL
+enable_so_erase_shift_mmc_card_24051 erase_shift mmc_card 0 24051 NULL nohasharray
+enable_so_size_pernet_operations_24051 size pernet_operations 0 24051 &enable_so_erase_shift_mmc_card_24051
+enable_so_osst_int_ioctl_fndecl_24052 osst_int_ioctl fndecl 4 24052 NULL nohasharray
@@ -162340,7 +161695,6 @@ index 0000000..9da833a
+enable_so_h_sync_strt_wid_aty128_crtc_24079 h_sync_strt_wid aty128_crtc 0 24079 NULL nohasharray
+enable_so_cur_tx_pos_tegra_slink_data_24079 cur_tx_pos tegra_slink_data 0 24079 &enable_so_h_sync_strt_wid_aty128_crtc_24079
+enable_so_last_mark_lbn_os_aux_s_24082 last_mark_lbn os_aux_s 0 24082 NULL
-+enable_so_cylinders_ssfdcr_record_24084 cylinders ssfdcr_record 0 24084 NULL
+enable_so_gfs2_meta_new_fndecl_24087 gfs2_meta_new fndecl 2 24087 NULL
+enable_so_pat_pagerange_is_ram_fndecl_24089 pat_pagerange_is_ram fndecl 1-2 24089 NULL
+enable_so_mw_count_ntb_transport_ctx_24094 mw_count ntb_transport_ctx 0 24094 NULL nohasharray
@@ -162363,16 +161717,19 @@ index 0000000..9da833a
+enable_so_ieee80211_assoc_success_fndecl_24131 ieee80211_assoc_success fndecl 4 24131 NULL
+enable_so_radix_tree_locate_item_fndecl_24133 radix_tree_locate_item fndecl 0 24133 NULL
+enable_so_num_snaps_ceph_snap_context_24136 num_snaps ceph_snap_context 0 24136 NULL nohasharray
-+enable_so_error_state_read_fndecl_24136 error_state_read fndecl 5-6 24136 &enable_so_num_snaps_ceph_snap_context_24136
++enable_so_error_state_read_fndecl_24136 error_state_read fndecl 6 24136 &enable_so_num_snaps_ceph_snap_context_24136
+enable_so_transp_elsa_hw_24137 transp elsa_hw 0 24137 NULL nohasharray
+enable_so_scif_user_send_fndecl_24137 scif_user_send fndecl 3 24137 &enable_so_transp_elsa_hw_24137
+enable_so_key_update_fndecl_24140 key_update fndecl 3 24140 NULL
-+enable_so_segs_wa_xfer_24141 segs wa_xfer 0 24141 NULL nohasharray
-+enable_so_sdram_size_solo_dev_24141 sdram_size solo_dev 0 24141 &enable_so_segs_wa_xfer_24141 nohasharray
-+enable_so_elem_size_v4l2_ctrl_config_24141 elem_size v4l2_ctrl_config 0 24141 &enable_so_sdram_size_solo_dev_24141
++enable_so_gnttab_free_pages_fndecl_24141 gnttab_free_pages fndecl 1 24141 NULL nohasharray
++enable_so_sdram_size_solo_dev_24141 sdram_size solo_dev 0 24141 &enable_so_gnttab_free_pages_fndecl_24141 nohasharray
++enable_so_segs_wa_xfer_24141 segs wa_xfer 0 24141 &enable_so_sdram_size_solo_dev_24141 nohasharray
++enable_so_elem_size_v4l2_ctrl_config_24141 elem_size v4l2_ctrl_config 0 24141 &enable_so_segs_wa_xfer_24141
+enable_so_t_task_nolb_se_cmd_24142 t_task_nolb se_cmd 0 24142 NULL
+enable_so_len_event_data_24144 len event_data 0 24144 NULL
+enable_so_fat_fat_length_fat_bios_param_block_24145 fat_fat_length fat_bios_param_block 0 24145 NULL
++enable_so_d_size_lowpan_802154_cb_24147 d_size lowpan_802154_cb 0 24147 NULL
++enable_so_memmap_phy_fsl_qspi_24148 memmap_phy fsl_qspi 0 24148 NULL
+enable_so_initial_tsn_sctp_inithdr_host_24149 initial_tsn sctp_inithdr_host 0 24149 NULL
+enable_so_lro_add_page_fndecl_24166 lro_add_page fndecl 4 24166 NULL
+enable_so___alloc_extent_buffer_fndecl_24167 __alloc_extent_buffer fndecl 3-2 24167 NULL nohasharray
@@ -162384,15 +161741,15 @@ index 0000000..9da833a
+enable_so_ttymajor_vardecl_synclink_c_24173 ttymajor vardecl_synclink.c 0 24173 &enable_so_drop_count_codel_stats_24173
+enable_so_top_v4l2_rect_24176 top v4l2_rect 0 24176 NULL
+enable_so_ext4_split_extent_fndecl_24180 ext4_split_extent fndecl 0 24180 NULL
-+enable_so_o2net_send_message_vec_fndecl_24188 o2net_send_message_vec fndecl 4 24188 NULL nohasharray
-+enable_so_iwl_dbgfs_fh_reg_read_fndecl_24188 iwl_dbgfs_fh_reg_read fndecl 3 24188 &enable_so_o2net_send_message_vec_fndecl_24188
++enable_so_st21nfca_hci_dm_get_data_fndecl_24183 st21nfca_hci_dm_get_data fndecl 3 24183 NULL
++enable_so_o2net_send_message_vec_fndecl_24188 o2net_send_message_vec fndecl 4 24188 NULL
+enable_so_iv_size_crypt_config_24199 iv_size crypt_config 0 24199 NULL
+enable_so_kernel_sendpage_fndecl_24200 kernel_sendpage fndecl 0-4 24200 NULL nohasharray
+enable_so_play_video_cb_fndecl_24200 play_video_cb fndecl 2 24200 &enable_so_kernel_sendpage_fndecl_24200 nohasharray
+enable_so_n_multicast_vfpf_set_q_filters_tlv_24200 n_multicast vfpf_set_q_filters_tlv 0 24200 &enable_so_play_video_cb_fndecl_24200
+enable_so_f2fs_update_extent_tree_range_fndecl_24206 f2fs_update_extent_tree_range fndecl 4-2-3 24206 NULL
-+enable_so_yenta_search_res_fndecl_24211 yenta_search_res fndecl 3 24211 NULL nohasharray
-+enable_so_bfad_iocmd_flash_get_attr_fndecl_24211 bfad_iocmd_flash_get_attr fndecl 0 24211 &enable_so_yenta_search_res_fndecl_24211
++enable_so_bfad_iocmd_flash_get_attr_fndecl_24211 bfad_iocmd_flash_get_attr fndecl 0 24211 NULL nohasharray
++enable_so_yenta_search_res_fndecl_24211 yenta_search_res fndecl 3 24211 &enable_so_bfad_iocmd_flash_get_attr_fndecl_24211
+enable_so_erase_size_falcon_spi_device_24212 erase_size falcon_spi_device 0 24212 NULL
+enable_so_amdgpu_benchmark_move_fndecl_24214 amdgpu_benchmark_move fndecl 2 24214 NULL
+enable_so_size_drm_gem_object_24219 size drm_gem_object 0 24219 NULL
@@ -162415,6 +161772,7 @@ index 0000000..9da833a
+enable_so_src_length_btrfs_ioctl_clone_range_args_24266 src_length btrfs_ioctl_clone_range_args 0 24266 NULL
+enable_so_crtc_hblank_end_drm_display_mode_24268 crtc_hblank_end drm_display_mode 0 24268 NULL
+enable_so_totalsize_microcode_header_intel_24274 totalsize microcode_header_intel 0 24274 NULL
++enable_so_ccp_reverse_set_dm_area_fndecl_24279 ccp_reverse_set_dm_area fndecl 4-3 24279 NULL
+enable_so_blockshift_alauda_card_info_24288 blockshift alauda_card_info 0 24288 NULL
+enable_so_bop_delete_nilfs_bmap_operations_24290 bop_delete nilfs_bmap_operations 0 24290 NULL
+enable_so_mlx4_set_alt_path_fndecl_24292 mlx4_set_alt_path fndecl 6 24292 NULL
@@ -162433,12 +161791,10 @@ index 0000000..9da833a
+enable_so_byte_per_page_nand_jedec_params_24315 byte_per_page nand_jedec_params 0 24315 NULL
+enable_so_remove_monitor_info_fndecl_24319 remove_monitor_info fndecl 3 24319 NULL
+enable_so_iova_qib_mregion_24323 iova qib_mregion 0 24323 NULL
-+enable_so_xennet_make_txreqs_fndecl_24328 xennet_make_txreqs fndecl 5-6 24328 NULL
+enable_so_zlib_deflate_workspacesize_fndecl_24330 zlib_deflate_workspacesize fndecl 0-2-1 24330 NULL
+enable_so_bfad_iocmd_diag_led_fndecl_24333 bfad_iocmd_diag_led fndecl 0 24333 NULL
+enable_so_num_rports_bfa_iocfc_fwcfg_s_24334 num_rports bfa_iocfc_fwcfg_s 0 24334 NULL
-+enable_so_next_offset_ceph_file_info_24335 next_offset ceph_file_info 0 24335 NULL nohasharray
-+enable_so_iwl_dbgfs_wowlan_sram_read_fndecl_24335 iwl_dbgfs_wowlan_sram_read fndecl 3 24335 &enable_so_next_offset_ceph_file_info_24335
++enable_so_next_offset_ceph_file_info_24335 next_offset ceph_file_info 0 24335 NULL
+enable_so_in_iso_pipe_usbtest_dev_24336 in_iso_pipe usbtest_dev 0 24336 NULL
+enable_so_word2_lpfc_rcqe_24338 word2 lpfc_rcqe 0 24338 NULL
+enable_so_smp_send_cmd_fndecl_24339 smp_send_cmd fndecl 3 24339 NULL
@@ -162511,9 +161867,9 @@ index 0000000..9da833a
+enable_so_rtl8169_try_rx_copy_fndecl_24530 rtl8169_try_rx_copy fndecl 3 24530 NULL nohasharray
+enable_so_max_length__diva_um_idi_data_queue_24530 max_length _diva_um_idi_data_queue 0 24530 &enable_so_rtl8169_try_rx_copy_fndecl_24530
+enable_so_max_sgl_entries_vardecl_mpt3sas_base_c_24531 max_sgl_entries vardecl_mpt3sas_base.c 0 24531 NULL
++enable_so_st_nci_hci_dm_put_data_fndecl_24538 st_nci_hci_dm_put_data fndecl 3 24538 NULL
+enable_so_dvb_video_write_fndecl_24545 dvb_video_write fndecl 3 24545 NULL
+enable_so_width_pcm_format_data_24546 width pcm_format_data 0 24546 NULL
-+enable_so_xfs_xattr_set_fndecl_24547 xfs_xattr_set fndecl 4 24547 NULL
+enable_so_btrfs_issue_discard_fndecl_24553 btrfs_issue_discard fndecl 2-3 24553 NULL
+enable_so_size_memblock_region_24555 size memblock_region 0 24555 NULL
+enable_so_log_len_vardecl_verifier_c_24556 log_len vardecl_verifier.c 0 24556 NULL
@@ -162539,7 +161895,8 @@ index 0000000..9da833a
+enable_so_dsp_cmx_send_member_fndecl_24602 dsp_cmx_send_member fndecl 2 24602 NULL
+enable_so_root_level_kvm_mmu_24604 root_level kvm_mmu 0 24604 NULL
+enable_so_ubifs_add_bud_to_log_fndecl_24607 ubifs_add_bud_to_log fndecl 4 24607 NULL
-+enable_so_raid_disks_mddev_24609 raid_disks mddev 0 24609 NULL
++enable_so_raid_disks_mddev_24609 raid_disks mddev 0 24609 NULL nohasharray
++enable_so_bnxt_setup_tc_fndecl_24609 bnxt_setup_tc fndecl 2 24609 &enable_so_raid_disks_mddev_24609
+enable_so_datalen_ip_tunnel_prl_24610 datalen ip_tunnel_prl 0 24610 NULL
+enable_so_unix_bind_fndecl_24615 unix_bind fndecl 3 24615 NULL
+enable_so_irda_connect_indication_fndecl_24616 irda_connect_indication fndecl 4-5 24616 NULL
@@ -162582,6 +161939,7 @@ index 0000000..9da833a
+enable_so_udp4_gro_complete_fndecl_24711 udp4_gro_complete fndecl 2 24711 NULL
+enable_so_queue_depth_blk_mq_tag_set_24719 queue_depth blk_mq_tag_set 0 24719 NULL
+enable_so_qxl_ttm_tt_create_fndecl_24720 qxl_ttm_tt_create fndecl 2 24720 NULL
++enable_so_drm_gem_cma_create_with_handle_fndecl_24721 drm_gem_cma_create_with_handle fndecl 3 24721 NULL
+enable_so_bfs_get_block_fndecl_24726 bfs_get_block fndecl 2 24726 NULL
+enable_so_VBP_kyrofb_info_24731 VBP kyrofb_info 0 24731 NULL nohasharray
+enable_so_HiSax_readstatus_fndecl_24731 HiSax_readstatus fndecl 2 24731 &enable_so_VBP_kyrofb_info_24731
@@ -162593,19 +161951,21 @@ index 0000000..9da833a
+enable_so_ud_putcs_fndecl_24751 ud_putcs fndecl 4-6-5 24751 NULL
+enable_so_data_dotdot_offset_xfs_dir_ops_24758 data_dotdot_offset xfs_dir_ops 0 24758 NULL
+enable_so_n_ao_urbs_usbduxsigma_private_24760 n_ao_urbs usbduxsigma_private 0 24760 NULL
-+enable_so_inftl_read_oob_fndecl_24761 inftl_read_oob fndecl 2-3 24761 NULL
++enable_so_scif_create_pinned_pages_fndecl_24761 scif_create_pinned_pages fndecl 1 24761 NULL nohasharray
++enable_so_inftl_read_oob_fndecl_24761 inftl_read_oob fndecl 2-3 24761 &enable_so_scif_create_pinned_pages_fndecl_24761
+enable_so_pending_deflate_state_24766 pending deflate_state 0 24766 NULL
+enable_so_drbd_bm_total_weight_fndecl_24776 drbd_bm_total_weight fndecl 0 24776 NULL
+enable_so_xlog_state_switch_iclogs_fndecl_24782 xlog_state_switch_iclogs fndecl 3 24782 NULL
++enable_so__sdma_txadd_daddr_fndecl_24789 _sdma_txadd_daddr fndecl 5 24789 NULL
+enable_so_gx1_read_conf_reg_fndecl_24794 gx1_read_conf_reg fndecl 0 24794 NULL nohasharray
+enable_so_gnttab_expand_fndecl_24794 gnttab_expand fndecl 1 24794 &enable_so_gx1_read_conf_reg_fndecl_24794
+enable_so_afs_proc_rootcell_write_fndecl_24797 afs_proc_rootcell_write fndecl 3 24797 NULL
+enable_so_usHSyncWidth__ATOM_DTD_FORMAT_24801 usHSyncWidth _ATOM_DTD_FORMAT 0 24801 NULL nohasharray
+enable_so_index_vardecl_atiixp_c_24801 index vardecl_atiixp.c 0 24801 &enable_so_usHSyncWidth__ATOM_DTD_FORMAT_24801
-+enable_so_mprotect_fixup_fndecl_24803 mprotect_fixup fndecl 4-3 24803 NULL nohasharray
-+enable_so_write_file_tx99_fndecl_24803 write_file_tx99 fndecl 3 24803 &enable_so_mprotect_fixup_fndecl_24803
++enable_so_mprotect_fixup_fndecl_24803 mprotect_fixup fndecl 4-3 24803 NULL
+enable_so___read_extent_tree_block_fndecl_24804 __read_extent_tree_block fndecl 4 24804 NULL
-+enable_so_num_q_vectors_i40e_vsi_24807 num_q_vectors i40e_vsi 0 24807 NULL
++enable_so_copy_to_urb_quirk_fndecl_24807 copy_to_urb_quirk fndecl 3-0-4 24807 NULL nohasharray
++enable_so_num_q_vectors_i40e_vsi_24807 num_q_vectors i40e_vsi 0 24807 &enable_so_copy_to_urb_quirk_fndecl_24807
+enable_so_ceph_auth_build_hello_fndecl_24808 ceph_auth_build_hello fndecl 0 24808 NULL
+enable_so_analog_ep_isoc_em28xx_24810 analog_ep_isoc em28xx 0 24810 NULL
+enable_so_ubi_io_write_fndecl_24813 ubi_io_write fndecl 5-4 24813 NULL nohasharray
@@ -162615,10 +161975,10 @@ index 0000000..9da833a
+enable_so_RxLastCount_via_ircc_cb_24815 RxLastCount via_ircc_cb 0 24815 NULL nohasharray
+enable_so_array_resync_offset_dm_raid_superblock_24815 array_resync_offset dm_raid_superblock 0 24815 &enable_so_RxLastCount_via_ircc_cb_24815
+enable_so_HBP_kyrofb_info_24818 HBP kyrofb_info 0 24818 NULL
++enable_so_insert_state_fndecl_24820 insert_state fndecl 0-4-3 24820 NULL
+enable_so_readahead_cached_dev_24826 readahead cached_dev 0 24826 NULL
+enable_so_fq_codel_zalloc_fndecl_24833 fq_codel_zalloc fndecl 1 24833 NULL
+enable_so_alloc_fddidev_fndecl_24837 alloc_fddidev fndecl 1 24837 NULL
-+enable_so_lprocfs_alloc_md_stats_fndecl_24846 lprocfs_alloc_md_stats fndecl 2 24846 NULL
+enable_so_cx88_alsa_dma_init_fndecl_24851 cx88_alsa_dma_init fndecl 2 24851 NULL nohasharray
+enable_so_acpi_ut_create_string_object_fndecl_24851 acpi_ut_create_string_object fndecl 1 24851 &enable_so_cx88_alsa_dma_init_fndecl_24851 nohasharray
+enable_so_wLength_usbdevfs_ctrltransfer_24851 wLength usbdevfs_ctrltransfer 0 24851 &enable_so_acpi_ut_create_string_object_fndecl_24851
@@ -162634,6 +161994,7 @@ index 0000000..9da833a
+enable_so_zone_count_sm_ftl_24881 zone_count sm_ftl 0 24881 NULL
+enable_so_nvme_cmb_qdepth_fndecl_24896 nvme_cmb_qdepth fndecl 0 24896 NULL
+enable_so_i_truncate_size_ceph_inode_info_24902 i_truncate_size ceph_inode_info 0 24902 NULL
++enable_so_blkif_setup_rw_req_grant_fndecl_24903 blkif_setup_rw_req_grant fndecl 2-3 24903 NULL
+enable_so_memweight_fndecl_24905 memweight fndecl 0 24905 NULL
+enable_so_io_limit_vardecl_at24_c_24907 io_limit vardecl_at24.c 0 24907 NULL
+enable_so_iscsi_sw_tcp_send_linear_data_prep_fndecl_24908 iscsi_sw_tcp_send_linear_data_prep fndecl 3 24908 NULL
@@ -162646,6 +162007,7 @@ index 0000000..9da833a
+enable_so_tcp_mtu_to_mss_fndecl_24925 tcp_mtu_to_mss fndecl 0-2 24925 NULL
+enable_so_current_area_pstore_24931 current_area pstore 0 24931 NULL
+enable_so_max_sectors_per_io_vardecl_megaraid_c_24934 max_sectors_per_io vardecl_megaraid.c 0 24934 NULL
++enable_so_msdc_execute_tuning_fndecl_24935 msdc_execute_tuning fndecl 2 24935 NULL
+enable_so_unxz_fndecl_24936 unxz fndecl 2 24936 NULL
+enable_so_rtl_download_firmware_fndecl_24937 rtl_download_firmware fndecl 3 24937 NULL
+enable_so_key_len_cfg80211_connect_params_24952 key_len cfg80211_connect_params 0 24952 NULL
@@ -162674,11 +162036,12 @@ index 0000000..9da833a
+enable_so_memory_map_top_down_fndecl_25011 memory_map_top_down fndecl 1-2 25011 NULL
+enable_so_ifx_spi_write_fndecl_25016 ifx_spi_write fndecl 3 25016 NULL
+enable_so_rx_jumbo_pending_ethtool_ringparam_25018 rx_jumbo_pending ethtool_ringparam 0 25018 NULL
++enable_so_rx_agg_ring_size_bnxt_25021 rx_agg_ring_size bnxt 0 25021 NULL
+enable_so_bfad_iocmd_fabric_get_lports_fndecl_25022 bfad_iocmd_fabric_get_lports fndecl 0 25022 NULL nohasharray
+enable_so_num_bd_ethoc_25022 num_bd ethoc 0 25022 &enable_so_bfad_iocmd_fabric_get_lports_fndecl_25022
+enable_so__rtl_usb_tx_urb_setup_fndecl_25024 _rtl_usb_tx_urb_setup fndecl 3 25024 NULL
-+enable_so_height_fb_fillrect_25027 height fb_fillrect 0 25027 NULL nohasharray
-+enable_so_iwl_nvm_read_section_fndecl_25027 iwl_nvm_read_section fndecl 0 25027 &enable_so_height_fb_fillrect_25027
++enable_so_shift_rtl8xxxu_rx_desc_25025 shift rtl8xxxu_rx_desc 0 25025 NULL
++enable_so_height_fb_fillrect_25027 height fb_fillrect 0 25027 NULL
+enable_so_vlan_cq_enet_rq_desc_25028 vlan cq_enet_rq_desc 0 25028 NULL nohasharray
+enable_so_error_nfs_direct_req_25028 error nfs_direct_req 0 25028 &enable_so_vlan_cq_enet_rq_desc_25028
+enable_so_crc_size_cas_25030 crc_size cas 0 25030 NULL nohasharray
@@ -162725,18 +162088,17 @@ index 0000000..9da833a
+enable_so_i40e_allocate_virt_mem_d_fndecl_25132 i40e_allocate_virt_mem_d fndecl 3 25132 NULL nohasharray
+enable_so_max_sge_ipath_rq_25132 max_sge ipath_rq 0 25132 &enable_so_i40e_allocate_virt_mem_d_fndecl_25132
+enable_so_snd_interval_step_fndecl_25134 snd_interval_step fndecl 2 25134 NULL
-+enable_so_mapping_level_fndecl_25135 mapping_level fndecl 0-2 25135 NULL nohasharray
-+enable_so_gb_len_nfc_hci_dev_25135 gb_len nfc_hci_dev 0 25135 &enable_so_mapping_level_fndecl_25135 nohasharray
++enable_so_gb_len_nfc_hci_dev_25135 gb_len nfc_hci_dev 0 25135 NULL nohasharray
+enable_so_tmpl_hdr_size_qlcnic_fw_dump_25135 tmpl_hdr_size qlcnic_fw_dump 0 25135 &enable_so_gb_len_nfc_hci_dev_25135
+enable_so_bnx2i_get_cid_num_fndecl_25141 bnx2i_get_cid_num fndecl 0 25141 NULL
+enable_so_ocfs2_init_xattr_bucket_fndecl_25146 ocfs2_init_xattr_bucket fndecl 2 25146 NULL
-+enable_so_gnttab_alloc_pages_fndecl_25149 gnttab_alloc_pages fndecl 1 25149 NULL nohasharray
-+enable_so_rate_max_snd_pcm_hardware_25149 rate_max snd_pcm_hardware 0 25149 &enable_so_gnttab_alloc_pages_fndecl_25149
++enable_so_rate_max_snd_pcm_hardware_25149 rate_max snd_pcm_hardware 0 25149 NULL nohasharray
++enable_so_gnttab_alloc_pages_fndecl_25149 gnttab_alloc_pages fndecl 1 25149 &enable_so_rate_max_snd_pcm_hardware_25149
+enable_so_SyS_pselect6_fndecl_25153 SyS_pselect6 fndecl 1 25153 NULL
+enable_so_numchips_cfi_private_25154 numchips cfi_private 0 25154 NULL
+enable_so_vram_base_cirrus_mc_25157 vram_base cirrus_mc 0 25157 NULL
+enable_so_create_table_fndecl_25158 create_table fndecl 2 25158 NULL
-+enable_so_si476x_core_send_command_fndecl_25160 si476x_core_send_command fndecl 4-6 25160 NULL
++enable_so_si476x_core_send_command_fndecl_25160 si476x_core_send_command fndecl 6-4 25160 NULL
+enable_so_max_transfer_size_mvumi_hba_25161 max_transfer_size mvumi_hba 0 25161 NULL
+enable_so_width_emmaprp_q_data_25163 width emmaprp_q_data 0 25163 NULL
+enable_so_tcp_syn_options_fndecl_25174 tcp_syn_options fndecl 0 25174 NULL
@@ -162744,8 +162106,6 @@ index 0000000..9da833a
+enable_so_s_writesize_logfs_super_25176 s_writesize logfs_super 0 25176 &enable_so_cipso_v4_map_cat_rng_hton_fndecl_25176
+enable_so_btrfs_create_repair_bio_fndecl_25181 btrfs_create_repair_bio fndecl 5 25181 NULL
+enable_so_heapstart_sis_video_info_25184 heapstart sis_video_info 0 25184 NULL
-+enable_so_i40e_dbg_dump_read_fndecl_25188 i40e_dbg_dump_read fndecl 3 25188 NULL
-+enable_so_il_dbgfs_disable_ht40_write_fndecl_25194 il_dbgfs_disable_ht40_write fndecl 3 25194 NULL
+enable_so_coex_tx_win_size_mwifiex_adapter_25195 coex_tx_win_size mwifiex_adapter 0 25195 NULL
+enable_so_run_filter_fndecl_25196 run_filter fndecl 0-3 25196 NULL
+enable_so_iso_in_endp_ttusbir_25197 iso_in_endp ttusbir 0 25197 NULL nohasharray
@@ -162753,12 +162113,13 @@ index 0000000..9da833a
+enable_so_do_shrink_fndecl_25198 do_shrink fndecl 3-2 25198 NULL
+enable_so_backing_dev_len_disk_conf_25199 backing_dev_len disk_conf 0 25199 NULL
+enable_so_size_ioc_sts_mv_dtd_25203 size_ioc_sts mv_dtd 0 25203 NULL
-+enable_so_ip_set_elem_len_fndecl_25209 ip_set_elem_len fndecl 0-3 25209 NULL
++enable_so___exchange_data_block_fndecl_25208 __exchange_data_block fndecl 3-2 25208 NULL
+enable_so_eth_get_headlen_fndecl_25213 eth_get_headlen fndecl 0-2 25213 NULL
+enable_so_ext4_insert_range_fndecl_25217 ext4_insert_range fndecl 2-3 25217 NULL
+enable_so_ocfs2_xattr_bucket_value_truncate_fndecl_25220 ocfs2_xattr_bucket_value_truncate fndecl 4 25220 NULL
+enable_so_nand_bch_init_fndecl_25227 nand_bch_init fndecl 3-2 25227 NULL
+enable_so_jumpshot_read_data_fndecl_25228 jumpshot_read_data fndecl 4 25228 NULL
++enable_so_show_configfs_attribute_25232 show configfs_attribute 0 25232 NULL
+enable_so_spy_number_iw_spy_data_25234 spy_number iw_spy_data 0 25234 NULL
+enable_so_offset_zatm_pool_info_25250 offset zatm_pool_info 0 25250 NULL
+enable_so_of_property_read_string_helper_fndecl_25257 of_property_read_string_helper fndecl 0-5 25257 NULL
@@ -162773,8 +162134,7 @@ index 0000000..9da833a
+enable_so_authorizer_len_ceph_msg_connect_reply_25279 authorizer_len ceph_msg_connect_reply 0 25279 NULL
+enable_so_collapse_huge_page_fndecl_25281 collapse_huge_page fndecl 2 25281 NULL
+enable_so_dst_put_ci_fndecl_25284 dst_put_ci fndecl 3 25284 NULL
-+enable_so___install_special_mapping_fndecl_25286 __install_special_mapping fndecl 3-2 25286 NULL nohasharray
-+enable_so_exynos4_jpeg_get_frame_fmt_fndecl_25286 exynos4_jpeg_get_frame_fmt fndecl 0 25286 &enable_so___install_special_mapping_fndecl_25286
++enable_so_exynos4_jpeg_get_frame_fmt_fndecl_25286 exynos4_jpeg_get_frame_fmt fndecl 0 25286 NULL
+enable_so_ex_bn_extent_s_25293 ex_bn extent_s 0 25293 NULL
+enable_so_string_length_acpi_resource_source_25296 string_length acpi_resource_source 0 25296 NULL
+enable_so_part_start_hfs_sb_info_25310 part_start hfs_sb_info 0 25310 NULL
@@ -162794,10 +162154,9 @@ index 0000000..9da833a
+enable_so_enc_key_size_ecryptfs_key_record_25340 enc_key_size ecryptfs_key_record 0 25340 NULL nohasharray
+enable_so_bytesperline_zoran_v4l_settings_25340 bytesperline zoran_v4l_settings 0 25340 &enable_so_enc_key_size_ecryptfs_key_record_25340 nohasharray
+enable_so_xfs_inobt_lookup_fndecl_25340 xfs_inobt_lookup fndecl 2 25340 &enable_so_bytesperline_zoran_v4l_settings_25340
-+enable_so_total_ps_buffered_read_fndecl_25342 total_ps_buffered_read fndecl 3 25342 NULL
+enable_so_svc_meta_len_htc_conn_service_msg_25346 svc_meta_len htc_conn_service_msg 0 25346 NULL nohasharray
+enable_so_init_data_size_il4965_firmware_pieces_25346 init_data_size il4965_firmware_pieces 0 25346 &enable_so_svc_meta_len_htc_conn_service_msg_25346
-+enable_so_skb_add_rx_frag_fndecl_25355 skb_add_rx_frag fndecl 2-4-5-6 25355 NULL
++enable_so_skb_add_rx_frag_fndecl_25355 skb_add_rx_frag fndecl 2-5-6-4 25355 NULL
+enable_so_spi_rd_buf_fndecl_25357 spi_rd_buf fndecl 4 25357 NULL
+enable_so___mptctl_ioctl_fndecl_25360 __mptctl_ioctl fndecl 2 25360 NULL
+enable_so_bfs_move_block_fndecl_25369 bfs_move_block fndecl 1-2 25369 NULL
@@ -162814,7 +162173,6 @@ index 0000000..9da833a
+enable_so_atom_size_pcpu_alloc_info_25396 atom_size pcpu_alloc_info 0 25396 NULL
+enable_so___reserved_mem_reserve_reg_fndecl_25400 __reserved_mem_reserve_reg fndecl 1 25400 NULL
+enable_so_brcmf_pcie_read_tcm16_fndecl_25401 brcmf_pcie_read_tcm16 fndecl 0 25401 NULL
-+enable_so_memsize_devlog_fw_devlog_cmd_25403 memsize_devlog fw_devlog_cmd 0 25403 NULL
+enable_so_metromem_dma_metronomefb_par_25407 metromem_dma metronomefb_par 0 25407 NULL
+enable_so_memblock_virt_alloc_try_nid_fndecl_25409 memblock_virt_alloc_try_nid fndecl 2-1-3-4 25409 NULL nohasharray
+enable_so_hfs_ext_build_key_fndecl_25409 hfs_ext_build_key fndecl 3 25409 &enable_so_memblock_virt_alloc_try_nid_fndecl_25409 nohasharray
@@ -162822,16 +162180,15 @@ index 0000000..9da833a
+enable_so_pci_wch_ch353_setup_fndecl_25411 pci_wch_ch353_setup fndecl 4 25411 NULL nohasharray
+enable_so_snd_pcm_lib_read_transfer_fndecl_25411 snd_pcm_lib_read_transfer fndecl 5 25411 &enable_so_pci_wch_ch353_setup_fndecl_25411
+enable_so_entries_size_ebt_replace_kernel_25413 entries_size ebt_replace_kernel 0 25413 NULL
++enable_so_ptlrpcd_per_cpt_max_vardecl_ptlrpcd_c_25416 ptlrpcd_per_cpt_max vardecl_ptlrpcd.c 0 25416 NULL
+enable_so_image_len_gspca_dev_25419 image_len gspca_dev 0 25419 NULL
+enable_so_ib_init_ah_from_wc_fndecl_25420 ib_init_ah_from_wc fndecl 2 25420 NULL
-+enable_so_remap_pci_mem_fndecl_25421 remap_pci_mem fndecl 2-1 25421 NULL nohasharray
-+enable_so_find_rsb_fndecl_25421 find_rsb fndecl 3 25421 &enable_so_remap_pci_mem_fndecl_25421
-+enable_so_power_read_fndecl_25424 power_read fndecl 3 25424 NULL
++enable_so_find_rsb_fndecl_25421 find_rsb fndecl 3 25421 NULL nohasharray
++enable_so_remap_pci_mem_fndecl_25421 remap_pci_mem fndecl 2-1 25421 &enable_so_find_rsb_fndecl_25421
+enable_so_num_bytes_btrfs_file_extent_item_25435 num_bytes btrfs_file_extent_item 0 25435 NULL
+enable_so_def_rx_buf_size_octeon_config_25436 def_rx_buf_size octeon_config 0 25436 NULL
+enable_so_i2c_write_fndecl_25439 i2c_write fndecl 4 25439 NULL nohasharray
-+enable_so_free_pfn_range_fndecl_25439 free_pfn_range fndecl 1-2 25439 &enable_so_i2c_write_fndecl_25439 nohasharray
-+enable_so_lpfc_idiag_drbacc_read_fndecl_25439 lpfc_idiag_drbacc_read fndecl 3 25439 &enable_so_free_pfn_range_fndecl_25439
++enable_so_free_pfn_range_fndecl_25439 free_pfn_range fndecl 1-2 25439 &enable_so_i2c_write_fndecl_25439
+enable_so_size_xen_netif_tx_request_25440 size xen_netif_tx_request 0 25440 NULL
+enable_so_alloc_vm_area_fndecl_25446 alloc_vm_area fndecl 1 25446 NULL
+enable_so_ds_nvme_lbaf_25461 ds nvme_lbaf 0 25461 NULL nohasharray
@@ -162853,22 +162210,22 @@ index 0000000..9da833a
+enable_so_size_map_info_25510 size map_info 0 25510 NULL
+enable_so_hidp_send_message_fndecl_25511 hidp_send_message fndecl 6 25511 NULL nohasharray
+enable_so_blk_init_tags_fndecl_25511 blk_init_tags fndecl 1 25511 &enable_so_hidp_send_message_fndecl_25511
++enable_so_btrfs_qgroup_reserve_meta_fndecl_25512 btrfs_qgroup_reserve_meta fndecl 0 25512 NULL
+enable_so_SYSC_kexec_file_load_fndecl_25513 SYSC_kexec_file_load fndecl 3 25513 NULL
+enable_so_pppoe_recvmsg_fndecl_25514 pppoe_recvmsg fndecl 3 25514 NULL nohasharray
+enable_so_n_sg_list_25514 n sg_list 0 25514 &enable_so_pppoe_recvmsg_fndecl_25514 nohasharray
+enable_so_read_file_spectral_period_fndecl_25514 read_file_spectral_period fndecl 3 25514 &enable_so_n_sg_list_25514
+enable_so_bfad_iocmd_lport_get_attr_fndecl_25521 bfad_iocmd_lport_get_attr fndecl 0 25521 NULL
++enable_so_base_aperture_25525 base aperture 0 25525 NULL
+enable_so_cuse_file_ioctl_fndecl_25529 cuse_file_ioctl fndecl 2 25529 NULL
+enable_so_smk_write_unconfined_fndecl_25530 smk_write_unconfined fndecl 3 25530 NULL
+enable_so_screen_fb_size_vardecl_hyperv_fb_c_25531 screen_fb_size vardecl_hyperv_fb.c 0 25531 NULL
+enable_so_size_i40e_hmc_obj_info_25536 size i40e_hmc_obj_info 0 25536 NULL
-+enable_so_IOCRequestFrameSize_mpt2sas_facts_25540 IOCRequestFrameSize mpt2sas_facts 0 25540 NULL nohasharray
-+enable_so_ioh_gpio_setup_fndecl_25540 ioh_gpio_setup fndecl 2 25540 &enable_so_IOCRequestFrameSize_mpt2sas_facts_25540
++enable_so_ioh_gpio_setup_fndecl_25540 ioh_gpio_setup fndecl 2 25540 NULL
+enable_so_f_adc_rtl2832_sdr_dev_25544 f_adc rtl2832_sdr_dev 0 25544 NULL
+enable_so_width_efifb_dmi_info_25557 width efifb_dmi_info 0 25557 NULL
+enable_so_iommu_map_mmio_space_fndecl_25569 iommu_map_mmio_space fndecl 2-1 25569 NULL
-+enable_so_max_beb_per1024_ubi_attach_req_25573 max_beb_per1024 ubi_attach_req 0 25573 NULL nohasharray
-+enable_so_frame_length_sh_eth_rxdesc_25573 frame_length sh_eth_rxdesc 0 25573 &enable_so_max_beb_per1024_ubi_attach_req_25573
++enable_so_max_beb_per1024_ubi_attach_req_25573 max_beb_per1024 ubi_attach_req 0 25573 NULL
+enable_so_num_stations_iwl_priv_25574 num_stations iwl_priv 0 25574 NULL
+enable_so_hpi_outstream_ancillary_read_fndecl_25575 hpi_outstream_ancillary_read fndecl 4 25575 NULL nohasharray
+enable_so_wsm_write_mib_fndecl_25575 wsm_write_mib fndecl 4 25575 &enable_so_hpi_outstream_ancillary_read_fndecl_25575
@@ -162880,38 +162237,41 @@ index 0000000..9da833a
+enable_so_last_page_snd_emu10k1_memblk_25591 last_page snd_emu10k1_memblk 0 25591 NULL
+enable_so_s_partition_len_udf_part_map_25593 s_partition_len udf_part_map 0 25593 NULL nohasharray
+enable_so_MaxReplyDescriptorPostQueueDepth_mpt3sas_facts_25593 MaxReplyDescriptorPostQueueDepth mpt3sas_facts 0 25593 &enable_so_s_partition_len_udf_part_map_25593
++enable_so_pcm_playback_analog_channels_snd_tscm_spec_25594 pcm_playback_analog_channels snd_tscm_spec 0 25594 NULL
+enable_so_isr_hw_pm_mode_changes_read_fndecl_25597 isr_hw_pm_mode_changes_read fndecl 3 25597 NULL nohasharray
+enable_so_dma_tx_requested_read_fndecl_25597 dma_tx_requested_read fndecl 3 25597 &enable_so_isr_hw_pm_mode_changes_read_fndecl_25597
+enable_so_max_cmd_sg_entries_ctlr_info_25601 max_cmd_sg_entries ctlr_info 0 25601 NULL
+enable_so_matroxfb_test_and_set_rounding_fndecl_25619 matroxfb_test_and_set_rounding fndecl 0-2 25619 NULL nohasharray
+enable_so_size_hpi_message_header_25619 size hpi_message_header 0 25619 &enable_so_matroxfb_test_and_set_rounding_fndecl_25619
+enable_so_ceph_osdc_alloc_request_fndecl_25622 ceph_osdc_alloc_request fndecl 3 25622 NULL
-+enable_so_nfs4_xattr_get_nfs4_label_fndecl_25623 nfs4_xattr_get_nfs4_label fndecl 4 25623 NULL
+enable_so_pmcraid_major_vardecl_pmcraid_c_25627 pmcraid_major vardecl_pmcraid.c 0 25627 NULL
+enable_so_ocfs2_trim_group_fndecl_25634 ocfs2_trim_group fndecl 0 25634 NULL nohasharray
+enable_so_status_xen_netif_rx_response_25634 status xen_netif_rx_response 0 25634 &enable_so_ocfs2_trim_group_fndecl_25634
+enable_so_dib9000_risc_mem_read_fndecl_25636 dib9000_risc_mem_read fndecl 4 25636 NULL
+enable_so_profile_replace_fndecl_25647 profile_replace fndecl 3 25647 NULL
+enable_so_rpipe_get_by_ep_fndecl_25656 rpipe_get_by_ep fndecl 0 25656 NULL
++enable_so_ocfs2_xattr_trusted_set_fndecl_25657 ocfs2_xattr_trusted_set fndecl 5 25657 NULL
+enable_so_getxattr_inode_operations_25660 getxattr inode_operations 0 25660 NULL
+enable_so_s5c73m3_spi_write_fndecl_25661 s5c73m3_spi_write fndecl 4-3 25661 NULL nohasharray
+enable_so_btt_write_pg_fndecl_25661 btt_write_pg fndecl 0 25661 &enable_so_s5c73m3_spi_write_fndecl_25661
-+enable_so_min_bytes_needed_fndecl_25664 min_bytes_needed fndecl 0 25664 NULL
+enable_so_eec_entry_sz_mthca_dev_lim_25665 eec_entry_sz mthca_dev_lim 0 25665 NULL
+enable_so_m_ag_maxlevels_xfs_mount_25666 m_ag_maxlevels xfs_mount 0 25666 NULL nohasharray
+enable_so_HWPartsNum_qinfo_chip_25666 HWPartsNum qinfo_chip 0 25666 &enable_so_m_ag_maxlevels_xfs_mount_25666
+enable_so_bfad_iocmd_qos_reset_stats_fndecl_25670 bfad_iocmd_qos_reset_stats fndecl 0 25670 NULL nohasharray
+enable_so_nvme_trans_log_info_exceptions_fndecl_25670 nvme_trans_log_info_exceptions fndecl 3 25670 &enable_so_bfad_iocmd_qos_reset_stats_fndecl_25670
-+enable_so_pipeline_enc_tx_stat_fifo_int_read_fndecl_25675 pipeline_enc_tx_stat_fifo_int_read fndecl 3 25675 NULL
++enable_so_bnxt_change_mtu_fndecl_25675 bnxt_change_mtu fndecl 2 25675 NULL nohasharray
++enable_so_pipeline_enc_tx_stat_fifo_int_read_fndecl_25675 pipeline_enc_tx_stat_fifo_int_read fndecl 3 25675 &enable_so_bnxt_change_mtu_fndecl_25675
+enable_so_tsi148_master_set_fndecl_25678 tsi148_master_set fndecl 4 25678 NULL
+enable_so_layout_mdp_superblock_s_25680 layout mdp_superblock_s 0 25680 NULL
+enable_so_max_cmd_per_lun_vardecl_megaraid_c_25693 max_cmd_per_lun vardecl_megaraid.c 0 25693 NULL
+enable_so_persistent_ram_ecc_string_fndecl_25699 persistent_ram_ecc_string fndecl 0 25699 NULL
-+enable_so_chv_get_total_gtt_size_fndecl_25701 chv_get_total_gtt_size fndecl 0-1 25701 NULL nohasharray
-+enable_so_xh_num_buckets_ocfs2_xattr_header_25701 xh_num_buckets ocfs2_xattr_header 0 25701 &enable_so_chv_get_total_gtt_size_fndecl_25701
++enable_so_xh_num_buckets_ocfs2_xattr_header_25701 xh_num_buckets ocfs2_xattr_header 0 25701 NULL nohasharray
++enable_so_chv_get_total_gtt_size_fndecl_25701 chv_get_total_gtt_size fndecl 0-1 25701 &enable_so_xh_num_buckets_ocfs2_xattr_header_25701
++enable_so_val_ilt_cfg_pair_25703 val ilt_cfg_pair 0 25703 NULL
+enable_so_sysctl_numa_balancing_scan_size_vardecl_25704 sysctl_numa_balancing_scan_size vardecl 0 25704 NULL nohasharray
+enable_so_ir_post_altera_jtag_25704 ir_post altera_jtag 0 25704 &enable_so_sysctl_numa_balancing_scan_size_vardecl_25704
-+enable_so_cmnd_out_ep_vub300_mmc_host_25705 cmnd_out_ep vub300_mmc_host 0 25705 NULL nohasharray
++enable_so_metadata_bnxt_tpa_info_25705 metadata bnxt_tpa_info 0 25705 NULL nohasharray
++enable_so_cmnd_out_ep_vub300_mmc_host_25705 cmnd_out_ep vub300_mmc_host 0 25705 &enable_so_metadata_bnxt_tpa_info_25705 nohasharray
+enable_so_get_bio_block_fndecl_25705 get_bio_block fndecl 0 25705 &enable_so_cmnd_out_ep_vub300_mmc_host_25705
+enable_so_ntfs_file_fsync_fndecl_25706 ntfs_file_fsync fndecl 2-3 25706 NULL
+enable_so_max_cid_space_cnic_local_25708 max_cid_space cnic_local 0 25708 NULL
@@ -162964,6 +162324,7 @@ index 0000000..9da833a
+enable_so_asize_mypriv_25864 asize mypriv 0 25864 NULL
+enable_so_usVBlanking_Time__ATOM_DTD_FORMAT_25867 usVBlanking_Time _ATOM_DTD_FORMAT 0 25867 NULL nohasharray
+enable_so_ether_type_efx_filter_spec_25867 ether_type efx_filter_spec 0 25867 &enable_so_usVBlanking_Time__ATOM_DTD_FORMAT_25867
++enable_so_ndlc_probe_fndecl_25869 ndlc_probe fndecl 4 25869 NULL
+enable_so_vlan_dev_change_mtu_fndecl_25871 vlan_dev_change_mtu fndecl 2 25871 NULL
+enable_so_buf_size_regmap_format_25880 buf_size regmap_format 0 25880 NULL
+enable_so_al_stripes_meta_data_on_disk_25883 al_stripes meta_data_on_disk 0 25883 NULL
@@ -162983,37 +162344,31 @@ index 0000000..9da833a
+enable_so_get_kcore_size_fndecl_25930 get_kcore_size fndecl 0 25930 NULL
+enable_so_ioat_ring_alloc_order_vardecl_25933 ioat_ring_alloc_order vardecl 0 25933 NULL
+enable_so_ircomm_tty_connect_indication_fndecl_25936 ircomm_tty_connect_indication fndecl 4-5 25936 NULL
-+enable_so_debugfs_read_file_bool_fndecl_25937 debugfs_read_file_bool fndecl 3 25937 NULL
+enable_so_smk_write_onlycap_fndecl_25939 smk_write_onlycap fndecl 3 25939 NULL
-+enable_so_n_piobufs_efx_ef10_nic_data_25940 n_piobufs efx_ef10_nic_data 0 25940 NULL nohasharray
-+enable_so_kvm_hv_set_msr_common_fndecl_25940 kvm_hv_set_msr_common fndecl 3 25940 &enable_so_n_piobufs_efx_ef10_nic_data_25940
++enable_so_kvm_hv_set_msr_common_fndecl_25940 kvm_hv_set_msr_common fndecl 3 25940 NULL nohasharray
++enable_so_n_piobufs_efx_ef10_nic_data_25940 n_piobufs efx_ef10_nic_data 0 25940 &enable_so_kvm_hv_set_msr_common_fndecl_25940
+enable_so___xfs_bmbt_get_all_fndecl_25952 __xfs_bmbt_get_all fndecl 2-1 25952 NULL
+enable_so_cyttsp_spi_read_block_data_fndecl_25954 cyttsp_spi_read_block_data fndecl 4 25954 NULL
+enable_so_len_xsd_sockmsg_25963 len xsd_sockmsg 0 25963 NULL
+enable_so_ieee802154_hdr_get_sechdr_fndecl_25965 ieee802154_hdr_get_sechdr fndecl 0 25965 NULL
+enable_so_memblock_remove_range_fndecl_25969 memblock_remove_range fndecl 3-2 25969 NULL
-+enable_so__iwl_dbgfs_sram_write_fndecl_25972 _iwl_dbgfs_sram_write fndecl 3 25972 NULL
+enable_so_tx_max_out_mpt_lan_priv_25974 tx_max_out mpt_lan_priv 0 25974 NULL
+enable_so_pci_ni8430_setup_fndecl_25977 pci_ni8430_setup fndecl 4 25977 NULL
+enable_so_ns_blocksize_bits_the_nilfs_25985 ns_blocksize_bits the_nilfs 0 25985 NULL
-+enable_so_ieee80211_if_read_dot11MeshGateAnnouncementProtocol_fndecl_25989 ieee80211_if_read_dot11MeshGateAnnouncementProtocol fndecl 3 25989 NULL
-+enable_so_split_state_fndecl_25992 split_state fndecl 4 25992 NULL
++enable_so_split_state_fndecl_25992 split_state fndecl 0-4 25992 NULL
+enable_so_vga_vram_size_vardecl_vgacon_c_25995 vga_vram_size vardecl_vgacon.c 0 25995 NULL
+enable_so_len_ieee_types_header_26006 len ieee_types_header 0 26006 NULL
+enable_so_udplite_getfrag_fndecl_26012 udplite_getfrag fndecl 4 26012 NULL
+enable_so_core_name_size_vardecl_coredump_c_26013 core_name_size vardecl_coredump.c 0 26013 NULL
-+enable_so_ufs_load_cylinder_fndecl_26018 ufs_load_cylinder fndecl 2 26018 NULL nohasharray
-+enable_so_add_delayed_ref_head_fndecl_26018 add_delayed_ref_head fndecl 5 26018 &enable_so_ufs_load_cylinder_fndecl_26018
++enable_so_ufs_load_cylinder_fndecl_26018 ufs_load_cylinder fndecl 2 26018 NULL
+enable_so_platform_id_cb710_chip_26021 platform_id cb710_chip 0 26021 NULL
+enable_so_touch_max_wacom_features_26029 touch_max wacom_features 0 26029 NULL
+enable_so___gfs2_fallocate_fndecl_26035 __gfs2_fallocate fndecl 4-3 26035 NULL
+enable_so_hex_dump_to_buffer_fndecl_26039 hex_dump_to_buffer fndecl 0-2-4-3 26039 NULL
-+enable_so_EraseSize_NFTLrecord_26040 EraseSize NFTLrecord 0 26040 NULL nohasharray
-+enable_so_ocfs2_debug_read_fndecl_26040 ocfs2_debug_read fndecl 3 26040 &enable_so_EraseSize_NFTLrecord_26040
++enable_so_EraseSize_NFTLrecord_26040 EraseSize NFTLrecord 0 26040 NULL
+enable_so_ll_recv_fndecl_26047 ll_recv fndecl 3 26047 NULL
+enable_so_md_template_size_netxen_minidump_26050 md_template_size netxen_minidump 0 26050 NULL
+enable_so_port_ipoib_dev_priv_26051 port ipoib_dev_priv 0 26051 NULL
-+enable_so_picolcd_debug_eeprom_read_fndecl_26054 picolcd_debug_eeprom_read fndecl 3 26054 NULL
+enable_so_l2cap_send_cmd_fndecl_26055 l2cap_send_cmd fndecl 4 26055 NULL
+enable_so__pcol_init_fndecl_26056 _pcol_init fndecl 2 26056 NULL
+enable_so_physical_for_dev_replace_scrub_copy_nocow_ctx_26059 physical_for_dev_replace scrub_copy_nocow_ctx 0 26059 NULL
@@ -163029,21 +162384,20 @@ index 0000000..9da833a
+enable_so_protocol_sk_buff_26088 protocol sk_buff 0 26088 &enable_so_skb_buf_size_vmxnet3_adapter_26088
+enable_so_vmci_transport_set_max_buffer_size_fndecl_26089 vmci_transport_set_max_buffer_size fndecl 2 26089 NULL
+enable_so_idmap_pipe_downcall_fndecl_26092 idmap_pipe_downcall fndecl 3 26092 NULL
-+enable_so_rds_ib_ring_resize_fndecl_26097 rds_ib_ring_resize fndecl 2 26097 NULL
++enable_so___clear_extent_bit_fndecl_26097 __clear_extent_bit fndecl 2-3 26097 NULL nohasharray
++enable_so_rds_ib_ring_resize_fndecl_26097 rds_ib_ring_resize fndecl 2 26097 &enable_so___clear_extent_bit_fndecl_26097
+enable_so_qp_host_alloc_queue_fndecl_26101 qp_host_alloc_queue fndecl 1 26101 NULL
+enable_so_used_bytes_ubi_volume_26113 used_bytes ubi_volume 0 26113 NULL
+enable_so_multi_len_ssif_info_26118 multi_len ssif_info 0 26118 NULL nohasharray
+enable_so_log_store_fndecl_26118 log_store fndecl 8 26118 &enable_so_multi_len_ssif_info_26118
-+enable_so_blk_limits_max_hw_sectors_fndecl_26121 blk_limits_max_hw_sectors fndecl 2 26121 NULL
+enable_so_maxflows_sfq_sched_data_26122 maxflows sfq_sched_data 0 26122 NULL
++enable_so_snd_fw_async_midi_port_init_fndecl_26127 snd_fw_async_midi_port_init fndecl 4 26127 NULL
+enable_so_nf_nat_sdp_session_fndecl_26130 nf_nat_sdp_session fndecl 2 26130 NULL
-+enable_so_hba_queue_depth_MPT2SAS_ADAPTER_26142 hba_queue_depth MPT2SAS_ADAPTER 0 26142 NULL
+enable_so_ipwireless_ppp_mru_fndecl_26146 ipwireless_ppp_mru fndecl 0 26146 NULL
+enable_so_size_cyttsp4_tch_rec_params_26150 size cyttsp4_tch_rec_params 0 26150 NULL
+enable_so_translate_compat_table_fndecl_26151 translate_compat_table fndecl 6 26151 NULL
+enable_so_hid_register_report_fndecl_26154 hid_register_report fndecl 3 26154 NULL
+enable_so_sense_len_megasas_iocpacket_26161 sense_len megasas_iocpacket 0 26161 NULL
-+enable_so_nfs4_xattr_set_nfs4_label_fndecl_26162 nfs4_xattr_set_nfs4_label fndecl 4 26162 NULL
+enable_so_addr_smiapp_reg_limits_26169 addr smiapp_reg_limits 0 26169 NULL
+enable_so_r_bitcnt_tiger_hw_26171 r_bitcnt tiger_hw 0 26171 NULL
+enable_so_src_sz_max_ce_attr_26172 src_sz_max ce_attr 0 26172 NULL
@@ -163062,6 +162416,7 @@ index 0000000..9da833a
+enable_so_data_len_kernel_ipmi_msg_26209 data_len kernel_ipmi_msg 0 26209 NULL nohasharray
+enable_so_bfad_debugfs_write_regrd_fndecl_26209 bfad_debugfs_write_regrd fndecl 3 26209 &enable_so_data_len_kernel_ipmi_msg_26209
+enable_so_s_log_zone_size_isofs_sb_info_26211 s_log_zone_size isofs_sb_info 0 26211 NULL
++enable_so_clone_range_fndecl_26212 clone_range fndecl 6-5 26212 NULL
+enable_so_dev_cnt_usnic_uiom_pd_26213 dev_cnt usnic_uiom_pd 0 26213 NULL
+enable_so_hfsplus_submit_bio_fndecl_26217 hfsplus_submit_bio fndecl 2 26217 NULL nohasharray
+enable_so_sst_wake_up_block_fndecl_26217 sst_wake_up_block fndecl 6 26217 &enable_so_hfsplus_submit_bio_fndecl_26217
@@ -163077,8 +162432,7 @@ index 0000000..9da833a
+enable_so_ecp_write_data_parport_operations_26253 ecp_write_data parport_operations 0 26253 NULL
+enable_so_can_gather_numa_stats_fndecl_26254 can_gather_numa_stats fndecl 3 26254 NULL
+enable_so_iwl_dbgfs_sram_write_fndecl_26260 iwl_dbgfs_sram_write fndecl 3 26260 NULL
-+enable_so_den_snd_ratden_26264 den snd_ratden 0 26264 NULL nohasharray
-+enable_so_il_dbgfs_rx_stats_read_fndecl_26264 il_dbgfs_rx_stats_read fndecl 3 26264 &enable_so_den_snd_ratden_26264
++enable_so_den_snd_ratden_26264 den snd_ratden 0 26264 NULL
+enable_so_check_pages_isolated_fndecl_26267 check_pages_isolated fndecl 0-1-2 26267 NULL
+enable_so_jumbo_size_qset_params_26273 jumbo_size qset_params 0 26273 NULL
+enable_so_fw_realloc_buffer_fndecl_26275 fw_realloc_buffer fndecl 2 26275 NULL
@@ -163086,7 +162440,7 @@ index 0000000..9da833a
+enable_so_n_hdlc_tty_write_fndecl_26279 n_hdlc_tty_write fndecl 4 26279 &enable_so_width_stk1160_26279
+enable_so_simple_io_fndecl_26280 simple_io fndecl 4 26280 NULL nohasharray
+enable_so_xlate_dev_mem_ptr_fndecl_26280 xlate_dev_mem_ptr fndecl 1 26280 &enable_so_simple_io_fndecl_26280
-+enable_so_send_write_fndecl_26285 send_write fndecl 6-0-5 26285 NULL
++enable_so_send_write_fndecl_26285 send_write fndecl 6-0-5-4 26285 NULL
+enable_so_tx_data_length_hso_serial_26287 tx_data_length hso_serial 0 26287 NULL
+enable_so_wacom_led_putimage_fndecl_26291 wacom_led_putimage fndecl 4 26291 NULL
+enable_so_hub_port_connect_fndecl_26292 hub_port_connect fndecl 2 26292 NULL nohasharray
@@ -163096,7 +162450,6 @@ index 0000000..9da833a
+enable_so_xskip_mt9t031_26297 xskip mt9t031 0 26297 NULL
+enable_so_xhci_common_hub_descriptor_fndecl_26304 xhci_common_hub_descriptor fndecl 3 26304 NULL nohasharray
+enable_so_model_data_size_oxygen_model_26304 model_data_size oxygen_model 0 26304 &enable_so_xhci_common_hub_descriptor_fndecl_26304
-+enable_so_debugfs_create_file_size_fndecl_26309 debugfs_create_file_size fndecl 6 26309 NULL
+enable_so_used_core_name_26313 used core_name 0 26313 NULL
+enable_so_at25_mem_read_fndecl_26314 at25_mem_read fndecl 3-4 26314 NULL
+enable_so_drxdap_fasi_write_block_fndecl_26315 drxdap_fasi_write_block fndecl 3 26315 NULL
@@ -163105,7 +162458,8 @@ index 0000000..9da833a
+enable_so_drNmAlBlks_hfs_mdb_26326 drNmAlBlks hfs_mdb 0 26326 NULL
+enable_so_ocfs2_read_refcount_block_fndecl_26330 ocfs2_read_refcount_block fndecl 2 26330 NULL
+enable_so_fcoe_ctlr_send_keep_alive_fndecl_26335 fcoe_ctlr_send_keep_alive fndecl 3 26335 NULL
-+enable_so_maxchild_usb_device_26337 maxchild usb_device 0 26337 NULL
++enable_so_scif_pin_pages_fndecl_26337 scif_pin_pages fndecl 2 26337 NULL nohasharray
++enable_so_maxchild_usb_device_26337 maxchild usb_device 0 26337 &enable_so_scif_pin_pages_fndecl_26337
+enable_so_alloc_ring_fndecl_26338 alloc_ring fndecl 4-2 26338 NULL
+enable_so_ept_prefetch_gpte_fndecl_26343 ept_prefetch_gpte fndecl 4 26343 NULL nohasharray
+enable_so_broadcast_xmt_max_payload_fwnet_device_26343 broadcast_xmt_max_payload fwnet_device 0 26343 &enable_so_ept_prefetch_gpte_fndecl_26343
@@ -163115,8 +162469,8 @@ index 0000000..9da833a
+enable_so_hugetlbfs_pagecache_present_fndecl_26350 hugetlbfs_pagecache_present fndecl 3 26350 &enable_so_blkdev_readpages_fndecl_26350
+enable_so___ocfs2_remove_xattr_range_fndecl_26353 __ocfs2_remove_xattr_range fndecl 5-4-3 26353 NULL
+enable_so_kovaplus_sysfs_read_fndecl_26362 kovaplus_sysfs_read fndecl 6 26362 NULL
-+enable_so_ioread16_fndecl_26365 ioread16 fndecl 0 26365 NULL nohasharray
-+enable_so_scsi_eh_prep_cmnd_fndecl_26365 scsi_eh_prep_cmnd fndecl 5 26365 &enable_so_ioread16_fndecl_26365
++enable_so_scsi_eh_prep_cmnd_fndecl_26365 scsi_eh_prep_cmnd fndecl 5 26365 NULL nohasharray
++enable_so_ioread16_fndecl_26365 ioread16 fndecl 0 26365 &enable_so_scsi_eh_prep_cmnd_fndecl_26365
+enable_so_max_mthca_alloc_26367 max mthca_alloc 0 26367 NULL
+enable_so_xpnet_send_fndecl_26368 xpnet_send fndecl 3-4 26368 NULL nohasharray
+enable_so_ts_tsid_gru_thread_state_26368 ts_tsid gru_thread_state 0 26368 &enable_so_xpnet_send_fndecl_26368
@@ -163156,8 +162510,7 @@ index 0000000..9da833a
+enable_so_ri_data0_gfs2_rindex_26446 ri_data0 gfs2_rindex 0 26446 &enable_so_max_req_size_mmc_host_26446
+enable_so_size_aper_size_info_fixed_26447 size aper_size_info_fixed 0 26447 NULL
+enable_so_width_cobalt_stream_26451 width cobalt_stream 0 26451 NULL
-+enable_so___xfs_end_io_direct_write_fndecl_26454 __xfs_end_io_direct_write fndecl 3-4 26454 NULL
-+enable_so_op_count_rm_rdma_op_26455 op_count rm_rdma_op 0 26455 NULL
++enable_so___xfs_end_io_direct_write_fndecl_26454 __xfs_end_io_direct_write fndecl 4-3 26454 NULL
+enable_so_qp_memcpy_to_queue_iov_fndecl_26456 qp_memcpy_to_queue_iov fndecl 5-2 26456 NULL
+enable_so_global_irq_base_acpi_madt_io_apic_26467 global_irq_base acpi_madt_io_apic 0 26467 NULL
+enable_so_usbat_bulk_read_fndecl_26469 usbat_bulk_read fndecl 3-4 26469 NULL
@@ -163172,7 +162525,8 @@ index 0000000..9da833a
+enable_so_queue_cnt_fndecl_26484 queue_cnt fndecl 0 26484 NULL
+enable_so_count_xfs_dir2_sf_hdr_26486 count xfs_dir2_sf_hdr 0 26486 NULL
+enable_so_setup_max_cpus_vardecl_26488 setup_max_cpus vardecl 0 26488 NULL
-+enable_so_pa_lstart_ext4_prealloc_space_26493 pa_lstart ext4_prealloc_space 0 26493 NULL
++enable_so_tipc_bcast_get_mtu_fndecl_26493 tipc_bcast_get_mtu fndecl 0 26493 NULL nohasharray
++enable_so_pa_lstart_ext4_prealloc_space_26493 pa_lstart ext4_prealloc_space 0 26493 &enable_so_tipc_bcast_get_mtu_fndecl_26493
+enable_so_videobuf_read_stream_fndecl_26495 videobuf_read_stream fndecl 3 26495 NULL
+enable_so_ndr_start_nd_region_26496 ndr_start nd_region 0 26496 NULL
+enable_so_remap_and_issue_overwrite_fndecl_26499 remap_and_issue_overwrite fndecl 3 26499 NULL
@@ -163192,13 +162546,11 @@ index 0000000..9da833a
+enable_so_maxdepth_sfq_sched_data_26560 maxdepth sfq_sched_data 0 26560 NULL
+enable_so_cld_pipe_downcall_fndecl_26561 cld_pipe_downcall fndecl 3 26561 NULL
+enable_so_fifo_blocks_vxge_hw_fifo_config_26565 fifo_blocks vxge_hw_fifo_config 0 26565 NULL
-+enable_so_ieee80211_if_read_uapsd_max_sp_len_fndecl_26568 ieee80211_if_read_uapsd_max_sp_len fndecl 3 26568 NULL
+enable_so_br_change_mtu_fndecl_26571 br_change_mtu fndecl 2 26571 NULL
+enable_so_wMaxSegmentSize_usb_cdc_mbim_desc_26572 wMaxSegmentSize usb_cdc_mbim_desc 0 26572 NULL
+enable_so_nfs4_write_cached_acl_fndecl_26573 nfs4_write_cached_acl fndecl 4 26573 NULL
+enable_so_sd_log_flush_head_gfs2_sbd_26577 sd_log_flush_head gfs2_sbd 0 26577 NULL
-+enable_so_smbios_entry_point_size_vardecl_dmi_scan_c_26579 smbios_entry_point_size vardecl_dmi_scan.c 0 26579 NULL nohasharray
-+enable_so_read_file_node_aggr_fndecl_26579 read_file_node_aggr fndecl 3 26579 &enable_so_smbios_entry_point_size_vardecl_dmi_scan_c_26579
++enable_so_smbios_entry_point_size_vardecl_dmi_scan_c_26579 smbios_entry_point_size vardecl_dmi_scan.c 0 26579 NULL
+enable_so_read_tree_block_fndecl_26587 read_tree_block fndecl 2 26587 NULL
+enable_so_early_init_dt_scan_chosen_fndecl_26588 early_init_dt_scan_chosen fndecl 1 26588 NULL
+enable_so_bytes_per_word_tegra_slink_data_26590 bytes_per_word tegra_slink_data 0 26590 NULL
@@ -163220,9 +162572,9 @@ index 0000000..9da833a
+enable_so_mpt_lan_receive_post_turbo_fndecl_26635 mpt_lan_receive_post_turbo fndecl 2 26635 NULL
+enable_so_qxl_draw_dirty_fb_fndecl_26636 qxl_draw_dirty_fb fndecl 7 26636 NULL
+enable_so_i40e_change_mtu_fndecl_26637 i40e_change_mtu fndecl 2 26637 NULL
-+enable_so_aac_sa_ioremap_fndecl_26639 aac_sa_ioremap fndecl 2 26639 NULL nohasharray
-+enable_so_h_length_dlm_header_26639 h_length dlm_header 0 26639 &enable_so_aac_sa_ioremap_fndecl_26639 nohasharray
-+enable_so_irias_new_octseq_value_fndecl_26639 irias_new_octseq_value fndecl 2 26639 &enable_so_h_length_dlm_header_26639
++enable_so_h_length_dlm_header_26639 h_length dlm_header 0 26639 NULL nohasharray
++enable_so_irias_new_octseq_value_fndecl_26639 irias_new_octseq_value fndecl 2 26639 &enable_so_h_length_dlm_header_26639 nohasharray
++enable_so_aac_sa_ioremap_fndecl_26639 aac_sa_ioremap fndecl 2 26639 &enable_so_irias_new_octseq_value_fndecl_26639
+enable_so_fh_size_knfsd_fh_26641 fh_size knfsd_fh 0 26641 NULL
+enable_so_sys_madvise_fndecl_26642 sys_madvise fndecl 2-1 26642 NULL nohasharray
+enable_so_size_drm_global_reference_26642 size drm_global_reference 0 26642 &enable_so_sys_madvise_fndecl_26642
@@ -163236,11 +162588,11 @@ index 0000000..9da833a
+enable_so_nr_recvmsg_fndecl_26658 nr_recvmsg fndecl 3 26658 NULL
+enable_so_jbd2_journal_begin_ordered_truncate_fndecl_26661 jbd2_journal_begin_ordered_truncate fndecl 3 26661 NULL
+enable_so_iio_device_add_event_sysfs_fndecl_26664 iio_device_add_event_sysfs fndecl 0 26664 NULL
++enable_so_qed_qm_pf_mem_size_fndecl_26667 qed_qm_pf_mem_size fndecl 0-4-6-3-5-2 26667 NULL
+enable_so_hdlc_change_mtu_fndecl_26672 hdlc_change_mtu fndecl 2 26672 NULL
+enable_so_oobsize_mtd_info_26683 oobsize mtd_info 0 26683 NULL
+enable_so_swap_cgroup_swapon_fndecl_26685 swap_cgroup_swapon fndecl 2 26685 NULL
-+enable_so_omap1_spi100k_txrx_pio_fndecl_26692 omap1_spi100k_txrx_pio fndecl 0 26692 NULL nohasharray
-+enable_so_blk_msg_write_fndecl_26692 blk_msg_write fndecl 3 26692 &enable_so_omap1_spi100k_txrx_pio_fndecl_26692
++enable_so_omap1_spi100k_txrx_pio_fndecl_26692 omap1_spi100k_txrx_pio fndecl 0 26692 NULL
+enable_so_rx_buff_len_amd8111e_priv_26693 rx_buff_len amd8111e_priv 0 26693 NULL
+enable_so_raw_request_hid_ll_driver_26699 raw_request hid_ll_driver 0 26699 NULL
+enable_so_packet_snd_fndecl_26705 packet_snd fndecl 3 26705 NULL
@@ -163253,8 +162605,8 @@ index 0000000..9da833a
+enable_so_ocfs2_xattr_set_handle_fndecl_26732 ocfs2_xattr_set_handle fndecl 7 26732 NULL
+enable_so_cache_downcall_fndecl_26737 cache_downcall fndecl 3 26737 NULL
+enable_so_minor_uart_driver_26739 minor uart_driver 0 26739 NULL
-+enable_so_add_index_fndecl_26744 add_index fndecl 0 26744 NULL nohasharray
-+enable_so_xfs_filestream_lookup_ag_fndecl_26744 xfs_filestream_lookup_ag fndecl 0 26744 &enable_so_add_index_fndecl_26744
++enable_so_xfs_filestream_lookup_ag_fndecl_26744 xfs_filestream_lookup_ag fndecl 0 26744 NULL nohasharray
++enable_so_add_index_fndecl_26744 add_index fndecl 0 26744 &enable_so_xfs_filestream_lookup_ag_fndecl_26744
+enable_so_block_size_befs_sb_info_26751 block_size befs_sb_info 0 26751 NULL
+enable_so_len_osd_sg_entry_26755 len osd_sg_entry 0 26755 NULL
+enable_so_number_of_pins_gpio_rcar_config_26759 number_of_pins gpio_rcar_config 0 26759 NULL
@@ -163267,9 +162619,11 @@ index 0000000..9da833a
+enable_so_fw_iso_buffer_alloc_fndecl_26779 fw_iso_buffer_alloc fndecl 2 26779 &enable_so_hb_size_hashbin_t_26779
+enable_so___perf_event_read_size_fndecl_26786 __perf_event_read_size fndecl 2 26786 NULL
+enable_so_audit_unpack_string_fndecl_26791 audit_unpack_string fndecl 3 26791 NULL
++enable_so_max_support_points_edt_ft5x06_ts_data_26799 max_support_points edt_ft5x06_ts_data 0 26799 NULL
+enable_so_ocfs2_cache_block_dealloc_fndecl_26800 ocfs2_cache_block_dealloc fndecl 6-5-4 26800 NULL
+enable_so_width_v4l2_rect_26802 width v4l2_rect 0 26802 NULL nohasharray
+enable_so_sge_cnt_rdma_iu_26802 sge_cnt rdma_iu 0 26802 &enable_so_width_v4l2_rect_26802
++enable_so_dwc2_hsotg_set_ep_maxpacket_fndecl_26815 dwc2_hsotg_set_ep_maxpacket fndecl 3 26815 NULL
+enable_so_fb_sys_read_fndecl_26817 fb_sys_read fndecl 3 26817 NULL
+enable_so_ramdisk_image_setup_header_26821 ramdisk_image setup_header 0 26821 NULL nohasharray
+enable_so_do_read_fault_fndecl_26821 do_read_fault fndecl 3-5 26821 &enable_so_ramdisk_image_setup_header_26821
@@ -163317,10 +162671,12 @@ index 0000000..9da833a
+enable_so_to_skip_sd_26922 to_skip sd 0 26922 NULL
+enable_so_count_vnic_res_26925 count vnic_res 0 26925 NULL
+enable_so_depth_vpdma_data_format_26927 depth vpdma_data_format 0 26927 NULL
++enable_so_major_intel_th_26929 major intel_th 0 26929 NULL
+enable_so_round_event_name_len_fndecl_26935 round_event_name_len fndecl 0 26935 NULL
+enable_so_scsi_max_sectors_iser_conn_26937 scsi_max_sectors iser_conn 0 26937 NULL
+enable_so_get_bits_fndecl_26938 get_bits fndecl 0-2 26938 NULL
+enable_so_granularity_vx_ibl_info_26939 granularity vx_ibl_info 0 26939 NULL
++enable_so_tx_nr_pages_bnxt_26942 tx_nr_pages bnxt 0 26942 NULL
+enable_so_il4965_pass_packet_to_mac80211_fndecl_26945 il4965_pass_packet_to_mac80211 fndecl 3 26945 NULL
+enable_so_br_vlan_set_default_pvid_fndecl_26946 br_vlan_set_default_pvid fndecl 2 26946 NULL nohasharray
+enable_so_chunk_size_drxk_config_26946 chunk_size drxk_config 0 26946 &enable_so_br_vlan_set_default_pvid_fndecl_26946
@@ -163359,6 +162715,7 @@ index 0000000..9da833a
+enable_so_batadv_handle_request_fndecl_27018 batadv_handle_request fndecl 5 27018 NULL nohasharray
+enable_so_nfs4_set_security_label_fndecl_27018 nfs4_set_security_label fndecl 3 27018 &enable_so_batadv_handle_request_fndecl_27018
+enable_so_mclk_frequency_ov965x_27019 mclk_frequency ov965x 0 27019 NULL
++enable_so_sit_gro_complete_fndecl_27020 sit_gro_complete fndecl 2 27020 NULL
+enable_so_lpfcdiag_loop_self_reg_fndecl_27022 lpfcdiag_loop_self_reg fndecl 0 27022 NULL
+enable_so_ath6kl_cfg80211_connect_event_fndecl_27024 ath6kl_cfg80211_connect_event fndecl 7-8-9 27024 NULL nohasharray
+enable_so_cts_cbc_decrypt_fndecl_27024 cts_cbc_decrypt fndecl 5 27024 &enable_so_ath6kl_cfg80211_connect_event_fndecl_27024
@@ -163378,6 +162735,7 @@ index 0000000..9da833a
+enable_so_bm_init_fndecl_27082 bm_init fndecl 2 27082 NULL
+enable_so_new_layout_mddev_27083 new_layout mddev 0 27083 NULL
+enable_so_max_wqes_rqes_per_q_ocrdma_mbx_query_config_27086 max_wqes_rqes_per_q ocrdma_mbx_query_config 0 27086 NULL
++enable_so_f2fs_xattr_generic_set_fndecl_27087 f2fs_xattr_generic_set fndecl 5 27087 NULL
+enable_so_far_set_size_geom_27088 far_set_size geom 0 27088 NULL
+enable_so_vid_hdr_aloffset_ubi_device_27089 vid_hdr_aloffset ubi_device 0 27089 NULL
+enable_so_file_size_perf_mmap_event_27090 file_size perf_mmap_event 0 27090 NULL nohasharray
@@ -163388,10 +162746,11 @@ index 0000000..9da833a
+enable_so_i_suballoc_bit_ocfs2_dinode_27105 i_suballoc_bit ocfs2_dinode 0 27105 &enable_so___btrfs_alloc_chunk_fndecl_27105
+enable_so_lastctxt_piobuf_qib_devdata_27106 lastctxt_piobuf qib_devdata 0 27106 NULL
+enable_so_iser_max_sectors_vardecl_27108 iser_max_sectors vardecl 0 27108 NULL
-+enable_so_ieee80211_if_read_ap_power_level_fndecl_27109 ieee80211_if_read_ap_power_level fndecl 3 27109 NULL
-+enable_so_usb_hcd_link_urb_to_ep_fndecl_27115 usb_hcd_link_urb_to_ep fndecl 0 27115 NULL nohasharray
-+enable_so_len_lpfc_debug_27115 len lpfc_debug 0 27115 &enable_so_usb_hcd_link_urb_to_ep_fndecl_27115
-+enable_so_gpa_gfn_to_hva_cache_27125 gpa gfn_to_hva_cache 0 27125 NULL
++enable_so_usb_hcd_link_urb_to_ep_fndecl_27115 usb_hcd_link_urb_to_ep fndecl 0 27115 NULL
++enable_so_acpi_table_parse_entries_array_fndecl_27120 acpi_table_parse_entries_array fndecl 0 27120 NULL
++enable_so_intel_th_alloc_fndecl_27123 intel_th_alloc fndecl 4 27123 NULL
++enable_so_cnt_set_multicast_27125 cnt set_multicast 0 27125 NULL nohasharray
++enable_so_gpa_gfn_to_hva_cache_27125 gpa gfn_to_hva_cache 0 27125 &enable_so_cnt_set_multicast_27125
+enable_so_mwifiex_sdio_card_to_host_fndecl_27127 mwifiex_sdio_card_to_host fndecl 4 27127 NULL nohasharray
+enable_so_non_atomic_pte_lookup_fndecl_27127 non_atomic_pte_lookup fndecl 2 27127 &enable_so_mwifiex_sdio_card_to_host_fndecl_27127
+enable_so_pd_count_ocrdma_alloc_pd_range_rsp_27128 pd_count ocrdma_alloc_pd_range_rsp 0 27128 NULL
@@ -163452,8 +162811,8 @@ index 0000000..9da833a
+enable_so_sector_r10bio_27298 sector r10bio 0 27298 NULL
+enable_so_offset_mlx5_ib_wq_27302 offset mlx5_ib_wq 0 27302 NULL
+enable_so_ath6kl_connect_event_fndecl_27304 ath6kl_connect_event fndecl 7-8-9 27304 NULL
-+enable_so_gpu_mem_size_vml_par_27308 gpu_mem_size vml_par 0 27308 NULL nohasharray
-+enable_so_cifs_strict_fsync_fndecl_27308 cifs_strict_fsync fndecl 2-3 27308 &enable_so_gpu_mem_size_vml_par_27308
++enable_so_cifs_strict_fsync_fndecl_27308 cifs_strict_fsync fndecl 2-3 27308 NULL nohasharray
++enable_so_gpu_mem_size_vml_par_27308 gpu_mem_size vml_par 0 27308 &enable_so_cifs_strict_fsync_fndecl_27308
+enable_so_nrelocs_radeon_cs_parser_27313 nrelocs radeon_cs_parser 0 27313 NULL
+enable_so_sctp_recvmsg_fndecl_27314 sctp_recvmsg fndecl 3 27314 NULL
+enable_so_btrfs_token_file_extent_ram_bytes_fndecl_27316 btrfs_token_file_extent_ram_bytes fndecl 0 27316 NULL
@@ -163474,6 +162833,7 @@ index 0000000..9da833a
+enable_so_n_mcgrps_genl_family_27362 n_mcgrps genl_family 0 27362 NULL
+enable_so_find_new_extents_fndecl_27368 find_new_extents fndecl 5 27368 NULL
+enable_so_channels_pda_pa_curve_data_27369 channels pda_pa_curve_data 0 27369 NULL
++enable_so_btrfs_add_delayed_tree_ref_fndecl_27370 btrfs_add_delayed_tree_ref fndecl 3 27370 NULL
+enable_so_num_altsetting_usb_interface_27371 num_altsetting usb_interface 0 27371 NULL
+enable_so_mod_len_ccp_rsa_engine_27374 mod_len ccp_rsa_engine 0 27374 NULL nohasharray
+enable_so_urb_size_tm6000_core_27374 urb_size tm6000_core 0 27374 &enable_so_mod_len_ccp_rsa_engine_27374
@@ -163483,7 +162843,6 @@ index 0000000..9da833a
+enable_so_frame_size_audioformat_27394 frame_size audioformat 0 27394 NULL
+enable_so_ccid_kmem_cache_create_fndecl_27397 ccid_kmem_cache_create fndecl 1 27397 NULL
+enable_so_evdev_ioctl_compat_fndecl_27400 evdev_ioctl_compat fndecl 2 27400 NULL
-+enable_so_enc_pools_insert_fndecl_27402 enc_pools_insert fndecl 3 27402 NULL
+enable_so_m_bsize_xfs_mount_27405 m_bsize xfs_mount 0 27405 NULL
+enable_so_max_payload_rpc_xprt_27408 max_payload rpc_xprt 0 27408 NULL
+enable_so_bucket_table_alloc_fndecl_27422 bucket_table_alloc fndecl 2 27422 NULL
@@ -163517,14 +162876,10 @@ index 0000000..9da833a
+enable_so_exofs_parent_ino_fndecl_27488 exofs_parent_ino fndecl 0 27488 &enable_so_status_udc_data_dma_27488
+enable_so_drbd_send_drequest_csum_fndecl_27489 drbd_send_drequest_csum fndecl 2-3-5 27489 NULL nohasharray
+enable_so_local_nentries_xpc_channel_27489 local_nentries xpc_channel 0 27489 &enable_so_drbd_send_drequest_csum_fndecl_27489
-+enable_so_iwl_dbgfs_protection_mode_read_fndecl_27492 iwl_dbgfs_protection_mode_read fndecl 3 27492 NULL
+enable_so_wb_index_nfs_page_27494 wb_index nfs_page 0 27494 NULL
-+enable_so_ocfs2_xa_value_truncate_fndecl_27495 ocfs2_xa_value_truncate fndecl 2 27495 NULL nohasharray
-+enable_so_ieee80211_if_read_dot11MeshForwarding_fndecl_27495 ieee80211_if_read_dot11MeshForwarding fndecl 3 27495 &enable_so_ocfs2_xa_value_truncate_fndecl_27495
++enable_so_ocfs2_xa_value_truncate_fndecl_27495 ocfs2_xa_value_truncate fndecl 2 27495 NULL
+enable_so_qib_mmap_mem_fndecl_27496 qib_mmap_mem fndecl 3 27496 NULL
-+enable_so_rq_size_srpt_rdma_ch_27500 rq_size srpt_rdma_ch 0 27500 NULL nohasharray
-+enable_so_ath10k_read_nf_cal_period_fndecl_27500 ath10k_read_nf_cal_period fndecl 3 27500 &enable_so_rq_size_srpt_rdma_ch_27500
-+enable_so_lpfc_idiag_queacc_read_fndecl_27501 lpfc_idiag_queacc_read fndecl 3 27501 NULL
++enable_so_rq_size_srpt_rdma_ch_27500 rq_size srpt_rdma_ch 0 27500 NULL
+enable_so_rx_buf_size_bnx2x_fastpath_27506 rx_buf_size bnx2x_fastpath 0 27506 NULL
+enable_so_max_qp_sz_mthca_dev_lim_27511 max_qp_sz mthca_dev_lim 0 27511 NULL
+enable_so_stripe_len_map_lookup_27512 stripe_len map_lookup 0 27512 NULL
@@ -163534,11 +162889,13 @@ index 0000000..9da833a
+enable_so_dvb_demux_read_fndecl_27534 dvb_demux_read fndecl 3 27534 NULL
+enable_so_hlen_raw6_frag_vec_27535 hlen raw6_frag_vec 0 27535 NULL
+enable_so_hsr_dev_change_mtu_fndecl_27537 hsr_dev_change_mtu fndecl 2 27537 NULL
++enable_so_dwc2_hsotg_rx_data_fndecl_27540 dwc2_hsotg_rx_data fndecl 3 27540 NULL
+enable_so_max_mem_ttm_mem_zone_27542 max_mem ttm_mem_zone 0 27542 NULL nohasharray
+enable_so_onenand_mlc_read_ops_nolock_fndecl_27542 onenand_mlc_read_ops_nolock fndecl 2 27542 &enable_so_max_mem_ttm_mem_zone_27542
+enable_so_snd_pcm_plug_slave_size_fndecl_27548 snd_pcm_plug_slave_size fndecl 0-2 27548 NULL
+enable_so_remap_and_issue_fndecl_27555 remap_and_issue fndecl 3 27555 NULL
+enable_so_svc_rdma_xdr_encode_array_chunk_fndecl_27563 svc_rdma_xdr_encode_array_chunk fndecl 5 27563 NULL
++enable_so_pipe_in_rtl8xxxu_priv_27564 pipe_in rtl8xxxu_priv 0 27564 NULL
+enable_so_sddr09_write_data_fndecl_27565 sddr09_write_data fndecl 3-2 27565 NULL
+enable_so_size_gf100_gr_fuc_27570 size gf100_gr_fuc 0 27570 NULL
+enable_so__wm8993_set_fll_fndecl_27571 _wm8993_set_fll fndecl 4-5 27571 NULL
@@ -163556,15 +162913,14 @@ index 0000000..9da833a
+enable_so__rtl92s_firmware_downloadcode_fndecl_27606 _rtl92s_firmware_downloadcode fndecl 3 27606 NULL
+enable_so_packet_length_gl_packet_27608 packet_length gl_packet 0 27608 NULL nohasharray
+enable_so_EraseSize_INFTLrecord_27608 EraseSize INFTLrecord 0 27608 &enable_so_packet_length_gl_packet_27608
-+enable_so_p1_min_aptina_pll_limits_27620 p1_min aptina_pll_limits 0 27620 NULL
+enable_so_read_isac_isac_27627 read_isac isac 0 27627 NULL nohasharray
+enable_so_ino_logfs_disk_dentry_27627 ino logfs_disk_dentry 0 27627 &enable_so_read_isac_isac_27627
+enable_so_data_length_se_cmd_27629 data_length se_cmd 0 27629 NULL
+enable_so_group_size_rcv_array_data_27633 group_size rcv_array_data 0 27633 NULL
+enable_so_snoop_urb_data_fndecl_27635 snoop_urb_data fndecl 2 27635 NULL
-+enable_so_sta_agg_status_read_fndecl_27641 sta_agg_status_read fndecl 3 27641 NULL
+enable_so_st_scsi_execute_fndecl_27643 st_scsi_execute fndecl 5 27643 NULL
+enable_so_bsize_videobuf_buffer_27645 bsize videobuf_buffer 0 27645 NULL
++enable_so_u8NumRates_add_sta_param_27647 u8NumRates add_sta_param 0 27647 NULL
+enable_so_error_res_proc_context_27648 error res_proc_context 0 27648 NULL
+enable_so_nvkm_event_init_fndecl_27654 nvkm_event_init fndecl 2-3 27654 NULL
+enable_so_period_frames_usb_stream_config_27656 period_frames usb_stream_config 0 27656 NULL
@@ -163575,7 +162931,6 @@ index 0000000..9da833a
+enable_so_size_compat_ip6t_replace_27672 size compat_ip6t_replace 0 27672 NULL
+enable_so_ib_umem_get_fndecl_27678 ib_umem_get fndecl 2-3 27678 NULL
+enable_so_tlbflush_write_file_fndecl_27685 tlbflush_write_file fndecl 3 27685 NULL
-+enable_so__iwl_dbgfs_prph_reg_write_fndecl_27686 _iwl_dbgfs_prph_reg_write fndecl 3 27686 NULL
+enable_so_bnx2x_iov_init_one_fndecl_27687 bnx2x_iov_init_one fndecl 3 27687 NULL
+enable_so_mt9m111_get_global_gain_fndecl_27689 mt9m111_get_global_gain fndecl 0 27689 NULL
+enable_so_ipv6_get_l4proto_fndecl_27691 ipv6_get_l4proto fndecl 2 27691 NULL
@@ -163586,7 +162941,7 @@ index 0000000..9da833a
+enable_so_snd_pcm_plugin_alloc_fndecl_27703 snd_pcm_plugin_alloc fndecl 2 27703 NULL
+enable_so_actual_size_mlx4_en_rx_ring_27705 actual_size mlx4_en_rx_ring 0 27705 NULL
+enable_so_sequence_num_usb_ftdi_27707 sequence_num usb_ftdi 0 27707 NULL
-+enable_so_niu_rx_skb_append_fndecl_27708 niu_rx_skb_append fndecl 4-3-5 27708 NULL
++enable_so_niu_rx_skb_append_fndecl_27708 niu_rx_skb_append fndecl 4-5-3 27708 NULL
+enable_so_pcpu_extend_area_map_fndecl_27710 pcpu_extend_area_map fndecl 2 27710 NULL
+enable_so_ns83820_change_mtu_fndecl_27711 ns83820_change_mtu fndecl 2 27711 NULL
+enable_so_sdhci_pltfm_init_fndecl_27712 sdhci_pltfm_init fndecl 3 27712 NULL
@@ -163602,7 +162957,6 @@ index 0000000..9da833a
+enable_so_si_blocks_ocfs2_slot_info_27753 si_blocks ocfs2_slot_info 0 27753 NULL
+enable_so_sparse_mem_maps_populate_node_fndecl_27758 sparse_mem_maps_populate_node fndecl 4 27758 NULL nohasharray
+enable_so_sel_read_class_fndecl_27758 sel_read_class fndecl 3 27758 &enable_so_sparse_mem_maps_populate_node_fndecl_27758
-+enable_so_dwc3_link_state_write_fndecl_27762 dwc3_link_state_write fndecl 3 27762 NULL
+enable_so_nr_sendmsg_fndecl_27763 nr_sendmsg fndecl 3 27763 NULL
+enable_so_h_drm_vmw_rect_27765 h drm_vmw_rect 0 27765 NULL
+enable_so_instat_endpoint_keyspan_device_details_27768 instat_endpoint keyspan_device_details 0 27768 NULL nohasharray
@@ -163611,7 +162965,6 @@ index 0000000..9da833a
+enable_so_max_cyttsp4_tch_abs_params_27772 max cyttsp4_tch_abs_params 0 27772 NULL nohasharray
+enable_so_rtw_android_get_link_speed_fndecl_27772 rtw_android_get_link_speed fndecl 0 27772 &enable_so_max_cyttsp4_tch_abs_params_27772
+enable_so_rs_datalen_ath_rx_status_27774 rs_datalen ath_rx_status 0 27774 NULL
-+enable_so_raid_disks_pool_info_27784 raid_disks pool_info 0 27784 NULL
+enable_so_vlan_qos_vlan_priority_tci_mapping_27789 vlan_qos vlan_priority_tci_mapping 0 27789 NULL nohasharray
+enable_so_ext4_bg_num_gdb_meta_fndecl_27789 ext4_bg_num_gdb_meta fndecl 0 27789 &enable_so_vlan_qos_vlan_priority_tci_mapping_27789
+enable_so_flags_mmio_74xx_gpio_priv_27797 flags mmio_74xx_gpio_priv 0 27797 NULL
@@ -163631,30 +162984,26 @@ index 0000000..9da833a
+enable_so_roundup_brcmf_sdio_27833 roundup brcmf_sdio 0 27833 NULL nohasharray
+enable_so_type_kqid_27833 type kqid 0 27833 &enable_so_roundup_brcmf_sdio_27833
+enable_so_num_bcma_bus_27835 num bcma_bus 0 27835 NULL
-+enable_so_adm8211_tx_raw_fndecl_27839 adm8211_tx_raw fndecl 3-4 27839 NULL nohasharray
-+enable_so_ieee80211_if_read_num_buffered_multicast_fndecl_27839 ieee80211_if_read_num_buffered_multicast fndecl 3 27839 &enable_so_adm8211_tx_raw_fndecl_27839
++enable_so_adm8211_tx_raw_fndecl_27839 adm8211_tx_raw fndecl 3-4 27839 NULL
+enable_so___getblk_slow_fndecl_27842 __getblk_slow fndecl 3-2 27842 NULL nohasharray
+enable_so_cfg_niq_csio_hw_27842 cfg_niq csio_hw 0 27842 &enable_so___getblk_slow_fndecl_27842
-+enable_so_ieee80211_if_read_dot11MeshMaxRetries_fndecl_27847 ieee80211_if_read_dot11MeshMaxRetries fndecl 3 27847 NULL
+enable_so_dd_bsg_size_fc_function_template_27852 dd_bsg_size fc_function_template 0 27852 NULL
+enable_so_size_pnp_port_27856 size pnp_port 0 27856 NULL
+enable_so_xfs_da3_node_read_fndecl_27858 xfs_da3_node_read fndecl 3 27858 NULL
-+enable_so_key_rx_spec_read_fndecl_27859 key_rx_spec_read fndecl 3 27859 NULL
+enable_so_pb_count_s5p_mfc_ctx_27861 pb_count s5p_mfc_ctx 0 27861 NULL
+enable_so_pkey_index_cm_av_27866 pkey_index cm_av 0 27866 NULL nohasharray
+enable_so_vlan_proto_sk_buff_27866 vlan_proto sk_buff 0 27866 &enable_so_pkey_index_cm_av_27866
-+enable_so_max_slave_count_w1_master_27872 max_slave_count w1_master 0 27872 NULL nohasharray
-+enable_so_ngroups_rcv_array_data_27872 ngroups rcv_array_data 0 27872 &enable_so_max_slave_count_w1_master_27872
++enable_so_ngroups_rcv_array_data_27872 ngroups rcv_array_data 0 27872 NULL
+enable_so_lo_len_nfsd4_lookup_27874 lo_len nfsd4_lookup 0 27874 NULL
+enable_so_l_blkno_lbuf_27876 l_blkno lbuf 0 27876 NULL
+enable_so_msb_sg_copy_fndecl_27886 msb_sg_copy fndecl 5-4 27886 NULL
+enable_so__rotate_left_fndecl_27889 _rotate_left fndecl 2 27889 NULL
+enable_so_do_blktrans_request_fndecl_27890 do_blktrans_request fndecl 0 27890 NULL nohasharray
+enable_so_listxattr_fndecl_27890 listxattr fndecl 3 27890 &enable_so_do_blktrans_request_fndecl_27890
++enable_so_brcmf_debug_create_memdump_fndecl_27901 brcmf_debug_create_memdump fndecl 3 27901 NULL
+enable_so___lbs_cmd_fndecl_27904 __lbs_cmd fndecl 4 27904 NULL
+enable_so_reada_tree_block_flagged_fndecl_27912 reada_tree_block_flagged fndecl 2 27912 NULL
+enable_so_lbq_len_rx_ring_27913 lbq_len rx_ring 0 27913 NULL
-+enable_so_il_dbgfs_nvm_read_fndecl_27923 il_dbgfs_nvm_read fndecl 3 27923 NULL
+enable_so_tp_datalen_bcm5974_config_27927 tp_datalen bcm5974_config 0 27927 NULL
+enable_so_numchips_lpddr_private_27938 numchips lpddr_private 0 27938 NULL
+enable_so_get_burstcount_fndecl_27942 get_burstcount fndecl 0 27942 NULL nohasharray
@@ -163662,6 +163011,7 @@ index 0000000..9da833a
+enable_so_usbat_hp8200e_rw_block_test_fndecl_27957 usbat_hp8200e_rw_block_test fndecl 5-12-13 27957 NULL
+enable_so_size_plx_pci_channel_map_27958 size plx_pci_channel_map 0 27958 NULL
+enable_so_pcbit_writecmd_fndecl_27967 pcbit_writecmd fndecl 2 27967 NULL
++enable_so_msi_prepare_msi_domain_ops_27969 msi_prepare msi_domain_ops 0 27969 NULL
+enable_so_fat_build_inode_fndecl_27970 fat_build_inode fndecl 3 27970 NULL
+enable_so_parser_init_byte_stream_fndecl_27973 parser_init_byte_stream fndecl 2 27973 NULL
+enable_so_iip_ubifs_znode_27974 iip ubifs_znode 0 27974 NULL
@@ -163682,11 +163032,11 @@ index 0000000..9da833a
+enable_so_ext4_bg_num_gdb_nometa_fndecl_28014 ext4_bg_num_gdb_nometa fndecl 0 28014 NULL
+enable_so_xfs_iext_inline_to_direct_fndecl_28019 xfs_iext_inline_to_direct fndecl 2 28019 NULL
+enable_so_write_file_dump_fndecl_28020 write_file_dump fndecl 3 28020 NULL
++enable_so_evtchn_alloc_ring_fndecl_28034 evtchn_alloc_ring fndecl 1 28034 NULL
+enable_so_cfs_array_alloc_fndecl_28042 cfs_array_alloc fndecl 2 28042 NULL
+enable_so_min_size_vx_ibl_info_28043 min_size vx_ibl_info 0 28043 NULL
+enable_so_new_chunk_dm_exception_28044 new_chunk dm_exception 0 28044 NULL
-+enable_so_ieee80211_if_read_num_mcast_sta_fndecl_28048 ieee80211_if_read_num_mcast_sta fndecl 3 28048 NULL nohasharray
-+enable_so_num_intr_mic_intr_info_28048 num_intr mic_intr_info 0 28048 &enable_so_ieee80211_if_read_num_mcast_sta_fndecl_28048
++enable_so_num_intr_mic_intr_info_28048 num_intr mic_intr_info 0 28048 NULL
+enable_so_vc_top_vc_data_28051 vc_top vc_data 0 28051 NULL
+enable_so_virtio_gpu_cmd_set_scanout_fndecl_28053 virtio_gpu_cmd_set_scanout fndecl 4-5 28053 NULL
+enable_so_maxpacket_usbnet_28054 maxpacket usbnet 0 28054 NULL
@@ -163729,7 +163079,6 @@ index 0000000..9da833a
+enable_so_cfg80211_disconnected_fndecl_28155 cfg80211_disconnected fndecl 4 28155 &enable_so_pipe_intr_lan78xx_net_28155
+enable_so_af9013_rd_regs_fndecl_28157 af9013_rd_regs fndecl 4 28157 NULL
+enable_so_sock_hlen_vhost_net_virtqueue_28159 sock_hlen vhost_net_virtqueue 0 28159 NULL
-+enable_so_read_file_tpc_fndecl_28162 read_file_tpc fndecl 3 28162 NULL
+enable_so_aio_nbytes_iocb_28163 aio_nbytes iocb 0 28163 NULL
+enable_so_x_drm_fb_helper_crtc_28166 x drm_fb_helper_crtc 0 28166 NULL
+enable_so__ocfs2_free_suballoc_bits_fndecl_28174 _ocfs2_free_suballoc_bits fndecl 5 28174 NULL
@@ -163760,7 +163109,8 @@ index 0000000..9da833a
+enable_so_mux_device_request_fndecl_28235 mux_device_request fndecl 7 28235 NULL nohasharray
+enable_so_l2cap_mtu_vardecl_core_c_28235 l2cap_mtu vardecl_core.c 0 28235 &enable_so_mux_device_request_fndecl_28235
+enable_so_loop_end_patch_info_28242 loop_end patch_info 0 28242 NULL
-+enable_so_ino_bfs_dirent_28246 ino bfs_dirent 0 28246 NULL
++enable_so_ino_bfs_dirent_28246 ino bfs_dirent 0 28246 NULL nohasharray
++enable_so_btrfs_qgroup_free_data_fndecl_28246 btrfs_qgroup_free_data fndecl 2-3 28246 &enable_so_ino_bfs_dirent_28246
+enable_so_tcpmss_mangle_packet_fndecl_28248 tcpmss_mangle_packet fndecl 0 28248 NULL
+enable_so_rcv_fr_sz_fcoe_rdev_entry_28249 rcv_fr_sz fcoe_rdev_entry 0 28249 NULL
+enable_so_ip_make_skb_fndecl_28250 ip_make_skb fndecl 6-5 28250 NULL
@@ -163779,23 +163129,20 @@ index 0000000..9da833a
+enable_so_reg_start_ath6kl_diag_reg_info_28282 reg_start ath6kl_diag_reg_info 0 28282 &enable_so_buf_start_hi_rx_buf_desc_28282
+enable_so_mem_cgroup_try_charge_fndecl_28289 mem_cgroup_try_charge fndecl 0 28289 NULL
+enable_so_read32_ssb_bus_ops_28292 read32 ssb_bus_ops 0 28292 NULL
-+enable_so_mmc_ext_csd_read_fndecl_28294 mmc_ext_csd_read fndecl 3 28294 NULL
+enable_so_save_total_len_pch_spi_data_28296 save_total_len pch_spi_data 0 28296 NULL
-+enable_so_rxsupport_size_ipg_nic_private_28297 rxsupport_size ipg_nic_private 0 28297 NULL nohasharray
-+enable_so_data_pad_ubi_vtbl_record_28297 data_pad ubi_vtbl_record 0 28297 &enable_so_rxsupport_size_ipg_nic_private_28297
++enable_so_data_pad_ubi_vtbl_record_28297 data_pad ubi_vtbl_record 0 28297 NULL
+enable_so_byte_count_il_rx_phy_res_28304 byte_count il_rx_phy_res 0 28304 NULL
+enable_so_flags2_psb_s_28305 flags2 psb_s 0 28305 NULL
++enable_so___xfs_get_blocks_fndecl_28308 __xfs_get_blocks fndecl 2 28308 NULL
+enable_so_sst25l_read_fndecl_28315 sst25l_read fndecl 3 28315 NULL
+enable_so_comedi_read_fndecl_28316 comedi_read fndecl 3 28316 NULL
+enable_so_npages_mlx4_buf_28321 npages mlx4_buf 0 28321 NULL
+enable_so_version_tclass_flow_ib_grh_28322 version_tclass_flow ib_grh 0 28322 NULL
+enable_so_set_video_mode_Kiara_fndecl_28325 set_video_mode_Kiara fndecl 4 28325 NULL
-+enable_so__iwl_dbgfs_disable_power_off_write_fndecl_28328 _iwl_dbgfs_disable_power_off_write fndecl 3 28328 NULL nohasharray
-+enable_so_raw_descs_length_ffs_data_28328 raw_descs_length ffs_data 0 28328 &enable_so__iwl_dbgfs_disable_power_off_write_fndecl_28328
++enable_so_raw_descs_length_ffs_data_28328 raw_descs_length ffs_data 0 28328 NULL
+enable_so_max_segment_size_brcmf_sdio_dev_28330 max_segment_size brcmf_sdio_dev 0 28330 NULL nohasharray
+enable_so_size_videobuf_dmabuf_28330 size videobuf_dmabuf 0 28330 &enable_so_max_segment_size_brcmf_sdio_dev_28330
+enable_so_asix_read_cmd_fndecl_28334 asix_read_cmd fndecl 5 28334 NULL
-+enable_so_mwifiex_debug_mask_read_fndecl_28341 mwifiex_debug_mask_read fndecl 3 28341 NULL
+enable_so_ie_length_ndis_80211_bssid_ex_28346 ie_length ndis_80211_bssid_ex 0 28346 NULL
+enable_so_irq_domain_alloc_irqs_recursive_fndecl_28349 irq_domain_alloc_irqs_recursive fndecl 0 28349 NULL
+enable_so_fnic_trace_ctrl_write_fndecl_28350 fnic_trace_ctrl_write fndecl 3 28350 NULL
@@ -163810,13 +163157,12 @@ index 0000000..9da833a
+enable_so_usbat_multiple_write_fndecl_28375 usbat_multiple_write fndecl 4 28375 NULL nohasharray
+enable_so_init_tid_tabs_fndecl_28375 init_tid_tabs fndecl 4-3-2 28375 &enable_so_usbat_multiple_write_fndecl_28375
+enable_so_bio_integrity_trim_fndecl_28376 bio_integrity_trim fndecl 2-3 28376 NULL
++enable_so_iova_ib_mr_28381 iova ib_mr 0 28381 NULL
+enable_so_simple_attr_write_fndecl_28383 simple_attr_write fndecl 3 28383 NULL
+enable_so_dst_uffdio_copy_28391 dst uffdio_copy 0 28391 NULL
+enable_so___bpf_fill_ja_fndecl_28393 __bpf_fill_ja fndecl 2 28393 NULL
+enable_so_interrupt_in_endpointAddress_usb_serial_port_28398 interrupt_in_endpointAddress usb_serial_port 0 28398 NULL
-+enable_so_lpfc_idiag_mbxacc_get_setup_fndecl_28401 lpfc_idiag_mbxacc_get_setup fndecl 0 28401 NULL
-+enable_so_cxd2820r_rd_regs_fndecl_28402 cxd2820r_rd_regs fndecl 4 28402 NULL nohasharray
-+enable_so_il4965_stats_flag_fndecl_28402 il4965_stats_flag fndecl 0 28402 &enable_so_cxd2820r_rd_regs_fndecl_28402
++enable_so_cxd2820r_rd_regs_fndecl_28402 cxd2820r_rd_regs fndecl 4 28402 NULL
+enable_so_channel_bc_state_28411 channel bc_state 0 28411 NULL
+enable_so_sd_major_fndecl_28413 sd_major fndecl 0-1 28413 NULL
+enable_so_xfs_inumbers_fmt_fndecl_28418 xfs_inumbers_fmt fndecl 3 28418 NULL nohasharray
@@ -163824,13 +163170,15 @@ index 0000000..9da833a
+enable_so_dma_size_cx25821_audio_dev_28423 dma_size cx25821_audio_dev 0 28423 NULL
+enable_so_afs_fs_store_data64_fndecl_28429 afs_fs_store_data64 fndecl 5-6 28429 NULL
+enable_so_hpi_init_messageV1_fndecl_28435 hpi_init_messageV1 fndecl 2 28435 NULL
++enable_so_dw_mci_exynos_execute_tuning_fndecl_28437 dw_mci_exynos_execute_tuning fndecl 2 28437 NULL
+enable_so_jfs_issue_discard_fndecl_28440 jfs_issue_discard fndecl 3-2 28440 NULL
+enable_so_sb_agcount_xfs_sb_28441 sb_agcount xfs_sb 0 28441 NULL nohasharray
+enable_so_mgmt_event_fndecl_28441 mgmt_event fndecl 4 28441 &enable_so_sb_agcount_xfs_sb_28441
+enable_so_iscsi_iser_session_create_fndecl_28447 iscsi_iser_session_create fndecl 3 28447 NULL
+enable_so_nilfs_bmap_do_insert_fndecl_28453 nilfs_bmap_do_insert fndecl 0 28453 NULL
+enable_so_stripe_size_bcache_device_28454 stripe_size bcache_device 0 28454 NULL
-+enable_so_mi_entries_per_block_nilfs_mdt_info_28458 mi_entries_per_block nilfs_mdt_info 0 28458 NULL
++enable_so_mi_entries_per_block_nilfs_mdt_info_28458 mi_entries_per_block nilfs_mdt_info 0 28458 NULL nohasharray
++enable_so_st_nci_hci_dm_vdc_value_comparison_fndecl_28458 st_nci_hci_dm_vdc_value_comparison fndecl 3 28458 &enable_so_mi_entries_per_block_nilfs_mdt_info_28458
+enable_so_irda_connect_confirm_fndecl_28460 irda_connect_confirm fndecl 4-5 28460 NULL
+enable_so_pc87360_device_add_fndecl_28461 pc87360_device_add fndecl 1 28461 NULL
+enable_so_s_alt_pkey_index_qib_qp_28462 s_alt_pkey_index qib_qp 0 28462 NULL
@@ -163877,7 +163225,6 @@ index 0000000..9da833a
+enable_so_out_max_chans_snd_card_asihpi_28574 out_max_chans snd_card_asihpi 0 28574 NULL nohasharray
+enable_so_ufx_i2c_wait_busy_fndecl_28574 ufx_i2c_wait_busy fndecl 0 28574 &enable_so_out_max_chans_snd_card_asihpi_28574
+enable_so_charcount_console_font_op_28585 charcount console_font_op 0 28585 NULL
-+enable_so__iwl_dbgfs_ss_force_write_fndecl_28587 _iwl_dbgfs_ss_force_write fndecl 3 28587 NULL
+enable_so_uhci_map_status_fndecl_28591 uhci_map_status fndecl 0 28591 NULL
+enable_so_icsk_pmtu_cookie_inet_connection_sock_28598 icsk_pmtu_cookie inet_connection_sock 0 28598 NULL
+enable_so_n_devs_pci_id_table_28599 n_devs pci_id_table 0 28599 NULL nohasharray
@@ -163889,9 +163236,7 @@ index 0000000..9da833a
+enable_so_hmac_id_sctp_authhdr_28611 hmac_id sctp_authhdr 0 28611 &enable_so_ubifs_scan_a_node_fndecl_28611
+enable_so_msb_erase_block_fndecl_28612 msb_erase_block fndecl 0-2 28612 NULL
+enable_so_ccmp_encrypt_skb_fndecl_28613 ccmp_encrypt_skb fndecl 3 28613 NULL
-+enable_so_bytesused_v4l2_plane_28616 bytesused v4l2_plane 0 28616 NULL nohasharray
-+enable_so_gru_assign_context_number_fndecl_28616 gru_assign_context_number fndecl 0 28616 &enable_so_bytesused_v4l2_plane_28616
-+enable_so_subsystem_filter_write_fndecl_28621 subsystem_filter_write fndecl 3 28621 NULL
++enable_so_gru_assign_context_number_fndecl_28616 gru_assign_context_number fndecl 0 28616 NULL
+enable_so_hfi1_rcvarr_split_vardecl_init_c_28624 hfi1_rcvarr_split vardecl_init.c 0 28624 NULL
+enable_so_s_inode_size_ext4_sb_info_28625 s_inode_size ext4_sb_info 0 28625 NULL
+enable_so_cdc_ncm_min_dgram_size_fndecl_28632 cdc_ncm_min_dgram_size fndecl 0 28632 NULL nohasharray
@@ -163903,11 +163248,11 @@ index 0000000..9da833a
+enable_so_device_count_vardecl_mts64_c_28635 device_count vardecl_mts64.c 0 28635 NULL
+enable_so_usb_stream_new_fndecl_28646 usb_stream_new fndecl 6-8-5-7-3-4 28646 NULL nohasharray
+enable_so_ocfs2_write_begin_fndecl_28646 ocfs2_write_begin fndecl 3 28646 &enable_so_usb_stream_new_fndecl_28646
-+enable_so_cw1200_spi_memcpy_fromio_fndecl_28649 cw1200_spi_memcpy_fromio fndecl 4 28649 NULL
++enable_so_cw1200_spi_memcpy_fromio_fndecl_28649 cw1200_spi_memcpy_fromio fndecl 4 28649 NULL nohasharray
++enable_so_desc_size_mlx5_ib_mr_28649 desc_size mlx5_ib_mr 0 28649 &enable_so_cw1200_spi_memcpy_fromio_fndecl_28649
+enable_so_alt_port_num_ib_qp_attr_28655 alt_port_num ib_qp_attr 0 28655 NULL nohasharray
+enable_so_cur_offset_drm_dp_sideband_msg_tx_28655 cur_offset drm_dp_sideband_msg_tx 0 28655 &enable_so_alt_port_num_ib_qp_attr_28655
+enable_so_alloc_size_chunk_28657 alloc_size chunk 0 28657 NULL
-+enable_so_ipg_nic_change_mtu_fndecl_28665 ipg_nic_change_mtu fndecl 2 28665 NULL
+enable_so_bfad_iocmd_lunmask_fndecl_28667 bfad_iocmd_lunmask fndecl 0 28667 NULL
+enable_so_x25_create_facilities_fndecl_28684 x25_create_facilities fndecl 0 28684 NULL
+enable_so_fill_isoc_urb_fndecl_28690 fill_isoc_urb fndecl 6-5-3 28690 NULL
@@ -163920,8 +163265,6 @@ index 0000000..9da833a
+enable_so_size_fuse_notify_store_out_28704 size fuse_notify_store_out 0 28704 &enable_so_cw_bmove_fndecl_28704
+enable_so_CIFSSMBWrite2_fndecl_28705 CIFSSMBWrite2 fndecl 5 28705 NULL
+enable_so_mlx4_init_cmpt_table_fndecl_28706 mlx4_init_cmpt_table fndecl 3 28706 NULL
-+enable_so_v9fs_xattr_get_acl_fndecl_28714 v9fs_xattr_get_acl fndecl 4 28714 NULL
-+enable_so_lpfc_idiag_ctlacc_write_fndecl_28715 lpfc_idiag_ctlacc_write fndecl 3 28715 NULL
+enable_so_nilfs_bmap_lookup_contig_fndecl_28717 nilfs_bmap_lookup_contig fndecl 0 28717 NULL nohasharray
+enable_so_oprofilefs_ulong_to_user_fndecl_28717 oprofilefs_ulong_to_user fndecl 3 28717 &enable_so_nilfs_bmap_lookup_contig_fndecl_28717
+enable_so_phys_smscore_buffer_t_28719 phys smscore_buffer_t 0 28719 NULL nohasharray
@@ -163936,6 +163279,7 @@ index 0000000..9da833a
+enable_so_batadv_iv_ogm_orig_del_if_fndecl_28743 batadv_iv_ogm_orig_del_if fndecl 2 28743 NULL
+enable_so_ns_pseg_offset_the_nilfs_28744 ns_pseg_offset the_nilfs 0 28744 NULL
+enable_so_batadv_iv_ogm_orig_add_if_fndecl_28753 batadv_iv_ogm_orig_add_if fndecl 2 28753 NULL
++enable_so_pci_msi_setup_msi_irqs_fndecl_28755 pci_msi_setup_msi_irqs fndecl 0 28755 NULL
+enable_so_src_h_yuv_frame_info_28759 src_h yuv_frame_info 0 28759 NULL
+enable_so_fw_device_op_ioctl_fndecl_28760 fw_device_op_ioctl fndecl 2 28760 NULL
+enable_so_enc28j60_packet_write_fndecl_28762 enc28j60_packet_write fndecl 2 28762 NULL
@@ -163951,7 +163295,6 @@ index 0000000..9da833a
+enable_so_e820_remove_range_fndecl_28810 e820_remove_range fndecl 1-2 28810 NULL nohasharray
+enable_so_ide_queue_pc_tail_fndecl_28810 ide_queue_pc_tail fndecl 5 28810 &enable_so_e820_remove_range_fndecl_28810
+enable_so_sisusb_send_bridge_packet_fndecl_28818 sisusb_send_bridge_packet fndecl 2 28818 NULL
-+enable_so_fifo_size_s3c_hsotg_ep_28821 fifo_size s3c_hsotg_ep 0 28821 NULL
+enable_so_ceph_build_auth_fndecl_28825 ceph_build_auth fndecl 0 28825 NULL
+enable_so_sdio_memcpy_toio_fndecl_28828 sdio_memcpy_toio fndecl 4 28828 NULL
+enable_so_vram_end_radeon_mc_28831 vram_end radeon_mc 0 28831 NULL
@@ -163978,36 +163321,33 @@ index 0000000..9da833a
+enable_so_nci_set_config_fndecl_28899 nci_set_config fndecl 3 28899 NULL
+enable_so_t_elist_cb_state_28900 t elist_cb_state 0 28900 NULL nohasharray
+enable_so_capi_major_vardecl_capi_c_28900 capi_major vardecl_capi.c 0 28900 &enable_so_t_elist_cb_state_28900
-+enable_so_ss_in_channels_hdspm_28903 ss_in_channels hdspm 0 28903 NULL nohasharray
-+enable_so_flags_read_fndecl_28903 flags_read fndecl 3 28903 &enable_so_ss_in_channels_hdspm_28903
++enable_so_ss_in_channels_hdspm_28903 ss_in_channels hdspm 0 28903 NULL
+enable_so_ngpios_sx150x_device_data_28905 ngpios sx150x_device_data 0 28905 NULL
+enable_so_ieee80211_get_num_supported_channels_fndecl_28907 ieee80211_get_num_supported_channels fndecl 0 28907 NULL
+enable_so_stat_rate_mlx4_av_28909 stat_rate mlx4_av 0 28909 NULL
+enable_so_usb_pipe_handle_ath6kl_usb_pipe_28910 usb_pipe_handle ath6kl_usb_pipe 0 28910 NULL
+enable_so_hslen_vardecl_matroxfb_base_c_28914 hslen vardecl_matroxfb_base.c 0 28914 NULL
+enable_so_port_c67x00_urb_priv_28917 port c67x00_urb_priv 0 28917 NULL
-+enable_so_iwl_dbgfs_qos_read_fndecl_28922 iwl_dbgfs_qos_read fndecl 3 28922 NULL nohasharray
-+enable_so_c_ssize_f_uac2_opts_28922 c_ssize f_uac2_opts 0 28922 &enable_so_iwl_dbgfs_qos_read_fndecl_28922
++enable_so_c_ssize_f_uac2_opts_28922 c_ssize f_uac2_opts 0 28922 NULL
+enable_so_suspend_nvs_register_fndecl_28923 suspend_nvs_register fndecl 2-1 28923 NULL
+enable_so_tegra_sflash_start_cpu_based_transfer_fndecl_28927 tegra_sflash_start_cpu_based_transfer fndecl 0 28927 NULL
+enable_so_block_hfs_extent_28930 block hfs_extent 0 28930 NULL
+enable_so_rpcrdma_count_chunks_fndecl_28931 rpcrdma_count_chunks fndecl 0 28931 NULL
+enable_so_usbat_write_block_fndecl_28938 usbat_write_block fndecl 4-6 28938 NULL
++enable_so_pgs_per_blk_nvm_dev_28942 pgs_per_blk nvm_dev 0 28942 NULL
+enable_so_alsa_index_vardecl_thinkpad_acpi_c_28952 alsa_index vardecl_thinkpad_acpi.c 0 28952 NULL
+enable_so_ath6kl_power_params_write_fndecl_28953 ath6kl_power_params_write fndecl 3 28953 NULL
+enable_so_gb_len_pn533_28959 gb_len pn533 0 28959 NULL
-+enable_so_hpfs_alloc_anode_fndecl_28960 hpfs_alloc_anode fndecl 2 28960 NULL
++enable_so_hpfs_alloc_anode_fndecl_28960 hpfs_alloc_anode fndecl 2 28960 NULL nohasharray
++enable_so_hci_cmd_sync_fndecl_28960 hci_cmd_sync fndecl 3 28960 &enable_so_hpfs_alloc_anode_fndecl_28960
+enable_so_usb_stor_bulk_transfer_buf_fndecl_28961 usb_stor_bulk_transfer_buf fndecl 4-2 28961 NULL
+enable_so_split_vma_fndecl_28963 split_vma fndecl 3 28963 NULL
-+enable_so_tcp_send_rcvq_fndecl_28967 tcp_send_rcvq fndecl 3 28967 NULL nohasharray
-+enable_so_intel_mid_serial_setup_fndecl_28967 intel_mid_serial_setup fndecl 4 28967 &enable_so_tcp_send_rcvq_fndecl_28967
-+enable_so_iwl_dbgfs_ss_force_read_fndecl_28968 iwl_dbgfs_ss_force_read fndecl 3 28968 NULL
++enable_so_tcp_send_rcvq_fndecl_28967 tcp_send_rcvq fndecl 3 28967 NULL
+enable_so_ath6kl_wmi_set_wow_mode_cmd_fndecl_28969 ath6kl_wmi_set_wow_mode_cmd fndecl 2 28969 NULL
+enable_so_sctp_transport_update_pmtu_fndecl_28973 sctp_transport_update_pmtu fndecl 3 28973 NULL
+enable_so_syncmaxsize_snd_usb_endpoint_28987 syncmaxsize snd_usb_endpoint 0 28987 NULL
+enable_so_aper_size_agp_kern_info_28990 aper_size agp_kern_info 0 28990 NULL
+enable_so_klen_WepKeyRid_28997 klen WepKeyRid 0 28997 NULL
-+enable_so_ext4_get_inline_size_fndecl_28998 ext4_get_inline_size fndecl 0 28998 NULL
+enable_so_handle_unit_fndecl_29000 handle_unit fndecl 0-1 29000 NULL nohasharray
+enable_so_prio_io_fndecl_29000 prio_io fndecl 2 29000 &enable_so_handle_unit_fndecl_29000 nohasharray
+enable_so_rawsize_nd_namespace_label_29000 rawsize nd_namespace_label 0 29000 &enable_so_prio_io_fndecl_29000
@@ -164036,19 +163376,17 @@ index 0000000..9da833a
+enable_so____alloc_bootmem_fndecl_29057 ___alloc_bootmem fndecl 2-1-3-4 29057 NULL
+enable_so_fbcon_scroll_fndecl_29060 fbcon_scroll fndecl 5 29060 NULL nohasharray
+enable_so_len_wmi_rx_mgmt_info_29060 len wmi_rx_mgmt_info 0 29060 &enable_so_fbcon_scroll_fndecl_29060
++enable_so_nfs4_xattr_set_nfs4_acl_fndecl_29062 nfs4_xattr_set_nfs4_acl fndecl 5 29062 NULL
+enable_so_use_dmio_fndecl_29065 use_dmio fndecl 3 29065 NULL
-+enable_so_adis16480_show_firmware_revision_fndecl_29066 adis16480_show_firmware_revision fndecl 3 29066 NULL
+enable_so_ucFakeEDIDLength__ATOM_FAKE_EDID_PATCH_RECORD_29067 ucFakeEDIDLength _ATOM_FAKE_EDID_PATCH_RECORD 0 29067 NULL
-+enable_so_i40e_dbg_command_write_fndecl_29070 i40e_dbg_command_write fndecl 3 29070 NULL
+enable_so_isku_sysfs_read_keys_capslock_fndecl_29075 isku_sysfs_read_keys_capslock fndecl 6 29075 NULL
+enable_so_tse_change_mtu_fndecl_29076 tse_change_mtu fndecl 2 29076 NULL
+enable_so_dev_irnet_write_fndecl_29077 dev_irnet_write fndecl 3 29077 NULL
-+enable_so_lprocfs_wr_evict_client_fndecl_29081 lprocfs_wr_evict_client fndecl 3 29081 NULL
+enable_so_ath6kl_wmi_deletekey_cmd_fndecl_29086 ath6kl_wmi_deletekey_cmd fndecl 2 29086 NULL
++enable_so_len_scifioctl_unreg_29093 len scifioctl_unreg 0 29093 NULL
+enable_so_remote_qpn_mlx4_qp_context_29102 remote_qpn mlx4_qp_context 0 29102 NULL
+enable_so_dlm_lowcomms_get_buffer_fndecl_29111 dlm_lowcomms_get_buffer fndecl 2 29111 NULL
+enable_so_bttv_read_fndecl_29115 bttv_read fndecl 3 29115 NULL
-+enable_so_st_nci_probe_fndecl_29121 st_nci_probe fndecl 2 29121 NULL
+enable_so_jfs_iget_fndecl_29122 jfs_iget fndecl 2 29122 NULL
+enable_so_pci_set_power_state_fndecl_29124 pci_set_power_state fndecl 0 29124 NULL nohasharray
+enable_so_sca3000_read_first_n_hw_rb_fndecl_29124 sca3000_read_first_n_hw_rb fndecl 2 29124 &enable_so_pci_set_power_state_fndecl_29124
@@ -164065,14 +163403,15 @@ index 0000000..9da833a
+enable_so_md_dump_size_qla_hw_data_29160 md_dump_size qla_hw_data 0 29160 NULL
+enable_so_current_rx_bytes_printer_dev_29165 current_rx_bytes printer_dev 0 29165 NULL
+enable_so_error_bio_list_fndecl_29166 error_bio_list fndecl 2 29166 NULL
-+enable_so_surface_height_drm_fb_helper_surface_size_29174 surface_height drm_fb_helper_surface_size 0 29174 NULL
++enable_so_surface_height_drm_fb_helper_surface_size_29174 surface_height drm_fb_helper_surface_size 0 29174 NULL nohasharray
++enable_so_dwc2_hsotg_send_reply_fndecl_29174 dwc2_hsotg_send_reply fndecl 4 29174 &enable_so_surface_height_drm_fb_helper_surface_size_29174
+enable_so_dma_in_streamzap_ir_29180 dma_in streamzap_ir 0 29180 NULL nohasharray
+enable_so_num_segments_acpi_namestring_info_29180 num_segments acpi_namestring_info 0 29180 &enable_so_dma_in_streamzap_ir_29180
+enable_so_vp_try_to_find_vqs_fndecl_29181 vp_try_to_find_vqs fndecl 2 29181 NULL
-+enable_so_ieee80211_if_read_user_power_level_fndecl_29185 ieee80211_if_read_user_power_level fndecl 3 29185 NULL
+enable_so_ircomm_control_indication_fndecl_29186 ircomm_control_indication fndecl 3 29186 NULL
+enable_so_release_mem_region_adjustable_fndecl_29187 release_mem_region_adjustable fndecl 3-2 29187 NULL
+enable_so_em28xx_i2c_read_block_fndecl_29188 em28xx_i2c_read_block fndecl 5 29188 NULL
++enable_so_report_nb8800_rx_desc_29192 report nb8800_rx_desc 0 29192 NULL
+enable_so_brcmf_config_wowl_pattern_fndecl_29198 brcmf_config_wowl_pattern fndecl 4 29198 NULL
+enable_so_HFC_inw_nodebug_hfc_multi_29199 HFC_inw_nodebug hfc_multi 0 29199 NULL
+enable_so_vcc_sendmsg_fndecl_29205 vcc_sendmsg fndecl 3 29205 NULL
@@ -164082,7 +163421,6 @@ index 0000000..9da833a
+enable_so_mpx_get_bt_entry_offset_bytes_fndecl_29230 mpx_get_bt_entry_offset_bytes fndecl 0-2 29230 NULL
+enable_so_change_pte_range_fndecl_29232 change_pte_range fndecl 3 29232 NULL
+enable_so_dvb_dmxdev_buffer_write_fndecl_29234 dvb_dmxdev_buffer_write fndecl 3-0 29234 NULL
-+enable_so_il4965_ucode_tx_stats_read_fndecl_29235 il4965_ucode_tx_stats_read fndecl 3 29235 NULL
+enable_so_rq_pagesz_smb_rqst_29240 rq_pagesz smb_rqst 0 29240 NULL
+enable_so_sb_dirband_start_hpfs_sb_info_29242 sb_dirband_start hpfs_sb_info 0 29242 NULL
+enable_so_ubifs_recover_log_leb_fndecl_29244 ubifs_recover_log_leb fndecl 3 29244 NULL
@@ -164100,12 +163438,10 @@ index 0000000..9da833a
+enable_so_reg_shift_sccnxp_pdata_29283 reg_shift sccnxp_pdata 0 29283 NULL
+enable_so_sh_last_alloc_nilfs_sufile_header_29285 sh_last_alloc nilfs_sufile_header 0 29285 NULL
+enable_so_vmbus_open_fndecl_29289 vmbus_open fndecl 3-2 29289 NULL
-+enable_so_data_len_ceph_msg_header_29290 data_len ceph_msg_header 0 29290 NULL nohasharray
-+enable_so__iwl_dbgfs_tof_range_req_ext_write_fndecl_29290 _iwl_dbgfs_tof_range_req_ext_write fndecl 3 29290 &enable_so_data_len_ceph_msg_header_29290
++enable_so_data_len_ceph_msg_header_29290 data_len ceph_msg_header 0 29290 NULL
+enable_so_btmrvl_sdio_host_to_card_fndecl_29291 btmrvl_sdio_host_to_card fndecl 3 29291 NULL
+enable_so_leb_start_ubi_device_29292 leb_start ubi_device 0 29292 NULL
+enable_so_user_ptr_drm_i915_gem_userptr_29294 user_ptr drm_i915_gem_userptr 0 29294 NULL
-+enable_so_msg_size_adf_etr_ring_data_29295 msg_size adf_etr_ring_data 0 29295 NULL
+enable_so_set_powered_fndecl_29298 set_powered fndecl 4 29298 NULL
+enable_so_xfs_handle_to_dentry_fndecl_29300 xfs_handle_to_dentry fndecl 3 29300 NULL
+enable_so_ramoops_init_prz_fndecl_29301 ramoops_init_prz fndecl 5 29301 NULL
@@ -164133,8 +163469,7 @@ index 0000000..9da833a
+enable_so_receive_copy_fndecl_29355 receive_copy fndecl 3 29355 NULL
+enable_so_max_sgs_per_cmd_snic_fw_info_29357 max_sgs_per_cmd snic_fw_info 0 29357 NULL nohasharray
+enable_so_xfs_attr3_leaf_read_fndecl_29357 xfs_attr3_leaf_read fndecl 3 29357 &enable_so_max_sgs_per_cmd_snic_fw_info_29357
-+enable_so_fuse_get_req_fndecl_29358 fuse_get_req fndecl 2 29358 NULL nohasharray
-+enable_so_aat2870_reg_read_file_fndecl_29358 aat2870_reg_read_file fndecl 3 29358 &enable_so_fuse_get_req_fndecl_29358
++enable_so_fuse_get_req_fndecl_29358 fuse_get_req fndecl 2 29358 NULL
+enable_so_s_dat_entry_size_nilfs_super_block_29359 s_dat_entry_size nilfs_super_block 0 29359 NULL
+enable_so_qt2160_read_block_fndecl_29365 qt2160_read_block fndecl 4 29365 NULL
+enable_so_dummy_perform_transfer_fndecl_29372 dummy_perform_transfer fndecl 0-3 29372 NULL nohasharray
@@ -164157,11 +163492,10 @@ index 0000000..9da833a
+enable_so_sisfb_mem_sis_video_info_29418 sisfb_mem sis_video_info 0 29418 NULL
+enable_so_xop_data_nents_xcopy_op_29423 xop_data_nents xcopy_op 0 29423 NULL
+enable_so_block_extra_size_snd_util_memhdr_29432 block_extra_size snd_util_memhdr 0 29432 NULL
-+enable_so_ocfs2_xattr_user_set_fndecl_29433 ocfs2_xattr_user_set fndecl 4 29433 NULL
+enable_so_size_vm_struct_29439 size vm_struct 0 29439 NULL
+enable_so_xfs_attr3_rmt_blocks_fndecl_29445 xfs_attr3_rmt_blocks fndecl 0-2 29445 NULL
+enable_so_ep_in_dln2_dev_29451 ep_in dln2_dev 0 29451 NULL
-+enable_so_ebt_buf_add_fndecl_29456 ebt_buf_add fndecl 0-3 29456 NULL
++enable_so_ebt_buf_add_fndecl_29456 ebt_buf_add fndecl 0 29456 NULL
+enable_so_vol_cdev_llseek_fndecl_29458 vol_cdev_llseek fndecl 2 29458 NULL
+enable_so_read_into_pages_cifs_readdata_29473 read_into_pages cifs_readdata 0 29473 NULL
+enable_so_i2c_hid_set_or_send_report_fndecl_29475 i2c_hid_set_or_send_report fndecl 5 29475 NULL
@@ -164174,8 +163508,8 @@ index 0000000..9da833a
+enable_so_qs_out_channels_hdsp_29483 qs_out_channels hdsp 0 29483 NULL
+enable_so_bsg_request_iscsi_transport_29485 bsg_request iscsi_transport 0 29485 NULL
+enable_so_befs_bt_read_node_fndecl_29490 befs_bt_read_node fndecl 4 29490 NULL nohasharray
-+enable_so_gpiochip_add_pin_range_fndecl_29490 gpiochip_add_pin_range fndecl 5 29490 &enable_so_befs_bt_read_node_fndecl_29490 nohasharray
-+enable_so_phys_out_snd_efw_29490 phys_out snd_efw 0 29490 &enable_so_gpiochip_add_pin_range_fndecl_29490
++enable_so_phys_out_snd_efw_29490 phys_out snd_efw 0 29490 &enable_so_befs_bt_read_node_fndecl_29490 nohasharray
++enable_so_gpiochip_add_pin_range_fndecl_29490 gpiochip_add_pin_range fndecl 5 29490 &enable_so_phys_out_snd_efw_29490
+enable_so_mlx4_en_fill_qp_context_fndecl_29495 mlx4_en_fill_qp_context fndecl 8 29495 NULL
+enable_so_pcpu_fc_alloc_fndecl_29497 pcpu_fc_alloc fndecl 3-2 29497 NULL
+enable_so_cx23885_alsa_dma_init_fndecl_29499 cx23885_alsa_dma_init fndecl 2 29499 NULL
@@ -164192,24 +163526,23 @@ index 0000000..9da833a
+enable_so_ooboffs_mtd_oob_ops_29549 ooboffs mtd_oob_ops 0 29549 NULL
+enable_so_local_max_bio_size_drbd_device_29550 local_max_bio_size drbd_device 0 29550 NULL
+enable_so_zone_mem_ttm_mem_zone_29551 zone_mem ttm_mem_zone 0 29551 NULL
-+enable_so_ext4_xattr_trusted_set_fndecl_29556 ext4_xattr_trusted_set fndecl 4 29556 NULL nohasharray
-+enable_so_befs_read_lsymlink_fndecl_29556 befs_read_lsymlink fndecl 4 29556 &enable_so_ext4_xattr_trusted_set_fndecl_29556
++enable_so_befs_read_lsymlink_fndecl_29556 befs_read_lsymlink fndecl 4 29556 NULL
+enable_so_l2cap_chan_send_fndecl_29557 l2cap_chan_send fndecl 3 29557 NULL
+enable_so_iwl_mvm_send_cmd_pdu_fndecl_29560 iwl_mvm_send_cmd_pdu fndecl 0 29560 NULL
+enable_so_calculate_iosize_fndecl_29562 calculate_iosize fndecl 0-4-5-3-2-1 29562 NULL
+enable_so_ieee80211_rx_bss_info_fndecl_29564 ieee80211_rx_bss_info fndecl 3 29564 NULL
-+enable_so_fs_devrw_entry_fndecl_29575 fs_devrw_entry fndecl 3 29575 NULL
+enable_so_addr_drm_amdgpu_gem_userptr_29582 addr drm_amdgpu_gem_userptr 0 29582 NULL
++enable_so___allowed_ingress_fndecl_29584 __allowed_ingress fndecl 2 29584 NULL
+enable_so_xstateregs_get_fndecl_29585 xstateregs_get fndecl 4 29585 NULL nohasharray
+enable_so_valid_hooks_xt_table_29585 valid_hooks xt_table 0 29585 &enable_so_xstateregs_get_fndecl_29585
+enable_so____mic_ioremap_fndecl_29587 ___mic_ioremap fndecl 3-2 29587 NULL
+enable_so_num_rx_queues_e1000_adapter_29589 num_rx_queues e1000_adapter 0 29589 NULL
-+enable_so_max_requests_hptiop_hba_29596 max_requests hptiop_hba 0 29596 NULL
+enable_so_ti_write_fndecl_29599 ti_write fndecl 4 29599 NULL
+enable_so_btmrvl_download_cal_data_fndecl_29602 btmrvl_download_cal_data fndecl 3 29602 NULL
+enable_so_read_b43_debugfs_fops_29607 read b43_debugfs_fops 0 29607 NULL nohasharray
+enable_so_queue_size_snd_timer_user_29607 queue_size snd_timer_user 0 29607 &enable_so_read_b43_debugfs_fops_29607
+enable_so_r1_sync_page_io_fndecl_29608 r1_sync_page_io fndecl 3-2 29608 NULL
++enable_so_device_size_r5l_log_29609 device_size r5l_log 0 29609 NULL
+enable_so_width_mxr_block_29613 width mxr_block 0 29613 NULL
+enable_so_efd_group_ext4_free_data_29619 efd_group ext4_free_data 0 29619 NULL
+enable_so_msb_exit_state_machine_fndecl_29622 msb_exit_state_machine fndecl 2 29622 NULL
@@ -164224,13 +163557,13 @@ index 0000000..9da833a
+enable_so_num_counters_arpt_replace_29649 num_counters arpt_replace 0 29649 NULL nohasharray
+enable_so_reserve_mc_sibling_devs_fndecl_29649 reserve_mc_sibling_devs fndecl 2-3 29649 &enable_so_num_counters_arpt_replace_29649 nohasharray
+enable_so_control_read_fndecl_29649 control_read fndecl 6 29649 &enable_so_reserve_mc_sibling_devs_fndecl_29649
++enable_so_max_dev_sectors_queue_limits_29654 max_dev_sectors queue_limits 0 29654 NULL
+enable_so_count_vfio_pci_hot_reset_info_29655 count vfio_pci_hot_reset_info 0 29655 NULL
+enable_so_split_node_fndecl_29659 split_node fndecl 0 29659 NULL nohasharray
-+enable_so_ls_num_lprocfs_stats_29659 ls_num lprocfs_stats 0 29659 &enable_so_split_node_fndecl_29659
++enable_so_rdma_wr_num_isert_rdma_wr_29659 rdma_wr_num isert_rdma_wr 0 29659 &enable_so_split_node_fndecl_29659 nohasharray
++enable_so_ls_num_lprocfs_stats_29659 ls_num lprocfs_stats 0 29659 &enable_so_rdma_wr_num_isert_rdma_wr_29659
+enable_so_items_per_memblock_vxge_hw_mempool_29661 items_per_memblock vxge_hw_mempool 0 29661 NULL
+enable_so_pci_cfg_space_size_fndecl_29666 pci_cfg_space_size fndecl 0 29666 NULL
-+enable_so___ipv4_tun_to_nlattr_fndecl_29678 __ipv4_tun_to_nlattr fndecl 4 29678 NULL nohasharray
-+enable_so_num_tagged_esp_lun_data_29678 num_tagged esp_lun_data 0 29678 &enable_so___ipv4_tun_to_nlattr_fndecl_29678
+enable_so_rtsx_usb_seq_read_register_fndecl_29680 rtsx_usb_seq_read_register fndecl 3-0 29680 NULL nohasharray
+enable_so_mon_buff_area_alloc_contiguous_fndecl_29680 mon_buff_area_alloc_contiguous fndecl 2 29680 &enable_so_rtsx_usb_seq_read_register_fndecl_29680
+enable_so_comps_used_isert_device_29683 comps_used isert_device 0 29683 NULL
@@ -164248,7 +163581,6 @@ index 0000000..9da833a
+enable_so_ca91cx42_alloc_resource_fndecl_29717 ca91cx42_alloc_resource fndecl 2 29717 NULL
+enable_so_ext4_itable_unused_count_fndecl_29718 ext4_itable_unused_count fndecl 0 29718 NULL
+enable_so_maxframe_vardecl_n_hdlc_c_29719 maxframe vardecl_n_hdlc.c 0 29719 NULL
-+enable_so_qib_alloc_fast_reg_page_list_fndecl_29720 qib_alloc_fast_reg_page_list fndecl 2 29720 NULL
+enable_so_bpp_aty128_crtc_29724 bpp aty128_crtc 0 29724 NULL nohasharray
+enable_so_sel_write_disable_fndecl_29724 sel_write_disable fndecl 3 29724 &enable_so_bpp_aty128_crtc_29724
+enable_so_Zlen_hfc_multi_29733 Zlen hfc_multi 0 29733 NULL nohasharray
@@ -164258,8 +163590,7 @@ index 0000000..9da833a
+enable_so_ba_param_set_wil_back_rx_29752 ba_param_set wil_back_rx 0 29752 NULL
+enable_so_snd_pcm_lib_read_fndecl_29755 snd_pcm_lib_read fndecl 0 29755 NULL
+enable_so_mmio_phys_ivhd_header_29762 mmio_phys ivhd_header 0 29762 NULL
-+enable_so_hotplug_pages_balloon_stats_29763 hotplug_pages balloon_stats 0 29763 NULL nohasharray
-+enable_so_ext4_write_begin_fndecl_29763 ext4_write_begin fndecl 4-3 29763 &enable_so_hotplug_pages_balloon_stats_29763
++enable_so_ext4_write_begin_fndecl_29763 ext4_write_begin fndecl 4-3 29763 NULL
+enable_so_physical_scrub_bio_29776 physical scrub_bio 0 29776 NULL
+enable_so_ath6kl_wmi_ap_set_dtim_cmd_fndecl_29779 ath6kl_wmi_ap_set_dtim_cmd fndecl 2 29779 NULL
+enable_so_eqp_bdi_bd_list_29780 eqp_bdi bd_list 0 29780 NULL nohasharray
@@ -164268,7 +163599,6 @@ index 0000000..9da833a
+enable_so_serial_in_uart_port_29788 serial_in uart_port 0 29788 NULL nohasharray
+enable_so_pipeline_defrag_to_rx_xfer_swi_read_fndecl_29788 pipeline_defrag_to_rx_xfer_swi_read fndecl 3 29788 &enable_so_serial_in_uart_port_29788
+enable_so_first_index_zap_details_29790 first_index zap_details 0 29790 NULL
-+enable_so_supply_map_read_file_fndecl_29795 supply_map_read_file fndecl 3 29795 NULL
+enable_so_blk_queue_max_discard_sectors_fndecl_29799 blk_queue_max_discard_sectors fndecl 2 29799 NULL
+enable_so_ima_show_htable_violations_fndecl_29800 ima_show_htable_violations fndecl 3 29800 NULL
+enable_so_cxgb3_get_cpl_reply_skb_fndecl_29807 cxgb3_get_cpl_reply_skb fndecl 2 29807 NULL nohasharray
@@ -164296,7 +163626,6 @@ index 0000000..9da833a
+enable_so_length_ndis_80211_pmkid_29893 length ndis_80211_pmkid 0 29893 NULL
+enable_so_selinux_inode_setxattr_fndecl_29895 selinux_inode_setxattr fndecl 4 29895 NULL
+enable_so_residual_st_cmdstatus_29897 residual st_cmdstatus 0 29897 NULL
-+enable_so_ovl_fill_lower_fndecl_29899 ovl_fill_lower fndecl 3 29899 NULL
+enable_so_be_pci_sriov_configure_fndecl_29900 be_pci_sriov_configure fndecl 2 29900 NULL
+enable_so_data_in_res_cnt_srp_rsp_29904 data_in_res_cnt srp_rsp 0 29904 NULL
+enable_so_edge_write_fndecl_29911 edge_write fndecl 4 29911 NULL
@@ -164305,7 +163634,6 @@ index 0000000..9da833a
+enable_so_PageLength__CONFIG_PAGE_HEADER_29916 PageLength _CONFIG_PAGE_HEADER 0 29916 &enable_so_fw_imem_len_rt_firmware_29916
+enable_so_base_sock_create_fndecl_29918 base_sock_create fndecl 3 29918 NULL
+enable_so_error_error_frame_ctrl_read_fndecl_29919 error_error_frame_ctrl_read fndecl 3 29919 NULL
-+enable_so_mc_s3c_hsotg_ep_29920 mc s3c_hsotg_ep 0 29920 NULL
+enable_so_size_ipt_replace_29921 size ipt_replace 0 29921 NULL
+enable_so_sctp_getsockopt_maxseg_fndecl_29922 sctp_getsockopt_maxseg fndecl 2 29922 NULL
+enable_so_nr_frags_skb_shared_info_29925 nr_frags skb_shared_info 0 29925 NULL
@@ -164318,25 +163646,24 @@ index 0000000..9da833a
+enable_so___iscsi_complete_pdu_fndecl_29941 __iscsi_complete_pdu fndecl 4 29941 NULL
+enable_so_spi_sync_fndecl_29944 spi_sync fndecl 0 29944 NULL
+enable_so_core_size_rx_module_29949 core_size_rx module 0 29949 NULL
-+enable_so_s_min_extra_isize_ext4_super_block_29952 s_min_extra_isize ext4_super_block 0 29952 NULL nohasharray
-+enable_so_rx_endpoint_acm_29952 rx_endpoint acm 0 29952 &enable_so_s_min_extra_isize_ext4_super_block_29952 nohasharray
-+enable_so_cciss_proc_write_fndecl_29952 cciss_proc_write fndecl 3 29952 &enable_so_rx_endpoint_acm_29952
++enable_so_rx_endpoint_acm_29952 rx_endpoint acm 0 29952 NULL nohasharray
++enable_so_s_min_extra_isize_ext4_super_block_29952 s_min_extra_isize ext4_super_block 0 29952 &enable_so_rx_endpoint_acm_29952 nohasharray
++enable_so_cciss_proc_write_fndecl_29952 cciss_proc_write fndecl 3 29952 &enable_so_s_min_extra_isize_ext4_super_block_29952
+enable_so_opts1_mask_rtl8169_private_29953 opts1_mask rtl8169_private 0 29953 NULL
+enable_so_max_mlx5_core_srq_29956 max mlx5_core_srq 0 29956 NULL nohasharray
+enable_so_state_count_Fsm_29956 state_count Fsm 0 29956 &enable_so_max_mlx5_core_srq_29956 nohasharray
+enable_so_implemented_capacity_ms_boot_attr_info_29956 implemented_capacity ms_boot_attr_info 0 29956 &enable_so_state_count_Fsm_29956
+enable_so_memconsole_length_vardecl_memconsole_c_29962 memconsole_length vardecl_memconsole.c 0 29962 NULL
++enable_so_msi_setup_entry_fndecl_29969 msi_setup_entry fndecl 2 29969 NULL
+enable_so_c_phys_ocfs2_write_cluster_desc_29971 c_phys ocfs2_write_cluster_desc 0 29971 NULL
+enable_so_idef5upd_gru_control_block_extended_29974 idef5upd gru_control_block_extended 0 29974 NULL
+enable_so_ds_in_channels_hdsp_29975 ds_in_channels hdsp 0 29975 NULL
+enable_so_ubi_leb_change_fndecl_29986 ubi_leb_change fndecl 4 29986 NULL nohasharray
+enable_so_i_suballoc_loc_ocfs2_dinode_29986 i_suballoc_loc ocfs2_dinode 0 29986 &enable_so_ubi_leb_change_fndecl_29986
-+enable_so_scrub_chunk_fndecl_29988 scrub_chunk fndecl 3 29988 NULL
+enable_so_init_size_il4965_firmware_pieces_29990 init_size il4965_firmware_pieces 0 29990 NULL
+enable_so_hfs_vbm_search_free_fndecl_30000 hfs_vbm_search_free fndecl 0-2 30000 NULL
+enable_so_snd_pcm_lib_preallocate_pages1_fndecl_30002 snd_pcm_lib_preallocate_pages1 fndecl 2 30002 NULL
-+enable_so_btrfs_add_ordered_extent_compress_fndecl_30005 btrfs_add_ordered_extent_compress fndecl 4-2-5-3 30005 NULL nohasharray
-+enable_so_iwl_dbgfs_tof_enable_read_fndecl_30005 iwl_dbgfs_tof_enable_read fndecl 3 30005 &enable_so_btrfs_add_ordered_extent_compress_fndecl_30005
++enable_so_btrfs_add_ordered_extent_compress_fndecl_30005 btrfs_add_ordered_extent_compress fndecl 4-2-5-3 30005 NULL
+enable_so_msc_nfinalizers_lnet_msg_container_30006 msc_nfinalizers lnet_msg_container 0 30006 NULL
+enable_so_obj_offset_ore_striping_info_30010 obj_offset ore_striping_info 0 30010 NULL nohasharray
+enable_so___qlcnic_pci_sriov_enable_fndecl_30010 __qlcnic_pci_sriov_enable fndecl 2 30010 &enable_so_obj_offset_ore_striping_info_30010
@@ -164352,7 +163679,6 @@ index 0000000..9da833a
+enable_so_xdr_set_scratch_buffer_fndecl_30045 xdr_set_scratch_buffer fndecl 3 30045 NULL
+enable_so_ath6kl_listen_int_read_fndecl_30048 ath6kl_listen_int_read fndecl 3 30048 NULL
+enable_so_max_header_proto_30054 max_header proto 0 30054 NULL
-+enable_so_sta_ht_capa_read_fndecl_30061 sta_ht_capa_read fndecl 3 30061 NULL
+enable_so_io_throttle_count_vnic_fc_config_30064 io_throttle_count vnic_fc_config 0 30064 NULL
+enable_so_add_swap_extent_fndecl_30065 add_swap_extent fndecl 2-4-3 30065 NULL nohasharray
+enable_so_get_dump_page_fndecl_30065 get_dump_page fndecl 1 30065 &enable_so_add_swap_extent_fndecl_30065
@@ -164379,6 +163705,8 @@ index 0000000..9da833a
+enable_so_if_real_bytes_xfs_ifork_30126 if_real_bytes xfs_ifork 0 30126 NULL
+enable_so_max_total_qng_asc_dvc_var_30137 max_total_qng asc_dvc_var 0 30137 NULL
+enable_so_hdr_len_ieee80211_fast_tx_30143 hdr_len ieee80211_fast_tx 0 30143 NULL
++enable_so_map_mr_sg_ib_device_30147 map_mr_sg ib_device 0 30147 NULL
++enable_so_chunk_len_nfcmrvl_fw_dnld_30149 chunk_len nfcmrvl_fw_dnld 0 30149 NULL
+enable_so_i915_gem_object_create_stolen_for_preallocated_fndecl_30151 i915_gem_object_create_stolen_for_preallocated fndecl 4-2-3 30151 NULL nohasharray
+enable_so_hpfs_remove_fnode_fndecl_30151 hpfs_remove_fnode fndecl 2 30151 &enable_so_i915_gem_object_create_stolen_for_preallocated_fndecl_30151
+enable_so_num_tx_queues_ixgbevf_adapter_30155 num_tx_queues ixgbevf_adapter 0 30155 NULL
@@ -164400,11 +163728,9 @@ index 0000000..9da833a
+enable_so_event_phy_transmit_error_read_fndecl_30196 event_phy_transmit_error_read fndecl 3 30196 NULL
+enable_so_alloc_pci_root_info_fndecl_30198 alloc_pci_root_info fndecl 2-1 30198 NULL
+enable_so_buf_len_uvesafb_task_30200 buf_len uvesafb_task 0 30200 NULL
-+enable_so_pos_drm_i915_error_state_buf_30203 pos drm_i915_error_state_buf 0 30203 NULL
+enable_so_pipe_size_renesas_usbhs_driver_param_30206 pipe_size renesas_usbhs_driver_param 0 30206 NULL
+enable_so_len_header_msg_30207 len header_msg 0 30207 NULL
+enable_so_hrp_nthrs_ptlrpc_hr_partition_30214 hrp_nthrs ptlrpc_hr_partition 0 30214 NULL
-+enable_so_xennet_make_one_txreq_fndecl_30215 xennet_make_one_txreq fndecl 4-5 30215 NULL
+enable_so_minor_rbd_device_30216 minor rbd_device 0 30216 NULL
+enable_so_bm_bits_bm_xfer_ctx_30221 bm_bits bm_xfer_ctx 0 30221 NULL nohasharray
+enable_so_rd_offset_nfsd4_read_30221 rd_offset nfsd4_read 0 30221 &enable_so_bm_bits_bm_xfer_ctx_30221
@@ -164420,6 +163746,7 @@ index 0000000..9da833a
+enable_so_ndisc_fill_redirect_hdr_option_fndecl_30248 ndisc_fill_redirect_hdr_option fndecl 3 30248 NULL
+enable_so_id_kern_ipc_perm_30249 id kern_ipc_perm 0 30249 NULL
+enable_so_compat_sys_truncate_fndecl_30258 compat_sys_truncate fndecl 2 30258 NULL
++enable_so_pci_msi_vec_count_fndecl_30261 pci_msi_vec_count fndecl 0 30261 NULL
+enable_so_max_host_qng_adv_dvc_var_30264 max_host_qng adv_dvc_var 0 30264 NULL
+enable_so_tda10048_writeregbulk_fndecl_30265 tda10048_writeregbulk fndecl 4 30265 NULL
+enable_so_sys_sendfile_fndecl_30267 sys_sendfile fndecl 4 30267 NULL nohasharray
@@ -164437,7 +163764,6 @@ index 0000000..9da833a
+enable_so_logi_dj_raw_event_fndecl_30304 logi_dj_raw_event fndecl 4 30304 NULL
+enable_so_m_ts_msg_msg_30307 m_ts msg_msg 0 30307 NULL
+enable_so_alloc_alien_cache_fndecl_30308 alloc_alien_cache fndecl 2 30308 NULL
-+enable_so_tracing_buffers_read_fndecl_30311 tracing_buffers_read fndecl 3 30311 NULL
+enable_so_ki_pos_kiocb_30312 ki_pos kiocb 0 30312 NULL
+enable_so_wbuf_pagesize_jffs2_sb_info_30318 wbuf_pagesize jffs2_sb_info 0 30318 NULL
+enable_so_nfakewriters_vardecl_rcutorture_c_30320 nfakewriters vardecl_rcutorture.c 0 30320 NULL
@@ -164464,7 +163790,7 @@ index 0000000..9da833a
+enable_so_sq_overhead_fndecl_30401 sq_overhead fndecl 0 30401 NULL
+enable_so_clone_and_map_rq_target_type_30404 clone_and_map_rq target_type 0 30404 NULL
+enable_so_dbgp_control_msg_fndecl_30405 dbgp_control_msg fndecl 7 30405 NULL
-+enable_so_il_dbgfs_rx_queue_read_fndecl_30406 il_dbgfs_rx_queue_read fndecl 3 30406 NULL
++enable_so_nvec_used_msi_desc_30409 nvec_used msi_desc 0 30409 NULL
+enable_so_hwm_tx_init_fndecl_30411 hwm_tx_init fndecl 4 30411 NULL
+enable_so_decode_opaque_fixed_fndecl_30421 decode_opaque_fixed fndecl 3 30421 NULL
+enable_so_width_bttv_fh_30432 width bttv_fh 0 30432 NULL
@@ -164477,10 +163803,10 @@ index 0000000..9da833a
+enable_so_num_channels_iio_dev_30451 num_channels iio_dev 0 30451 NULL
+enable_so___add_zone_fndecl_30452 __add_zone fndecl 2 30452 NULL
+enable_so_m5mols_write_fndecl_30453 m5mols_write fndecl 2 30453 NULL
-+enable_so_xfs_map_direct_fndecl_30459 xfs_map_direct fndecl 4 30459 NULL
+enable_so_mmap_region_fndecl_30460 mmap_region fndecl 0-2-3-5 30460 NULL
+enable_so_grow_pgdat_span_fndecl_30467 grow_pgdat_span fndecl 2 30467 NULL
-+enable_so_height_drm_qxl_alloc_surf_30468 height drm_qxl_alloc_surf 0 30468 NULL
++enable_so_height_drm_qxl_alloc_surf_30468 height drm_qxl_alloc_surf 0 30468 NULL nohasharray
++enable_so_rocker_port_kzalloc_fndecl_30468 rocker_port_kzalloc fndecl 4 30468 &enable_so_height_drm_qxl_alloc_surf_30468
+enable_so___qp_memcpy_to_queue_fndecl_30472 __qp_memcpy_to_queue fndecl 4-2 30472 NULL
+enable_so_nouveau_gem_new_fndecl_30476 nouveau_gem_new fndecl 2 30476 NULL nohasharray
+enable_so_packet_size_ncp_server_30476 packet_size ncp_server 0 30476 &enable_so_nouveau_gem_new_fndecl_30476
@@ -164498,14 +163824,12 @@ index 0000000..9da833a
+enable_so_nfcwilink_send_bts_cmd_fndecl_30497 nfcwilink_send_bts_cmd fndecl 3 30497 NULL
+enable_so_tolen_nfs3_linkargs_30505 tolen nfs3_linkargs 0 30505 NULL
+enable_so___blkdev_issue_discard_async_fndecl_30509 __blkdev_issue_discard_async fndecl 2-3-0 30509 NULL
-+enable_so_rocker_group_l2_fan_out_fndecl_30512 rocker_group_l2_fan_out fndecl 4 30512 NULL
+enable_so___skb_udp_tunnel_segment_fndecl_30522 __skb_udp_tunnel_segment fndecl 4 30522 NULL nohasharray
+enable_so_ip_list_hash_size_vardecl_xt_recent_c_30522 ip_list_hash_size vardecl_xt_recent.c 0 30522 &enable_so___skb_udp_tunnel_segment_fndecl_30522
+enable_so_buf_start_lo_rx_buf_desc_30523 buf_start_lo rx_buf_desc 0 30523 NULL
+enable_so_ttm_dma_page_pool_free_fndecl_30527 ttm_dma_page_pool_free fndecl 2 30527 NULL
+enable_so_nvme_submit_sync_cmd_fndecl_30530 nvme_submit_sync_cmd fndecl 4 30530 NULL
+enable_so_send_command_fndecl_30531 send_command fndecl 4 30531 NULL
-+enable_so_InitiatorRecvDataSegmentLength_iscsi_conn_ops_30535 InitiatorRecvDataSegmentLength iscsi_conn_ops 0 30535 NULL
+enable_so_len_nfsd_readlinkres_30541 len nfsd_readlinkres 0 30541 NULL
+enable_so_num_ports_mlx4_ib_dev_30542 num_ports mlx4_ib_dev 0 30542 NULL
+enable_so_xen_blkif_max_segments_vardecl_xen_blkfront_c_30543 xen_blkif_max_segments vardecl_xen-blkfront.c 0 30543 NULL
@@ -164517,8 +163841,7 @@ index 0000000..9da833a
+enable_so_entries_usb_sg_request_30570 entries usb_sg_request 0 30570 NULL
+enable_so_snd_pcm_oss_write1_fndecl_30571 snd_pcm_oss_write1 fndecl 3 30571 NULL
+enable_so_s_iblkno_ufs_sb_private_info_30572 s_iblkno ufs_sb_private_info 0 30572 NULL nohasharray
-+enable_so_wiidebug_drm_write_fndecl_30572 wiidebug_drm_write fndecl 3 30572 &enable_so_s_iblkno_ufs_sb_private_info_30572 nohasharray
-+enable_so_key_len_ubifs_info_30572 key_len ubifs_info 0 30572 &enable_so_wiidebug_drm_write_fndecl_30572
++enable_so_key_len_ubifs_info_30572 key_len ubifs_info 0 30572 &enable_so_s_iblkno_ufs_sb_private_info_30572
+enable_so_udf_get_pblock_virt20_fndecl_30574 udf_get_pblock_virt20 fndecl 4 30574 NULL
+enable_so_pio_ide_pio_info_30575 pio ide_pio_info 0 30575 NULL nohasharray
+enable_so_mid_get_vbt_data_r0_fndecl_30575 mid_get_vbt_data_r0 fndecl 2 30575 &enable_so_pio_ide_pio_info_30575
@@ -164526,7 +163849,8 @@ index 0000000..9da833a
+enable_so_fuse_conn_max_background_read_fndecl_30580 fuse_conn_max_background_read fndecl 3 30580 NULL
+enable_so_delta_stack_mm_struct_30582 delta_stack mm_struct 0 30582 NULL nohasharray
+enable_so_ida_get_new_above_fndecl_30582 ida_get_new_above fndecl 0 30582 &enable_so_delta_stack_mm_struct_30582
-+enable_so_max_intr_slots_myri10ge_priv_30588 max_intr_slots myri10ge_priv 0 30588 NULL
++enable_so_max_intr_slots_myri10ge_priv_30588 max_intr_slots myri10ge_priv 0 30588 NULL nohasharray
++enable_so_mbox_test_message_read_fndecl_30588 mbox_test_message_read fndecl 3 30588 &enable_so_max_intr_slots_myri10ge_priv_30588
+enable_so_group_ext4_new_group_data_30590 group ext4_new_group_data 0 30590 NULL nohasharray
+enable_so_rsize_cifs_sb_info_30590 rsize cifs_sb_info 0 30590 &enable_so_group_ext4_new_group_data_30590
+enable_so_read_edid_block_fndecl_30591 read_edid_block fndecl 4 30591 NULL
@@ -164538,23 +163862,23 @@ index 0000000..9da833a
+enable_so_ext4_collapse_range_fndecl_30598 ext4_collapse_range fndecl 2-3 30598 NULL
+enable_so_offset_drm_i915_gem_pread_30601 offset drm_i915_gem_pread 0 30601 NULL
+enable_so_update_backups_fndecl_30602 update_backups fndecl 2 30602 NULL
-+enable_so_add_ino_fndecl_30603 add_ino fndecl 4-2 30603 NULL
++enable_so_add_ino_fndecl_30603 add_ino fndecl 2-4 30603 NULL
+enable_so_rx_win_size_mwifiex_add_ba_param_30610 rx_win_size mwifiex_add_ba_param 0 30610 NULL
+enable_so_total_data_placed_lpfc_wcqe_complete_30612 total_data_placed lpfc_wcqe_complete 0 30612 NULL nohasharray
+enable_so_blk_sz_os_dat_entry_s_30612 blk_sz os_dat_entry_s 0 30612 &enable_so_total_data_placed_lpfc_wcqe_complete_30612
+enable_so_ieee802_11_parse_elems_crc_fndecl_30615 ieee802_11_parse_elems_crc fndecl 2 30615 NULL
+enable_so_size_cmdQ_30622 size cmdQ 0 30622 NULL
++enable_so_msc_buffer_win_alloc_fndecl_30624 msc_buffer_win_alloc fndecl 2 30624 NULL
+enable_so_si2168_i2c_master_recv_unlocked_fndecl_30633 si2168_i2c_master_recv_unlocked fndecl 3 30633 NULL
-+enable_so_lprocfs_wr_atomic_fndecl_30643 lprocfs_wr_atomic fndecl 3 30643 NULL
+enable_so_catc_ctrl_async_fndecl_30648 catc_ctrl_async fndecl 7 30648 NULL
+enable_so_drbd_md_sync_page_io_fndecl_30651 drbd_md_sync_page_io fndecl 3 30651 NULL
+enable_so_size_vmcore_30652 size vmcore 0 30652 NULL
+enable_so_start_numa_memblk_30656 start numa_memblk 0 30656 NULL nohasharray
-+enable_so_shrink_pgdat_span_fndecl_30656 shrink_pgdat_span fndecl 3-2 30656 &enable_so_start_numa_memblk_30656 nohasharray
-+enable_so_TargetRecvDataSegmentLength_iscsi_conn_ops_30656 TargetRecvDataSegmentLength iscsi_conn_ops 0 30656 &enable_so_shrink_pgdat_span_fndecl_30656
++enable_so_shrink_pgdat_span_fndecl_30656 shrink_pgdat_span fndecl 3-2 30656 &enable_so_start_numa_memblk_30656
+enable_so_ci_port_test_write_fndecl_30657 ci_port_test_write fndecl 3 30657 NULL
+enable_so_ext4_mb_new_blocks_fndecl_30662 ext4_mb_new_blocks fndecl 0 30662 NULL
+enable_so_tun_put_user_fndecl_30676 tun_put_user fndecl 0 30676 NULL
++enable_so_host_int_add_wep_key_bss_sta_fndecl_30677 host_int_add_wep_key_bss_sta fndecl 3 30677 NULL
+enable_so_max_count_pvr2_buffer_30678 max_count pvr2_buffer 0 30678 NULL
+enable_so_nvme_cmd_size_fndecl_30679 nvme_cmd_size fndecl 0 30679 NULL
+enable_so_log_num_srqs_mlx4_init_hca_param_30681 log_num_srqs mlx4_init_hca_param 0 30681 NULL
@@ -164569,14 +163893,12 @@ index 0000000..9da833a
+enable_so_bm_entry_read_fndecl_30707 bm_entry_read fndecl 3 30707 NULL
+enable_so_sched_autogroup_write_fndecl_30715 sched_autogroup_write fndecl 3 30715 NULL
+enable_so_numPhys_PVSCSIConfigPageController_30726 numPhys PVSCSIConfigPageController 0 30726 NULL
-+enable_so___alloc_preds_fndecl_30727 __alloc_preds fndecl 2 30727 NULL
+enable_so_lbs_threshold_write_fndecl_30733 lbs_threshold_write fndecl 5 30733 NULL
+enable_so_sock_recvmsg_fndecl_30735 sock_recvmsg fndecl 0 30735 NULL nohasharray
+enable_so_num_descriptors_pmc_ctx_30735 num_descriptors pmc_ctx 0 30735 &enable_so_sock_recvmsg_fndecl_30735
+enable_so_bop_seek_key_nilfs_bmap_operations_30741 bop_seek_key nilfs_bmap_operations 0 30741 NULL nohasharray
+enable_so_nci_hci_send_data_fndecl_30741 nci_hci_send_data fndecl 5 30741 &enable_so_bop_seek_key_nilfs_bmap_operations_30741 nohasharray
+enable_so_mlx5_wq_cyc_get_size_fndecl_30741 mlx5_wq_cyc_get_size fndecl 0 30741 &enable_so_nci_hci_send_data_fndecl_30741
-+enable_so_iwl_dbgfs_fw_dbg_conf_read_fndecl_30753 iwl_dbgfs_fw_dbg_conf_read fndecl 3 30753 NULL
+enable_so_command_setvloffset_fndecl_30761 command_setvloffset fndecl 0 30761 NULL nohasharray
+enable_so_n_scan_channels_iwl_ucode_capabilities_30761 n_scan_channels iwl_ucode_capabilities 0 30761 &enable_so_command_setvloffset_fndecl_30761
+enable_so_lp_write_fndecl_30772 lp_write fndecl 3 30772 NULL
@@ -164584,23 +163906,21 @@ index 0000000..9da833a
+enable_so_leb_size_ubifs_info_30775 leb_size ubifs_info 0 30775 NULL
+enable_so_nzones_high_adfs_discrecord_30776 nzones_high adfs_discrecord 0 30776 NULL
+enable_so_isoc_in_pipe_ttusb_30778 isoc_in_pipe ttusb 0 30778 NULL
-+enable_so_inj_readme_read_fndecl_30779 inj_readme_read fndecl 3 30779 NULL
+enable_so_hdrlen_brcmf_pub_30788 hdrlen brcmf_pub 0 30788 NULL nohasharray
-+enable_so_fw_node_create_fndecl_30788 fw_node_create fndecl 2 30788 &enable_so_hdrlen_brcmf_pub_30788
++enable_so_num_blk_nvm_id_group_30788 num_blk nvm_id_group 0 30788 &enable_so_hdrlen_brcmf_pub_30788 nohasharray
++enable_so_fw_node_create_fndecl_30788 fw_node_create fndecl 2 30788 &enable_so_num_blk_nvm_id_group_30788
+enable_so_batadv_send_roam_adv_fndecl_30791 batadv_send_roam_adv fndecl 3 30791 NULL
+enable_so_netup_write_i2c_fndecl_30793 netup_write_i2c fndecl 5 30793 NULL
-+enable_so_queue_depth_scsi_device_30796 queue_depth scsi_device 0 30796 NULL
+enable_so_kobj_map_fndecl_30797 kobj_map fndecl 2-3 30797 NULL
+enable_so_wr_sz_csio_q_30799 wr_sz csio_q 0 30799 NULL
+enable_so_remove_one_fndecl_30800 remove_one fndecl 2 30800 NULL
++enable_so_write_va_iser_hdr_30802 write_va iser_hdr 0 30802 NULL
+enable_so_extra_mpdu_postfix_len_lib80211_crypto_ops_30803 extra_mpdu_postfix_len lib80211_crypto_ops 0 30803 NULL nohasharray
+enable_so_fwlen_mpt_fw_xfer_30803 fwlen mpt_fw_xfer 0 30803 &enable_so_extra_mpdu_postfix_len_lib80211_crypto_ops_30803
-+enable_so_iwl_dbgfs_bf_params_read_fndecl_30805 iwl_dbgfs_bf_params_read fndecl 3 30805 NULL
+enable_so_ResidualCnt_ErrorInfo_30806 ResidualCnt ErrorInfo 0 30806 NULL
+enable_so_buf_dma_gtco_30808 buf_dma gtco 0 30808 NULL nohasharray
+enable_so_sadb_key_bits_sadb_key_30808 sadb_key_bits sadb_key 0 30808 &enable_so_buf_dma_gtco_30808
-+enable_so_unmerge_ksm_pages_fndecl_30809 unmerge_ksm_pages fndecl 2 30809 NULL nohasharray
-+enable_so_il_dbgfs_missed_beacon_write_fndecl_30809 il_dbgfs_missed_beacon_write fndecl 3 30809 &enable_so_unmerge_ksm_pages_fndecl_30809
++enable_so_unmerge_ksm_pages_fndecl_30809 unmerge_ksm_pages fndecl 2 30809 NULL
+enable_so_si21_readregs_fndecl_30810 si21_readregs fndecl 4 30810 NULL nohasharray
+enable_so_xfs_ialloc_read_agi_fndecl_30810 xfs_ialloc_read_agi fndecl 3 30810 &enable_so_si21_readregs_fndecl_30810
+enable_so_totalram_sysinfo_30812 totalram sysinfo 0 30812 NULL
@@ -164635,12 +163955,13 @@ index 0000000..9da833a
+enable_so_current_page_mspro_block_data_30876 current_page mspro_block_data 0 30876 NULL
+enable_so_dma_buf_sz_stmmac_priv_30880 dma_buf_sz stmmac_priv 0 30880 NULL
+enable_so_eq_textcnt_max98088_priv_30885 eq_textcnt max98088_priv 0 30885 NULL
-+enable_so_ocfs2_xattr_get_rec_fndecl_30887 ocfs2_xattr_get_rec fndecl 0 30887 NULL nohasharray
-+enable_so_fifo_size_serial8250_config_30887 fifo_size serial8250_config 0 30887 &enable_so_ocfs2_xattr_get_rec_fndecl_30887 nohasharray
-+enable_so_max_ti_iu_len_srpt_rdma_ch_30887 max_ti_iu_len srpt_rdma_ch 0 30887 &enable_so_fifo_size_serial8250_config_30887
++enable_so_fifo_size_serial8250_config_30887 fifo_size serial8250_config 0 30887 NULL nohasharray
++enable_so_max_ti_iu_len_srpt_rdma_ch_30887 max_ti_iu_len srpt_rdma_ch 0 30887 &enable_so_fifo_size_serial8250_config_30887 nohasharray
++enable_so_ocfs2_xattr_get_rec_fndecl_30887 ocfs2_xattr_get_rec fndecl 0 30887 &enable_so_max_ti_iu_len_srpt_rdma_ch_30887
+enable_so_queue_received_packet_fndecl_30890 queue_received_packet fndecl 5 30890 NULL
+enable_so_ceph_copy_user_to_page_vector_fndecl_30896 ceph_copy_user_to_page_vector fndecl 3-4 30896 NULL
+enable_so_compat_sys_keyctl_fndecl_30900 compat_sys_keyctl fndecl 4 30900 NULL
++enable_so_st_nci_hci_dm_reset_fndecl_30904 st_nci_hci_dm_reset fndecl 3 30904 NULL
+enable_so_host_addrlen_nfs4_mount_data_30905 host_addrlen nfs4_mount_data 0 30905 NULL
+enable_so_word12_lpfc_mbx_read_config_30908 word12 lpfc_mbx_read_config 0 30908 NULL
+enable_so_log_sq_bb_count_mlx4_ib_create_qp_30909 log_sq_bb_count mlx4_ib_create_qp 0 30909 NULL
@@ -164661,12 +163982,12 @@ index 0000000..9da833a
+enable_so_SYSC_ppoll_fndecl_30954 SYSC_ppoll fndecl 2 30954 NULL
+enable_so_pvr2_stream_setup_fndecl_30955 pvr2_stream_setup fndecl 3 30955 NULL
+enable_so_leaf_shift_right_fndecl_30957 leaf_shift_right fndecl 3 30957 NULL
-+enable_so_lowpan_control_write_fndecl_30960 lowpan_control_write fndecl 3 30960 NULL
++enable_so_msi_domain_alloc_irqs_fndecl_30960 msi_domain_alloc_irqs fndecl 0 30960 NULL nohasharray
++enable_so_lowpan_control_write_fndecl_30960 lowpan_control_write fndecl 3 30960 &enable_so_msi_domain_alloc_irqs_fndecl_30960
+enable_so___list_lru_count_one_fndecl_30962 __list_lru_count_one fndecl 0 30962 NULL
+enable_so_ring_start__drm_i810_init_30964 ring_start _drm_i810_init 0 30964 NULL
+enable_so_tool_mask_write_fndecl_30968 tool_mask_write fndecl 3 30968 NULL
+enable_so_max_sdu_atm_trafprm_30969 max_sdu atm_trafprm 0 30969 NULL
-+enable_so_ieee80211_if_read_aid_fndecl_30970 ieee80211_if_read_aid fndecl 3 30970 NULL
+enable_so_mt7601u_rx_skb_from_seg_fndecl_30971 mt7601u_rx_skb_from_seg fndecl 5 30971 NULL
+enable_so_get_leaf_fndecl_30972 get_leaf fndecl 2 30972 NULL
+enable_so_avail_out_z_stream_s_30974 avail_out z_stream_s 0 30974 NULL
@@ -164677,10 +163998,12 @@ index 0000000..9da833a
+enable_so_offset_nfsd_readargs_30989 offset nfsd_readargs 0 30989 NULL
+enable_so_offset_isofs_fid_30994 offset isofs_fid 0 30994 NULL
+enable_so_vti6_change_mtu_fndecl_30995 vti6_change_mtu fndecl 2 30995 NULL
-+enable_so_s_victim_ino_logfs_super_30996 s_victim_ino logfs_super 0 30996 NULL
++enable_so_s_victim_ino_logfs_super_30996 s_victim_ino logfs_super 0 30996 NULL nohasharray
++enable_so_xfs_xattr_set_fndecl_30996 xfs_xattr_set fndecl 5 30996 &enable_so_s_victim_ino_logfs_super_30996
+enable_so_l2cap_create_connless_pdu_fndecl_30997 l2cap_create_connless_pdu fndecl 3 30997 NULL
+enable_so_tx_tx_prepared_descs_read_fndecl_30998 tx_tx_prepared_descs_read fndecl 3 30998 NULL
-+enable_so_lro_append_pkt_fndecl_31003 lro_append_pkt fndecl 4 31003 NULL
++enable_so_lro_append_pkt_fndecl_31003 lro_append_pkt fndecl 4 31003 NULL nohasharray
++enable_so_alloc_xenballooned_pages_fndecl_31003 alloc_xenballooned_pages fndecl 1 31003 &enable_so_lro_append_pkt_fndecl_31003
+enable_so_btrfs_search_slot_fndecl_31011 btrfs_search_slot fndecl 0 31011 NULL
+enable_so_max_order_mthca_buddy_31017 max_order mthca_buddy 0 31017 NULL
+enable_so_hdpvr_read_fndecl_31018 hdpvr_read fndecl 3 31018 NULL
@@ -164694,9 +164017,10 @@ index 0000000..9da833a
+enable_so_migrate_misplaced_transhuge_page_fndecl_31041 migrate_misplaced_transhuge_page fndecl 5 31041 NULL
+enable_so_qla82xx_pci_set_window_fndecl_31044 qla82xx_pci_set_window fndecl 0-2 31044 NULL
+enable_so_dsp_registers_phys_echoaudio_31045 dsp_registers_phys echoaudio 0 31045 NULL
++enable_so_capset_max_size_virtio_gpu_resp_capset_info_31049 capset_max_size virtio_gpu_resp_capset_info 0 31049 NULL
+enable_so_valueblk_xfs_attr_leaf_name_remote_31051 valueblk xfs_attr_leaf_name_remote 0 31051 NULL
+enable_so_ceph_sync_setxattr_fndecl_31053 ceph_sync_setxattr fndecl 4 31053 NULL
-+enable_so_iwl_dbgfs_stations_read_fndecl_31054 iwl_dbgfs_stations_read fndecl 3 31054 NULL
++enable_so_nr_bytes_scif_rma_req_31055 nr_bytes scif_rma_req 0 31055 NULL
+enable_so_pci_sriov_get_totalvfs_fndecl_31059 pci_sriov_get_totalvfs fndecl 0 31059 NULL nohasharray
+enable_so_t4_max_qp_depth_c4iw_hw_queue_31059 t4_max_qp_depth c4iw_hw_queue 0 31059 &enable_so_pci_sriov_get_totalvfs_fndecl_31059
+enable_so_drbd_bm_bits_fndecl_31061 drbd_bm_bits fndecl 0 31061 NULL
@@ -164721,7 +164045,7 @@ index 0000000..9da833a
+enable_so_reiserfs_write_end_fndecl_31117 reiserfs_write_end fndecl 5-3 31117 NULL
+enable_so_dbgfs_sram_len_iwl_priv_31119 dbgfs_sram_len iwl_priv 0 31119 NULL
+enable_so_udf_UTF8toCS0_fndecl_31120 udf_UTF8toCS0 fndecl 0 31120 NULL
-+enable_so_dm_bm_read_lock_fndecl_31121 dm_bm_read_lock fndecl 2 31121 NULL
++enable_so_dm_bm_read_lock_fndecl_31121 dm_bm_read_lock fndecl 2-0 31121 NULL
+enable_so_amdgpu_afmt_acr_fndecl_31127 amdgpu_afmt_acr fndecl 1 31127 NULL nohasharray
+enable_so_nr_chips_dsa_platform_data_31127 nr_chips dsa_platform_data 0 31127 &enable_so_amdgpu_afmt_acr_fndecl_31127
+enable_so_uhci_result_isochronous_fndecl_31133 uhci_result_isochronous fndecl 0 31133 NULL nohasharray
@@ -164735,6 +164059,7 @@ index 0000000..9da833a
+enable_so_hpfs_count_dnodes_fndecl_31152 hpfs_count_dnodes fndecl 2 31152 NULL
+enable_so_max_rx_ip_filters_efx_nic_type_31156 max_rx_ip_filters efx_nic_type 0 31156 NULL
+enable_so_max_seg_size_tsap_cb_31158 max_seg_size tsap_cb 0 31158 NULL
++enable_so_size_stp_policy_id_31167 size stp_policy_id 0 31167 NULL
+enable_so_ocfs2_direct_IO_zero_extend_fndecl_31171 ocfs2_direct_IO_zero_extend fndecl 4 31171 NULL
+enable_so_bm_realloc_pages_fndecl_31172 bm_realloc_pages fndecl 2 31172 NULL
+enable_so_rcvbuf_size_bas_cardstate_31177 rcvbuf_size bas_cardstate 0 31177 NULL
@@ -164752,6 +164077,7 @@ index 0000000..9da833a
+enable_so_get_registers_fndecl_31213 get_registers fndecl 4 31213 &enable_so_agp_generic_alloc_user_fndecl_31213
+enable_so_wr_ep_alauda_info_31218 wr_ep alauda_info 0 31218 NULL
+enable_so_io_size_smbus_lpc_sch_info_31219 io_size_smbus lpc_sch_info 0 31219 NULL
++enable_so_iwch_alloc_mr_fndecl_31220 iwch_alloc_mr fndecl 3 31220 NULL
+enable_so_kmalloc_array_fndecl_31223 kmalloc_array fndecl 1-2 31223 NULL
+enable_so_put_pfn_fndecl_31225 put_pfn fndecl 0 31225 NULL
+enable_so_fl_align_sge_31227 fl_align sge 0 31227 NULL
@@ -164772,7 +164098,6 @@ index 0000000..9da833a
+enable_so_end_incl_vringh_range_31272 end_incl vringh_range 0 31272 NULL
+enable_so_ascot2e_read_regs_fndecl_31273 ascot2e_read_regs fndecl 4 31273 NULL
+enable_so_packet_length_rc_config_31278 packet_length rc_config 0 31278 NULL
-+enable_so_aat2870_dump_reg_fndecl_31280 aat2870_dump_reg fndecl 0 31280 NULL
+enable_so_irq_pcmcia_device_31283 irq pcmcia_device 0 31283 NULL nohasharray
+enable_so_ecp_read_data_parport_operations_31283 ecp_read_data parport_operations 0 31283 &enable_so_irq_pcmcia_device_31283
+enable_so_mmap_base_kioctx_31285 mmap_base kioctx 0 31285 NULL
@@ -164817,15 +164142,14 @@ index 0000000..9da833a
+enable_so_unmap_region_fndecl_31420 unmap_region fndecl 5-4 31420 NULL
+enable_so_bch_bucket_alloc_fndecl_31421 bch_bucket_alloc fndecl 0 31421 NULL
+enable_so_rx_out_of_mem_read_fndecl_31422 rx_out_of_mem_read fndecl 3 31422 NULL
-+enable_so_recovery_offset_md_rdev_31426 recovery_offset md_rdev 0 31426 NULL
+enable_so_len_brcmf_vs_tlv_31430 len brcmf_vs_tlv 0 31430 NULL nohasharray
+enable_so_onenand_read_oob_nolock_fndecl_31430 onenand_read_oob_nolock fndecl 2 31430 &enable_so_len_brcmf_vs_tlv_31430
+enable_so_mpx_unmap_tables_fndecl_31439 mpx_unmap_tables fndecl 2-3 31439 NULL
+enable_so_vc_x_vc_data_31443 vc_x vc_data 0 31443 NULL
-+enable_so_jffs2_user_setxattr_fndecl_31445 jffs2_user_setxattr fndecl 4 31445 NULL nohasharray
-+enable_so_fid_ino_xfs_fid_31445 fid_ino xfs_fid 0 31445 &enable_so_jffs2_user_setxattr_fndecl_31445
++enable_so_fid_ino_xfs_fid_31445 fid_ino xfs_fid 0 31445 NULL
+enable_so_gro_size_bnx2x_agg_info_31450 gro_size bnx2x_agg_info 0 31450 NULL
-+enable_so_length_wsm_ssid_31452 length wsm_ssid 0 31452 NULL
++enable_so_tx_data_ep_usb_tx_data_port_31452 tx_data_ep usb_tx_data_port 0 31452 NULL nohasharray
++enable_so_length_wsm_ssid_31452 length wsm_ssid 0 31452 &enable_so_tx_data_ep_usb_tx_data_port_31452
+enable_so_max_sz_mmc_test_area_31453 max_sz mmc_test_area 0 31453 NULL
+enable_so_i_eattr_gfs2_inode_31461 i_eattr gfs2_inode 0 31461 NULL
+enable_so_length__diva_xdi_um_cfg_cmd_data_read_sdram_31465 length _diva_xdi_um_cfg_cmd_data_read_sdram 0 31465 NULL
@@ -164834,10 +164158,11 @@ index 0000000..9da833a
+enable_so_len_mmap_arg_struct32_31471 len mmap_arg_struct32 0 31471 NULL nohasharray
+enable_so_videobuf_dma_init_overlay_fndecl_31471 videobuf_dma_init_overlay fndecl 4 31471 &enable_so_len_mmap_arg_struct32_31471
+enable_so_wl12xx_spi_raw_write_fndecl_31482 wl12xx_spi_raw_write fndecl 4 31482 NULL
++enable_so_old_dev_ioctl_fndecl_31483 old_dev_ioctl fndecl 0 31483 NULL
+enable_so_nr_voices_seq_oss_synthinfo_31487 nr_voices seq_oss_synthinfo 0 31487 NULL
+enable_so_length_rsd_31489 length rsd 0 31489 NULL
+enable_so_regmap_multi_reg_write_bypassed_fndecl_31492 regmap_multi_reg_write_bypassed fndecl 3 31492 NULL
-+enable_so_bfa_lun_queue_depth_vardecl_31497 bfa_lun_queue_depth vardecl 0 31497 NULL
++enable_so_dvb_dmxdev_ts_callback_fndecl_31494 dvb_dmxdev_ts_callback fndecl 2-4 31494 NULL
+enable_so_size_intel_stolen_funcs_31503 size intel_stolen_funcs 0 31503 NULL
+enable_so_PIXDEPTH_kyrofb_info_31509 PIXDEPTH kyrofb_info 0 31509 NULL
+enable_so_fixed_size_llseek_fndecl_31512 fixed_size_llseek fndecl 2-4 31512 NULL
@@ -164853,7 +164178,6 @@ index 0000000..9da833a
+enable_so_stride_drm_qxl_alloc_surf_31551 stride drm_qxl_alloc_surf 0 31551 NULL nohasharray
+enable_so_ks_rdreg16_fndecl_31551 ks_rdreg16 fndecl 0 31551 &enable_so_stride_drm_qxl_alloc_surf_31551
+enable_so_start_genius_videocam_live_fndecl_31552 start_genius_videocam_live fndecl 0 31552 NULL
-+enable_so_ieee80211_if_read_state_fndecl_31558 ieee80211_if_read_state fndecl 3 31558 NULL
+enable_so_resp_sas_pcd_m_spg_fndecl_31559 resp_sas_pcd_m_spg fndecl 0 31559 NULL
+enable_so_kernel_physical_mapping_init_fndecl_31561 kernel_physical_mapping_init fndecl 0-2 31561 NULL
+enable_so_qlcnic_validate_ringparam_fndecl_31569 qlcnic_validate_ringparam fndecl 0 31569 NULL
@@ -164906,7 +164230,6 @@ index 0000000..9da833a
+enable_so_TargetsPerBus_aac_bus_info_response_31699 TargetsPerBus aac_bus_info_response 0 31699 NULL
+enable_so_init_pipe_urbs_fndecl_31704 init_pipe_urbs fndecl 2-6 31704 NULL
+enable_so_len_ib_ucm_lap_31705 len ib_ucm_lap 0 31705 NULL
-+enable_so_iwl_dbgfs_prph_reg_read_fndecl_31707 iwl_dbgfs_prph_reg_read fndecl 3 31707 NULL
+enable_so_get_free_serial_index_fndecl_31714 get_free_serial_index fndecl 0 31714 NULL
+enable_so_s5p_jpeg_compressed_size_fndecl_31715 s5p_jpeg_compressed_size fndecl 0 31715 NULL
+enable_so_seg_count_ib_mad_send_buf_31716 seg_count ib_mad_send_buf 0 31716 NULL
@@ -164916,11 +164239,13 @@ index 0000000..9da833a
+enable_so_ext2_new_blocks_fndecl_31729 ext2_new_blocks fndecl 0-2 31729 NULL nohasharray
+enable_so_channels_mask_sh_timer_config_31729 channels_mask sh_timer_config 0 31729 &enable_so_ext2_new_blocks_fndecl_31729
+enable_so_recv_bm_rle_bits_fndecl_31731 recv_bm_rle_bits fndecl 4 31731 NULL
++enable_so_nr_pages_rrpc_31736 nr_pages rrpc 0 31736 NULL nohasharray
++enable_so_read_va_iser_hdr_31736 read_va iser_hdr 0 31736 &enable_so_nr_pages_rrpc_31736
++enable_so_location_r5l_payload_data_parity_31741 location r5l_payload_data_parity 0 31741 NULL
+enable_so_SyS_gethostname_fndecl_31743 SyS_gethostname fndecl 2 31743 NULL
+enable_so_ih_ring_entry_size_kfd_device_info_31745 ih_ring_entry_size kfd_device_info 0 31745 NULL
+enable_so_nxt200x_writereg_multibyte_fndecl_31757 nxt200x_writereg_multibyte fndecl 4 31757 NULL
+enable_so_bio_readpage_error_fndecl_31761 bio_readpage_error fndecl 4-5 31761 NULL
-+enable_so_ahc_linux_user_tagdepth_fndecl_31764 ahc_linux_user_tagdepth fndecl 0 31764 NULL
+enable_so_i_size_dio_31770 i_size dio 0 31770 NULL
+enable_so_i40e_init_msix_fndecl_31776 i40e_init_msix fndecl 0 31776 NULL
+enable_so_iommu_pgshift_gk20a_instmem_31778 iommu_pgshift gk20a_instmem 0 31778 NULL
@@ -164948,8 +164273,9 @@ index 0000000..9da833a
+enable_so_byte_len_svc_rdma_op_ctxt_31832 byte_len svc_rdma_op_ctxt 0 31832 NULL nohasharray
+enable_so_num_partition_entries__gpt_header_31832 num_partition_entries _gpt_header 0 31832 &enable_so_byte_len_svc_rdma_op_ctxt_31832
+enable_so_num_tty_driver_31834 num tty_driver 0 31834 NULL
-+enable_so_n_channels_efx_nic_31838 n_channels efx_nic 0 31838 NULL nohasharray
-+enable_so_locked_vm_mm_struct_31838 locked_vm mm_struct 0 31838 &enable_so_n_channels_efx_nic_31838
++enable_so_mpls_rt_alloc_fndecl_31835 mpls_rt_alloc fndecl 1-2 31835 NULL
++enable_so_locked_vm_mm_struct_31838 locked_vm mm_struct 0 31838 NULL nohasharray
++enable_so_n_channels_efx_nic_31838 n_channels efx_nic 0 31838 &enable_so_locked_vm_mm_struct_31838
+enable_so_opticon_process_data_packet_fndecl_31839 opticon_process_data_packet fndecl 3 31839 NULL
+enable_so_ds_block_shift_logfs_disk_super_31840 ds_block_shift logfs_disk_super 0 31840 NULL
+enable_so_cache_slow_downcall_fndecl_31849 cache_slow_downcall fndecl 2 31849 NULL
@@ -164994,9 +164320,9 @@ index 0000000..9da833a
+enable_so_buf_height_tpg_data_31953 buf_height tpg_data 0 31953 NULL
+enable_so_udp6_gro_complete_fndecl_31954 udp6_gro_complete fndecl 2 31954 NULL
+enable_so_usHSyncOffset__ATOM_DTD_FORMAT_31956 usHSyncOffset _ATOM_DTD_FORMAT 0 31956 NULL
-+enable_so_ufs_add_fragments_fndecl_31963 ufs_add_fragments fndecl 2-0 31963 NULL
-+enable_so_bmc150_accel_fifo_flush_fndecl_31972 bmc150_accel_fifo_flush fndecl 2 31972 NULL nohasharray
-+enable_so_isdn_tty_write_fndecl_31972 isdn_tty_write fndecl 3 31972 &enable_so_bmc150_accel_fifo_flush_fndecl_31972
++enable_so_ufs_add_fragments_fndecl_31963 ufs_add_fragments fndecl 2-0 31963 NULL nohasharray
++enable_so_ieee80211_if_write_tdls_wider_bw_fndecl_31963 ieee80211_if_write_tdls_wider_bw fndecl 3 31963 &enable_so_ufs_add_fragments_fndecl_31963
++enable_so_isdn_tty_write_fndecl_31972 isdn_tty_write fndecl 3 31972 NULL
+enable_so_se_dev_align_max_sectors_fndecl_31975 se_dev_align_max_sectors fndecl 0-2-1 31975 NULL
+enable_so_buffer_max_vardecl_floppy_c_31976 buffer_max vardecl_floppy.c 0 31976 NULL
+enable_so_i_size_read_fndecl_31980 i_size_read fndecl 0 31980 NULL
@@ -165013,7 +164339,6 @@ index 0000000..9da833a
+enable_so_bg_next_group_ocfs2_group_desc_32003 bg_next_group ocfs2_group_desc 0 32003 &enable_so_blocksize_sddr09_card_info_32003 nohasharray
+enable_so_bfad_iocmd_port_enable_fndecl_32003 bfad_iocmd_port_enable fndecl 0 32003 &enable_so_bg_next_group_ocfs2_group_desc_32003
+enable_so_ss_descs_count_ffs_data_32006 ss_descs_count ffs_data 0 32006 NULL
-+enable_so_rt2x00debug_write_bbp_fndecl_32007 rt2x00debug_write_bbp fndecl 3 32007 NULL
+enable_so_play_iframe_fndecl_32008 play_iframe fndecl 3 32008 NULL
+enable_so_ad7879_spi_multi_read_fndecl_32009 ad7879_spi_multi_read fndecl 3 32009 NULL
+enable_so_size_tiger_dma_32013 size tiger_dma 0 32013 NULL nohasharray
@@ -165028,6 +164353,7 @@ index 0000000..9da833a
+enable_so_next_free_pstore_32049 next_free pstore 0 32049 NULL
+enable_so_kvm_mmu_page_set_gfn_fndecl_32050 kvm_mmu_page_set_gfn fndecl 2 32050 NULL
+enable_so_g_num_of_iommus_vardecl_intel_iommu_c_32059 g_num_of_iommus vardecl_intel-iommu.c 0 32059 NULL
++enable_so_assoc_sta_del_all_sta_32069 assoc_sta del_all_sta 0 32069 NULL
+enable_so_config_size_nd_cmd_get_config_size_32073 config_size nd_cmd_get_config_size 0 32073 NULL
+enable_so_rproc_recovery_write_fndecl_32074 rproc_recovery_write fndecl 3 32074 NULL
+enable_so_add_rx_skb_fndecl_32082 add_rx_skb fndecl 3 32082 NULL
@@ -165047,7 +164373,6 @@ index 0000000..9da833a
+enable_so_rcvegrcnt_qib_ctxtdata_32127 rcvegrcnt qib_ctxtdata 0 32127 NULL
+enable_so_ip6_make_skb_fndecl_32129 ip6_make_skb fndecl 5-4 32129 NULL nohasharray
+enable_so_first_slot_vardecl_cpcihp_generic_c_32129 first_slot vardecl_cpcihp_generic.c 0 32129 &enable_so_ip6_make_skb_fndecl_32129
-+enable_so_lpfc_debugfs_max_slow_ring_trc_vardecl_lpfc_debugfs_c_32130 lpfc_debugfs_max_slow_ring_trc vardecl_lpfc_debugfs.c 0 32130 NULL
+enable_so_sb_gquotino_xfs_sb_32131 sb_gquotino xfs_sb 0 32131 NULL
+enable_so_sync_request_fndecl_32141 sync_request fndecl 2 32141 NULL nohasharray
+enable_so_fsector_t_vardecl_floppy_c_32141 fsector_t vardecl_floppy.c 0 32141 &enable_so_sync_request_fndecl_32141
@@ -165091,6 +164416,7 @@ index 0000000..9da833a
+enable_so_nasync_board_t_32240 nasync board_t 0 32240 NULL
+enable_so_roccat_common2_sysfs_read_fndecl_32252 roccat_common2_sysfs_read fndecl 6 32252 NULL
+enable_so_n_ids_vport_portids_32258 n_ids vport_portids 0 32258 NULL
++enable_so_fsl_qspi_read_fndecl_32259 fsl_qspi_read fndecl 3-2 32259 NULL
+enable_so_report_count_hid_global_32260 report_count hid_global 0 32260 NULL
+enable_so_sony_register_touchpad_fndecl_32262 sony_register_touchpad fndecl 2 32262 NULL
+enable_so_msb_verify_block_fndecl_32264 msb_verify_block fndecl 0-2 32264 NULL nohasharray
@@ -165108,10 +164434,8 @@ index 0000000..9da833a
+enable_so_num_gpes_vardecl_sysfs_c_32294 num_gpes vardecl_sysfs.c 0 32294 NULL
+enable_so_IA_TX_BUF_SZ_vardecl_iphase_c_32295 IA_TX_BUF_SZ vardecl_iphase.c 0 32295 NULL nohasharray
+enable_so_dma_size_sst_pdata_32295 dma_size sst_pdata 0 32295 &enable_so_IA_TX_BUF_SZ_vardecl_iphase_c_32295
-+enable_so_il_dbgfs_clear_ucode_stats_write_fndecl_32299 il_dbgfs_clear_ucode_stats_write fndecl 3 32299 NULL
+enable_so_rept_size_usbtouch_device_info_32306 rept_size usbtouch_device_info 0 32306 NULL
-+enable_so_int_clock_max_aptina_pll_limits_32312 int_clock_max aptina_pll_limits 0 32312 NULL nohasharray
-+enable_so_sizeof_namespace_index_fndecl_32312 sizeof_namespace_index fndecl 0 32312 &enable_so_int_clock_max_aptina_pll_limits_32312
++enable_so_sizeof_namespace_index_fndecl_32312 sizeof_namespace_index fndecl 0 32312 NULL
+enable_so_snd_info_text_entry_write_fndecl_32315 snd_info_text_entry_write fndecl 3 32315 NULL
+enable_so_nla_put_fndecl_32321 nla_put fndecl 3 32321 NULL
+enable_so_khugepaged_scan_pmd_fndecl_32330 khugepaged_scan_pmd fndecl 3 32330 NULL
@@ -165120,7 +164444,8 @@ index 0000000..9da833a
+enable_so_mem_start_net_device_32337 mem_start net_device 0 32337 NULL
+enable_so_fd_ioctl_fndecl_32343 fd_ioctl fndecl 3 32343 NULL
+enable_so_fib_info_hash_alloc_fndecl_32352 fib_info_hash_alloc fndecl 1 32352 NULL
-+enable_so_scrub_raid56_parity_fndecl_32354 scrub_raid56_parity fndecl 5 32354 NULL
++enable_so_scrub_raid56_parity_fndecl_32354 scrub_raid56_parity fndecl 5 32354 NULL nohasharray
++enable_so_brcmf_fws_hdrpull_fndecl_32354 brcmf_fws_hdrpull fndecl 2 32354 &enable_so_scrub_raid56_parity_fndecl_32354
+enable_so_max_q_vectors_ixgbe_adapter_32359 max_q_vectors ixgbe_adapter 0 32359 NULL
+enable_so_end_crash_mem_range_32361 end crash_mem_range 0 32361 NULL
+enable_so_netlbl_catmap_setlong_fndecl_32363 netlbl_catmap_setlong fndecl 2 32363 NULL nohasharray
@@ -165142,14 +164467,13 @@ index 0000000..9da833a
+enable_so_cont_add_fndecl_32409 cont_add fndecl 4 32409 NULL
+enable_so_agbno_xfs_alloc_arg_32410 agbno xfs_alloc_arg 0 32410 NULL
+enable_so_ext4_list_backups_fndecl_32417 ext4_list_backups fndecl 0 32417 NULL
-+enable_so_nxt200x_readreg_multibyte_fndecl_32418 nxt200x_readreg_multibyte fndecl 4 32418 NULL nohasharray
-+enable_so_pt_buffer_setup_aux_fndecl_32418 pt_buffer_setup_aux fndecl 3 32418 &enable_so_nxt200x_readreg_multibyte_fndecl_32418
++enable_so_nxt200x_readreg_multibyte_fndecl_32418 nxt200x_readreg_multibyte fndecl 4 32418 NULL
+enable_so_ci_rsbtbl_size_dlm_config_info_32423 ci_rsbtbl_size dlm_config_info 0 32423 NULL
+enable_so_srpt_build_tskmgmt_rsp_fndecl_32427 srpt_build_tskmgmt_rsp fndecl 0 32427 NULL
+enable_so_qib_skip_sge_fndecl_32432 qib_skip_sge fndecl 2 32432 NULL
+enable_so_di_next_index_dinode_32437 di_next_index dinode 0 32437 NULL nohasharray
-+enable_so_gso_size_xenvif_rx_meta_32437 gso_size xenvif_rx_meta 0 32437 &enable_so_di_next_index_dinode_32437 nohasharray
-+enable_so_xs_udp_set_buffer_size_fndecl_32437 xs_udp_set_buffer_size fndecl 2 32437 &enable_so_gso_size_xenvif_rx_meta_32437
++enable_so_xs_udp_set_buffer_size_fndecl_32437 xs_udp_set_buffer_size fndecl 2 32437 &enable_so_di_next_index_dinode_32437 nohasharray
++enable_so_gso_size_xenvif_rx_meta_32437 gso_size xenvif_rx_meta 0 32437 &enable_so_xs_udp_set_buffer_size_fndecl_32437
+enable_so_btrfs_get_extent_fndecl_32440 btrfs_get_extent fndecl 4-3-5 32440 NULL nohasharray
+enable_so_truncated_len_btrfs_ordered_extent_32440 truncated_len btrfs_ordered_extent 0 32440 &enable_so_btrfs_get_extent_fndecl_32440
+enable_so_t_blk_res_used_xfs_trans_32443 t_blk_res_used xfs_trans 0 32443 NULL
@@ -165167,9 +164491,8 @@ index 0000000..9da833a
+enable_so_flctl_dma_fifo0_transfer_fndecl_32481 flctl_dma_fifo0_transfer fndecl 3 32481 NULL nohasharray
+enable_so_j_len_reiserfs_journal_desc_32481 j_len reiserfs_journal_desc 0 32481 &enable_so_flctl_dma_fifo0_transfer_fndecl_32481
+enable_so_sigmadsp_write_i2c_fndecl_32482 sigmadsp_write_i2c fndecl 4 32482 NULL
-+enable_so_iwl_dbgfs_frame_stats_read_fndecl_32488 iwl_dbgfs_frame_stats_read fndecl 3 32488 NULL
+enable_so_s_fshift_ufs_sb_private_info_32491 s_fshift ufs_sb_private_info 0 32491 NULL
-+enable_so_card_send_command_fndecl_32492 card_send_command fndecl 3 32492 NULL
++enable_so_posix_acl_xattr_set_fndecl_32497 posix_acl_xattr_set fndecl 5 32497 NULL
+enable_so_read_pci_config_16_fndecl_32499 read_pci_config_16 fndecl 0 32499 NULL
+enable_so_reply_nvif_notify_req_v0_32501 reply nvif_notify_req_v0 0 32501 NULL
+enable_so_altera_swap_ir_fndecl_32505 altera_swap_ir fndecl 2 32505 NULL nohasharray
@@ -165184,7 +164507,6 @@ index 0000000..9da833a
+enable_so_fc_flogi_acc_build_fndecl_32521 fc_flogi_acc_build fndecl 7-9 32521 NULL nohasharray
+enable_so_f_dupfd_fndecl_32521 f_dupfd fndecl 1 32521 &enable_so_fc_flogi_acc_build_fndecl_32521
+enable_so_jffs2_acl_count_fndecl_32522 jffs2_acl_count fndecl 0-1 32522 NULL
-+enable_so_ext4_xattr_user_set_fndecl_32523 ext4_xattr_user_set fndecl 4 32523 NULL
+enable_so_asrc_rate_fsl_asoc_card_priv_32525 asrc_rate fsl_asoc_card_priv 0 32525 NULL nohasharray
+enable_so_frameoffset_b43_dmaring_32525 frameoffset b43_dmaring 0 32525 &enable_so_asrc_rate_fsl_asoc_card_priv_32525
+enable_so_map_iommu_fndecl_32528 map_iommu fndecl 2 32528 NULL
@@ -165195,7 +164517,6 @@ index 0000000..9da833a
+enable_so_ctrl_out_fndecl_32539 ctrl_out fndecl 5-3 32539 NULL
+enable_so_ev_next_dev_data_32542 ev_next dev_data 0 32542 NULL
+enable_so_wm8900_set_dai_pll_fndecl_32543 wm8900_set_dai_pll fndecl 4-5 32543 NULL
-+enable_so_cfg80211_inform_bss_width_fndecl_32545 cfg80211_inform_bss_width fndecl 10 32545 NULL
+enable_so_rq_auth_slack_svc_rqst_32548 rq_auth_slack svc_rqst 0 32548 NULL
+enable_so_TransferCount__MSG_SCSI_IO_REPLY_32554 TransferCount _MSG_SCSI_IO_REPLY 0 32554 NULL nohasharray
+enable_so_yurex_write_fndecl_32554 yurex_write fndecl 3 32554 &enable_so_TransferCount__MSG_SCSI_IO_REPLY_32554
@@ -165206,11 +164527,11 @@ index 0000000..9da833a
+enable_so_bcd2000_midi_handle_input_fndecl_32572 bcd2000_midi_handle_input fndecl 3 32572 NULL
+enable_so_tx_tx_exch_expiry_read_fndecl_32574 tx_tx_exch_expiry_read fndecl 3 32574 NULL nohasharray
+enable_so_syt_interval_amdtp_stream_32574 syt_interval amdtp_stream 0 32574 &enable_so_tx_tx_exch_expiry_read_fndecl_32574
-+enable_so_iov_iter_zero_fndecl_32575 iov_iter_zero fndecl 1 32575 NULL
++enable_so_iov_iter_zero_fndecl_32575 iov_iter_zero fndecl 1-0 32575 NULL
+enable_so_ext4_try_to_write_inline_data_fndecl_32578 ext4_try_to_write_inline_data fndecl 4-3 32578 NULL
+enable_so_msg_print_ext_header_fndecl_32580 msg_print_ext_header fndecl 0 32580 NULL
-+enable_so_fnic_fc_trace_get_data_fndecl_32585 fnic_fc_trace_get_data fndecl 0 32585 NULL nohasharray
-+enable_so_check_right_item_operations_32585 check_right item_operations 0 32585 &enable_so_fnic_fc_trace_get_data_fndecl_32585
++enable_so_check_right_item_operations_32585 check_right item_operations 0 32585 NULL nohasharray
++enable_so_fnic_fc_trace_get_data_fndecl_32585 fnic_fc_trace_get_data fndecl 0 32585 &enable_so_check_right_item_operations_32585
+enable_so_bop_assign_nilfs_bmap_operations_32598 bop_assign nilfs_bmap_operations 0 32598 NULL
+enable_so_paging32_prefetch_gpte_fndecl_32604 paging32_prefetch_gpte fndecl 4 32604 NULL
+enable_so_channel_num_sh_dmae_pdata_32606 channel_num sh_dmae_pdata 0 32606 NULL
@@ -165219,8 +164540,8 @@ index 0000000..9da833a
+enable_so__osd_req_encode_common_fndecl_32608 _osd_req_encode_common fndecl 2 32608 &enable_so_vlan_tag_atl1c_recv_ret_status_32608
+enable_so_maxdevUnits_ore_striping_info_32610 maxdevUnits ore_striping_info 0 32610 NULL
+enable_so_metronomefb_write_fndecl_32612 metronomefb_write fndecl 3 32612 NULL
++enable_so_xennet_make_one_txreq_fndecl_32614 xennet_make_one_txreq fndecl 3-2 32614 NULL
+enable_so_ceph_osd_data_length_fndecl_32615 ceph_osd_data_length fndecl 0 32615 NULL
-+enable_so_usb_alloc_streams_fndecl_32617 usb_alloc_streams fndecl 0 32617 NULL
+enable_so_hfsplus_direct_IO_fndecl_32619 hfsplus_direct_IO fndecl 3 32619 NULL nohasharray
+enable_so_SyS_llistxattr_fndecl_32619 SyS_llistxattr fndecl 3 32619 &enable_so_hfsplus_direct_IO_fndecl_32619
+enable_so_ntfs_commit_pages_after_write_fndecl_32634 ntfs_commit_pages_after_write fndecl 0-4-3 32634 NULL
@@ -165231,14 +164552,12 @@ index 0000000..9da833a
+enable_so_phys_sca_base__synclinkmp_info_32654 phys_sca_base _synclinkmp_info 0 32654 NULL
+enable_so_mgmt_generic_event_fndecl_32657 mgmt_generic_event fndecl 4 32657 NULL nohasharray
+enable_so_dvb_ringbuffer_pkt_next_fndecl_32657 dvb_ringbuffer_pkt_next fndecl 0-2 32657 &enable_so_mgmt_generic_event_fndecl_32657
-+enable_so_icmpv6_manip_pkt_fndecl_32658 icmpv6_manip_pkt fndecl 4 32658 NULL nohasharray
-+enable_so_get_queue_depth_fndecl_32658 get_queue_depth fndecl 0 32658 &enable_so_icmpv6_manip_pkt_fndecl_32658
++enable_so_icmpv6_manip_pkt_fndecl_32658 icmpv6_manip_pkt fndecl 4 32658 NULL
+enable_so_mmc_wait_for_cmd_fndecl_32659 mmc_wait_for_cmd fndecl 0 32659 NULL
+enable_so_nrof_flowrings_brcmf_msgbuf_32666 nrof_flowrings brcmf_msgbuf 0 32666 NULL
+enable_so_rtsx_usb_transfer_data_fndecl_32669 rtsx_usb_transfer_data fndecl 4-2-0-5 32669 NULL
+enable_so_compressed_bio_size_fndecl_32676 compressed_bio_size fndecl 0-2 32676 NULL
-+enable_so_engine_start_viafb_dev_32681 engine_start viafb_dev 0 32681 NULL nohasharray
-+enable_so_ab3100_get_set_reg_fndecl_32681 ab3100_get_set_reg fndecl 3 32681 &enable_so_engine_start_viafb_dev_32681
++enable_so_engine_start_viafb_dev_32681 engine_start viafb_dev 0 32681 NULL
+enable_so_length_ib_umem_32690 length ib_umem 0 32690 NULL
+enable_so_radeon_drm_ioctl_fndecl_32696 radeon_drm_ioctl fndecl 2 32696 NULL
+enable_so_ubifs_prepare_node_fndecl_32700 ubifs_prepare_node fndecl 3 32700 NULL
@@ -165261,7 +164580,6 @@ index 0000000..9da833a
+enable_so_cp2112_hid_get_fndecl_32758 cp2112_hid_get fndecl 4 32758 NULL
+enable_so_fuse_file_ioctl_fndecl_32760 fuse_file_ioctl fndecl 2 32760 NULL
+enable_so_i2400m_rx_edata_fndecl_32764 i2400m_rx_edata fndecl 5 32764 NULL
-+enable_so_rc_via_alen_mpls_route_config_32766 rc_via_alen mpls_route_config 0 32766 NULL
+enable_so_gro_pull_from_frag0_fndecl_32770 gro_pull_from_frag0 fndecl 2 32770 NULL
+enable_so_sm501_create_mem_fndecl_32778 sm501_create_mem fndecl 4 32778 NULL
+enable_so_test_ofsl_cyttsp4_sysinfo_data_32781 test_ofsl cyttsp4_sysinfo_data 0 32781 NULL
@@ -165277,7 +164595,6 @@ index 0000000..9da833a
+enable_so_m_len_f2fs_map_blocks_32808 m_len f2fs_map_blocks 0 32808 NULL
+enable_so_l_start_xfs_flock64_32809 l_start xfs_flock64 0 32809 NULL
+enable_so_length_ppp_option_data_32814 length ppp_option_data 0 32814 NULL
-+enable_so_event_filter_write_fndecl_32818 event_filter_write fndecl 3 32818 NULL
+enable_so_namelen_jfs_ea_32820 namelen jfs_ea 0 32820 NULL
+enable_so_nvme_trans_log_temperature_fndecl_32822 nvme_trans_log_temperature fndecl 3 32822 NULL
+enable_so_scrub_fixup_readpage_fndecl_32830 scrub_fixup_readpage fndecl 2 32830 NULL nohasharray
@@ -165307,14 +164624,12 @@ index 0000000..9da833a
+enable_so_min_dump_alloc_netlink_callback_32897 min_dump_alloc netlink_callback 0 32897 NULL
+enable_so___wa_xfer_setup_segs_fndecl_32902 __wa_xfer_setup_segs fndecl 2 32902 NULL
+enable_so_wm831x_num_wm831x_pdata_32904 wm831x_num wm831x_pdata 0 32904 NULL
-+enable_so_copy_off_netrx_pending_operations_32906 copy_off netrx_pending_operations 0 32906 NULL
+enable_so_adnp_gpio_setup_fndecl_32910 adnp_gpio_setup fndecl 2 32910 NULL
+enable_so_space_init_fndecl_32911 space_init fndecl 2 32911 NULL
+enable_so_max_r2t_iscsi_bus_flash_session_32912 max_r2t iscsi_bus_flash_session 0 32912 NULL
+enable_so_num_vfs_qlcnic_sriov_32913 num_vfs qlcnic_sriov 0 32913 NULL
+enable_so_ipv6_getsockopt_sticky_fndecl_32916 ipv6_getsockopt_sticky fndecl 5-0 32916 NULL
-+enable_so_proto_ipoib_header_32917 proto ipoib_header 0 32917 NULL nohasharray
-+enable_so_sta_flags_read_fndecl_32917 sta_flags_read fndecl 3 32917 &enable_so_proto_ipoib_header_32917
++enable_so_proto_ipoib_header_32917 proto ipoib_header 0 32917 NULL
+enable_so_conn_send_command_fndecl_32918 conn_send_command fndecl 6-4 32918 NULL
+enable_so_pci_get_related_function_fndecl_32920 pci_get_related_function fndecl 2 32920 NULL
+enable_so_nr_events_kioctx_32925 nr_events kioctx 0 32925 NULL
@@ -165332,7 +164647,7 @@ index 0000000..9da833a
+enable_so_s_max_slots_ocfs2_super_block_32972 s_max_slots ocfs2_super_block 0 32972 NULL
+enable_so_proc_bus_pci_lseek_fndecl_32974 proc_bus_pci_lseek fndecl 2 32974 NULL
+enable_so_p_replen_rpc_procinfo_32991 p_replen rpc_procinfo 0 32991 NULL nohasharray
-+enable_so_bn_read_lock_fndecl_32991 bn_read_lock fndecl 2 32991 &enable_so_p_replen_rpc_procinfo_32991
++enable_so_bn_read_lock_fndecl_32991 bn_read_lock fndecl 2-0 32991 &enable_so_p_replen_rpc_procinfo_32991
+enable_so_resid_len_request_32994 resid_len request 0 32994 NULL
+enable_so_wtpref_nfs_fsinfo_33003 wtpref nfs_fsinfo 0 33003 NULL
+enable_so_mtdchar_write_fndecl_33004 mtdchar_write fndecl 3 33004 NULL
@@ -165351,9 +164666,7 @@ index 0000000..9da833a
+enable_so_sacked_out_tcp_sock_33038 sacked_out tcp_sock 0 33038 NULL
+enable_so_pipeline_pre_to_defrag_swi_read_fndecl_33042 pipeline_pre_to_defrag_swi_read fndecl 3 33042 NULL
+enable_so_files_ceph_mds_reply_inode_33047 files ceph_mds_reply_inode 0 33047 NULL
-+enable_so_HighPriorityCredit_mpt2sas_facts_33050 HighPriorityCredit mpt2sas_facts 0 33050 NULL
-+enable_so_svc_rdma_xdr_get_reply_hdr_len_fndecl_33056 svc_rdma_xdr_get_reply_hdr_len fndecl 0 33056 NULL nohasharray
-+enable_so_ath10k_read_simulate_fw_crash_fndecl_33056 ath10k_read_simulate_fw_crash fndecl 3 33056 &enable_so_svc_rdma_xdr_get_reply_hdr_len_fndecl_33056
++enable_so_svc_rdma_xdr_get_reply_hdr_len_fndecl_33056 svc_rdma_xdr_get_reply_hdr_len fndecl 0 33056 NULL
+enable_so_dev_read_fndecl_33058 dev_read fndecl 3 33058 NULL
+enable_so_iov_iter_copy_from_user_atomic_fndecl_33059 iov_iter_copy_from_user_atomic fndecl 4-0 33059 NULL nohasharray
+enable_so_gfs2_qstr2dirent_fndecl_33059 gfs2_qstr2dirent fndecl 2 33059 &enable_so_iov_iter_copy_from_user_atomic_fndecl_33059
@@ -165415,8 +164728,8 @@ index 0000000..9da833a
+enable_so_ath6kl_wmi_set_ip_cmd_fndecl_33191 ath6kl_wmi_set_ip_cmd fndecl 2 33191 NULL
+enable_so_Memhscx_empty_fifo_fndecl_33197 Memhscx_empty_fifo fndecl 2 33197 NULL
+enable_so_data_avail_vardecl_core_c_33198 data_avail vardecl_core.c 0 33198 NULL
-+enable_so_init_map_ip_fndecl_33199 init_map_ip fndecl 5 33199 NULL
+enable_so_ieee80211_rx_mgmt_probe_beacon_fndecl_33208 ieee80211_rx_mgmt_probe_beacon fndecl 3 33208 NULL
++enable_so_mmc_blk_ioctl_multi_cmd_fndecl_33215 mmc_blk_ioctl_multi_cmd fndecl 0 33215 NULL
+enable_so_block_size_dm_bufio_client_33221 block_size dm_bufio_client 0 33221 NULL
+enable_so_num_lan_msix_i40e_pf_33223 num_lan_msix i40e_pf 0 33223 NULL
+enable_so_ip_options_get_fndecl_33225 ip_options_get fndecl 4 33225 NULL
@@ -165433,7 +164746,6 @@ index 0000000..9da833a
+enable_so_metadata_size_ecryptfs_crypt_stat_33252 metadata_size ecryptfs_crypt_stat 0 33252 NULL
+enable_so_wb_offset_nfs_page_33255 wb_offset nfs_page 0 33255 NULL
+enable_so_handle_bytes_file_handle_33261 handle_bytes file_handle 0 33261 NULL
-+enable_so_rs_sta_dbgfs_stats_table_read_fndecl_33262 rs_sta_dbgfs_stats_table_read fndecl 3 33262 NULL
+enable_so_mem_size_ramoops_platform_data_33263 mem_size ramoops_platform_data 0 33263 NULL
+enable_so_ip_vs_prepare_tunneled_skb_fndecl_33269 ip_vs_prepare_tunneled_skb fndecl 3 33269 NULL
+enable_so_ocfs2_change_extent_flag_fndecl_33270 ocfs2_change_extent_flag fndecl 5-3 33270 NULL nohasharray
@@ -165450,12 +164762,10 @@ index 0000000..9da833a
+enable_so_num_vls_vardecl_33298 num_vls vardecl 0 33298 NULL
+enable_so_vlen_nfsd_readargs_33302 vlen nfsd_readargs 0 33302 NULL
+enable_so_e_phnum_elf64_hdr_33305 e_phnum elf64_hdr 0 33305 NULL
-+enable_so_tracing_set_trace_write_fndecl_33307 tracing_set_trace_write fndecl 3 33307 NULL
+enable_so_max_width_vsp1_rwpf_33314 max_width vsp1_rwpf 0 33314 NULL
+enable_so_nl80211_send_deauth_fndecl_33315 nl80211_send_deauth fndecl 4 33315 NULL nohasharray
+enable_so_ima_show_htable_value_fndecl_33315 ima_show_htable_value fndecl 2 33315 &enable_so_nl80211_send_deauth_fndecl_33315
+enable_so_static_rate_ib_ah_attr_33316 static_rate ib_ah_attr 0 33316 NULL
-+enable_so__iwl_dbgfs_bf_params_write_fndecl_33318 _iwl_dbgfs_bf_params_write fndecl 3 33318 NULL
+enable_so_index_vardecl_via82xx_modem_c_33320 index vardecl_via82xx_modem.c 0 33320 NULL
+enable_so_acpi_gsb_i2c_read_bytes_fndecl_33322 acpi_gsb_i2c_read_bytes fndecl 4 33322 NULL
+enable_so_hlen_h4_recv_pkt_33324 hlen h4_recv_pkt 0 33324 NULL
@@ -165463,17 +164773,17 @@ index 0000000..9da833a
+enable_so_dump_packet_fndecl_33346 dump_packet fndecl 2 33346 NULL
+enable_so_stk_prepare_sio_buffers_fndecl_33347 stk_prepare_sio_buffers fndecl 2 33347 NULL
+enable_so_max_vpi_lpfc_max_cfg_param_33350 max_vpi lpfc_max_cfg_param 0 33350 NULL
-+enable_so_setup_mcfg_map_fndecl_33351 setup_mcfg_map fndecl 3-4-5 33351 NULL
+enable_so_rx_hw_stuck_read_fndecl_33352 rx_hw_stuck_read fndecl 3 33352 NULL
+enable_so_netlink_create_fndecl_33353 netlink_create fndecl 3 33353 NULL
+enable_so_dvb_register_device_fndecl_33363 dvb_register_device fndecl 0 33363 NULL
+enable_so_udl_prime_create_fndecl_33364 udl_prime_create fndecl 2 33364 NULL nohasharray
-+enable_so_scanlength_usbvision_frame_33364 scanlength usbvision_frame 0 33364 &enable_so_udl_prime_create_fndecl_33364 nohasharray
-+enable_so_bpa10x_recv_fndecl_33364 bpa10x_recv fndecl 4 33364 &enable_so_scanlength_usbvision_frame_33364
++enable_so_scanlength_usbvision_frame_33364 scanlength usbvision_frame 0 33364 &enable_so_udl_prime_create_fndecl_33364
+enable_so_ihandlen_xfs_fsop_handlereq_33370 ihandlen xfs_fsop_handlereq 0 33370 NULL
+enable_so_lpfc_sg_seg_cnt_init_fndecl_33371 lpfc_sg_seg_cnt_init fndecl 2 33371 NULL
+enable_so_ib_qib_max_srq_wrs_vardecl_33376 ib_qib_max_srq_wrs vardecl 0 33376 NULL
+enable_so_sys_io_getevents_fndecl_33381 sys_io_getevents fndecl 3 33381 NULL
++enable_so_join_req_size_vardecl_33387 join_req_size vardecl 0 33387 NULL nohasharray
++enable_so_xfs_map_direct_fndecl_33387 xfs_map_direct fndecl 4 33387 &enable_so_join_req_size_vardecl_33387
+enable_so_length_mac_configuration_hdr_33392 length mac_configuration_hdr 0 33392 NULL
+enable_so_sys_poll_fndecl_33397 sys_poll fndecl 2 33397 NULL
+enable_so_data_offset_rndis_packet_33403 data_offset rndis_packet 0 33403 NULL
@@ -165494,6 +164804,7 @@ index 0000000..9da833a
+enable_so_nilfs_set_nsegments_fndecl_33438 nilfs_set_nsegments fndecl 2 33438 NULL
+enable_so_mmc_test_area_io_seq_fndecl_33440 mmc_test_area_io_seq fndecl 2-9 33440 NULL
+enable_so_w_dloarea_33444 w dloarea 0 33444 NULL
++enable_so_sys_mlock2_fndecl_33449 sys_mlock2 fndecl 1-2 33449 NULL
+enable_so_mt7601u_mcu_msg_alloc_fndecl_33453 mt7601u_mcu_msg_alloc fndecl 3 33453 NULL
+enable_so_ocfs2_divide_xattr_bucket_fndecl_33455 ocfs2_divide_xattr_bucket fndecl 3-4 33455 NULL
+enable_so_oprofilefs_ulong_from_user_fndecl_33456 oprofilefs_ulong_from_user fndecl 3 33456 NULL
@@ -165516,9 +164827,8 @@ index 0000000..9da833a
+enable_so___asymmetric_key_hex_to_key_id_fndecl_33513 __asymmetric_key_hex_to_key_id fndecl 3 33513 &enable_so_error_rx_excessive_frame_len_read_fndecl_33513
+enable_so_check_mirror_fndecl_33517 check_mirror fndecl 2-1 33517 NULL nohasharray
+enable_so_usblp_read_fndecl_33517 usblp_read fndecl 3 33517 &enable_so_check_mirror_fndecl_33517
-+enable_so_len_writequeue_entry_33522 len writequeue_entry 0 33522 NULL nohasharray
-+enable_so_write_file_regval_fndecl_33522 write_file_regval fndecl 3 33522 &enable_so_len_writequeue_entry_33522
-+enable_so_iwl_dbgfs_tx_pwr_lmt_read_fndecl_33527 iwl_dbgfs_tx_pwr_lmt_read fndecl 3 33527 NULL
++enable_so_len_writequeue_entry_33522 len writequeue_entry 0 33522 NULL
++enable_so_evdev_set_mask_fndecl_33528 evdev_set_mask fndecl 4-0 33528 NULL
+enable_so_offset_port_buffer_33530 offset port_buffer 0 33530 NULL
+enable_so___mxt_write_reg_fndecl_33533 __mxt_write_reg fndecl 3 33533 NULL
+enable_so_ieee802154_hdr_addr_len_fndecl_33535 ieee802154_hdr_addr_len fndecl 0 33535 NULL
@@ -165528,7 +164838,8 @@ index 0000000..9da833a
+enable_so_tx_queues_nicvf_33546 tx_queues nicvf 0 33546 NULL
+enable_so_dlfb_setup_modes_fndecl_33548 dlfb_setup_modes fndecl 4 33548 NULL
+enable_so_kvm_vcpu_read_guest_fndecl_33552 kvm_vcpu_read_guest fndecl 2-4 33552 NULL
-+enable_so_tcf_hash_create_fndecl_33553 tcf_hash_create fndecl 4 33553 NULL
++enable_so_hns_nic_change_mtu_fndecl_33553 hns_nic_change_mtu fndecl 2 33553 NULL nohasharray
++enable_so_tcf_hash_create_fndecl_33553 tcf_hash_create fndecl 4 33553 &enable_so_hns_nic_change_mtu_fndecl_33553
+enable_so_mwifiex_create_ba_tbl_fndecl_33555 mwifiex_create_ba_tbl fndecl 3 33555 NULL
+enable_so_cpb_s5p_mfc_buf_size_33560 cpb s5p_mfc_buf_size 0 33560 NULL
+enable_so_nfc_llcp_build_sdreq_tlv_fndecl_33563 nfc_llcp_build_sdreq_tlv fndecl 3 33563 NULL
@@ -165550,6 +164861,7 @@ index 0000000..9da833a
+enable_so_copy_range_nfulnl_msg_config_mode_33596 copy_range nfulnl_msg_config_mode 0 33596 NULL
+enable_so_fsl_spi_bufs_fndecl_33599 fsl_spi_bufs fndecl 0 33599 NULL
+enable_so_max_header_size_iriap_cb_33603 max_header_size iriap_cb 0 33603 NULL
++enable_so_ext2_xattr_security_set_fndecl_33606 ext2_xattr_security_set fndecl 5 33606 NULL
+enable_so___kfifo_out_fndecl_33612 __kfifo_out fndecl 0-3 33612 NULL nohasharray
+enable_so_drm_prime_pages_to_sg_fndecl_33612 drm_prime_pages_to_sg fndecl 2 33612 &enable_so___kfifo_out_fndecl_33612
+enable_so_hfsplus_find_cat_fndecl_33616 hfsplus_find_cat fndecl 0 33616 NULL nohasharray
@@ -165565,11 +164877,13 @@ index 0000000..9da833a
+enable_so_size_dma_buf_33648 size dma_buf 0 33648 NULL nohasharray
+enable_so_s_want_extra_isize_ext4_sb_info_33648 s_want_extra_isize ext4_sb_info 0 33648 &enable_so_size_dma_buf_33648
+enable_so_check_header_fndecl_33649 check_header fndecl 2 33649 NULL
++enable_so_intel_engine_create_ringbuffer_fndecl_33650 intel_engine_create_ringbuffer fndecl 2 33650 NULL
+enable_so_tool_peer_spad_write_fndecl_33652 tool_peer_spad_write fndecl 3 33652 NULL
+enable_so_hfs_inode_read_fork_fndecl_33654 hfs_inode_read_fork fndecl 4-3 33654 NULL
+enable_so_savage_init_hw_fndecl_33678 savage_init_hw fndecl 0 33678 NULL
+enable_so_data_size_vxge_rx_priv_33684 data_size vxge_rx_priv 0 33684 NULL
+enable_so_port_mlx4_net_trans_rule_hw_ctrl_33685 port mlx4_net_trans_rule_hw_ctrl 0 33685 NULL
++enable_so_len_scif_copy_work_33687 len scif_copy_work 0 33687 NULL
+enable_so_mb_find_order_for_block_fndecl_33691 mb_find_order_for_block fndecl 0 33691 NULL
+enable_so_ide_cdrom_probe_capabilities_fndecl_33699 ide_cdrom_probe_capabilities fndecl 0 33699 NULL
+enable_so_alignment_offset_queue_limits_33701 alignment_offset queue_limits 0 33701 NULL
@@ -165591,7 +164905,6 @@ index 0000000..9da833a
+enable_so_aircable_process_packet_fndecl_33744 aircable_process_packet fndecl 4 33744 NULL
+enable_so_lengthComponentIdent_pathComponent_33758 lengthComponentIdent pathComponent 0 33758 NULL
+enable_so_avr_ack_ptr_dccp_ackvec_record_33759 avr_ack_ptr dccp_ackvec_record 0 33759 NULL
-+enable_so_cim_la_size_adapter_params_33761 cim_la_size adapter_params 0 33761 NULL
+enable_so_efx_farch_dimension_resources_fndecl_33764 efx_farch_dimension_resources fndecl 2 33764 NULL
+enable_so_default_bpp_vardecl_sm501fb_c_33765 default_bpp vardecl_sm501fb.c 0 33765 NULL
+enable_so_wmi_send_fndecl_33768 wmi_send fndecl 4 33768 NULL
@@ -165605,7 +164918,7 @@ index 0000000..9da833a
+enable_so_sis190_try_rx_copy_fndecl_33790 sis190_try_rx_copy fndecl 3 33790 NULL
+enable_so_sd_write_data_fndecl_33792 sd_write_data fndecl 5-0 33792 NULL
+enable_so_icv_truncbits_xfrm_algo_auth_info_33798 icv_truncbits xfrm_algo_auth_info 0 33798 NULL
-+enable_so_edt_ft5x06_register_read_fndecl_33803 edt_ft5x06_register_read fndecl 0 33803 NULL
++enable_so___ip_tun_to_nlattr_fndecl_33801 __ip_tun_to_nlattr fndecl 4 33801 NULL
+enable_so_page_size_vmw_cmdbuf_alloc_info_33815 page_size vmw_cmdbuf_alloc_info 0 33815 NULL nohasharray
+enable_so_next_send_psn_mthca_qp_context_33815 next_send_psn mthca_qp_context 0 33815 &enable_so_page_size_vmw_cmdbuf_alloc_info_33815
+enable_so_custom_length_iscsi_stats_33819 custom_length iscsi_stats 0 33819 NULL
@@ -165632,7 +164945,6 @@ index 0000000..9da833a
+enable_so_len_gsm_control_33882 len gsm_control 0 33882 NULL
+enable_so_reiserfs_xattr_get_fndecl_33887 reiserfs_xattr_get fndecl 0 33887 NULL nohasharray
+enable_so_pktgen_if_write_fndecl_33887 pktgen_if_write fndecl 3 33887 &enable_so_reiserfs_xattr_get_fndecl_33887
-+enable_so_il_dbgfs_tx_queue_read_fndecl_33895 il_dbgfs_tx_queue_read fndecl 3 33895 NULL
+enable_so_src_len_ccp_xts_aes_engine_33899 src_len ccp_xts_aes_engine 0 33899 NULL
+enable_so_init_stripe_fndecl_33902 init_stripe fndecl 2 33902 NULL nohasharray
+enable_so_direct2indirect_fndecl_33902 direct2indirect fndecl 5 33902 &enable_so_init_stripe_fndecl_33902
@@ -165640,7 +164952,6 @@ index 0000000..9da833a
+enable_so__install_special_mapping_fndecl_33907 _install_special_mapping fndecl 3-2 33907 NULL
+enable_so_vxlan_fdb_append_fndecl_33909 vxlan_fdb_append fndecl 4 33909 NULL
+enable_so_rx_desc_count_xgbe_prv_data_33915 rx_desc_count xgbe_prv_data 0 33915 NULL
-+enable_so_lpfc_idiag_queinfo_read_fndecl_33917 lpfc_idiag_queinfo_read fndecl 3 33917 NULL
+enable_so_w83627hf_device_add_fndecl_33919 w83627hf_device_add fndecl 1 33919 NULL
+enable_so_wil_vring_alloc_skb_fndecl_33924 wil_vring_alloc_skb fndecl 4 33924 NULL
+enable_so_size_cmdline_vardecl_dma_contiguous_c_33925 size_cmdline vardecl_dma-contiguous.c 0 33925 NULL
@@ -165664,6 +164975,7 @@ index 0000000..9da833a
+enable_so_nfc_hci_send_cmd_fndecl_33969 nfc_hci_send_cmd fndecl 5 33969 NULL
+enable_so_ocfs2_lock_refcount_tree_fndecl_33972 ocfs2_lock_refcount_tree fndecl 2 33972 NULL nohasharray
+enable_so_mtdswap_init_fndecl_33972 mtdswap_init fndecl 2 33972 &enable_so_ocfs2_lock_refcount_tree_fndecl_33972
++enable_so_st_nci_hci_dm_get_info_fndecl_33973 st_nci_hci_dm_get_info fndecl 3 33973 NULL
+enable_so_pm8001_store_update_fw_fndecl_33975 pm8001_store_update_fw fndecl 4 33975 NULL
+enable_so_max_indirect_segments_blkfront_info_33976 max_indirect_segments blkfront_info 0 33976 NULL
+enable_so_cwarn_cm4000_dev_33978 cwarn cm4000_dev 0 33978 NULL
@@ -165700,6 +165012,7 @@ index 0000000..9da833a
+enable_so_dma_size_nx_host_rds_ring_34047 dma_size nx_host_rds_ring 0 34047 NULL
+enable_so_ide_do_setfeature_fndecl_34050 ide_do_setfeature fndecl 3 34050 NULL
+enable_so_sys_mmap_pgoff_fndecl_34056 sys_mmap_pgoff fndecl 2 34056 NULL
++enable_so_cdc_ncm_change_mtu_fndecl_34062 cdc_ncm_change_mtu fndecl 2 34062 NULL
+enable_so_lov_get_stripecnt_fndecl_34066 lov_get_stripecnt fndecl 0-3 34066 NULL
+enable_so_gsm_control_modem_fndecl_34068 gsm_control_modem fndecl 3 34068 NULL
+enable_so_memmap_exclude_ranges_fndecl_34071 memmap_exclude_ranges fndecl 3-4 34071 NULL nohasharray
@@ -165731,6 +165044,7 @@ index 0000000..9da833a
+enable_so_cw1200_sdio_align_size_fndecl_34124 cw1200_sdio_align_size fndecl 2 34124 NULL nohasharray
+enable_so_size_qlcnic_fw_dump_34124 size qlcnic_fw_dump 0 34124 &enable_so_cw1200_sdio_align_size_fndecl_34124
+enable_so_nfs_vmtruncate_fndecl_34126 nfs_vmtruncate fndecl 2 34126 NULL
++enable_so_ovs_fragment_fndecl_34127 ovs_fragment fndecl 4 34127 NULL
+enable_so_do_command_fndecl_34128 do_command fndecl 0 34128 NULL
+enable_so_digestsize_hash_tfm_34135 digestsize hash_tfm 0 34135 NULL
+enable_so_dst_width_snd_pcm_plugin_34144 dst_width snd_pcm_plugin 0 34144 NULL
@@ -165744,8 +165058,7 @@ index 0000000..9da833a
+enable_so_max_requests_rpcrdma_create_data_internal_34158 max_requests rpcrdma_create_data_internal 0 34158 &enable_so_usb_pipe_ua101_stream_34158
+enable_so_krb5_decrypt_fndecl_34166 krb5_decrypt fndecl 5 34166 NULL
+enable_so_save_mr_fndecl_34167 save_mr fndecl 4 34167 NULL
-+enable_so_blockmask_sddr55_card_info_34172 blockmask sddr55_card_info 0 34172 NULL nohasharray
-+enable_so_iwl_dbgfs_plcp_delta_read_fndecl_34172 iwl_dbgfs_plcp_delta_read fndecl 3 34172 &enable_so_blockmask_sddr55_card_info_34172
++enable_so_blockmask_sddr55_card_info_34172 blockmask sddr55_card_info 0 34172 NULL
+enable_so_osst_seek_sector_fndecl_34173 osst_seek_sector fndecl 3 34173 NULL
+enable_so_bfad_iocmd_phy_update_fndecl_34178 bfad_iocmd_phy_update fndecl 0 34178 NULL
+enable_so_buffers_pipe_inode_info_34187 buffers pipe_inode_info 0 34187 NULL
@@ -165772,17 +165085,20 @@ index 0000000..9da833a
+enable_so_cfpkt_pad_trail_fndecl_34244 cfpkt_pad_trail fndecl 2 34244 NULL nohasharray
+enable_so_tx_tx_done_int_template_read_fndecl_34244 tx_tx_done_int_template_read fndecl 3 34244 &enable_so_cfpkt_pad_trail_fndecl_34244
+enable_so_agno_xfs_extent_busy_34245 agno xfs_extent_busy 0 34245 NULL
-+enable_so_rss_cpus_vardecl_efx_c_34253 rss_cpus vardecl_efx.c 0 34253 NULL nohasharray
-+enable_so_pktgen_finalize_skb_fndecl_34253 pktgen_finalize_skb fndecl 3 34253 &enable_so_rss_cpus_vardecl_efx_c_34253
-+enable_so___reserve_region_with_split_fndecl_34259 __reserve_region_with_split fndecl 3-2 34259 NULL
++enable_so_pktgen_finalize_skb_fndecl_34253 pktgen_finalize_skb fndecl 3 34253 NULL nohasharray
++enable_so_rss_cpus_vardecl_efx_c_34253 rss_cpus vardecl_efx.c 0 34253 &enable_so_pktgen_finalize_skb_fndecl_34253
++enable_so___reserve_region_with_split_fndecl_34259 __reserve_region_with_split fndecl 3-2 34259 NULL nohasharray
++enable_so_regmap_encx24j600_spi_read_fndecl_34259 regmap_encx24j600_spi_read fndecl 4 34259 &enable_so___reserve_region_with_split_fndecl_34259
+enable_so_status_tulip_rx_desc_34260 status tulip_rx_desc 0 34260 NULL
+enable_so_MaxTransactSize_smb2_negotiate_rsp_34261 MaxTransactSize smb2_negotiate_rsp 0 34261 NULL
+enable_so_count_igbvf_ring_34264 count igbvf_ring 0 34264 NULL
+enable_so_smiapp_read_8only_fndecl_34265 smiapp_read_8only fndecl 2 34265 NULL
-+enable_so_reg_read_smsc911x_ops_34274 reg_read smsc911x_ops 0 34274 NULL
++enable_so_reg_read_smsc911x_ops_34274 reg_read smsc911x_ops 0 34274 NULL nohasharray
++enable_so_dst_offset_scif_copy_work_34274 dst_offset scif_copy_work 0 34274 &enable_so_reg_read_smsc911x_ops_34274
+enable_so_port_qib_pportdata_34275 port qib_pportdata 0 34275 NULL
+enable_so_max_segs_mmc_host_34276 max_segs mmc_host 0 34276 NULL nohasharray
+enable_so_tty_port_register_device_fndecl_34276 tty_port_register_device fndecl 3 34276 &enable_so_max_segs_mmc_host_34276
++enable_so_vb2_core_queue_init_fndecl_34278 vb2_core_queue_init fndecl 0 34278 NULL
+enable_so_btt_map_read_fndecl_34281 btt_map_read fndecl 0 34281 NULL
+enable_so_buf_len_wmi_10_4_mgmt_rx_hdr_34285 buf_len wmi_10_4_mgmt_rx_hdr 0 34285 NULL
+enable_so_ea_get_fndecl_34289 ea_get fndecl 3 34289 NULL nohasharray
@@ -165794,13 +165110,11 @@ index 0000000..9da833a
+enable_so_p1_FS_QENTRY_34311 p1 FS_QENTRY 0 34311 NULL
+enable_so_usb6fire_pcm_init_urb_fndecl_34318 usb6fire_pcm_init_urb fndecl 4 34318 NULL
+enable_so_acm_tty_write_fndecl_34323 acm_tty_write fndecl 3 34323 NULL
-+enable_so_quirk_strict_duplicate_filter_read_fndecl_34330 quirk_strict_duplicate_filter_read fndecl 3 34330 NULL
+enable_so_dccpd_ack_seq_dccp_skb_cb_34331 dccpd_ack_seq dccp_skb_cb 0 34331 NULL
+enable_so_usb_alloc_stream_buffers_fndecl_34344 usb_alloc_stream_buffers fndecl 3 34344 NULL
+enable_so_blkdev_minors_vardecl_dev_c_34365 blkdev_minors vardecl_dev.c 0 34365 NULL
+enable_so_write_file_frameerrors_fndecl_34370 write_file_frameerrors fndecl 3 34370 NULL
+enable_so_get_bad_peb_limit_fndecl_34374 get_bad_peb_limit fndecl 0-2 34374 NULL
-+enable_so_bytes_to_read_mpt2_diag_read_buffer_34380 bytes_to_read mpt2_diag_read_buffer 0 34380 NULL
+enable_so_r_minimode_34384 r minimode 0 34384 NULL
+enable_so_pfn_mthca_uar_34385 pfn mthca_uar 0 34385 NULL
+enable_so_vd_blocknr_nilfs_vdesc_34386 vd_blocknr nilfs_vdesc 0 34386 NULL
@@ -165815,15 +165129,13 @@ index 0000000..9da833a
+enable_so_vs_xdrsize_svc_version_34426 vs_xdrsize svc_version 0 34426 NULL
+enable_so_meta_ino_num_f2fs_sb_info_34435 meta_ino_num f2fs_sb_info 0 34435 NULL
+enable_so_ctrl_set_res_ver_fndecl_34447 ctrl_set_res_ver fndecl 3 34447 NULL
-+enable_so_ath9k_dump_legacy_btcoex_fndecl_34449 ath9k_dump_legacy_btcoex fndecl 0 34449 NULL nohasharray
-+enable_so_window_len_regmap_range_node_34449 window_len regmap_range_node 0 34449 &enable_so_ath9k_dump_legacy_btcoex_fndecl_34449
++enable_so_window_len_regmap_range_node_34449 window_len regmap_range_node 0 34449 NULL
+enable_so_copy_size_vmxnet3_tx_ctx_34453 copy_size vmxnet3_tx_ctx 0 34453 NULL
+enable_so_exceptions_per_area_pstore_34460 exceptions_per_area pstore 0 34460 NULL
+enable_so_offsets_size_binder_transaction_data_34461 offsets_size binder_transaction_data 0 34461 NULL nohasharray
+enable_so_len_gsm_msg_34461 len gsm_msg 0 34461 &enable_so_offsets_size_binder_transaction_data_34461
+enable_so_num_regs_regmap_irq_chip_34465 num_regs regmap_irq_chip 0 34465 NULL
+enable_so_fd_copyin_fndecl_34468 fd_copyin fndecl 3 34468 NULL
-+enable_so_MaxMSIxVectors_mpt2sas_facts_34470 MaxMSIxVectors mpt2sas_facts 0 34470 NULL
+enable_so_MaxCommands_DAC960_V1_Enquiry_34475 MaxCommands DAC960_V1_Enquiry 0 34475 NULL
+enable_so_start_btrfs_ordered_extent_34479 start btrfs_ordered_extent 0 34479 NULL
+enable_so_num_rx_queues_net_device_34480 num_rx_queues net_device 0 34480 NULL
@@ -165833,7 +165145,7 @@ index 0000000..9da833a
+enable_so_dma_bd_table_34490 dma bd_table 0 34490 NULL
+enable_so_do_ipt_set_ctl_fndecl_34493 do_ipt_set_ctl fndecl 4 34493 NULL
+enable_so_acpi_ex_get_serial_access_length_fndecl_34496 acpi_ex_get_serial_access_length fndecl 0-2 34496 NULL
-+enable_so_il4965_ucode_general_stats_read_fndecl_34502 il4965_ucode_general_stats_read fndecl 3 34502 NULL
++enable_so_w_virtio_gpu_box_34509 w virtio_gpu_box 0 34509 NULL
+enable_so_buf_len_rx_sci_port_34512 buf_len_rx sci_port 0 34512 NULL
+enable_so_count_res_proc_context_34514 count res_proc_context 0 34514 NULL
+enable_so_clk_enable_fndecl_34522 clk_enable fndecl 0 34522 NULL
@@ -165847,7 +165159,6 @@ index 0000000..9da833a
+enable_so_resid_sg_io_hdr_34541 resid sg_io_hdr 0 34541 NULL
+enable_so_host_size_scsi_transport_template_34551 host_size scsi_transport_template 0 34551 NULL
+enable_so_dvb_aplay_fndecl_34555 dvb_aplay fndecl 3 34555 NULL
-+enable_so_btmrvl_hscfgcmd_read_fndecl_34556 btmrvl_hscfgcmd_read fndecl 3 34556 NULL
+enable_so_maximum_mfc_control_34558 maximum mfc_control 0 34558 NULL
+enable_so_maxpacket_limit_usb_ep_34566 maxpacket_limit usb_ep 0 34566 NULL
+enable_so_rx_ring_num_config_param_34571 rx_ring_num config_param 0 34571 NULL
@@ -165879,14 +165190,15 @@ index 0000000..9da833a
+enable_so_init_evtlog_size_iwl_fw_34663 init_evtlog_size iwl_fw 0 34663 NULL
+enable_so_ext4_convert_unwritten_extents_endio_fndecl_34667 ext4_convert_unwritten_extents_endio fndecl 0 34667 NULL
+enable_so_num_leaves_cpu_cacheinfo_34676 num_leaves cpu_cacheinfo 0 34676 NULL
-+enable_so_inode_ext4_dir_entry_2_34680 inode ext4_dir_entry_2 0 34680 NULL
++enable_so_inode_ext4_dir_entry_2_34680 inode ext4_dir_entry_2 0 34680 NULL nohasharray
++enable_so_acpi_copy_property_array_string_fndecl_34680 acpi_copy_property_array_string fndecl 0 34680 &enable_so_inode_ext4_dir_entry_2_34680
+enable_so_pnp_add_mem_resource_fndecl_34681 pnp_add_mem_resource fndecl 3-2 34681 NULL
+enable_so_offset_ethtool_eeprom_34683 offset ethtool_eeprom 0 34683 NULL
+enable_so_snd_pcm_hw_param_value_min_fndecl_34686 snd_pcm_hw_param_value_min fndecl 0 34686 NULL
+enable_so_bassinit_CHIPDESC_34688 bassinit CHIPDESC 0 34688 NULL nohasharray
+enable_so_slip_maxdev_vardecl_slip_c_34688 slip_maxdev vardecl_slip.c 0 34688 &enable_so_bassinit_CHIPDESC_34688
+enable_so_radeon_ring_init_fndecl_34693 radeon_ring_init fndecl 3 34693 NULL
-+enable_so_simple_read_from_buffer_fndecl_34694 simple_read_from_buffer fndecl 0-2-5 34694 NULL
++enable_so_simple_read_from_buffer_fndecl_34694 simple_read_from_buffer fndecl 2-5 34694 NULL
+enable_so_ceph_get_direct_page_vector_fndecl_34695 ceph_get_direct_page_vector fndecl 2 34695 NULL
+enable_so_max_payload_fc_fcp_pkt_34696 max_payload fc_fcp_pkt 0 34696 NULL
+enable_so_out_clock_max_aptina_pll_limits_34698 out_clock_max aptina_pll_limits 0 34698 NULL
@@ -165912,17 +165224,18 @@ index 0000000..9da833a
+enable_so_acct_stack_growth_fndecl_34756 acct_stack_growth fndecl 3-2 34756 &enable_so_u132_hcd_bulk_input_recv_fndecl_34756 nohasharray
+enable_so_nfs4_validate_mount_data_fndecl_34756 nfs4_validate_mount_data fndecl 0 34756 &enable_so_acct_stack_growth_fndecl_34756
+enable_so_extent_size_ecryptfs_crypt_stat_34757 extent_size ecryptfs_crypt_stat 0 34757 NULL nohasharray
-+enable_so_sc_frmr_pg_list_len_svcxprt_rdma_34757 sc_frmr_pg_list_len svcxprt_rdma 0 34757 &enable_so_extent_size_ecryptfs_crypt_stat_34757 nohasharray
-+enable_so_zone_spare_adfs_discrecord_34757 zone_spare adfs_discrecord 0 34757 &enable_so_sc_frmr_pg_list_len_svcxprt_rdma_34757
++enable_so_zone_spare_adfs_discrecord_34757 zone_spare adfs_discrecord 0 34757 &enable_so_extent_size_ecryptfs_crypt_stat_34757
+enable_so_ssb_bus_pcmciabus_register_fndecl_34759 ssb_bus_pcmciabus_register fndecl 3 34759 NULL
+enable_so_qla2x00_mem_alloc_fndecl_34771 qla2x00_mem_alloc fndecl 3-2 34771 NULL
++enable_so_add_ballooned_pages_fndecl_34773 add_ballooned_pages fndecl 1 34773 NULL
+enable_so_hvt_op_write_fndecl_34774 hvt_op_write fndecl 3 34774 NULL
+enable_so_cyapa_i2c_pip_read_fndecl_34788 cyapa_i2c_pip_read fndecl 3 34788 NULL
+enable_so_qxl_image_alloc_objects_fndecl_34790 qxl_image_alloc_objects fndecl 4-5 34790 NULL
+enable_so_sizeimage_soc_camera_device_34794 sizeimage soc_camera_device 0 34794 NULL nohasharray
+enable_so_addrlen_svc_deferred_req_34794 addrlen svc_deferred_req 0 34794 &enable_so_sizeimage_soc_camera_device_34794
+enable_so_rq_count_st_card_info_34798 rq_count st_card_info 0 34798 NULL
-+enable_so_nfs_write_end_fndecl_34801 nfs_write_end fndecl 3-5 34801 NULL
++enable_so_nfs_write_end_fndecl_34801 nfs_write_end fndecl 3-5 34801 NULL nohasharray
++enable_so_num_atmel_uart_data_34801 num atmel_uart_data 0 34801 &enable_so_nfs_write_end_fndecl_34801
+enable_so_num_q_vectors_ixgbe_adapter_34808 num_q_vectors ixgbe_adapter 0 34808 NULL
+enable_so_wBlockID_ms_bootblock_header_34809 wBlockID ms_bootblock_header 0 34809 NULL
+enable_so_page_size_flash_info_34810 page_size flash_info 0 34810 NULL
@@ -165946,9 +165259,9 @@ index 0000000..9da833a
+enable_so_log_sz_mlx5_flow_table_group_34853 log_sz mlx5_flow_table_group 0 34853 &enable_so_good_peb_count_ubi_device_34853 nohasharray
+enable_so_fw_iso_buffer_init_fndecl_34853 fw_iso_buffer_init fndecl 3 34853 &enable_so_log_sz_mlx5_flow_table_group_34853
+enable_so_nilfs_ioctl_do_get_suinfo_fndecl_34854 nilfs_ioctl_do_get_suinfo fndecl 6 34854 NULL
-+enable_so_flags_write_fndecl_34858 flags_write fndecl 3 34858 NULL
+enable_so_max_msix_vectors_fm10k_mac_info_34860 max_msix_vectors fm10k_mac_info 0 34860 NULL
-+enable_so_gk20a_instobj_ctor_iommu_fndecl_34861 gk20a_instobj_ctor_iommu fndecl 2 34861 NULL
++enable_so_tipc_link_set_mtu_fndecl_34861 tipc_link_set_mtu fndecl 2 34861 NULL nohasharray
++enable_so_gk20a_instobj_ctor_iommu_fndecl_34861 gk20a_instobj_ctor_iommu fndecl 2 34861 &enable_so_tipc_link_set_mtu_fndecl_34861
+enable_so_pfkey_recvmsg_fndecl_34863 pfkey_recvmsg fndecl 3 34863 NULL nohasharray
+enable_so_s_map_size_adfs_sb_info_34863 s_map_size adfs_sb_info 0 34863 &enable_so_pfkey_recvmsg_fndecl_34863
+enable_so_odm_num_comps_pnfs_osd_data_map_34865 odm_num_comps pnfs_osd_data_map 0 34865 NULL
@@ -165962,6 +165275,7 @@ index 0000000..9da833a
+enable_so_Wa_tvnorm_34892 Wa tvnorm 0 34892 NULL
+enable_so_vb2_dma_sg_alloc_fndecl_34894 vb2_dma_sg_alloc fndecl 2 34894 NULL nohasharray
+enable_so_len_coda_ioctl_out_34894 len coda_ioctl_out 0 34894 &enable_so_vb2_dma_sg_alloc_fndecl_34894
++enable_so_soc_tplg_create_tlv_db_scale_fndecl_34898 soc_tplg_create_tlv_db_scale fndecl 0 34898 NULL
+enable_so_sb_logstart_xfs_sb_34900 sb_logstart xfs_sb 0 34900 NULL
+enable_so_fat_ent_read_fndecl_34902 fat_ent_read fndecl 0-3 34902 NULL
+enable_so_block_size_ath6kl_mbox_info_34904 block_size ath6kl_mbox_info 0 34904 NULL
@@ -165978,7 +165292,8 @@ index 0000000..9da833a
+enable_so_register_sound_special_fndecl_34937 register_sound_special fndecl 2 34937 NULL
+enable_so_recv_resync_read_fndecl_34939 recv_resync_read fndecl 2 34939 NULL
+enable_so_max_receive_fw_card_34941 max_receive fw_card 0 34941 NULL
-+enable_so_evm_read_key_fndecl_34945 evm_read_key fndecl 3 34945 NULL
++enable_so_host_int_add_wep_key_bss_ap_fndecl_34945 host_int_add_wep_key_bss_ap fndecl 3 34945 NULL nohasharray
++enable_so_evm_read_key_fndecl_34945 evm_read_key fndecl 3 34945 &enable_so_host_int_add_wep_key_bss_ap_fndecl_34945
+enable_so_ips_scmd_buf_write_fndecl_34946 ips_scmd_buf_write fndecl 3 34946 NULL
+enable_so_bio_kmalloc_fndecl_34947 bio_kmalloc fndecl 2 34947 NULL
+enable_so_reiserfs_get_block_create_0_fndecl_34954 reiserfs_get_block_create_0 fndecl 2 34954 NULL
@@ -165986,9 +165301,9 @@ index 0000000..9da833a
+enable_so_dns_resolver_read_fndecl_34961 dns_resolver_read fndecl 3 34961 NULL
+enable_so_n_it_fw_ohci_34963 n_it fw_ohci 0 34963 NULL
+enable_so_simple_alloc_urb_fndecl_34966 simple_alloc_urb fndecl 3-2 34966 NULL
-+enable_so___bmc150_accel_fifo_flush_fndecl_34967 __bmc150_accel_fifo_flush fndecl 2 34967 NULL
+enable_so_s35390a_get_reg_fndecl_34971 s35390a_get_reg fndecl 4 34971 NULL
-+enable_so_cw1200_queue_stats_init_fndecl_34973 cw1200_queue_stats_init fndecl 2 34973 NULL
++enable_so_items_snd_soc_tplg_enum_control_34973 items snd_soc_tplg_enum_control 0 34973 NULL nohasharray
++enable_so_cw1200_queue_stats_init_fndecl_34973 cw1200_queue_stats_init fndecl 2 34973 &enable_so_items_snd_soc_tplg_enum_control_34973
+enable_so_at24_bin_write_fndecl_34977 at24_bin_write fndecl 6-5 34977 NULL nohasharray
+enable_so_gcr_base_intel_pmc_ipc_dev_34977 gcr_base intel_pmc_ipc_dev 0 34977 &enable_so_at24_bin_write_fndecl_34977
+enable_so_rfkill_fop_read_fndecl_34980 rfkill_fop_read fndecl 3 34980 NULL
@@ -166003,20 +165318,18 @@ index 0000000..9da833a
+enable_so_kzalloc_fndecl_35015 kzalloc fndecl 1 35015 NULL
+enable_so_skb_zerocopy_fndecl_35016 skb_zerocopy fndecl 4-3 35016 NULL
+enable_so_read_capacity_10_fndecl_35017 read_capacity_10 fndecl 0 35017 NULL
-+enable_so_wep_iv_read_fndecl_35019 wep_iv_read fndecl 3 35019 NULL
-+enable_so_no_ids_squashfs_super_block_35022 no_ids squashfs_super_block 0 35022 NULL nohasharray
-+enable_so_lpfc_idiag_pcicfg_write_fndecl_35022 lpfc_idiag_pcicfg_write fndecl 3 35022 &enable_so_no_ids_squashfs_super_block_35022
++enable_so_no_ids_squashfs_super_block_35022 no_ids squashfs_super_block 0 35022 NULL
+enable_so__add_sg_continuation_descriptor_fndecl_35026 _add_sg_continuation_descriptor fndecl 3 35026 NULL
+enable_so_vSync_width_panel_info_35029 vSync_width panel_info 0 35029 NULL nohasharray
+enable_so_set_nservers_fndecl_35029 set_nservers fndecl 2 35029 &enable_so_vSync_width_panel_info_35029
++enable_so_vid_net_bridge_vlan_35032 vid net_bridge_vlan 0 35032 NULL
+enable_so_w_nr_rds_ib_work_ring_35048 w_nr rds_ib_work_ring 0 35048 NULL
+enable_so_uarc_size_mthca_profile_35053 uarc_size mthca_profile 0 35053 NULL
+enable_so_n_ports_rp2_card_35055 n_ports rp2_card 0 35055 NULL
+enable_so_tda18218_rd_reg_fndecl_35057 tda18218_rd_reg fndecl 2 35057 NULL
+enable_so_iio_event_chrdev_read_fndecl_35062 iio_event_chrdev_read fndecl 3 35062 NULL
+enable_so_ring_size_radeon_ring_35063 ring_size radeon_ring 0 35063 NULL
-+enable_so_pci_create_root_bus_fndecl_35065 pci_create_root_bus fndecl 2 35065 NULL nohasharray
-+enable_so_adis16480_show_firmware_date_fndecl_35065 adis16480_show_firmware_date fndecl 3 35065 &enable_so_pci_create_root_bus_fndecl_35065
++enable_so_pci_create_root_bus_fndecl_35065 pci_create_root_bus fndecl 2 35065 NULL
+enable_so_jffs2_flash_direct_write_fndecl_35070 jffs2_flash_direct_write fndecl 3 35070 NULL
+enable_so_altera_set_dr_post_fndecl_35072 altera_set_dr_post fndecl 2 35072 NULL
+enable_so_set_video_mode_Timon_fndecl_35074 set_video_mode_Timon fndecl 4 35074 NULL
@@ -166028,6 +165341,7 @@ index 0000000..9da833a
+enable_so_agi_newino_xfs_agi_35086 agi_newino xfs_agi 0 35086 NULL nohasharray
+enable_so_ieee80211_add_rx_radiotap_header_fndecl_35086 ieee80211_add_rx_radiotap_header fndecl 4 35086 &enable_so_agi_newino_xfs_agi_35086 nohasharray
+enable_so_reclaim_pages_fndecl_35086 reclaim_pages fndecl 3 35086 &enable_so_ieee80211_add_rx_radiotap_header_fndecl_35086
++enable_so_nr_handles_xenbus_map_node_35091 nr_handles xenbus_map_node 0 35091 NULL
+enable_so_ubi_calc_data_len_fndecl_35092 ubi_calc_data_len fndecl 0-3 35092 NULL
+enable_so_er_data_len_gfs2_ea_request_35098 er_data_len gfs2_ea_request 0 35098 NULL
+enable_so_num_vf_qps_i40e_pf_35102 num_vf_qps i40e_pf 0 35102 NULL
@@ -166065,16 +165379,17 @@ index 0000000..9da833a
+enable_so_num_rx_qp_i40e_hw_capabilities_35165 num_rx_qp i40e_hw_capabilities 0 35165 NULL
+enable_so_snd_pcm_oss_read2_fndecl_35168 snd_pcm_oss_read2 fndecl 3-0 35168 NULL nohasharray
+enable_so_count_sgmap_35168 count sgmap 0 35168 &enable_so_snd_pcm_oss_read2_fndecl_35168
++enable_so_aux_ulist_node_35169 aux ulist_node 0 35169 NULL
+enable_so_mlx4_en_hwtstamp_get_fndecl_35174 mlx4_en_hwtstamp_get fndecl 0 35174 NULL
+enable_so_memblock_size_vxge_hw_fifo_config_35179 memblock_size vxge_hw_fifo_config 0 35179 NULL nohasharray
-+enable_so_nd_blk_major_vardecl_blk_c_35179 nd_blk_major vardecl_blk.c 0 35179 &enable_so_memblock_size_vxge_hw_fifo_config_35179 nohasharray
-+enable_so_iwl_dbgfs_power_save_status_read_fndecl_35179 iwl_dbgfs_power_save_status_read fndecl 3 35179 &enable_so_nd_blk_major_vardecl_blk_c_35179
++enable_so_nd_blk_major_vardecl_blk_c_35179 nd_blk_major vardecl_blk.c 0 35179 &enable_so_memblock_size_vxge_hw_fifo_config_35179
+enable_so_blk_rq_count_integrity_sg_fndecl_35185 blk_rq_count_integrity_sg fndecl 0 35185 NULL
+enable_so___sound_insert_unit_fndecl_35186 __sound_insert_unit fndecl 4-5 35186 NULL
+enable_so_wHeight_uvc_frame_35189 wHeight uvc_frame 0 35189 NULL
+enable_so_ah_alloc_tmp_fndecl_35193 ah_alloc_tmp fndecl 2-3 35193 NULL
+enable_so_do_dccp_setsockopt_fndecl_35194 do_dccp_setsockopt fndecl 5 35194 NULL nohasharray
+enable_so_intel_sdvo_write_cmd_fndecl_35194 intel_sdvo_write_cmd fndecl 4 35194 &enable_so_do_dccp_setsockopt_fndecl_35194
++enable_so_jffs2_security_setxattr_fndecl_35199 jffs2_security_setxattr fndecl 5 35199 NULL
+enable_so_copy_gadget_strings_fndecl_35202 copy_gadget_strings fndecl 3-2 35202 NULL
+enable_so_new_lockspace_fndecl_35208 new_lockspace fndecl 4 35208 NULL
+enable_so_tx_ring_size_pcnet32_private_35210 tx_ring_size pcnet32_private 0 35210 NULL
@@ -166098,7 +165413,6 @@ index 0000000..9da833a
+enable_so_maxburst_snd_dmaengine_dai_dma_data_35287 maxburst snd_dmaengine_dai_dma_data 0 35287 NULL
+enable_so_ceph_msg_data_advance_fndecl_35288 ceph_msg_data_advance fndecl 2 35288 NULL
+enable_so_offs_ubifs_wbuf_35290 offs ubifs_wbuf 0 35290 NULL
-+enable_so_sctp_make_asconf_update_ip_fndecl_35294 sctp_make_asconf_update_ip fndecl 5 35294 NULL
+enable_so_xc_send_i2c_data_fndecl_35297 xc_send_i2c_data fndecl 3 35297 NULL
+enable_so_maybe_indirect_to_direct_fndecl_35307 maybe_indirect_to_direct fndecl 6 35307 NULL
+enable_so_p54_parse_default_country_fndecl_35309 p54_parse_default_country fndecl 3 35309 NULL nohasharray
@@ -166129,6 +165443,7 @@ index 0000000..9da833a
+enable_so_microcode_B_fe_size_dib9000_config_35377 microcode_B_fe_size dib9000_config 0 35377 NULL nohasharray
+enable_so_drm_dp_mst_topology_mgr_init_fndecl_35377 drm_dp_mst_topology_mgr_init fndecl 4-5 35377 &enable_so_microcode_B_fe_size_dib9000_config_35377
+enable_so_mmio_base_phys_radeonfb_info_35378 mmio_base_phys radeonfb_info 0 35378 NULL
++enable_so_virtio_gpu_cmd_submit_fndecl_35382 virtio_gpu_cmd_submit fndecl 3 35382 NULL
+enable_so_hc_erase_size_mmc_ext_csd_35384 hc_erase_size mmc_ext_csd 0 35384 NULL
+enable_so_ath9k_hw_read_array_fndecl_35386 ath9k_hw_read_array fndecl 3 35386 NULL
+enable_so_read_dma_fndecl_35389 read_dma fndecl 3 35389 NULL
@@ -166151,7 +165466,6 @@ index 0000000..9da833a
+enable_so_major_gendisk_35443 major gendisk 0 35443 NULL
+enable_so_wake_len_cfg80211_wowlan_tcp_35448 wake_len cfg80211_wowlan_tcp 0 35448 NULL nohasharray
+enable_so_len_he_buff_35448 len he_buff 0 35448 &enable_so_wake_len_cfg80211_wowlan_tcp_35448
-+enable_so_ieee80211_if_read_uapsd_queues_fndecl_35453 ieee80211_if_read_uapsd_queues fndecl 3 35453 NULL
+enable_so_ocfs2_truncate_file_fndecl_35455 ocfs2_truncate_file fndecl 3 35455 NULL
+enable_so_octeon_create_droq_fndecl_35457 octeon_create_droq fndecl 4-3 35457 NULL
+enable_so_bytes_to_read_mpt3_diag_read_buffer_35460 bytes_to_read mpt3_diag_read_buffer 0 35460 NULL
@@ -166164,17 +165478,16 @@ index 0000000..9da833a
+enable_so_length_wl1251_rx_descriptor_35483 length wl1251_rx_descriptor 0 35483 NULL
+enable_so_ieee80211_report_disconnect_fndecl_35488 ieee80211_report_disconnect fndecl 3 35488 NULL
+enable_so_onenand_read_fndecl_35491 onenand_read fndecl 2 35491 NULL nohasharray
-+enable_so_qxl_alloc_client_monitors_config_fndecl_35491 qxl_alloc_client_monitors_config fndecl 2 35491 &enable_so_onenand_read_fndecl_35491
++enable_so_qxl_alloc_client_monitors_config_fndecl_35491 qxl_alloc_client_monitors_config fndecl 2 35491 &enable_so_onenand_read_fndecl_35491 nohasharray
++enable_so_ptlrpcd_partner_group_size_vardecl_ptlrpcd_c_35491 ptlrpcd_partner_group_size vardecl_ptlrpcd.c 0 35491 &enable_so_qxl_alloc_client_monitors_config_fndecl_35491
+enable_so_alloc_clips_fndecl_35492 alloc_clips fndecl 3 35492 NULL nohasharray
+enable_so_f71805f_device_add_fndecl_35492 f71805f_device_add fndecl 1 35492 &enable_so_alloc_clips_fndecl_35492
+enable_so_firm_send_command_fndecl_35493 firm_send_command fndecl 4 35493 NULL nohasharray
+enable_so_nbox_drm_savage_cmdbuf_35493 nbox drm_savage_cmdbuf 0 35493 &enable_so_firm_send_command_fndecl_35493
-+enable_so_cfg_lun_queue_depth_lpfc_vport_35503 cfg_lun_queue_depth lpfc_vport 0 35503 NULL
+enable_so_sched_feat_write_fndecl_35505 sched_feat_write fndecl 3 35505 NULL
+enable_so_cnt_usnic_vnic_res_desc_35511 cnt usnic_vnic_res_desc 0 35511 NULL
+enable_so___kfifo_dma_out_prepare_r_fndecl_35512 __kfifo_dma_out_prepare_r fndecl 4-5 35512 NULL
+enable_so_dlci_change_mtu_fndecl_35513 dlci_change_mtu fndecl 2 35513 NULL
-+enable_so_ht40allow_map_read_fndecl_35514 ht40allow_map_read fndecl 3 35514 NULL
+enable_so_acpi_nvs_register_fndecl_35515 acpi_nvs_register fndecl 2-1 35515 NULL
+enable_so_do_raw_setsockopt_fndecl_35516 do_raw_setsockopt fndecl 5-0 35516 NULL
+enable_so_install_special_mapping_fndecl_35519 install_special_mapping fndecl 3-2 35519 NULL
@@ -166190,8 +165503,8 @@ index 0000000..9da833a
+enable_so_vsync_ast_vbios_enhtable_35556 vsync ast_vbios_enhtable 0 35556 NULL
+enable_so_rx_streaming_interval_read_fndecl_35560 rx_streaming_interval_read fndecl 3 35560 NULL
+enable_so_ptrace_request_fndecl_35563 ptrace_request fndecl 3 35563 NULL
-+enable_so_find_min_pfn_for_node_fndecl_35569 find_min_pfn_for_node fndecl 0 35569 NULL nohasharray
-+enable_so_data_offset_brcmf_proto_bcdc_header_35569 data_offset brcmf_proto_bcdc_header 0 35569 &enable_so_find_min_pfn_for_node_fndecl_35569
++enable_so_data_offset_brcmf_proto_bcdc_header_35569 data_offset brcmf_proto_bcdc_header 0 35569 NULL nohasharray
++enable_so_find_min_pfn_for_node_fndecl_35569 find_min_pfn_for_node fndecl 0 35569 &enable_so_data_offset_brcmf_proto_bcdc_header_35569
+enable_so_edma_readl_fndecl_35573 edma_readl fndecl 0 35573 NULL
+enable_so_cfg80211_mlme_auth_fndecl_35577 cfg80211_mlme_auth fndecl 14-9 35577 NULL
+enable_so_cur_blksize_sdio_func_35582 cur_blksize sdio_func 0 35582 NULL nohasharray
@@ -166201,8 +165514,7 @@ index 0000000..9da833a
+enable_so_actual_length_usb_iso_packet_descriptor_35588 actual_length usb_iso_packet_descriptor 0 35588 NULL
+enable_so_cyttsp_i2c_read_block_data_fndecl_35590 cyttsp_i2c_read_block_data fndecl 4 35590 NULL
+enable_so_minor_start_rp2_card_35592 minor_start rp2_card 0 35592 NULL
-+enable_so_nfsd_write_fndecl_35594 nfsd_write fndecl 6 35594 NULL nohasharray
-+enable_so_send_wr_num_isert_rdma_wr_35594 send_wr_num isert_rdma_wr 0 35594 &enable_so_nfsd_write_fndecl_35594
++enable_so_nfsd_write_fndecl_35594 nfsd_write fndecl 6 35594 NULL
+enable_so_ext2_iget_fndecl_35598 ext2_iget fndecl 2 35598 NULL
+enable_so_xfs_rtallocate_extent_block_fndecl_35604 xfs_rtallocate_extent_block fndecl 5-10 35604 NULL
+enable_so_hback_porch_videomode_35606 hback_porch videomode 0 35606 NULL nohasharray
@@ -166257,7 +165569,6 @@ index 0000000..9da833a
+enable_so_RequestCredit_mpt3sas_facts_35718 RequestCredit mpt3sas_facts 0 35718 &enable_so_bio_add_page_fndecl_35718
+enable_so_mxms_structlen_fndecl_35720 mxms_structlen fndecl 0 35720 NULL
+enable_so_mod_num_sdma_vardecl_35721 mod_num_sdma vardecl 0 35721 NULL
-+enable_so_lowpan_xmit_fragment_fndecl_35724 lowpan_xmit_fragment fndecl 4-6 35724 NULL
+enable_so_fdt_translate_address_fndecl_35726 fdt_translate_address fndecl 2-0 35726 NULL nohasharray
+enable_so_add_port_fndecl_35726 add_port fndecl 2 35726 &enable_so_fdt_translate_address_fndecl_35726
+enable_so_size_irq_routing_options_35727 size irq_routing_options 0 35727 NULL
@@ -166266,8 +165577,8 @@ index 0000000..9da833a
+enable_so_mwifiex_append_rate_tlv_fndecl_35735 mwifiex_append_rate_tlv fndecl 0 35735 NULL
+enable_so_priv_size_data_queue_35740 priv_size data_queue 0 35740 NULL
+enable_so_offset_ext4_io_end_35743 offset ext4_io_end 0 35743 NULL
-+enable_so_ggtt_probe_common_fndecl_35744 ggtt_probe_common fndecl 2 35744 NULL nohasharray
-+enable_so_qib_uc_rcv_fndecl_35744 qib_uc_rcv fndecl 5 35744 &enable_so_ggtt_probe_common_fndecl_35744
++enable_so_qib_uc_rcv_fndecl_35744 qib_uc_rcv fndecl 5 35744 NULL nohasharray
++enable_so_ggtt_probe_common_fndecl_35744 ggtt_probe_common fndecl 2 35744 &enable_so_qib_uc_rcv_fndecl_35744
+enable_so_alauda_write_data_fndecl_35748 alauda_write_data fndecl 3-2 35748 NULL
+enable_so_goodix_i2c_read_fndecl_35755 goodix_i2c_read fndecl 4 35755 NULL nohasharray
+enable_so__drbd_bm_total_weight_fndecl_35755 _drbd_bm_total_weight fndecl 0 35755 &enable_so_goodix_i2c_read_fndecl_35755 nohasharray
@@ -166275,7 +165586,6 @@ index 0000000..9da833a
+enable_so_left_qxl_urect_35760 left qxl_urect 0 35760 NULL
+enable_so_scsi_sg_tablesize_iser_conn_35762 scsi_sg_tablesize iser_conn 0 35762 NULL
+enable_so_fh_epd_frame_35764 fh epd_frame 0 35764 NULL
-+enable_so_ath9k_dump_btcoex_fndecl_35766 ath9k_dump_btcoex fndecl 0 35766 NULL
+enable_so_channels_snd_usb_substream_35767 channels snd_usb_substream 0 35767 NULL
+enable_so_virtscsi_compute_resid_fndecl_35772 virtscsi_compute_resid fndecl 2 35772 NULL nohasharray
+enable_so_s_hdrwords_qib_qp_35772 s_hdrwords qib_qp 0 35772 &enable_so_virtscsi_compute_resid_fndecl_35772
@@ -166320,7 +165630,6 @@ index 0000000..9da833a
+enable_so_fe_group_ext4_free_extent_35905 fe_group ext4_free_extent 0 35905 NULL nohasharray
+enable_so_max_sq_desc_sz_mlx4_caps_35905 max_sq_desc_sz mlx4_caps 0 35905 &enable_so_fe_group_ext4_free_extent_35905
+enable_so_lirc_base_dev_vardecl_lirc_dev_c_35907 lirc_base_dev vardecl_lirc_dev.c 0 35907 NULL
-+enable_so_btrfs_set_stack_chunk_num_stripes_fndecl_35911 btrfs_set_stack_chunk_num_stripes fndecl 2 35911 NULL
+enable_so_cifs_utf16_bytes_fndecl_35914 cifs_utf16_bytes fndecl 0 35914 NULL
+enable_so_num_sensors_fimc_md_35915 num_sensors fimc_md 0 35915 NULL
+enable_so_right_vardecl_matroxfb_base_c_35916 right vardecl_matroxfb_base.c 0 35916 NULL
@@ -166370,16 +165679,14 @@ index 0000000..9da833a
+enable_so_bdev_logical_block_size_fndecl_36009 bdev_logical_block_size fndecl 0 36009 &enable_so_igb_alloc_q_vector_fndecl_36009
+enable_so___nfs4_proc_set_acl_fndecl_36018 __nfs4_proc_set_acl fndecl 3 36018 NULL
+enable_so_n_sg_vscsibk_pend_36028 n_sg vscsibk_pend 0 36028 NULL
-+enable_so_setup_efi_info_memmap_fndecl_36029 setup_efi_info_memmap fndecl 3-2-4 36029 NULL
++enable_so_setup_efi_info_memmap_fndecl_36029 setup_efi_info_memmap fndecl 4-3-2 36029 NULL
+enable_so_count_sgentry64_36033 count sgentry64 0 36033 NULL
+enable_so_NumEraseUnits_NFTLMediaHeader_36036 NumEraseUnits NFTLMediaHeader 0 36036 NULL
+enable_so_insert_bio_sectors_search_36037 insert_bio_sectors search 0 36037 NULL
-+enable_so_thread_notes_elf_note_info_36040 thread_notes elf_note_info 0 36040 NULL
+enable_so_update_ind_extent_range_fndecl_36049 update_ind_extent_range fndecl 3 36049 NULL
+enable_so_rx_status_len_bcm_rsb_36064 rx_status_len bcm_rsb 0 36064 NULL
+enable_so_piobcnt2k_qib_devdata_36065 piobcnt2k qib_devdata 0 36065 NULL
+enable_so_xfrm_compile_policy_fndecl_36070 xfrm_compile_policy fndecl 4 36070 NULL
-+enable_so_lpfc_idiag_queacc_read_qe_fndecl_36072 lpfc_idiag_queacc_read_qe fndecl 0-2 36072 NULL
+enable_so_usb_stor_control_msg_fndecl_36073 usb_stor_control_msg fndecl 8-2 36073 NULL
+enable_so_wa_populate_buf_in_urb_fndecl_36077 wa_populate_buf_in_urb fndecl 4-3 36077 NULL
+enable_so_blocksize_alauda_media_info_36080 blocksize alauda_media_info 0 36080 NULL nohasharray
@@ -166392,7 +165699,6 @@ index 0000000..9da833a
+enable_so_set_extent_uptodate_fndecl_36117 set_extent_uptodate fndecl 3-2 36117 NULL nohasharray
+enable_so_nr_requests_request_queue_36117 nr_requests request_queue 0 36117 &enable_so_set_extent_uptodate_fndecl_36117
+enable_so_xfs_trans_read_buf_map_fndecl_36121 xfs_trans_read_buf_map fndecl 5 36121 NULL
-+enable_so_ipr_change_queue_depth_fndecl_36124 ipr_change_queue_depth fndecl 2 36124 NULL
+enable_so_dictionary_size_disk_comp_opts_36125 dictionary_size disk_comp_opts 0 36125 NULL
+enable_so_bytesperline_v4l2_plane_pix_format_36133 bytesperline v4l2_plane_pix_format 0 36133 NULL
+enable_so___i2400m_bm_ack_verify_fndecl_36139 __i2400m_bm_ack_verify fndecl 0-4 36139 NULL
@@ -166451,7 +165757,6 @@ index 0000000..9da833a
+enable_so_num_uf_bufs_bfa_iocfc_fwcfg_s_36271 num_uf_bufs bfa_iocfc_fwcfg_s 0 36271 NULL
+enable_so_s_clusters_per_group_ext4_sb_info_36278 s_clusters_per_group ext4_sb_info 0 36278 NULL nohasharray
+enable_so_iwl_pcie_txq_alloc_fndecl_36278 iwl_pcie_txq_alloc fndecl 3 36278 &enable_so_s_clusters_per_group_ext4_sb_info_36278
-+enable_so__dump_buf_dif_order_vardecl_36281 _dump_buf_dif_order vardecl 0 36281 NULL
+enable_so_hci_check_pending_name_fndecl_36282 hci_check_pending_name fndecl 5 36282 NULL
+enable_so_calc_sectors_fndecl_36288 calc_sectors fndecl 2 36288 NULL nohasharray
+enable_so_len_ethtool_tunable_36288 len ethtool_tunable 0 36288 &enable_so_calc_sectors_fndecl_36288
@@ -166465,8 +165770,7 @@ index 0000000..9da833a
+enable_so_paging64_prefetch_gpte_fndecl_36303 paging64_prefetch_gpte fndecl 4 36303 NULL
+enable_so_command_size_drm_vmw_execbuf_arg_36305 command_size drm_vmw_execbuf_arg 0 36305 NULL
+enable_so_size_kernfs_elem_attr_36307 size kernfs_elem_attr 0 36307 NULL
-+enable_so_snd_dma_alloc_pages_fndecl_36308 snd_dma_alloc_pages fndecl 3 36308 NULL nohasharray
-+enable_so_mwifiex_info_read_fndecl_36308 mwifiex_info_read fndecl 3 36308 &enable_so_snd_dma_alloc_pages_fndecl_36308
++enable_so_snd_dma_alloc_pages_fndecl_36308 snd_dma_alloc_pages fndecl 3 36308 NULL
+enable_so_max_transfer_snd_usb_midi_out_endpoint_36311 max_transfer snd_usb_midi_out_endpoint 0 36311 NULL
+enable_so_chunk_size_mdp_superblock_s_36313 chunk_size mdp_superblock_s 0 36313 NULL
+enable_so_n_descsz_elf64_note_36314 n_descsz elf64_note 0 36314 NULL
@@ -166477,14 +165781,14 @@ index 0000000..9da833a
+enable_so_apei_exec_run_optional_fndecl_36319 apei_exec_run_optional fndecl 0 36319 NULL
+enable_so_file_size_squashfs_lreg_inode_36323 file_size squashfs_lreg_inode 0 36323 NULL
+enable_so_client_channels_snd_pcm_plugin_36324 client_channels snd_pcm_plugin 0 36324 NULL
-+enable_so_xferred_rbd_obj_request_36326 xferred rbd_obj_request 0 36326 NULL nohasharray
-+enable_so_xfs_symlink_blocks_fndecl_36326 xfs_symlink_blocks fndecl 0-2 36326 &enable_so_xferred_rbd_obj_request_36326
++enable_so_xfs_symlink_blocks_fndecl_36326 xfs_symlink_blocks fndecl 0-2 36326 NULL nohasharray
++enable_so_xferred_rbd_obj_request_36326 xferred rbd_obj_request 0 36326 &enable_so_xfs_symlink_blocks_fndecl_36326
+enable_so_do_verify_xattr_datum_fndecl_36328 do_verify_xattr_datum fndecl 0 36328 NULL
+enable_so_ima_write_template_field_data_fndecl_36336 ima_write_template_field_data fndecl 2 36336 NULL
-+enable_so_hidp_send_frame_fndecl_36338 hidp_send_frame fndecl 3 36338 NULL nohasharray
-+enable_so_c_size_p_sizes_36338 c_size p_sizes 0 36338 &enable_so_hidp_send_frame_fndecl_36338
++enable_so_c_size_p_sizes_36338 c_size p_sizes 0 36338 NULL nohasharray
++enable_so_hidp_send_frame_fndecl_36338 hidp_send_frame fndecl 3 36338 &enable_so_c_size_p_sizes_36338
+enable_so_digest_encode_fndecl_36340 digest_encode fndecl 0 36340 NULL
-+enable_so_rds_tcp_data_recv_fndecl_36343 rds_tcp_data_recv fndecl 4-3 36343 NULL
++enable_so_rds_tcp_data_recv_fndecl_36343 rds_tcp_data_recv fndecl 3-4 36343 NULL
+enable_so_iowarrior_read_fndecl_36344 iowarrior_read fndecl 3 36344 NULL
+enable_so_osd_req_write_kern_fndecl_36349 osd_req_write_kern fndecl 5 36349 NULL
+enable_so_inode_blocks_efs_sb_info_36351 inode_blocks efs_sb_info 0 36351 NULL
@@ -166523,7 +165827,6 @@ index 0000000..9da833a
+enable_so_fb_show_logo_line_fndecl_36485 fb_show_logo_line fndecl 4 36485 NULL nohasharray
+enable_so_t_task_lba_se_cmd_36485 t_task_lba se_cmd 0 36485 &enable_so_fb_show_logo_line_fndecl_36485 nohasharray
+enable_so_i2400m_zrealloc_2x_fndecl_36485 i2400m_zrealloc_2x fndecl 3 36485 &enable_so_t_task_lba_se_cmd_36485
-+enable_so_read_bufsize_carl9170_debugfs_fops_36488 read_bufsize carl9170_debugfs_fops 0 36488 NULL
+enable_so_p9_client_prepare_req_fndecl_36492 p9_client_prepare_req fndecl 3 36492 NULL
+enable_so_tipc_msg_make_bundle_fndecl_36497 tipc_msg_make_bundle fndecl 3 36497 NULL
+enable_so_do_fault_around_fndecl_36500 do_fault_around fndecl 2-4 36500 NULL
@@ -166537,7 +165840,6 @@ index 0000000..9da833a
+enable_so_igu_sb_cnt_bnx2x_36525 igu_sb_cnt bnx2x 0 36525 NULL
+enable_so_ue_num_asd_bios_chim_struct_36526 ue_num asd_bios_chim_struct 0 36526 NULL nohasharray
+enable_so_sdma_descq_cnt_vardecl_sdma_c_36526 sdma_descq_cnt vardecl_sdma.c 0 36526 &enable_so_ue_num_asd_bios_chim_struct_36526
-+enable_so_vid_end_switchdev_obj_vlan_36528 vid_end switchdev_obj_vlan 0 36528 NULL
+enable_so_ftdi_elan_edset_output_fndecl_36530 ftdi_elan_edset_output fndecl 0 36530 NULL
+enable_so_sk_tcplen_svc_sock_36531 sk_tcplen svc_sock 0 36531 NULL
+enable_so_nbpf_bytes_left_fndecl_36536 nbpf_bytes_left fndecl 0 36536 NULL
@@ -166551,8 +165853,7 @@ index 0000000..9da833a
+enable_so_fb_try_mode_fndecl_36560 fb_try_mode fndecl 4 36560 NULL
+enable_so_fuse_file_compat_ioctl_fndecl_36564 fuse_file_compat_ioctl fndecl 2 36564 NULL
+enable_so_sc_sq_depth_svcxprt_rdma_36568 sc_sq_depth svcxprt_rdma 0 36568 NULL
-+enable_so_sge_size_MPT2SAS_ADAPTER_36569 sge_size MPT2SAS_ADAPTER 0 36569 NULL nohasharray
-+enable_so_vlan_tag_eth_fast_path_rx_cqe_36569 vlan_tag eth_fast_path_rx_cqe 0 36569 &enable_so_sge_size_MPT2SAS_ADAPTER_36569
++enable_so_vlan_tag_eth_fast_path_rx_cqe_36569 vlan_tag eth_fast_path_rx_cqe 0 36569 NULL
+enable_so_frag_thresh_orinoco_private_36570 frag_thresh orinoco_private 0 36570 NULL
+enable_so_page_count_agp_memory_36571 page_count agp_memory 0 36571 NULL
+enable_so___register_chrdev_fndecl_36572 __register_chrdev fndecl 0-2-1-3 36572 NULL
@@ -166563,7 +165864,6 @@ index 0000000..9da833a
+enable_so_audio_write_fndecl_36582 audio_write fndecl 4 36582 &enable_so_wusb_prf_fndecl_36582
+enable_so_rx_ring_size_pcnet32_private_36586 rx_ring_size pcnet32_private 0 36586 NULL nohasharray
+enable_so_vmw_user_dmabuf_alloc_fndecl_36586 vmw_user_dmabuf_alloc fndecl 3 36586 &enable_so_rx_ring_size_pcnet32_private_36586
-+enable_so_mwifiex_getlog_read_fndecl_36590 mwifiex_getlog_read fndecl 3 36590 NULL
+enable_so_scan_cnt_ad7280_state_36592 scan_cnt ad7280_state 0 36592 NULL
+enable_so_alloc_fw_event_work_fndecl_36593 alloc_fw_event_work fndecl 1 36593 NULL
+enable_so_bgrt_image_size_vardecl_36594 bgrt_image_size vardecl 0 36594 NULL
@@ -166576,7 +165876,6 @@ index 0000000..9da833a
+enable_so_xfs_dir2_sf_addname_hard_fndecl_36605 xfs_dir2_sf_addname_hard fndecl 3 36605 NULL nohasharray
+enable_so_reply_len_sg_header_36605 reply_len sg_header 0 36605 &enable_so_xfs_dir2_sf_addname_hard_fndecl_36605
+enable_so_drm_mm_insert_node_generic_fndecl_36608 drm_mm_insert_node_generic fndecl 3 36608 NULL
-+enable_so_len_nci_prop_cmd_param_36611 len nci_prop_cmd_param 0 36611 NULL
+enable_so_set_user_nice_fndecl_36618 set_user_nice fndecl 2 36618 NULL
+enable_so_f_pos_file_36619 f_pos file 0 36619 NULL
+enable_so_gamma_size_drm_mode_crtc_lut_36622 gamma_size drm_mode_crtc_lut 0 36622 NULL
@@ -166585,7 +165884,7 @@ index 0000000..9da833a
+enable_so_i915_gem_execbuffer_parse_fndecl_36633 i915_gem_execbuffer_parse fndecl 6-5 36633 NULL nohasharray
+enable_so_opcfg_ofsh_cyttsp4_sysinfo_data_36633 opcfg_ofsh cyttsp4_sysinfo_data 0 36633 &enable_so_i915_gem_execbuffer_parse_fndecl_36633
+enable_so_read_super_block_fndecl_36638 read_super_block fndecl 2 36638 NULL
-+enable_so_lpfc_idiag_ctlacc_read_reg_fndecl_36642 lpfc_idiag_ctlacc_read_reg fndecl 0-3 36642 NULL
++enable_so_f2fs_kvzalloc_fndecl_36641 f2fs_kvzalloc fndecl 1 36641 NULL
+enable_so_nls_nullsize_fndecl_36644 nls_nullsize fndecl 0 36644 NULL
+enable_so_dm_done_fndecl_36648 dm_done fndecl 2 36648 NULL
+enable_so_pvr2_encoder_write_words_fndecl_36653 pvr2_encoder_write_words fndecl 4 36653 NULL nohasharray
@@ -166596,6 +165895,7 @@ index 0000000..9da833a
+enable_so___tty_alloc_driver_fndecl_36660 __tty_alloc_driver fndecl 1 36660 NULL
+enable_so_qp_alloc_host_work_fndecl_36661 qp_alloc_host_work fndecl 3-5 36661 NULL
+enable_so_dac_channels_mixer_oxygen_model_36662 dac_channels_mixer oxygen_model 0 36662 NULL
++enable_so_roffset_scifioctl_copy_36667 roffset scifioctl_copy 0 36667 NULL
+enable_so_max_queue_pairs_virtnet_info_36669 max_queue_pairs virtnet_info 0 36669 NULL
+enable_so_i_file_acl_lo_ext4_inode_36684 i_file_acl_lo ext4_inode 0 36684 NULL
+enable_so_size_drm_map_36685 size drm_map 0 36685 NULL
@@ -166652,11 +165952,9 @@ index 0000000..9da833a
+enable_so_rx_pg_ring_size_bnx2_36835 rx_pg_ring_size bnx2 0 36835 NULL
+enable_so_total_bytes_btrfs_super_block_36845 total_bytes btrfs_super_block 0 36845 NULL
+enable_so_hfsplus_attr_build_key_fndecl_36846 hfsplus_attr_build_key fndecl 0 36846 NULL
-+enable_so_reply_sz_MPT2SAS_ADAPTER_36858 reply_sz MPT2SAS_ADAPTER 0 36858 NULL
+enable_so_raid5_compute_sector_fndecl_36860 raid5_compute_sector fndecl 0-2 36860 NULL
+enable_so_acpi_register_gsi_pic_fndecl_36869 acpi_register_gsi_pic fndecl 0-2 36869 NULL
+enable_so_vtotal_drm_display_mode_36870 vtotal drm_display_mode 0 36870 NULL
-+enable_so_int_tasklet_entry_fndecl_36871 int_tasklet_entry fndecl 3 36871 NULL
+enable_so_qlcnic_83xx_sysfs_flash_write_fndecl_36872 qlcnic_83xx_sysfs_flash_write fndecl 4 36872 NULL
+enable_so_self_inum_vardecl_self_c_36873 self_inum vardecl_self.c 0 36873 NULL nohasharray
+enable_so_txd_size_bdx_priv_36873 txd_size bdx_priv 0 36873 &enable_so_self_inum_vardecl_self_c_36873 nohasharray
@@ -166667,6 +165965,7 @@ index 0000000..9da833a
+enable_so_h_self_omfs_header_36891 h_self omfs_header 0 36891 NULL
+enable_so_size_cxgb4_range_36893 size cxgb4_range 0 36893 NULL
+enable_so_sge_congestion_control_sge_params_36896 sge_congestion_control sge_params 0 36896 NULL
++enable_so_hwdep_read_locked_fndecl_36897 hwdep_read_locked fndecl 3 36897 NULL
+enable_so_limit_ixgbe_ring_feature_36904 limit ixgbe_ring_feature 0 36904 NULL
+enable_so_actual_usb_request_36913 actual usb_request 0 36913 NULL
+enable_so_tool_spadfn_write_fndecl_36915 tool_spadfn_write fndecl 3 36915 NULL
@@ -166694,8 +165993,8 @@ index 0000000..9da833a
+enable_so_to_fw_map_37020 to fw_map 0 37020 NULL
+enable_so_cb_group_width_exofs_dt_data_map_37027 cb_group_width exofs_dt_data_map 0 37027 NULL
+enable_so_result_fc_bsg_reply_37029 result fc_bsg_reply 0 37029 NULL
-+enable_so_mmio_size_vmw_private_37038 mmio_size vmw_private 0 37038 NULL nohasharray
-+enable_so_dirty_poll_interval_fndecl_37038 dirty_poll_interval fndecl 0 37038 &enable_so_mmio_size_vmw_private_37038
++enable_so_dirty_poll_interval_fndecl_37038 dirty_poll_interval fndecl 0 37038 NULL nohasharray
++enable_so_mmio_size_vmw_private_37038 mmio_size vmw_private 0 37038 &enable_so_dirty_poll_interval_fndecl_37038
+enable_so_adjust_resource_fndecl_37046 adjust_resource fndecl 3-2 37046 NULL
+enable_so_setcc_fndecl_37048 setcc fndecl 1 37048 NULL
+enable_so_yres__sisbios_mode_37051 yres _sisbios_mode 0 37051 NULL nohasharray
@@ -166703,6 +166002,7 @@ index 0000000..9da833a
+enable_so_memory_model_code_mspro_sys_info_37057 memory_model_code mspro_sys_info 0 37057 NULL
+enable_so_neq_vf_resources_37066 neq vf_resources 0 37066 NULL
+enable_so_vmw_cmdbuf_reserve_fndecl_37071 vmw_cmdbuf_reserve fndecl 2 37071 NULL
++enable_so_driver_data_acpi_device_id_37074 driver_data acpi_device_id 0 37074 NULL
+enable_so_SYSC_gethostname_fndecl_37078 SYSC_gethostname fndecl 2 37078 NULL
+enable_so_rq_xprt_hlen_svc_rqst_37082 rq_xprt_hlen svc_rqst 0 37082 NULL
+enable_so_rtc_devt_vardecl_rtc_dev_c_37090 rtc_devt vardecl_rtc-dev.c 0 37090 NULL
@@ -166712,12 +166012,14 @@ index 0000000..9da833a
+enable_so_relay_alloc_page_array_fndecl_37100 relay_alloc_page_array fndecl 1 37100 NULL
+enable_so_gfs2_meta_ra_fndecl_37101 gfs2_meta_ra fndecl 2 37101 NULL
+enable_so_filled_kobil_private_37104 filled kobil_private 0 37104 NULL
-+enable_so_vlan_tag_rx_return_desc_37115 vlan_tag rx_return_desc 0 37115 NULL
++enable_so___frwr_init_fndecl_37114 __frwr_init fndecl 4 37114 NULL
++enable_so_vlan_tag_rx_return_desc_37115 vlan_tag rx_return_desc 0 37115 NULL nohasharray
++enable_so_rx_ring_size_bnxt_37115 rx_ring_size bnxt 0 37115 &enable_so_vlan_tag_rx_return_desc_37115
+enable_so_fuse_request_alloc_fndecl_37120 fuse_request_alloc fndecl 1 37120 NULL nohasharray
+enable_so_raid10_format_to_md_layout_fndecl_37120 raid10_format_to_md_layout fndecl 0-2 37120 &enable_so_fuse_request_alloc_fndecl_37120
+enable_so_probe_memory_block_size_fndecl_37124 probe_memory_block_size fndecl 0 37124 NULL
-+enable_so_find_biggest_section_pfn_fndecl_37125 find_biggest_section_pfn fndecl 0-4 37125 NULL nohasharray
-+enable_so_ocfs2_check_if_ancestor_fndecl_37125 ocfs2_check_if_ancestor fndecl 2 37125 &enable_so_find_biggest_section_pfn_fndecl_37125
++enable_so_ocfs2_check_if_ancestor_fndecl_37125 ocfs2_check_if_ancestor fndecl 2 37125 NULL nohasharray
++enable_so_find_biggest_section_pfn_fndecl_37125 find_biggest_section_pfn fndecl 0-4 37125 &enable_so_ocfs2_check_if_ancestor_fndecl_37125
+enable_so_sc_blk_cnt_nilfs_sc_info_37130 sc_blk_cnt nilfs_sc_info 0 37130 NULL nohasharray
+enable_so___rh_alloc_fndecl_37130 __rh_alloc fndecl 2 37130 &enable_so_sc_blk_cnt_nilfs_sc_info_37130
+enable_so_nfs_updatepage_fndecl_37131 nfs_updatepage fndecl 3-4 37131 NULL
@@ -166725,10 +166027,12 @@ index 0000000..9da833a
+enable_so_audio_mute_fndecl_37139 audio_mute fndecl 2 37139 NULL
+enable_so_m5mols_busy_wait_fndecl_37140 m5mols_busy_wait fndecl 2 37140 NULL
+enable_so_wdata_send_pages_fndecl_37142 wdata_send_pages fndecl 2 37142 NULL
++enable_so_acpi_data_prop_read_single_fndecl_37152 acpi_data_prop_read_single fndecl 0 37152 NULL
+enable_so_pd_num_mthca_pd_37155 pd_num mthca_pd 0 37155 NULL
+enable_so_mlx5_query_port_pvlc_fndecl_37159 mlx5_query_port_pvlc fndecl 3 37159 NULL
+enable_so_max_pdu_size_l2cap_conf_rfc_37161 max_pdu_size l2cap_conf_rfc 0 37161 NULL
-+enable_so_ld_tgt_count_lov_desc_37163 ld_tgt_count lov_desc 0 37163 NULL
++enable_so_pcm_channels_amdtp_tscm_37163 pcm_channels amdtp_tscm 0 37163 NULL nohasharray
++enable_so_ld_tgt_count_lov_desc_37163 ld_tgt_count lov_desc 0 37163 &enable_so_pcm_channels_amdtp_tscm_37163
+enable_so_l_logBBstart_xlog_37164 l_logBBstart xlog 0 37164 NULL
+enable_so_txCredits_edgeport_port_37166 txCredits edgeport_port 0 37166 NULL
+enable_so_read_mmp_block_fndecl_37168 read_mmp_block fndecl 3 37168 NULL nohasharray
@@ -166742,8 +166046,7 @@ index 0000000..9da833a
+enable_so_octeon_init_droq_fndecl_37180 octeon_init_droq fndecl 4-3 37180 &enable_so_sisusbcon_do_font_op_fndecl_37180
+enable_so_of_address_to_resource_fndecl_37191 of_address_to_resource fndecl 2 37191 NULL
+enable_so_ssd1307fb_write_fndecl_37192 ssd1307fb_write fndecl 3 37192 NULL
-+enable_so_rx_status_0_ath5k_hw_rx_status_37197 rx_status_0 ath5k_hw_rx_status 0 37197 NULL nohasharray
-+enable_so_hwflags_read_fndecl_37197 hwflags_read fndecl 3 37197 &enable_so_rx_status_0_ath5k_hw_rx_status_37197
++enable_so_rx_status_0_ath5k_hw_rx_status_37197 rx_status_0 ath5k_hw_rx_status 0 37197 NULL
+enable_so_nbperpage_jfs_sb_info_37199 nbperpage jfs_sb_info 0 37199 NULL
+enable_so_gva_to_gpa_kvm_mmu_37200 gva_to_gpa kvm_mmu 0 37200 NULL
+enable_so_digestsize_shash_alg_37203 digestsize shash_alg 0 37203 NULL
@@ -166757,18 +166060,15 @@ index 0000000..9da833a
+enable_so_write_max_at24_data_37243 write_max at24_data 0 37243 NULL
+enable_so_csum_and_copy_to_iter_fndecl_37244 csum_and_copy_to_iter fndecl 2 37244 NULL
+enable_so_test_unaligned_bulk_fndecl_37246 test_unaligned_bulk fndecl 3-2 37246 NULL
-+enable_so_iwl_dump_fh_fndecl_37248 iwl_dump_fh fndecl 0 37248 NULL
+enable_so_i_refcount_loc_ocfs2_dinode_37249 i_refcount_loc ocfs2_dinode 0 37249 NULL
+enable_so_hfsplus_find_attr_fndecl_37253 hfsplus_find_attr fndecl 0 37253 NULL
+enable_so_ath6kl_wmi_ap_set_beacon_intvl_cmd_fndecl_37254 ath6kl_wmi_ap_set_beacon_intvl_cmd fndecl 2 37254 NULL
+enable_so_pfkey_sockaddr_pair_size_fndecl_37257 pfkey_sockaddr_pair_size fndecl 0 37257 NULL
+enable_so_isdn_writebuf_stub_fndecl_37260 isdn_writebuf_stub fndecl 4 37260 NULL
-+enable_so_size_uhci_debug_37265 size uhci_debug 0 37265 NULL
+enable_so___pskb_trim_head_fndecl_37267 __pskb_trim_head fndecl 2 37267 NULL
+enable_so_ieee80211_rx_radiotap_hdrlen_fndecl_37268 ieee80211_rx_radiotap_hdrlen fndecl 0 37268 NULL
+enable_so_blk_queue_update_dma_pad_fndecl_37275 blk_queue_update_dma_pad fndecl 2 37275 NULL
-+enable_so_copy_entries_to_user_fndecl_37276 copy_entries_to_user fndecl 1 37276 NULL nohasharray
-+enable_so_sc_max_sge_rd_svcxprt_rdma_37276 sc_max_sge_rd svcxprt_rdma 0 37276 &enable_so_copy_entries_to_user_fndecl_37276
++enable_so_copy_entries_to_user_fndecl_37276 copy_entries_to_user fndecl 1 37276 NULL
+enable_so_max_packet_sz_rx_musb_hw_ep_37278 max_packet_sz_rx musb_hw_ep 0 37278 NULL
+enable_so_scrollback_current_vardecl_fbcon_c_37279 scrollback_current vardecl_fbcon.c 0 37279 NULL
+enable_so_reg_end_ath6kl_diag_reg_info_37280 reg_end ath6kl_diag_reg_info 0 37280 NULL
@@ -166791,6 +166091,7 @@ index 0000000..9da833a
+enable_so_ufs_change_blocknr_fndecl_37335 ufs_change_blocknr fndecl 2-4-5 37335 &enable_so_ie_len_cfg80211_sched_scan_request_37335
+enable_so_ud_cursor_fndecl_37338 ud_cursor fndecl 4 37338 NULL nohasharray
+enable_so_line6_midibuf_init_fndecl_37338 line6_midibuf_init fndecl 2 37338 &enable_so_ud_cursor_fndecl_37338
++enable_so_mdio_mii_ioctl_fndecl_37342 mdio_mii_ioctl fndecl 0 37342 NULL
+enable_so_hso_serial_common_create_fndecl_37343 hso_serial_common_create fndecl 3-4 37343 NULL
+enable_so_dlen_pg_read_hdr_37352 dlen pg_read_hdr 0 37352 NULL
+enable_so_blksize_fuse_mount_data_37357 blksize fuse_mount_data 0 37357 NULL
@@ -166798,6 +166099,7 @@ index 0000000..9da833a
+enable_so_pdev_id_sm501_devdata_37360 pdev_id sm501_devdata 0 37360 NULL
+enable_so_rc_len_whcrc_37363 rc_len whcrc 0 37363 NULL
+enable_so_gsm_change_mtu_fndecl_37364 gsm_change_mtu fndecl 2 37364 NULL
++enable_so_loff_scifioctl_fence_signal_37366 loff scifioctl_fence_signal 0 37366 NULL
+enable_so_alauda_read_data_fndecl_37367 alauda_read_data fndecl 3-2 37367 NULL
+enable_so_bt_alloc_fndecl_37370 bt_alloc fndecl 2 37370 NULL
+enable_so_peer_addr_len_drbd_connection_37371 peer_addr_len drbd_connection 0 37371 NULL
@@ -166821,7 +166123,6 @@ index 0000000..9da833a
+enable_so_radeon_gart_size_vardecl_37434 radeon_gart_size vardecl 0 37434 NULL nohasharray
+enable_so_inode_table_ext4_new_group_data_37434 inode_table ext4_new_group_data 0 37434 &enable_so_radeon_gart_size_vardecl_37434
+enable_so_nice_workqueue_attrs_37437 nice workqueue_attrs 0 37437 NULL
-+enable_so_mwifiex_debug_read_fndecl_37441 mwifiex_debug_read fndecl 3 37441 NULL
+enable_so_dib0700_ctrl_rd_fndecl_37445 dib0700_ctrl_rd fndecl 0 37445 NULL
+enable_so_size_erst_record_id_cache_37450 size erst_record_id_cache 0 37450 NULL
+enable_so_right_margin_fb_var_screeninfo_37453 right_margin fb_var_screeninfo 0 37453 NULL nohasharray
@@ -166867,10 +166168,10 @@ index 0000000..9da833a
+enable_so_n_ai_urbs_usbdux_private_37595 n_ai_urbs usbdux_private 0 37595 NULL
+enable_so_ocfs2_cp_xattr_bucket_fndecl_37598 ocfs2_cp_xattr_bucket fndecl 3-4 37598 NULL
+enable_so_data_sock_create_fndecl_37606 data_sock_create fndecl 3 37606 NULL
++enable_so_v9fs_xattr_set_acl_fndecl_37607 v9fs_xattr_set_acl fndecl 5 37607 NULL
+enable_so_tun_do_read_fndecl_37614 tun_do_read fndecl 0 37614 NULL
+enable_so_tx_tx_start_data_read_fndecl_37616 tx_tx_start_data_read fndecl 3 37616 NULL nohasharray
+enable_so_eeprom_len_fmc_device_37616 eeprom_len fmc_device 0 37616 &enable_so_tx_tx_start_data_read_fndecl_37616
-+enable_so_balloon_hotplug_balloon_stats_37629 balloon_hotplug balloon_stats 0 37629 NULL
+enable_so_dcbp_set_code_fndecl_37633 dcbp_set_code fndecl 2 37633 NULL
+enable_so_lfb_height_screen_info_37634 lfb_height screen_info 0 37634 NULL
+enable_so_rmtblkcnt2_xfs_da_args_37635 rmtblkcnt2 xfs_da_args 0 37635 NULL
@@ -166880,8 +166181,8 @@ index 0000000..9da833a
+enable_so_addrlen_rpc_xprt_37643 addrlen rpc_xprt 0 37643 NULL
+enable_so_bufsize_vardecl_pagetest_c_37645 bufsize vardecl_pagetest.c 0 37645 NULL
+enable_so_alloc_ldt_struct_fndecl_37649 alloc_ldt_struct fndecl 1 37649 NULL
-+enable_so_v9fs_xattr_user_get_fndecl_37650 v9fs_xattr_user_get fndecl 4 37650 NULL nohasharray
-+enable_so_cache_size_cache_37650 cache_size cache 0 37650 &enable_so_v9fs_xattr_user_get_fndecl_37650
++enable_so_cache_size_cache_37650 cache_size cache 0 37650 NULL
++enable_so_r5l_append_payload_meta_fndecl_37651 r5l_append_payload_meta fndecl 3 37651 NULL
+enable_so_spu_subport_cnt_ipath_user_info_37652 spu_subport_cnt ipath_user_info 0 37652 NULL
+enable_so_bop_check_insert_nilfs_bmap_operations_37658 bop_check_insert nilfs_bmap_operations 0 37658 NULL nohasharray
+enable_so_hfcsusb_rx_frame_fndecl_37658 hfcsusb_rx_frame fndecl 3 37658 &enable_so_bop_check_insert_nilfs_bmap_operations_37658
@@ -166894,9 +166195,7 @@ index 0000000..9da833a
+enable_so_nvme_trans_ext_inq_page_fndecl_37691 nvme_trans_ext_inq_page fndecl 3 37691 NULL
+enable_so_zm_wmfw_adsp2_alg_hdr_37694 zm wmfw_adsp2_alg_hdr 0 37694 NULL
+enable_so_usb_ftdi_elan_edset_setup_fndecl_37695 usb_ftdi_elan_edset_setup fndecl 0 37695 NULL
-+enable_so_snic_trace_max_pages_vardecl_37696 snic_trace_max_pages vardecl 0 37696 NULL
+enable_so_orig_video_points_screen_info_37702 orig_video_points screen_info 0 37702 NULL
-+enable_so_xenvif_write_io_ring_fndecl_37713 xenvif_write_io_ring fndecl 3 37713 NULL
+enable_so_num_tx_ring_sh_eth_private_37717 num_tx_ring sh_eth_private 0 37717 NULL
+enable_so_regset_tls_get_fndecl_37721 regset_tls_get fndecl 3 37721 NULL
+enable_so_zap_bt_entries_mapping_fndecl_37722 zap_bt_entries_mapping fndecl 3-4-2 37722 NULL
@@ -166929,8 +166228,7 @@ index 0000000..9da833a
+enable_so_gid_tbl_len_ib_port_attr_37809 gid_tbl_len ib_port_attr 0 37809 NULL nohasharray
+enable_so_devnum_genwqe_genwqe_dev_37809 devnum_genwqe genwqe_dev 0 37809 &enable_so_gid_tbl_len_ib_port_attr_37809
+enable_so_buf_size_mlx5_ib_qp_37812 buf_size mlx5_ib_qp 0 37812 NULL
-+enable_so_page_shift_qib_mregion_37818 page_shift qib_mregion 0 37818 NULL nohasharray
-+enable_so_touchpad_num_ad714x_platform_data_37818 touchpad_num ad714x_platform_data 0 37818 &enable_so_page_shift_qib_mregion_37818
++enable_so_page_shift_qib_mregion_37818 page_shift qib_mregion 0 37818 NULL
+enable_so_out_ep_snd_usb_midi_endpoint_info_37819 out_ep snd_usb_midi_endpoint_info 0 37819 NULL
+enable_so_max_header_size_ircomm_tty_cb_37822 max_header_size ircomm_tty_cb 0 37822 NULL
+enable_so_my_addr_len_drbd_connection_37828 my_addr_len drbd_connection 0 37828 NULL
@@ -166974,9 +166272,9 @@ index 0000000..9da833a
+enable_so___handle_mm_fault_fndecl_37953 __handle_mm_fault fndecl 3 37953 &enable_so_wpa_ie_len_islpci_bss_wpa_ie_37953
+enable_so_rx_ring_count_fm10k_intfc_37957 rx_ring_count fm10k_intfc 0 37957 NULL
+enable_so_cleanmarker_size_jffs2_sb_info_37959 cleanmarker_size jffs2_sb_info 0 37959 NULL
++enable_so_num_kcontrols_snd_soc_tplg_dapm_widget_37960 num_kcontrols snd_soc_tplg_dapm_widget 0 37960 NULL
+enable_so_consume_size_vmci_qp_alloc_info_vmvm_37962 consume_size vmci_qp_alloc_info_vmvm 0 37962 NULL
-+enable_so_unmap_vmas_fndecl_37967 unmap_vmas fndecl 4-3 37967 NULL nohasharray
-+enable_so_mbox_write_fndecl_37967 mbox_write fndecl 3 37967 &enable_so_unmap_vmas_fndecl_37967
++enable_so_unmap_vmas_fndecl_37967 unmap_vmas fndecl 4-3 37967 NULL
+enable_so_ieee80211_if_write_uapsd_queues_fndecl_37973 ieee80211_if_write_uapsd_queues fndecl 3 37973 NULL
+enable_so_vortex_core_init_fndecl_37980 vortex_core_init fndecl 0 37980 NULL
+enable_so_key_search_fndecl_37982 key_search fndecl 0 37982 NULL
@@ -166992,6 +166290,7 @@ index 0000000..9da833a
+enable_so_l_len_xfs_flock64_38022 l_len xfs_flock64 0 38022 NULL nohasharray
+enable_so_max_cmnds_vardecl_aic94xx_hwi_c_38022 max_cmnds vardecl_aic94xx_hwi.c 0 38022 &enable_so_l_len_xfs_flock64_38022
+enable_so_num_entries_ipt_replace_38023 num_entries ipt_replace 0 38023 NULL
++enable_so_start_tpm_info_38024 start tpm_info 0 38024 NULL
+enable_so_iriap_connect_confirm_fndecl_38027 iriap_connect_confirm fndecl 5 38027 NULL
+enable_so_length_mcp_slot_38029 length mcp_slot 0 38029 NULL nohasharray
+enable_so_ath6kl_set_bitrate_mask64_fndecl_38029 ath6kl_set_bitrate_mask64 fndecl 2 38029 &enable_so_length_mcp_slot_38029
@@ -167021,6 +166320,7 @@ index 0000000..9da833a
+enable_so_length_wpa_param_38074 length wpa_param 0 38074 NULL
+enable_so_fb_bpp_vardecl_udl_fb_c_38075 fb_bpp vardecl_udl_fb.c 0 38075 NULL
+enable_so_ps_upsd_utilization_read_fndecl_38086 ps_upsd_utilization_read fndecl 3 38086 NULL
++enable_so_driver_data_pca953x_chip_38096 driver_data pca953x_chip 0 38096 NULL
+enable_so_bd_group_ext4_buddy_38101 bd_group ext4_buddy 0 38101 NULL nohasharray
+enable_so_la_bm_off_ocfs2_local_alloc_38101 la_bm_off ocfs2_local_alloc 0 38101 &enable_so_bd_group_ext4_buddy_38101
+enable_so_softingcs_index_vardecl_softing_cs_c_38102 softingcs_index vardecl_softing_cs.c 0 38102 NULL
@@ -167039,7 +166339,6 @@ index 0000000..9da833a
+enable_so_rtw_os_xmit_resource_alloc23a_fndecl_38142 rtw_os_xmit_resource_alloc23a fndecl 3 38142 NULL
+enable_so_nentries_ebt_replace_kernel_38149 nentries ebt_replace_kernel 0 38149 NULL
+enable_so_btrfs_get_io_failure_record_fndecl_38153 btrfs_get_io_failure_record fndecl 3-2 38153 NULL
-+enable_so_iwl_dbgfs_bcast_filters_macs_read_fndecl_38156 iwl_dbgfs_bcast_filters_macs_read fndecl 3 38156 NULL
+enable_so_st_read_fndecl_38176 st_read fndecl 3 38176 NULL
+enable_so___mxt_read_reg_fndecl_38178 __mxt_read_reg fndecl 3-0 38178 NULL
+enable_so_compat_dccp_setsockopt_fndecl_38188 compat_dccp_setsockopt fndecl 5 38188 NULL
@@ -167052,8 +166351,7 @@ index 0000000..9da833a
+enable_so_raw_sig_size_x509_certificate_38211 raw_sig_size x509_certificate 0 38211 NULL
+enable_so_ath6kl_wmi_del_wow_pattern_cmd_fndecl_38224 ath6kl_wmi_del_wow_pattern_cmd fndecl 2 38224 NULL nohasharray
+enable_so_prealloc_stream_buf_vardecl_hpioctl_c_38224 prealloc_stream_buf vardecl_hpioctl.c 0 38224 &enable_so_ath6kl_wmi_del_wow_pattern_cmd_fndecl_38224
-+enable_so_target_alloc_sgl_fndecl_38227 target_alloc_sgl fndecl 3 38227 NULL nohasharray
-+enable_so_ath10k_dbg_sta_write_addba_fndecl_38227 ath10k_dbg_sta_write_addba fndecl 3 38227 &enable_so_target_alloc_sgl_fndecl_38227
++enable_so_target_alloc_sgl_fndecl_38227 target_alloc_sgl fndecl 3 38227 NULL
+enable_so_sh_mmcif_error_manage_fndecl_38230 sh_mmcif_error_manage fndecl 0 38230 NULL
+enable_so_dvb_audio_write_fndecl_38232 dvb_audio_write fndecl 3 38232 NULL
+enable_so_max_buf_size_tegra_spi_data_38233 max_buf_size tegra_spi_data 0 38233 NULL
@@ -167062,7 +166360,6 @@ index 0000000..9da833a
+enable_so_periodic_bytes_fndecl_38241 periodic_bytes fndecl 0 38241 NULL
+enable_so_submit_bio_start_async_submit_bio_38242 submit_bio_start async_submit_bio 0 38242 NULL
+enable_so_i2400m_bm_cmd_fndecl_38243 i2400m_bm_cmd fndecl 0-5 38243 NULL
-+enable_so_init_map_ipmac_fndecl_38246 init_map_ipmac fndecl 5 38246 NULL
+enable_so_get_cell_fndecl_38247 get_cell fndecl 2 38247 NULL
+enable_so_isd200_try_enum_fndecl_38250 isd200_try_enum fndecl 2 38250 NULL nohasharray
+enable_so_name_len_ext2_dir_entry_2_38250 name_len ext2_dir_entry_2 0 38250 &enable_so_isd200_try_enum_fndecl_38250
@@ -167073,10 +166370,11 @@ index 0000000..9da833a
+enable_so_rsize_nfs_server_38256 rsize nfs_server 0 38256 NULL nohasharray
+enable_so_bLength_usb_cdc_country_functional_desc_38256 bLength usb_cdc_country_functional_desc 0 38256 &enable_so_rsize_nfs_server_38256
+enable_so__osd_req_cdb_len_fndecl_38259 _osd_req_cdb_len fndecl 0 38259 NULL
-+enable_so_prepare_header100_fndecl_38275 prepare_header100 fndecl 3-0 38275 NULL nohasharray
-+enable_so_amdgpu_cs_parser_create_fndecl_38275 amdgpu_cs_parser_create fndecl 5 38275 &enable_so_prepare_header100_fndecl_38275
++enable_so_security_set_fndecl_38262 security_set fndecl 5 38262 NULL
++enable_so_prepare_header100_fndecl_38275 prepare_header100 fndecl 3-0 38275 NULL
+enable_so_min_pnp_port_38276 min pnp_port 0 38276 NULL
-+enable_so_irnet_connect_confirm_fndecl_38277 irnet_connect_confirm fndecl 5 38277 NULL
++enable_so_numpmkid_host_if_pmkid_attr_38277 numpmkid host_if_pmkid_attr 0 38277 NULL nohasharray
++enable_so_irnet_connect_confirm_fndecl_38277 irnet_connect_confirm fndecl 5 38277 &enable_so_numpmkid_host_if_pmkid_attr_38277
+enable_so_ipath_rcvegrbufsize_ipath_devdata_38283 ipath_rcvegrbufsize ipath_devdata 0 38283 NULL
+enable_so_len_osd_attr_38284 len osd_attr 0 38284 NULL nohasharray
+enable_so_header_length_fw_iso_packet_38284 header_length fw_iso_packet 0 38284 &enable_so_len_osd_attr_38284
@@ -167088,15 +166386,15 @@ index 0000000..9da833a
+enable_so_ipw_get_event_log_len_fndecl_38302 ipw_get_event_log_len fndecl 0 38302 &enable_so_num_kcontrols_snd_soc_dapm_widget_38302
+enable_so_img_width_s5p_mfc_ctx_38303 img_width s5p_mfc_ctx 0 38303 NULL
+enable_so_height_zoran_v4l_settings_38307 height zoran_v4l_settings 0 38307 NULL
-+enable_so_bad_peb_count_ubi_attach_info_38310 bad_peb_count ubi_attach_info 0 38310 NULL nohasharray
-+enable_so_ath10k_dbg_sta_read_aggr_mode_fndecl_38310 ath10k_dbg_sta_read_aggr_mode fndecl 3 38310 &enable_so_bad_peb_count_ubi_attach_info_38310
++enable_so_bad_peb_count_ubi_attach_info_38310 bad_peb_count ubi_attach_info 0 38310 NULL
+enable_so_ext4_get_block_write_fndecl_38313 ext4_get_block_write fndecl 2 38313 NULL nohasharray
+enable_so_ftid_base_tid_info_38313 ftid_base tid_info 0 38313 &enable_so_ext4_get_block_write_fndecl_38313
+enable_so_nr_siblings_perf_event_38320 nr_siblings perf_event 0 38320 NULL
+enable_so_ob_max_size_mvumi_hba_38327 ob_max_size mvumi_hba 0 38327 NULL
+enable_so_radeon_kms_compat_ioctl_fndecl_38328 radeon_kms_compat_ioctl fndecl 2 38328 NULL
+enable_so_xfs_vn_fiemap_fndecl_38336 xfs_vn_fiemap fndecl 3-4 38336 NULL
-+enable_so_iov_len_sg_iovec_38337 iov_len sg_iovec 0 38337 NULL
++enable_so_ext_lfb_base_screen_info_38337 ext_lfb_base screen_info 0 38337 NULL nohasharray
++enable_so_iov_len_sg_iovec_38337 iov_len sg_iovec 0 38337 &enable_so_ext_lfb_base_screen_info_38337
+enable_so_num_sys_eqs_mlx4_dev_cap_38340 num_sys_eqs mlx4_dev_cap 0 38340 NULL
+enable_so_get_first_ref_fndecl_38342 get_first_ref fndecl 0 38342 NULL
+enable_so_record_size_vardecl_mtdoops_c_38343 record_size vardecl_mtdoops.c 0 38343 NULL
@@ -167108,23 +166406,20 @@ index 0000000..9da833a
+enable_so_rate_snd_soc_dai_38358 rate snd_soc_dai 0 38358 NULL
+enable_so_pci_sriov_resource_alignment_fndecl_38365 pci_sriov_resource_alignment fndecl 0 38365 NULL
+enable_so_flush_buffer_fndecl_38367 flush_buffer fndecl 2 38367 NULL
-+enable_so_ieee80211_if_read_dot11MeshHWMPRootMode_fndecl_38370 ieee80211_if_read_dot11MeshHWMPRootMode fndecl 3 38370 NULL
+enable_so_ri_length_gfs2_rindex_38375 ri_length gfs2_rindex 0 38375 NULL
+enable_so_wsm_handle_exception_fndecl_38377 wsm_handle_exception fndecl 3 38377 NULL
+enable_so_options_len_ip_tunnel_info_38380 options_len ip_tunnel_info 0 38380 NULL
+enable_so_dvb_register_frontend_fndecl_38382 dvb_register_frontend fndecl 0 38382 NULL
+enable_so_chrdev_setup_rx_fndecl_38384 chrdev_setup_rx fndecl 2 38384 NULL
+enable_so_blk_register_region_fndecl_38387 blk_register_region fndecl 1-2 38387 NULL
-+enable_so_mwifiex_rdeeprom_read_fndecl_38390 mwifiex_rdeeprom_read fndecl 3 38390 NULL
+enable_so_ext4_ext_rm_leaf_fndecl_38397 ext4_ext_rm_leaf fndecl 5 38397 NULL
+enable_so_hfsplus_brec_read_fndecl_38399 hfsplus_brec_read fndecl 0 38399 NULL
+enable_so_ath6kl_sdio_alloc_prep_scat_req_fndecl_38401 ath6kl_sdio_alloc_prep_scat_req fndecl 2 38401 NULL
+enable_so_sl_tclass_flowlabel_mthca_qp_path_38402 sl_tclass_flowlabel mthca_qp_path 0 38402 NULL
+enable_so__c4iw_write_mem_dma_fndecl_38404 _c4iw_write_mem_dma fndecl 3 38404 NULL
+enable_so_parent_offset_isofs_fid_38408 parent_offset isofs_fid 0 38408 NULL
-+enable_so_dwc3_mode_write_fndecl_38414 dwc3_mode_write fndecl 3 38414 NULL
-+enable_so___rocker_port_mem_alloc_fndecl_38416 __rocker_port_mem_alloc fndecl 4 38416 NULL
+enable_so_xdr_xcode_array2_fndecl_38417 xdr_xcode_array2 fndecl 2 38417 NULL
++enable_so_count_grant_map_38422 count grant_map 0 38422 NULL
+enable_so_bond_next_port_mlx4_ib_dev_38423 bond_next_port mlx4_ib_dev 0 38423 NULL nohasharray
+enable_so_read_page_fndecl_38423 read_page fndecl 2 38423 &enable_so_bond_next_port_mlx4_ib_dev_38423 nohasharray
+enable_so_todo_dmxdev_filter_38423 todo dmxdev_filter 0 38423 &enable_so_read_page_fndecl_38423
@@ -167140,8 +166435,6 @@ index 0000000..9da833a
+enable_so_vxge_rx_alloc_fndecl_38443 vxge_rx_alloc fndecl 3 38443 NULL
+enable_so___ieee80211_tx_skb_tid_band_fndecl_38444 __ieee80211_tx_skb_tid_band fndecl 3 38444 NULL nohasharray
+enable_so_test_ofsh_cyttsp4_sysinfo_data_38444 test_ofsh cyttsp4_sysinfo_data 0 38444 &enable_so___ieee80211_tx_skb_tid_band_fndecl_38444
-+enable_so_slave_count_w1_master_38454 slave_count w1_master 0 38454 NULL
-+enable_so_tsoffset_tcp_sock_38456 tsoffset tcp_sock 0 38456 NULL
+enable_so_dvb_ringbuffer_avail_fndecl_38474 dvb_ringbuffer_avail fndecl 0 38474 NULL
+enable_so_blocksize_gss_krb5_enctype_38477 blocksize gss_krb5_enctype 0 38477 NULL
+enable_so___fuse_request_alloc_fndecl_38479 __fuse_request_alloc fndecl 1 38479 NULL
@@ -167151,7 +166444,7 @@ index 0000000..9da833a
+enable_so_copy_block_fndecl_38500 copy_block fndecl 3 38500 NULL
+enable_so_create_rcom_fndecl_38501 create_rcom fndecl 4 38501 NULL nohasharray
+enable_so_info_len_ib_ucm_sidr_rep_38501 info_len ib_ucm_sidr_rep 0 38501 &enable_so_create_rcom_fndecl_38501
-+enable_so_nsm_get_handle_fndecl_38506 nsm_get_handle fndecl 4 38506 NULL
++enable_so_host_int_add_rx_gtk_fndecl_38503 host_int_add_rx_gtk fndecl 5-3 38503 NULL
+enable_so_udp_recvmsg_fndecl_38509 udp_recvmsg fndecl 3 38509 NULL nohasharray
+enable_so_msdu_len_htt_rx_offload_msdu_38509 msdu_len htt_rx_offload_msdu 0 38509 &enable_so_udp_recvmsg_fndecl_38509
+enable_so_isofs_readpages_fndecl_38512 isofs_readpages fndecl 4 38512 NULL
@@ -167161,21 +166454,18 @@ index 0000000..9da833a
+enable_so_mxuport_process_read_urb_data_fndecl_38523 mxuport_process_read_urb_data fndecl 3 38523 NULL nohasharray
+enable_so_octeon_init_instr_queue_fndecl_38523 octeon_init_instr_queue fndecl 3 38523 &enable_so_mxuport_process_read_urb_data_fndecl_38523
+enable_so_emu_setup_memblk_fndecl_38524 emu_setup_memblk fndecl 5 38524 NULL
-+enable_so_set_extent_dirty_fndecl_38529 set_extent_dirty fndecl 3-2 38529 NULL nohasharray
-+enable_so_smsdvb_stats_read_fndecl_38529 smsdvb_stats_read fndecl 3 38529 &enable_so_set_extent_dirty_fndecl_38529
++enable_so_set_extent_dirty_fndecl_38529 set_extent_dirty fndecl 3-2 38529 NULL
+enable_so_max_pde_used_radeon_vm_38536 max_pde_used radeon_vm 0 38536 NULL
+enable_so_amdgpu_sa_bo_manager_init_fndecl_38537 amdgpu_sa_bo_manager_init fndecl 3 38537 NULL
+enable_so_prism2_ap_translate_scan_fndecl_38540 prism2_ap_translate_scan fndecl 0 38540 NULL
+enable_so_cx18_av_read_fndecl_38542 cx18_av_read fndecl 0 38542 NULL
+enable_so_hw_channels_sh_cmt_device_38544 hw_channels sh_cmt_device 0 38544 NULL
-+enable_so_clk_fd_set_rate_fndecl_38545 clk_fd_set_rate fndecl 2-3 38545 NULL nohasharray
-+enable_so_snd_timer_user_tselect_fndecl_38545 snd_timer_user_tselect fndecl 0 38545 &enable_so_clk_fd_set_rate_fndecl_38545
-+enable_so_ulist_add_merge_fndecl_38547 ulist_add_merge fndecl 0-2 38547 NULL nohasharray
++enable_so_snd_timer_user_tselect_fndecl_38545 snd_timer_user_tselect fndecl 0 38545 NULL
++enable_so_ulist_add_merge_fndecl_38547 ulist_add_merge fndecl 0-2-3 38547 NULL nohasharray
+enable_so_krb5_encrypt_fndecl_38547 krb5_encrypt fndecl 5 38547 &enable_so_ulist_add_merge_fndecl_38547
+enable_so_fb_base_phys_radeonfb_info_38551 fb_base_phys radeonfb_info 0 38551 NULL
+enable_so_set_stream_hw_fndecl_38553 set_stream_hw fndecl 3 38553 NULL nohasharray
+enable_so_tx_win_size_mwifiex_add_ba_param_38553 tx_win_size mwifiex_add_ba_param 0 38553 &enable_so_set_stream_hw_fndecl_38553
-+enable_so_o2net_debug_read_fndecl_38554 o2net_debug_read fndecl 3 38554 NULL
+enable_so_rx_max_size_rtl_usb_38560 rx_max_size rtl_usb 0 38560 NULL
+enable_so_ext2_alloc_blocks_fndecl_38562 ext2_alloc_blocks fndecl 2 38562 NULL nohasharray
+enable_so_hysdn_conf_write_fndecl_38562 hysdn_conf_write fndecl 3 38562 &enable_so_ext2_alloc_blocks_fndecl_38562
@@ -167185,8 +166475,8 @@ index 0000000..9da833a
+enable_so_htable_size_fndecl_38567 htable_size fndecl 0-1 38567 &enable_so_gfs2_dir_read_leaf_fndecl_38567
+enable_so_memblock_alloc_base_nid_fndecl_38568 memblock_alloc_base_nid fndecl 2-1-0-3 38568 NULL nohasharray
+enable_so_smk_write_load2_fndecl_38568 smk_write_load2 fndecl 3 38568 &enable_so_memblock_alloc_base_nid_fndecl_38568
-+enable_so_nvme_major_vardecl_nvme_core_c_38572 nvme_major vardecl_nvme-core.c 0 38572 NULL
-+enable_so_setup_dma_urb_38573 setup_dma urb 0 38573 NULL nohasharray
++enable_so_geneve6_build_skb_fndecl_38573 geneve6_build_skb fndecl 5 38573 NULL nohasharray
++enable_so_setup_dma_urb_38573 setup_dma urb 0 38573 &enable_so_geneve6_build_skb_fndecl_38573 nohasharray
+enable_so_len_port_buffer_38573 len port_buffer 0 38573 &enable_so_setup_dma_urb_38573
+enable_so_block_mtu_hci_dev_38575 block_mtu hci_dev 0 38575 NULL
+enable_so_data_dma_aiptek_38577 data_dma aiptek 0 38577 NULL
@@ -167195,6 +166485,7 @@ index 0000000..9da833a
+enable_so_retry_count_read_fndecl_38578 retry_count_read fndecl 3 38578 &enable_so_bfad_iocmd_port_get_bbcr_attr_fndecl_38578
+enable_so_usVActive__ATOM_DTD_FORMAT_38581 usVActive _ATOM_DTD_FORMAT 0 38581 NULL
+enable_so_gdm_usb_hci_send_fndecl_38585 gdm_usb_hci_send fndecl 3 38585 NULL
++enable_so_rx_tpa_start_cmp_len_flags_type_rx_tpa_start_cmp_38587 rx_tpa_start_cmp_len_flags_type rx_tpa_start_cmp 0 38587 NULL
+enable_so_sub_alloc_fndecl_38591 sub_alloc fndecl 0 38591 NULL
+enable_so_print_prefix_fndecl_38595 print_prefix fndecl 0 38595 NULL
+enable_so_set_nfilters_fndecl_38597 set_nfilters fndecl 2 38597 NULL
@@ -167208,7 +166499,6 @@ index 0000000..9da833a
+enable_so_objectid_reiserfs_iget_args_38612 objectid reiserfs_iget_args 0 38612 NULL
+enable_so_mga_compat_ioctl_fndecl_38617 mga_compat_ioctl fndecl 2 38617 NULL
+enable_so_max_wqe_rqe_ocrdma_create_qp_rsp_38618 max_wqe_rqe ocrdma_create_qp_rsp 0 38618 NULL
-+enable_so_ieee80211_if_read_dot11MeshRetryTimeout_fndecl_38619 ieee80211_if_read_dot11MeshRetryTimeout fndecl 3 38619 NULL
+enable_so_pageshift_sddr55_card_info_38623 pageshift sddr55_card_info 0 38623 NULL
+enable_so_ar5523_config_multi_fndecl_38630 ar5523_config_multi fndecl 4 38630 NULL
+enable_so_level_kvm_shadow_walk_iterator_38631 level kvm_shadow_walk_iterator 0 38631 NULL
@@ -167240,15 +166530,13 @@ index 0000000..9da833a
+enable_so_ioremap_prot_fndecl_38695 ioremap_prot fndecl 2-1 38695 NULL
+enable_so_bulk_in_ep_irda_usb_cb_38699 bulk_in_ep irda_usb_cb 0 38699 NULL
+enable_so_get_user_pages_fast_fndecl_38708 get_user_pages_fast fndecl 0-1 38708 NULL
-+enable_so_cxgbi_ddp_init_fndecl_38714 cxgbi_ddp_init fndecl 4-5 38714 NULL nohasharray
-+enable_so_aac_change_queue_depth_fndecl_38714 aac_change_queue_depth fndecl 2 38714 &enable_so_cxgbi_ddp_init_fndecl_38714
++enable_so_cxgbi_ddp_init_fndecl_38714 cxgbi_ddp_init fndecl 4-5 38714 NULL
+enable_so_ifx_spi_insert_flip_string_fndecl_38715 ifx_spi_insert_flip_string fndecl 3 38715 NULL
+enable_so_free_index_fndecl_38718 free_index fndecl 3 38718 NULL
+enable_so_if_write_fndecl_38719 if_write fndecl 3 38719 NULL
+enable_so_esrt_data_vardecl_esrt_c_38729 esrt_data vardecl_esrt.c 0 38729 NULL
+enable_so_acpi_table_parse_entries_fndecl_38730 acpi_table_parse_entries fndecl 0 38730 NULL
+enable_so_vram_vardecl_lxfb_core_c_38739 vram vardecl_lxfb_core.c 0 38739 NULL
-+enable_so___fswab32_fndecl_38742 __fswab32 fndecl 0 38742 NULL
+enable_so_ports_max_wusbhc_38743 ports_max wusbhc 0 38743 NULL
+enable_so___page_file_index_fndecl_38744 __page_file_index fndecl 0 38744 NULL
+enable_so_ds_cc_ravb_ex_rx_desc_38745 ds_cc ravb_ex_rx_desc 0 38745 NULL nohasharray
@@ -167264,9 +166552,11 @@ index 0000000..9da833a
+enable_so_o_height_g2d_frame_38760 o_height g2d_frame 0 38760 NULL
+enable_so_egr_start_sge_38761 egr_start sge 0 38761 NULL
+enable_so_default_advmss_dst_ops_38765 default_advmss dst_ops 0 38765 NULL
++enable_so_midi_snd_oxfw_stream_formation_38770 midi snd_oxfw_stream_formation 0 38770 NULL
+enable_so_az6007_read_fndecl_38771 az6007_read fndecl 6 38771 NULL
+enable_so_inet_gro_complete_fndecl_38772 inet_gro_complete fndecl 2 38772 NULL
+enable_so_qib_alloc_devdata_fndecl_38776 qib_alloc_devdata fndecl 2 38776 NULL
++enable_so_sw_end_stm_data_38777 sw_end stm_data 0 38777 NULL
+enable_so_ih_blkno_ocfs2_inode_handle_38779 ih_blkno ocfs2_inode_handle 0 38779 NULL
+enable_so_height_cx231xx_38782 height cx231xx 0 38782 NULL
+enable_so_create_rmp_cmd_fndecl_38783 create_rmp_cmd fndecl 0 38783 NULL
@@ -167274,19 +166564,21 @@ index 0000000..9da833a
+enable_so_spi_read_buf_fndecl_38792 spi_read_buf fndecl 2 38792 NULL
+enable_so_get_indirect_ea_fndecl_38798 get_indirect_ea fndecl 4-3 38798 NULL
+enable_so_ioread32_fndecl_38804 ioread32 fndecl 0 38804 NULL nohasharray
-+enable_so_size_esb2rom_window_38804 size esb2rom_window 0 38804 &enable_so_ioread32_fndecl_38804 nohasharray
-+enable_so_read_file_tgt_tx_stats_fndecl_38804 read_file_tgt_tx_stats fndecl 3 38804 &enable_so_size_esb2rom_window_38804
++enable_so_size_esb2rom_window_38804 size esb2rom_window 0 38804 &enable_so_ioread32_fndecl_38804
+enable_so_raw6_getfrag_fndecl_38805 raw6_getfrag fndecl 3-4 38805 NULL
+enable_so_taglen_compound_hdr_38807 taglen compound_hdr 0 38807 NULL
-+enable_so_maxpacksize_snd_usX2Y_substream_38808 maxpacksize snd_usX2Y_substream 0 38808 NULL
++enable_so_nb8800_receive_fndecl_38808 nb8800_receive fndecl 3 38808 NULL nohasharray
++enable_so_maxpacksize_snd_usX2Y_substream_38808 maxpacksize snd_usX2Y_substream 0 38808 &enable_so_nb8800_receive_fndecl_38808
+enable_so_do_readv_writev_fndecl_38810 do_readv_writev fndecl 4 38810 NULL
-+enable_so_pad_ib_mad_send_wr_private_38811 pad ib_mad_send_wr_private 0 38811 NULL
++enable_so_tx_ring_size_bnxt_38811 tx_ring_size bnxt 0 38811 NULL nohasharray
++enable_so_pad_ib_mad_send_wr_private_38811 pad ib_mad_send_wr_private 0 38811 &enable_so_tx_ring_size_bnxt_38811
++enable_so_ConnReqIEsLen_user_conn_req_38822 ConnReqIEsLen user_conn_req 0 38822 NULL
+enable_so_vlan_tci_sk_buff_38825 vlan_tci sk_buff 0 38825 NULL
+enable_so_algorithm_r5conf_38831 algorithm r5conf 0 38831 NULL
+enable_so_count_hfs_extent_38834 count hfs_extent 0 38834 NULL
+enable_so_user_read_fndecl_38842 user_read fndecl 3 38842 NULL
+enable_so_do_fault_fndecl_38845 do_fault fndecl 3 38845 NULL
-+enable_so_memblock_alloc_fndecl_38847 memblock_alloc fndecl 2-1 38847 NULL
++enable_so_memblock_alloc_fndecl_38847 memblock_alloc fndecl 2-1-0 38847 NULL
+enable_so_logfs_fsync_fndecl_38849 logfs_fsync fndecl 2-3 38849 NULL
+enable_so_datablob_len_encrypted_key_payload_38850 datablob_len encrypted_key_payload 0 38850 NULL
+enable_so_srs_nslot_sptlrpc_rule_set_38854 srs_nslot sptlrpc_rule_set 0 38854 NULL
@@ -167354,7 +166646,6 @@ index 0000000..9da833a
+enable_so_free_ubifs_lprops_39039 free ubifs_lprops 0 39039 NULL
+enable_so_fat_readpages_fndecl_39045 fat_readpages fndecl 4 39045 NULL nohasharray
+enable_so_pep_reply_fndecl_39045 pep_reply fndecl 5 39045 &enable_so_fat_readpages_fndecl_39045
-+enable_so_iwl_dbgfs_missed_beacon_read_fndecl_39051 iwl_dbgfs_missed_beacon_read fndecl 3 39051 NULL
+enable_so_num_ports_u132_39052 num_ports u132 0 39052 NULL
+enable_so_ttm_agp_tt_create_fndecl_39056 ttm_agp_tt_create fndecl 3 39056 NULL nohasharray
+enable_so_get_key_fscache_cookie_def_39056 get_key fscache_cookie_def 0 39056 &enable_so_ttm_agp_tt_create_fndecl_39056
@@ -167362,7 +166653,8 @@ index 0000000..9da833a
+enable_so_frameLen_rx_desc_39058 frameLen rx_desc 0 39058 NULL nohasharray
+enable_so_minor_gigaset_driver_39058 minor gigaset_driver 0 39058 &enable_so_frameLen_rx_desc_39058
+enable_so_send_set_xattr_fndecl_39062 send_set_xattr fndecl 6-4 39062 NULL
-+enable_so_n_buckets_bpf_htab_39067 n_buckets bpf_htab 0 39067 NULL
++enable_so_bnxt_get_max_irq_fndecl_39067 bnxt_get_max_irq fndecl 0 39067 NULL nohasharray
++enable_so_n_buckets_bpf_htab_39067 n_buckets bpf_htab 0 39067 &enable_so_bnxt_get_max_irq_fndecl_39067
+enable_so_iscsit_handle_immediate_data_fndecl_39071 iscsit_handle_immediate_data fndecl 3 39071 NULL
+enable_so_max_rules_crush_map_39073 max_rules crush_map 0 39073 NULL
+enable_so_usbatm_write_cells_fndecl_39074 usbatm_write_cells fndecl 0 39074 NULL
@@ -167385,6 +166677,7 @@ index 0000000..9da833a
+enable_so_rl_namelen_rcom_lock_39122 rl_namelen rcom_lock 0 39122 NULL
+enable_so_user_block_count_mspro_sys_info_39124 user_block_count mspro_sys_info 0 39124 NULL
+enable_so_bytes_per_datum_iio_buffer_39125 bytes_per_datum iio_buffer 0 39125 NULL
++enable_so_acpi_data_get_property_array_fndecl_39128 acpi_data_get_property_array fndecl 0 39128 NULL
+enable_so_calc_memmap_size_fndecl_39130 calc_memmap_size fndecl 0-2-1 39130 NULL nohasharray
+enable_so_l2t_end_adapter_39130 l2t_end adapter 0 39130 &enable_so_calc_memmap_size_fndecl_39130 nohasharray
+enable_so_simple_transaction_get_fndecl_39130 simple_transaction_get fndecl 3 39130 &enable_so_l2t_end_adapter_39130
@@ -167392,7 +166685,6 @@ index 0000000..9da833a
+enable_so_ceph_build_auth_request_fndecl_39135 ceph_build_auth_request fndecl 0 39135 NULL
+enable_so_system_sample_rate_hdsp_39140 system_sample_rate hdsp 0 39140 NULL
+enable_so_drvr_sglimit_blogic_adapter_39142 drvr_sglimit blogic_adapter 0 39142 NULL
-+enable_so_mlx4_set_path_fndecl_39148 mlx4_set_path fndecl 6 39148 NULL
+enable_so_mmc_test_buffer_transfer_fndecl_39150 mmc_test_buffer_transfer fndecl 4 39150 NULL
+enable_so_raid56_parity_alloc_scrub_rbio_fndecl_39153 raid56_parity_alloc_scrub_rbio fndecl 4 39153 NULL
+enable_so_port_srpt_port_39154 port srpt_port 0 39154 NULL
@@ -167431,21 +166723,22 @@ index 0000000..9da833a
+enable_so_remote_mps_l2cap_chan_39250 remote_mps l2cap_chan 0 39250 NULL nohasharray
+enable_so_mon_buff_area_fill_fndecl_39250 mon_buff_area_fill fndecl 3 39250 &enable_so_remote_mps_l2cap_chan_39250
+enable_so_sg_kmalloc_fndecl_39251 sg_kmalloc fndecl 1 39251 NULL
++enable_so_raid5_get_active_stripe_fndecl_39252 raid5_get_active_stripe fndecl 2 39252 NULL
++enable_so_num_cons_qed_eth_pf_params_39260 num_cons qed_eth_pf_params 0 39260 NULL
+enable_so_data_offset_napi_gro_cb_39263 data_offset napi_gro_cb 0 39263 NULL
+enable_so_fdt_get_phandle_fndecl_39273 fdt_get_phandle fndecl 2 39273 NULL
+enable_so_sky2_rx_tag_fndecl_39276 sky2_rx_tag fndecl 2 39276 NULL
-+enable_so_soc_codec_reg_show_fndecl_39277 soc_codec_reg_show fndecl 0-3 39277 NULL
+enable_so_idata_dma_usb_xpad_39278 idata_dma usb_xpad 0 39278 NULL
+enable_so_size_tomoyo_condition_39281 size tomoyo_condition 0 39281 NULL
+enable_so_find_parent_nodes_fndecl_39282 find_parent_nodes fndecl 3 39282 NULL
+enable_so_rxrpc_setsockopt_fndecl_39293 rxrpc_setsockopt fndecl 5 39293 NULL
++enable_so_len_hsu_dma_sg_39295 len hsu_dma_sg 0 39295 NULL
+enable_so_page_size_msb_data_39297 page_size msb_data 0 39297 NULL nohasharray
+enable_so_encoding_p_compressed_bm_39297 encoding p_compressed_bm 0 39297 &enable_so_page_size_msb_data_39297 nohasharray
+enable_so_max_vfi_lpfc_max_cfg_param_39297 max_vfi lpfc_max_cfg_param 0 39297 &enable_so_encoding_p_compressed_bm_39297
+enable_so_sel_make_perm_files_fndecl_39298 sel_make_perm_files fndecl 2 39298 NULL
+enable_so_m5mols_read_u16_fndecl_39305 m5mols_read_u16 fndecl 2 39305 NULL
+enable_so_do_launder_page_fndecl_39306 do_launder_page fndecl 0 39306 NULL
-+enable_so_lpfc_idiag_pcicfg_read_fndecl_39309 lpfc_idiag_pcicfg_read fndecl 3 39309 NULL
+enable_so_SYSC_flistxattr_fndecl_39312 SYSC_flistxattr fndecl 3 39312 NULL
+enable_so_e820_end_of_ram_pfn_fndecl_39315 e820_end_of_ram_pfn fndecl 0 39315 NULL nohasharray
+enable_so_rio_request_outb_dbell_fndecl_39315 rio_request_outb_dbell fndecl 3-2 39315 &enable_so_e820_end_of_ram_pfn_fndecl_39315
@@ -167455,6 +166748,7 @@ index 0000000..9da833a
+enable_so_soc_camera_read_fndecl_39324 soc_camera_read fndecl 3 39324 NULL nohasharray
+enable_so_ri_data_gfs2_rindex_39324 ri_data gfs2_rindex 0 39324 &enable_so_soc_camera_read_fndecl_39324 nohasharray
+enable_so_rx_dataoffset_brcmf_msgbuf_39324 rx_dataoffset brcmf_msgbuf 0 39324 &enable_so_ri_data_gfs2_rindex_39324
++enable_so_test_queue_fndecl_39329 test_queue fndecl 5-3 39329 NULL
+enable_so_size_bts_action_39331 size bts_action 0 39331 NULL
+enable_so_page_jfs_log_39335 page jfs_log 0 39335 NULL nohasharray
+enable_so_isdn_ppp_read_fndecl_39335 isdn_ppp_read fndecl 4 39335 &enable_so_page_jfs_log_39335
@@ -167462,7 +166756,6 @@ index 0000000..9da833a
+enable_so_tx_pipe_brcmf_usbdev_info_39337 tx_pipe brcmf_usbdev_info 0 39337 NULL nohasharray
+enable_so_num_channels_hw_mode_spec_39337 num_channels hw_mode_spec 0 39337 &enable_so_tx_pipe_brcmf_usbdev_info_39337 nohasharray
+enable_so_iwl_dbgfs_echo_test_write_fndecl_39337 iwl_dbgfs_echo_test_write fndecl 3 39337 &enable_so_num_channels_hw_mode_spec_39337
-+enable_so_musb_softconnect_write_fndecl_39339 musb_softconnect_write fndecl 3 39339 NULL
+enable_so_setbrightness_fndecl_39342 setbrightness fndecl 0 39342 NULL
+enable_so_svc_create_fndecl_39343 svc_create fndecl 2 39343 NULL
+enable_so_nhead_offs_ubifs_info_39346 nhead_offs ubifs_info 0 39346 NULL
@@ -167503,7 +166796,6 @@ index 0000000..9da833a
+enable_so_iov_len_iovec_39437 iov_len iovec 0 39437 &enable_so_ring_size__drm_i810_init_39437
+enable_so_show_device_status_fndecl_39440 show_device_status fndecl 0 39440 NULL
+enable_so_virtio_cread16_fndecl_39444 virtio_cread16 fndecl 0 39444 NULL
-+enable_so_tp_la_write_fndecl_39445 tp_la_write fndecl 3 39445 NULL
+enable_so_sdio_uart_write_fndecl_39449 sdio_uart_write fndecl 3 39449 NULL
+enable_so_zl10036_write_fndecl_39451 zl10036_write fndecl 3 39451 NULL nohasharray
+enable_so_ocfs2_add_refcount_flag_fndecl_39451 ocfs2_add_refcount_flag fndecl 6-7-5 39451 &enable_so_zl10036_write_fndecl_39451
@@ -167514,7 +166806,6 @@ index 0000000..9da833a
+enable_so_LMC_PKT_BUF_SZ_vardecl_lmc_main_c_39465 LMC_PKT_BUF_SZ vardecl_lmc_main.c 0 39465 NULL
+enable_so_num_buffers_vardecl_cpia2_v4l_c_39466 num_buffers vardecl_cpia2_v4l.c 0 39466 NULL
+enable_so_max_count_octeon_droq_39475 max_count octeon_droq 0 39475 NULL
-+enable_so_iwl_statistics_flag_fndecl_39478 iwl_statistics_flag fndecl 0 39478 NULL
+enable_so_qib_verbs_send_pio_fndecl_39482 qib_verbs_send_pio fndecl 5 39482 NULL
+enable_so_address_length_acpi_resource_fixed_memory32_39483 address_length acpi_resource_fixed_memory32 0 39483 NULL
+enable_so_iov_iter_bvec_fndecl_39493 iov_iter_bvec fndecl 5-4 39493 NULL
@@ -167549,6 +166840,7 @@ index 0000000..9da833a
+enable_so_qp_table_size_hfi1_qp_ibdev_39571 qp_table_size hfi1_qp_ibdev 0 39571 NULL
+enable_so_sys32_pwrite_fndecl_39572 sys32_pwrite fndecl 3 39572 NULL
+enable_so_oh_len_omninet_header_39576 oh_len omninet_header 0 39576 NULL
++enable_so_additional_memory_resource_fndecl_39577 additional_memory_resource fndecl 1 39577 NULL
+enable_so_nfs4_file_llseek_fndecl_39578 nfs4_file_llseek fndecl 2 39578 NULL
+enable_so_flush_mtd_blktrans_ops_39582 flush mtd_blktrans_ops 0 39582 NULL nohasharray
+enable_so_snbep_pci2phy_map_init_fndecl_39582 snbep_pci2phy_map_init fndecl 1 39582 &enable_so_flush_mtd_blktrans_ops_39582
@@ -167583,9 +166875,10 @@ index 0000000..9da833a
+enable_so_timeout_max_as3645a_platform_data_39664 timeout_max as3645a_platform_data 0 39664 NULL
+enable_so_mq_bytes_user_struct_39665 mq_bytes user_struct 0 39665 NULL
+enable_so_snd_rawmidi_transmit_peek_fndecl_39668 snd_rawmidi_transmit_peek fndecl 0-3 39668 NULL
++enable_so_vendor_diag_read_fndecl_39671 vendor_diag_read fndecl 3 39671 NULL
+enable_so_der_length_size_fndecl_39673 der_length_size fndecl 0 39673 NULL
+enable_so_sectorsize_btrfs_super_block_39674 sectorsize btrfs_super_block 0 39674 NULL
-+enable_so_rdma_read_chunk_frmr_fndecl_39676 rdma_read_chunk_frmr fndecl 7 39676 NULL
++enable_so_rdma_read_chunk_frmr_fndecl_39676 rdma_read_chunk_frmr fndecl 7-8 39676 NULL
+enable_so_num_q_vectors_fm10k_intfc_39681 num_q_vectors fm10k_intfc 0 39681 NULL nohasharray
+enable_so_dev_mem_read_fndecl_39681 dev_mem_read fndecl 3 39681 &enable_so_num_q_vectors_fm10k_intfc_39681
+enable_so_fd_block_size_fd_dev_39692 fd_block_size fd_dev 0 39692 NULL nohasharray
@@ -167597,9 +166890,11 @@ index 0000000..9da833a
+enable_so_e1000_change_mtu_fndecl_39722 e1000_change_mtu fndecl 2 39722 NULL
+enable_so_pglen_pnfs_device_39724 pglen pnfs_device 0 39724 NULL
+enable_so_epool_init_fndecl_39728 epool_init fndecl 2 39728 NULL
-+enable_so_max_wrs_iwch_rnic_attributes_39735 max_wrs iwch_rnic_attributes 0 39735 NULL
++enable_so_btrfs_truncate_page_fndecl_39735 btrfs_truncate_page fndecl 2 39735 NULL nohasharray
++enable_so_max_wrs_iwch_rnic_attributes_39735 max_wrs iwch_rnic_attributes 0 39735 &enable_so_btrfs_truncate_page_fndecl_39735
+enable_so___hostap_add_bss_fndecl_39739 __hostap_add_bss fndecl 4 39739 NULL nohasharray
+enable_so_bfad_iocmd_faa_query_fndecl_39739 bfad_iocmd_faa_query fndecl 0 39739 &enable_so___hostap_add_bss_fndecl_39739
++enable_so_scif_unregister_fndecl_39743 scif_unregister fndecl 3 39743 NULL
+enable_so__ubh_bread__fndecl_39744 _ubh_bread_ fndecl 3 39744 NULL
+enable_so_pipe_handler_request_fndecl_39749 pipe_handler_request fndecl 5 39749 NULL nohasharray
+enable_so_tm6000_read_write_usb_fndecl_39749 tm6000_read_write_usb fndecl 7 39749 &enable_so_pipe_handler_request_fndecl_39749
@@ -167627,8 +166922,7 @@ index 0000000..9da833a
+enable_so_jffs2_link_node_ref_fndecl_39817 jffs2_link_node_ref fndecl 3-4 39817 NULL nohasharray
+enable_so_defcmd_set_count_vardecl_kdb_main_c_39817 defcmd_set_count vardecl_kdb_main.c 0 39817 &enable_so_jffs2_link_node_ref_fndecl_39817
+enable_so_pan_y_yuv_frame_info_39830 pan_y yuv_frame_info 0 39830 NULL
-+enable_so_dpcm_show_state_fndecl_39832 dpcm_show_state fndecl 0 39832 NULL nohasharray
-+enable_so_init_rx_ring_fndecl_39832 init_rx_ring fndecl 4 39832 &enable_so_dpcm_show_state_fndecl_39832
++enable_so_init_rx_ring_fndecl_39832 init_rx_ring fndecl 4 39832 NULL
+enable_so_sb_inopblock_xfs_sb_39837 sb_inopblock xfs_sb 0 39837 NULL nohasharray
+enable_so_io_vardecl_arc_rimi_c_39837 io vardecl_arc-rimi.c 0 39837 &enable_so_sb_inopblock_xfs_sb_39837 nohasharray
+enable_so_pci_scan_root_bus_fndecl_39837 pci_scan_root_bus fndecl 2 39837 &enable_so_io_vardecl_arc_rimi_c_39837
@@ -167641,8 +166935,7 @@ index 0000000..9da833a
+enable_so_xres_panel_info_39849 xres panel_info 0 39849 NULL
+enable_so_di_nextents_xfs_dinode_39855 di_nextents xfs_dinode 0 39855 NULL
+enable_so_imtu_l2cap_chan_39857 imtu l2cap_chan 0 39857 NULL
-+enable_so_usb_stor_reset_common_fndecl_39866 usb_stor_reset_common fndecl 7 39866 NULL nohasharray
-+enable_so_carl9170_debugfs_write_fndecl_39866 carl9170_debugfs_write fndecl 3 39866 &enable_so_usb_stor_reset_common_fndecl_39866
++enable_so_usb_stor_reset_common_fndecl_39866 usb_stor_reset_common fndecl 7 39866 NULL
+enable_so_self_check_write_fndecl_39867 self_check_write fndecl 5 39867 NULL
+enable_so___bdev_writeseg_fndecl_39876 __bdev_writeseg fndecl 2-4 39876 NULL
+enable_so_do_shrink_slab_fndecl_39881 do_shrink_slab fndecl 4-3 39881 NULL
@@ -167667,19 +166960,20 @@ index 0000000..9da833a
+enable_so_find_ts_ops_39950 find ts_ops 0 39950 NULL nohasharray
+enable_so_pid_proto_39950 pid proto 0 39950 &enable_so_find_ts_ops_39950
+enable_so_inode2sd_v1_fndecl_39954 inode2sd_v1 fndecl 3 39954 NULL
-+enable_so___hfsplus_getxattr_fndecl_39975 __hfsplus_getxattr fndecl 0 39975 NULL nohasharray
-+enable_so_msg_length_pcnet32_rx_head_39975 msg_length pcnet32_rx_head 0 39975 &enable_so___hfsplus_getxattr_fndecl_39975 nohasharray
-+enable_so_cn_size_x509_parse_context_39975 cn_size x509_parse_context 0 39975 &enable_so_msg_length_pcnet32_rx_head_39975
++enable_so_msg_length_pcnet32_rx_head_39975 msg_length pcnet32_rx_head 0 39975 NULL nohasharray
++enable_so___hfsplus_getxattr_fndecl_39975 __hfsplus_getxattr fndecl 0 39975 &enable_so_msg_length_pcnet32_rx_head_39975 nohasharray
++enable_so_cn_size_x509_parse_context_39975 cn_size x509_parse_context 0 39975 &enable_so___hfsplus_getxattr_fndecl_39975
+enable_so_readbuf_size_tomoyo_io_buffer_39976 readbuf_size tomoyo_io_buffer 0 39976 NULL
+enable_so_agp_3_5_isochronous_node_enable_fndecl_39978 agp_3_5_isochronous_node_enable fndecl 3 39978 NULL
+enable_so_btrfs_pin_extent_fndecl_39983 btrfs_pin_extent fndecl 3-2 39983 NULL
+enable_so_compat_do_msg_fill_fndecl_39987 compat_do_msg_fill fndecl 3 39987 NULL
++enable_so_btrfs_free_reserved_data_space_fndecl_39989 btrfs_free_reserved_data_space fndecl 2-3 39989 NULL
+enable_so_spi_tcnt_fsl_dspi_39994 spi_tcnt fsl_dspi 0 39994 NULL
+enable_so_playback_bufsize_vardecl_nm256_c_39995 playback_bufsize vardecl_nm256.c 0 39995 NULL
-+enable_so_pitch_drm_radeon_texture_39996 pitch drm_radeon_texture 0 39996 NULL nohasharray
-+enable_so_size_fm10k_l2_accel_39996 size fm10k_l2_accel 0 39996 &enable_so_pitch_drm_radeon_texture_39996
++enable_so_pitch_drm_radeon_texture_39996 pitch drm_radeon_texture 0 39996 NULL
+enable_so_start_sram_reserve_39999 start sram_reserve 0 39999 NULL
-+enable_so_isr_decrypt_done_read_fndecl_40001 isr_decrypt_done_read fndecl 3 40001 NULL
++enable_so_dm_btree_lookup_next_single_fndecl_40001 dm_btree_lookup_next_single fndecl 2-0 40001 NULL nohasharray
++enable_so_isr_decrypt_done_read_fndecl_40001 isr_decrypt_done_read fndecl 3 40001 &enable_so_dm_btree_lookup_next_single_fndecl_40001
+enable_so_mld2q_nsrcs_mld2_query_40004 mld2q_nsrcs mld2_query 0 40004 NULL
+enable_so_r820t_read_fndecl_40007 r820t_read fndecl 4 40007 NULL
+enable_so_memblock_isolate_range_fndecl_40008 memblock_isolate_range fndecl 3-2 40008 NULL
@@ -167690,18 +166984,14 @@ index 0000000..9da833a
+enable_so_xfs_iformat_local_fndecl_40019 xfs_iformat_local fndecl 4 40019 NULL
+enable_so_verify_alg_len_net_conf_40020 verify_alg_len net_conf 0 40020 NULL
+enable_so_vmw_mob_calculate_pt_pages_fndecl_40022 vmw_mob_calculate_pt_pages fndecl 0-1 40022 NULL
-+enable_so_tipc_bclink_get_mtu_fndecl_40024 tipc_bclink_get_mtu fndecl 0 40024 NULL nohasharray
-+enable_so_esp4_get_mtu_fndecl_40024 esp4_get_mtu fndecl 0-2 40024 &enable_so_tipc_bclink_get_mtu_fndecl_40024
++enable_so_esp4_get_mtu_fndecl_40024 esp4_get_mtu fndecl 0-2 40024 NULL
+enable_so_emulator_write_phys_fndecl_40035 emulator_write_phys fndecl 2-4 40035 NULL
-+enable_so_lpfc_debugfs_nodelist_data_fndecl_40039 lpfc_debugfs_nodelist_data fndecl 0 40039 NULL
+enable_so_pos_splice_desc_40040 pos splice_desc 0 40040 NULL
+enable_so_memdiff_vardecl_tridentfb_c_40043 memdiff vardecl_tridentfb.c 0 40043 NULL nohasharray
+enable_so_read_partial_fndecl_40043 read_partial fndecl 2 40043 &enable_so_memdiff_vardecl_tridentfb_c_40043
-+enable_so_add_nested_action_start_fndecl_40044 add_nested_action_start fndecl 0 40044 NULL
+enable_so_bind_cmd_count_vmw_ctx_binding_state_40054 bind_cmd_count vmw_ctx_binding_state 0 40054 NULL
+enable_so_SyS_listxattr_fndecl_40060 SyS_listxattr fndecl 3 40060 NULL
-+enable_so_smp_execute_task_fndecl_40062 smp_execute_task fndecl 3-5-0 40062 NULL nohasharray
-+enable_so_iwl_dbgfs_disable_power_off_read_fndecl_40062 iwl_dbgfs_disable_power_off_read fndecl 3 40062 &enable_so_smp_execute_task_fndecl_40062
++enable_so_smp_execute_task_fndecl_40062 smp_execute_task fndecl 3-5-0 40062 NULL
+enable_so_region_size_switch_ctx_40069 region_size switch_ctx 0 40069 NULL
+enable_so_max_pq_dma_device_40070 max_pq dma_device 0 40070 NULL
+enable_so_smk_write_access_fndecl_40074 smk_write_access fndecl 3 40074 NULL nohasharray
@@ -167756,7 +167046,6 @@ index 0000000..9da833a
+enable_so_ipw_queue_tx_init_fndecl_40218 ipw_queue_tx_init fndecl 3 40218 NULL
+enable_so_len_p80211ioctl_req_40220 len p80211ioctl_req 0 40220 NULL
+enable_so_bochs_bo_create_fndecl_40223 bochs_bo_create fndecl 2 40223 NULL
-+enable_so_il4965_rs_sta_dbgfs_stats_table_read_fndecl_40229 il4965_rs_sta_dbgfs_stats_table_read fndecl 3 40229 NULL
+enable_so_do_jffs2_getxattr_fndecl_40233 do_jffs2_getxattr fndecl 0 40233 NULL
+enable_so_find_gmch_fndecl_40235 find_gmch fndecl 1 40235 NULL
+enable_so_ndr_size_nd_region_40243 ndr_size nd_region 0 40243 NULL
@@ -167765,13 +167054,10 @@ index 0000000..9da833a
+enable_so_dec_src_buf_size_s5p_mfc_ctx_40247 dec_src_buf_size s5p_mfc_ctx 0 40247 NULL
+enable_so_mmap_file_operations_40250 mmap file_operations 0 40250 NULL nohasharray
+enable_so_layoutupdate_len_nfs4_layoutcommit_args_40250 layoutupdate_len nfs4_layoutcommit_args 0 40250 &enable_so_mmap_file_operations_40250
-+enable_so_max_sectors_queue_limits_40252 max_sectors queue_limits 0 40252 NULL nohasharray
-+enable_so_iwl_dbgfs_ucode_general_stats_read_fndecl_40252 iwl_dbgfs_ucode_general_stats_read fndecl 3 40252 &enable_so_max_sectors_queue_limits_40252
-+enable_so__iwl_dbgfs_netdetect_write_fndecl_40255 _iwl_dbgfs_netdetect_write fndecl 3 40255 NULL
++enable_so_max_sectors_queue_limits_40252 max_sectors queue_limits 0 40252 NULL
+enable_so_ucNumOfPowerModeEntries__ATOM_POWERPLAY_INFO_40261 ucNumOfPowerModeEntries _ATOM_POWERPLAY_INFO 0 40261 NULL
+enable_so_stop_discovery_fndecl_40262 stop_discovery fndecl 4 40262 NULL
+enable_so_ino_jffs2_inode_cache_40264 ino jffs2_inode_cache 0 40264 NULL
-+enable_so_fill_pg_buf_fndecl_40265 fill_pg_buf fndecl 0 40265 NULL
+enable_so_es_len_extent_status_40276 es_len extent_status 0 40276 NULL
+enable_so_memcg_nr_cache_ids_vardecl_40280 memcg_nr_cache_ids vardecl 0 40280 NULL
+enable_so_mask___kfifo_40288 mask __kfifo 0 40288 NULL
@@ -167779,9 +167065,9 @@ index 0000000..9da833a
+enable_so_update_end_of_memory_vars_fndecl_40298 update_end_of_memory_vars fndecl 2-1 40298 NULL
+enable_so_rx_filter_beacon_filter_read_fndecl_40300 rx_filter_beacon_filter_read fndecl 3 40300 NULL
+enable_so_osd_req_add_get_attr_list_fndecl_40301 osd_req_add_get_attr_list fndecl 3 40301 NULL
++enable_so_hw_token_ehci_qh_40302 hw_token ehci_qh 0 40302 NULL
+enable_so_cyttsp_spi_xfer_fndecl_40307 cyttsp_spi_xfer fndecl 6 40307 NULL
+enable_so_gfs2_free_meta_fndecl_40312 gfs2_free_meta fndecl 2 40312 NULL
-+enable_so_ieee80211_if_read_rssi_threshold_fndecl_40319 ieee80211_if_read_rssi_threshold fndecl 3 40319 NULL
+enable_so_max_scaled_width_bttv_crop_40325 max_scaled_width bttv_crop 0 40325 NULL
+enable_so_uio_read_fndecl_40327 uio_read fndecl 3 40327 NULL
+enable_so_cur_pos_tegra_spi_data_40338 cur_pos tegra_spi_data 0 40338 NULL
@@ -167819,11 +167105,9 @@ index 0000000..9da833a
+enable_so_applesmc_create_nodes_fndecl_40419 applesmc_create_nodes fndecl 2 40419 &enable_so___ioremap_caller_fndecl_40419
+enable_so_rx_streaming_always_read_fndecl_40426 rx_streaming_always_read fndecl 3 40426 NULL
+enable_so_buf_size_in_bytes_kfd_ioctl_dbg_wave_control_args_40427 buf_size_in_bytes kfd_ioctl_dbg_wave_control_args 0 40427 NULL
-+enable_so_tnode_alloc_fndecl_40428 tnode_alloc fndecl 1 40428 NULL
+enable_so_readisac_IsdnCardState_40429 readisac IsdnCardState 0 40429 NULL
+enable_so_skb_partial_csum_set_fndecl_40436 skb_partial_csum_set fndecl 2 40436 NULL nohasharray
+enable_so_write_tag_block_fndecl_40436 write_tag_block fndecl 3 40436 &enable_so_skb_partial_csum_set_fndecl_40436
-+enable_so___i915_error_advance_fndecl_40440 __i915_error_advance fndecl 2 40440 NULL
+enable_so_begin_switchdev_vlan_dump_40443 begin switchdev_vlan_dump 0 40443 NULL
+enable_so_iscsi_alloc_session_fndecl_40445 iscsi_alloc_session fndecl 3 40445 NULL
+enable_so_qd2index_fndecl_40449 qd2index fndecl 0 40449 NULL
@@ -167844,14 +167128,16 @@ index 0000000..9da833a
+enable_so_start_cnic_id_tbl_40510 start cnic_id_tbl 0 40510 &enable_so_size_iscsi_segment_40510
+enable_so_max_soc_bytes_ext_40512 max soc_bytes_ext 0 40512 NULL
+enable_so_dn_mss_from_pmtu_fndecl_40520 dn_mss_from_pmtu fndecl 0-2 40520 NULL
++enable_so_rx_cmp_len_flags_type_rx_cmp_40525 rx_cmp_len_flags_type rx_cmp 0 40525 NULL
+enable_so_num_substreams_snd_m3_40528 num_substreams snd_m3 0 40528 NULL
+enable_so_bnx2x_change_num_queues_fndecl_40532 bnx2x_change_num_queues fndecl 2 40532 NULL
+enable_so_rsxx_queue_dma_fndecl_40533 rsxx_queue_dma fndecl 0 40533 NULL nohasharray
-+enable_so_smb2_lockv_fndecl_40533 smb2_lockv fndecl 6 40533 &enable_so_rsxx_queue_dma_fndecl_40533 nohasharray
-+enable_so_w_size_deflate_state_40533 w_size deflate_state 0 40533 &enable_so_smb2_lockv_fndecl_40533 nohasharray
-+enable_so_drm_buffer_copy_from_user_fndecl_40533 drm_buffer_copy_from_user fndecl 3 40533 &enable_so_w_size_deflate_state_40533
++enable_so_w_size_deflate_state_40533 w_size deflate_state 0 40533 &enable_so_rsxx_queue_dma_fndecl_40533 nohasharray
++enable_so_smb2_lockv_fndecl_40533 smb2_lockv fndecl 6 40533 &enable_so_w_size_deflate_state_40533 nohasharray
++enable_so_drm_buffer_copy_from_user_fndecl_40533 drm_buffer_copy_from_user fndecl 3 40533 &enable_so_smb2_lockv_fndecl_40533
+enable_so_xfs_qm_reset_dqcounts_fndecl_40540 xfs_qm_reset_dqcounts fndecl 3 40540 NULL nohasharray
+enable_so_is_acpi_reserved_fndecl_40540 is_acpi_reserved fndecl 2-1 40540 &enable_so_xfs_qm_reset_dqcounts_fndecl_40540
++enable_so_truncate_hole_fndecl_40543 truncate_hole fndecl 2-3 40543 NULL
+enable_so_sky2_get_rx_data_size_fndecl_40544 sky2_get_rx_data_size fndecl 0 40544 NULL nohasharray
+enable_so_bnx2x_get_preset_regs_len_fndecl_40544 bnx2x_get_preset_regs_len fndecl 0 40544 &enable_so_sky2_get_rx_data_size_fndecl_40544
+enable_so_base_start_aac_dev_40550 base_start aac_dev 0 40550 NULL nohasharray
@@ -167866,8 +167152,8 @@ index 0000000..9da833a
+enable_so_ptrace_readdata_fndecl_40567 ptrace_readdata fndecl 4-2 40567 NULL
+enable_so_ucNumStates__ATOM_PPLIB_POWERPLAYTABLE_40568 ucNumStates _ATOM_PPLIB_POWERPLAYTABLE 0 40568 NULL
+enable_so_caif_stream_sendmsg_fndecl_40573 caif_stream_sendmsg fndecl 3 40573 NULL
-+enable_so_qp_alloc_queue_fndecl_40575 qp_alloc_queue fndecl 1 40575 NULL nohasharray
-+enable_so_xlog_recovery_process_trans_fndecl_40575 xlog_recovery_process_trans fndecl 4 40575 &enable_so_qp_alloc_queue_fndecl_40575
++enable_so_xlog_recovery_process_trans_fndecl_40575 xlog_recovery_process_trans fndecl 4 40575 NULL nohasharray
++enable_so_qp_alloc_queue_fndecl_40575 qp_alloc_queue fndecl 1 40575 &enable_so_xlog_recovery_process_trans_fndecl_40575
+enable_so_dm_bufio_read_fndecl_40577 dm_bufio_read fndecl 2 40577 NULL
+enable_so_bfad_iocmd_ablk_optrom_fndecl_40586 bfad_iocmd_ablk_optrom fndecl 0 40586 NULL
+enable_so_ioread8_fndecl_40594 ioread8 fndecl 0 40594 NULL
@@ -167877,8 +167163,8 @@ index 0000000..9da833a
+enable_so_rf_size_rt2x00_ops_40605 rf_size rt2x00_ops 0 40605 NULL
+enable_so_vyres_aty128_crtc_40610 vyres aty128_crtc 0 40610 NULL
+enable_so_android_set_cntry_fndecl_40615 android_set_cntry fndecl 0 40615 NULL
-+enable_so_read_file_slot_fndecl_40620 read_file_slot fndecl 3 40620 NULL
-+enable_so_mailbox_start_sst_info_40624 mailbox_start sst_info 0 40624 NULL
++enable_so_num_queues_qed_dev_eth_info_40624 num_queues qed_dev_eth_info 0 40624 NULL nohasharray
++enable_so_mailbox_start_sst_info_40624 mailbox_start sst_info 0 40624 &enable_so_num_queues_qed_dev_eth_info_40624
+enable_so___kfifo_dma_in_prepare_fndecl_40626 __kfifo_dma_in_prepare fndecl 4 40626 NULL
+enable_so_libcfs_ioctl_popdata_fndecl_40628 libcfs_ioctl_popdata fndecl 3 40628 NULL
+enable_so_pcpu_get_vm_areas_fndecl_40630 pcpu_get_vm_areas fndecl 4-3 40630 NULL
@@ -167930,10 +167216,8 @@ index 0000000..9da833a
+enable_so_snd_hdac_get_connections_fndecl_40773 snd_hdac_get_connections fndecl 0 40773 NULL
+enable_so_pdu_write_fndecl_40774 pdu_write fndecl 3 40774 NULL
+enable_so_xprt_tcp_slot_table_entries_vardecl_xprtsock_c_40779 xprt_tcp_slot_table_entries vardecl_xprtsock.c 0 40779 NULL
-+enable_so_key_conf_keylen_read_fndecl_40781 key_conf_keylen_read fndecl 3 40781 NULL
+enable_so_s_bpfshift_ufs_sb_private_info_40782 s_bpfshift ufs_sb_private_info 0 40782 NULL
+enable_so_scsi_log_print_sense_fndecl_40783 scsi_log_print_sense fndecl 5 40783 NULL
-+enable_so_increase_reservation_fndecl_40785 increase_reservation fndecl 1 40785 NULL
+enable_so_sys_fsetxattr_fndecl_40795 sys_fsetxattr fndecl 4 40795 NULL
+enable_so_private_data_len_rdma_conn_param_40796 private_data_len rdma_conn_param 0 40796 NULL
+enable_so_check_frame_fndecl_40798 check_frame fndecl 0 40798 NULL nohasharray
@@ -167961,7 +167245,6 @@ index 0000000..9da833a
+enable_so_nvram_llseek_fndecl_40869 nvram_llseek fndecl 2 40869 NULL
+enable_so_reply_queue_count_MPT3SAS_ADAPTER_40870 reply_queue_count MPT3SAS_ADAPTER 0 40870 NULL
+enable_so_sector_count_partition_40874 sector_count partition 0 40874 NULL
-+enable_so_scsi_dispatch_cmd_entry_fndecl_40875 scsi_dispatch_cmd_entry fndecl 3 40875 NULL
+enable_so_config_len_mic_device_desc_40877 config_len mic_device_desc 0 40877 NULL
+enable_so_min_agbno_xfs_alloc_arg_40884 min_agbno xfs_alloc_arg 0 40884 NULL nohasharray
+enable_so_osst_set_options_fndecl_40884 osst_set_options fndecl 2 40884 &enable_so_min_agbno_xfs_alloc_arg_40884
@@ -167979,11 +167262,13 @@ index 0000000..9da833a
+enable_so_scsiback_do_resp_with_sense_fndecl_40934 scsiback_do_resp_with_sense fndecl 3 40934 NULL
+enable_so_fuse_send_write_fndecl_40936 fuse_send_write fndecl 0-4 40936 NULL
+enable_so_ecryptfs_filldir_fndecl_40939 ecryptfs_filldir fndecl 3 40939 NULL
++enable_so_len_set_config_param_40942 len set_config_param 0 40942 NULL
+enable_so_s_log_groups_per_flex_ext4_sb_info_40945 s_log_groups_per_flex ext4_sb_info 0 40945 NULL
+enable_so_az6007_write_fndecl_40948 az6007_write fndecl 6 40948 NULL
+enable_so_size_v4l2_ext_control_40952 size v4l2_ext_control 0 40952 NULL
+enable_so_intel_fbc_alloc_cfb_fndecl_40957 intel_fbc_alloc_cfb fndecl 2 40957 NULL
+enable_so_ns_segnum_the_nilfs_40959 ns_segnum the_nilfs 0 40959 NULL
++enable_so_data_init_array_raw_hdr_40962 data init_array_raw_hdr 0 40962 NULL
+enable_so_ext4_fill_fiemap_extents_fndecl_40966 ext4_fill_fiemap_extents fndecl 2-3 40966 NULL nohasharray
+enable_so_isr_low_rssi_read_fndecl_40966 isr_low_rssi_read fndecl 3 40966 &enable_so_ext4_fill_fiemap_extents_fndecl_40966
+enable_so_bottom_qxl_urect_40968 bottom qxl_urect 0 40968 NULL
@@ -167994,6 +167279,7 @@ index 0000000..9da833a
+enable_so_read_iter_file_operations_40980 read_iter file_operations 0 40980 NULL
+enable_so_s_psn_qib_qp_40983 s_psn qib_qp 0 40983 NULL
+enable_so_blk_mq_init_tags_fndecl_40986 blk_mq_init_tags fndecl 2-1 40986 NULL
++enable_so_hwdep_write_fndecl_40987 hwdep_write fndecl 3 40987 NULL
+enable_so_ecryptfs_send_miscdev_fndecl_40995 ecryptfs_send_miscdev fndecl 2 40995 NULL
+enable_so_gfn_to_page_fndecl_41001 gfn_to_page fndecl 2 41001 NULL nohasharray
+enable_so_start_fb_cmap_41001 start fb_cmap 0 41001 &enable_so_gfn_to_page_fndecl_41001
@@ -168011,7 +167297,9 @@ index 0000000..9da833a
+enable_so_ieee802154_hdr_pull_fndecl_41051 ieee802154_hdr_pull fndecl 0 41051 NULL
+enable_so_resp_len_bnx2fc_mp_req_41057 resp_len bnx2fc_mp_req 0 41057 NULL
+enable_so_lprocfs_write_u64_helper_fndecl_41059 lprocfs_write_u64_helper fndecl 2 41059 NULL
-+enable_so_bits_per_word_spi_transfer_41063 bits_per_word spi_transfer 0 41063 NULL
++enable_so_bits_per_word_spi_transfer_41063 bits_per_word spi_transfer 0 41063 NULL nohasharray
++enable_so_st21nfca_hci_dm_update_aid_fndecl_41063 st21nfca_hci_dm_update_aid fndecl 3 41063 &enable_so_bits_per_word_spi_transfer_41063
++enable_so_userio_char_read_fndecl_41065 userio_char_read fndecl 3 41065 NULL
+enable_so_vdc_mem_size_vml_par_41069 vdc_mem_size vml_par 0 41069 NULL
+enable_so_gfn_to_pfn_fndecl_41077 gfn_to_pfn fndecl 2 41077 NULL
+enable_so_DirID_hfs_cat_dir_41079 DirID hfs_cat_dir 0 41079 NULL
@@ -168024,7 +167312,7 @@ index 0000000..9da833a
+enable_so_sigma_fw_load_data_fndecl_41096 sigma_fw_load_data fndecl 3 41096 &enable_so_pskb_put_fndecl_41096
+enable_so_nr_gpio_sc16is7xx_devtype_41097 nr_gpio sc16is7xx_devtype 0 41097 NULL
+enable_so_input_leds_get_count_fndecl_41102 input_leds_get_count fndecl 0 41102 NULL
-+enable_so_ieee80211_if_read_ave_beacon_fndecl_41103 ieee80211_if_read_ave_beacon fndecl 3 41103 NULL
++enable_so_scrub_chunk_fndecl_41105 scrub_chunk fndecl 3 41105 NULL
+enable_so_res_ver_val_pvr2_hdw_41107 res_ver_val pvr2_hdw 0 41107 NULL
+enable_so_physical_start_stripe_41108 physical_start stripe 0 41108 NULL
+enable_so_xfs_imap_lookup_fndecl_41113 xfs_imap_lookup fndecl 4-3 41113 NULL
@@ -168042,7 +167330,8 @@ index 0000000..9da833a
+enable_so_ieee80211_cs_headroom_fndecl_41144 ieee80211_cs_headroom fndecl 0 41144 NULL
+enable_so_rx_drvinfo_size_rtl_stats_41161 rx_drvinfo_size rtl_stats 0 41161 NULL
+enable_so___blk_recalc_rq_segments_fndecl_41164 __blk_recalc_rq_segments fndecl 0 41164 NULL
-+enable_so_l2tp_ip6_sendmsg_fndecl_41166 l2tp_ip6_sendmsg fndecl 3 41166 NULL
++enable_so_l2tp_ip6_sendmsg_fndecl_41166 l2tp_ip6_sendmsg fndecl 3 41166 NULL nohasharray
++enable_so_major_stm_device_41166 major stm_device 0 41166 &enable_so_l2tp_ip6_sendmsg_fndecl_41166
+enable_so_get_blocks_target_backend_ops_41168 get_blocks target_backend_ops 0 41168 NULL
+enable_so_calib_fail_count_read_fndecl_41171 calib_fail_count_read fndecl 3 41171 NULL
+enable_so_suspend_dtim_interval_read_fndecl_41176 suspend_dtim_interval_read fndecl 3 41176 NULL
@@ -168052,12 +167341,10 @@ index 0000000..9da833a
+enable_so_gfn_guest_walker64_41182 gfn guest_walker64 0 41182 NULL
+enable_so_index_vardecl_via82xx_c_41183 index vardecl_via82xx.c 0 41183 NULL
+enable_so_binder_set_nice_fndecl_41184 binder_set_nice fndecl 1 41184 NULL
-+enable_so_ndlc_probe_fndecl_41195 ndlc_probe fndecl 4 41195 NULL
+enable_so_nr_pages_page_collect_41197 nr_pages page_collect 0 41197 NULL
+enable_so_bfad_iocmd_qos_fndecl_41198 bfad_iocmd_qos fndecl 0 41198 NULL
+enable_so_msb_cache_flush_fndecl_41200 msb_cache_flush fndecl 0 41200 NULL
+enable_so_sq905_command_fndecl_41201 sq905_command fndecl 0 41201 NULL
-+enable_so_ipv4_tun_to_nlattr_fndecl_41204 ipv4_tun_to_nlattr fndecl 4 41204 NULL
+enable_so_nr_acpi_bits_vardecl_xen_acpi_processor_c_41210 nr_acpi_bits vardecl_xen-acpi-processor.c 0 41210 NULL
+enable_so_fanout_set_data_fndecl_41219 fanout_set_data fndecl 3 41219 NULL
+enable_so_qib_n_krcv_queues_vardecl_41222 qib_n_krcv_queues vardecl 0 41222 NULL
@@ -168066,6 +167353,7 @@ index 0000000..9da833a
+enable_so_enic_change_mtu_fndecl_41227 enic_change_mtu fndecl 2 41227 NULL nohasharray
+enable_so_iscsi_first_burst_len_dev_db_entry_41227 iscsi_first_burst_len dev_db_entry 0 41227 &enable_so_enic_change_mtu_fndecl_41227
+enable_so_out_count_mdc800_data_41228 out_count mdc800_data 0 41228 NULL
++enable_so_ies_len_connect_attr_41234 ies_len connect_attr 0 41234 NULL
+enable_so_len_driver_data_41237 len driver_data 0 41237 NULL
+enable_so_opera1_usb_i2c_msgxfer_fndecl_41242 opera1_usb_i2c_msgxfer fndecl 4 41242 NULL
+enable_so_ses_send_diag_fndecl_41244 ses_send_diag fndecl 4 41244 NULL
@@ -168078,7 +167366,8 @@ index 0000000..9da833a
+enable_so_qlen_sk_buff_head_41259 qlen sk_buff_head 0 41259 NULL nohasharray
+enable_so_diva_os_alloc_message_buffer_fndecl_41259 diva_os_alloc_message_buffer fndecl 1 41259 &enable_so_qlen_sk_buff_head_41259
+enable_so_byte_cnt_mlx4_cqe_41260 byte_cnt mlx4_cqe 0 41260 NULL
-+enable_so_do_erase_fndecl_41261 do_erase fndecl 2-4 41261 NULL
++enable_so_do_erase_fndecl_41261 do_erase fndecl 2-4 41261 NULL nohasharray
++enable_so_num_threads_acpi_db_method_info_41261 num_threads acpi_db_method_info 0 41261 &enable_so_do_erase_fndecl_41261
+enable_so_lm8323_read_fndecl_41264 lm8323_read fndecl 4 41264 NULL
+enable_so_blkdev_issue_zeroout_fndecl_41272 blkdev_issue_zeroout fndecl 3-2-0 41272 NULL
+enable_so_rbd_obj_read_sync_fndecl_41273 rbd_obj_read_sync fndecl 4-3 41273 NULL
@@ -168106,14 +167395,13 @@ index 0000000..9da833a
+enable_so_regmap_read_debugfs_fndecl_41345 regmap_read_debugfs fndecl 5 41345 NULL
+enable_so_key_len_wmi_vdev_install_key_arg_41347 key_len wmi_vdev_install_key_arg 0 41347 NULL
+enable_so_transport_lba_64_fndecl_41348 transport_lba_64 fndecl 0 41348 NULL
-+enable_so_ocfs2_read_xattr_block_fndecl_41350 ocfs2_read_xattr_block fndecl 0-2 41350 NULL nohasharray
-+enable_so_pool_create_fndecl_41350 pool_create fndecl 3 41350 &enable_so_ocfs2_read_xattr_block_fndecl_41350 nohasharray
-+enable_so_size_snd_info_entry_41350 size snd_info_entry 0 41350 &enable_so_pool_create_fndecl_41350 nohasharray
-+enable_so_tlbflush_read_file_fndecl_41350 tlbflush_read_file fndecl 3 41350 &enable_so_size_snd_info_entry_41350
++enable_so_size_snd_info_entry_41350 size snd_info_entry 0 41350 NULL nohasharray
++enable_so_pool_create_fndecl_41350 pool_create fndecl 3 41350 &enable_so_size_snd_info_entry_41350 nohasharray
++enable_so_ocfs2_read_xattr_block_fndecl_41350 ocfs2_read_xattr_block fndecl 0-2 41350 &enable_so_pool_create_fndecl_41350 nohasharray
++enable_so_tlbflush_read_file_fndecl_41350 tlbflush_read_file fndecl 3 41350 &enable_so_ocfs2_read_xattr_block_fndecl_41350
+enable_so_efx_tsoh_get_buffer_fndecl_41355 efx_tsoh_get_buffer fndecl 3 41355 NULL
+enable_so_usb_stor_probe1_fndecl_41357 usb_stor_probe1 fndecl 0 41357 NULL
+enable_so_rx_rx_out_of_mpdu_nodes_read_fndecl_41359 rx_rx_out_of_mpdu_nodes_read fndecl 3 41359 NULL
-+enable_so__iwl_dbgfs_d0i3_refs_write_fndecl_41361 _iwl_dbgfs_d0i3_refs_write fndecl 3 41361 NULL
+enable_so_sl_ocrdma_dev_41367 sl ocrdma_dev 0 41367 NULL
+enable_so_num_eq_entries_hba_parameters_41369 num_eq_entries hba_parameters 0 41369 NULL
+enable_so_wrsent_cyberjack_private_41371 wrsent cyberjack_private 0 41371 NULL
@@ -168131,11 +167419,9 @@ index 0000000..9da833a
+enable_so_i2400m_msg_to_dev_fndecl_41409 i2400m_msg_to_dev fndecl 3 41409 NULL
+enable_so_num_channels_fndecl_41411 num_channels fndecl 0-1 41411 NULL
+enable_so_virtio_cread8_fndecl_41431 virtio_cread8 fndecl 0 41431 NULL
-+enable_so_dapm_bias_read_file_fndecl_41432 dapm_bias_read_file fndecl 3 41432 NULL
+enable_so_snd_pcm_oss_capture_position_fixup_fndecl_41434 snd_pcm_oss_capture_position_fixup fndecl 0 41434 NULL
+enable_so_l1_size_vardecl_acpi_extlog_c_41440 l1_size vardecl_acpi_extlog.c 0 41440 NULL
+enable_so_vram_remap_vardecl_vesafb_c_41441 vram_remap vardecl_vesafb.c 0 41441 NULL
-+enable_so_rt2x00debug_write_csr_fndecl_41442 rt2x00debug_write_csr fndecl 3 41442 NULL
+enable_so_udf_NLStoCS0_fndecl_41451 udf_NLStoCS0 fndecl 0 41451 NULL
+enable_so_rf_blkno_ocfs2_refcount_tree_41452 rf_blkno ocfs2_refcount_tree 0 41452 NULL
+enable_so_dm_wmfw_adsp1_alg_hdr_41454 dm wmfw_adsp1_alg_hdr 0 41454 NULL
@@ -168169,8 +167455,7 @@ index 0000000..9da833a
+enable_so_max_targets_orc_host_41530 max_targets orc_host 0 41530 NULL
+enable_so_pci_vpd_find_tag_fndecl_41534 pci_vpd_find_tag fndecl 0-2 41534 NULL
+enable_so_alloc_cpu_rmap_fndecl_41536 alloc_cpu_rmap fndecl 1 41536 NULL
-+enable_so_sv_xdrsize_svc_serv_41544 sv_xdrsize svc_serv 0 41544 NULL nohasharray
-+enable_so_iwl_dbgfs_netdetect_read_fndecl_41544 iwl_dbgfs_netdetect_read fndecl 3 41544 &enable_so_sv_xdrsize_svc_serv_41544
++enable_so_sv_xdrsize_svc_serv_41544 sv_xdrsize svc_serv 0 41544 NULL
+enable_so_velocity_change_mtu_fndecl_41548 velocity_change_mtu fndecl 2 41548 NULL
+enable_so_nr_online_nodes_vardecl_41549 nr_online_nodes vardecl 0 41549 NULL
+enable_so_ntargets_aoedev_41550 ntargets aoedev 0 41550 NULL
@@ -168206,7 +167491,6 @@ index 0000000..9da833a
+enable_so_usb_alloc_coherent_fndecl_41655 usb_alloc_coherent fndecl 2 41655 NULL
+enable_so_data_length_bnx2i_reject_msg_41661 data_length bnx2i_reject_msg 0 41661 NULL
+enable_so_blk_mq_end_request_fndecl_41663 blk_mq_end_request fndecl 2 41663 NULL
-+enable_so_dpcm_state_read_file_fndecl_41666 dpcm_state_read_file fndecl 3 41666 NULL
+enable_so_error_null_frame_cts_start_read_fndecl_41668 error_null_frame_cts_start_read fndecl 3 41668 NULL
+enable_so_selnl_msglen_fndecl_41672 selnl_msglen fndecl 0 41672 NULL
+enable_so_qib_create_ctxtdata_fndecl_41674 qib_create_ctxtdata fndecl 2 41674 NULL
@@ -168226,7 +167510,8 @@ index 0000000..9da833a
+enable_so_strstart_deflate_state_41719 strstart deflate_state 0 41719 NULL
+enable_so_hlen_ip_tunnel_41720 hlen ip_tunnel 0 41720 NULL
+enable_so_width_tw68_dev_41726 width tw68_dev 0 41726 NULL
-+enable_so_xp_max_npartitions_vardecl_41728 xp_max_npartitions vardecl 0 41728 NULL
++enable_so_pci_enable_msi_range_fndecl_41728 pci_enable_msi_range fndecl 3 41728 NULL nohasharray
++enable_so_xp_max_npartitions_vardecl_41728 xp_max_npartitions vardecl 0 41728 &enable_so_pci_enable_msi_range_fndecl_41728
+enable_so_gfs2_dir_mvino_fndecl_41733 gfs2_dir_mvino fndecl 4 41733 NULL
+enable_so_sb_sectlog_xfs_sb_41740 sb_sectlog xfs_sb 0 41740 NULL
+enable_so_v4l2_ctrl_handler_init_class_fndecl_41742 v4l2_ctrl_handler_init_class fndecl 2 41742 NULL
@@ -168250,15 +167535,14 @@ index 0000000..9da833a
+enable_so_ath9k_multi_regread_fndecl_41779 ath9k_multi_regread fndecl 4 41779 NULL
+enable_so_dma_rx_size_stmmac_priv_41781 dma_rx_size stmmac_priv 0 41781 NULL nohasharray
+enable_so_pg_vec_len_packet_ring_buffer_41781 pg_vec_len packet_ring_buffer 0 41781 &enable_so_dma_rx_size_stmmac_priv_41781
++enable_so_scif_get_pages_fndecl_41783 scif_get_pages fndecl 2-3 41783 NULL
+enable_so_numtx_velocity_opt_41785 numtx velocity_opt 0 41785 NULL
+enable_so_num_bytes_drm_dp_remote_i2c_write_41786 num_bytes drm_dp_remote_i2c_write 0 41786 NULL
+enable_so_make_idx_node_fndecl_41791 make_idx_node fndecl 6-5 41791 NULL nohasharray
+enable_so_max_msg_length_mei_client_properties_41791 max_msg_length mei_client_properties 0 41791 &enable_so_make_idx_node_fndecl_41791
-+enable_so_usbtest_alloc_urb_fndecl_41800 usbtest_alloc_urb fndecl 3-5-2 41800 NULL
+enable_so_rx_pkt_length_rxpd_41805 rx_pkt_length rxpd 0 41805 NULL
+enable_so_alloc_ksz_desc_info_41806 alloc ksz_desc_info 0 41806 NULL nohasharray
+enable_so_outlen_mlx5_cmd_debug_41806 outlen mlx5_cmd_debug 0 41806 &enable_so_alloc_ksz_desc_info_41806
-+enable_so_ath9k_dump_mci_btcoex_fndecl_41809 ath9k_dump_mci_btcoex fndecl 0 41809 NULL
+enable_so_udf_get_pblock_fndecl_41813 udf_get_pblock fndecl 0-4-2 41813 NULL nohasharray
+enable_so_T9_reportid_min_mxt_data_41813 T9_reportid_min mxt_data 0 41813 &enable_so_udf_get_pblock_fndecl_41813
+enable_so_sisusb_num_columns_sisusb_usb_data_41814 sisusb_num_columns sisusb_usb_data 0 41814 NULL nohasharray
@@ -168270,7 +167554,6 @@ index 0000000..9da833a
+enable_so_wdt87xx_get_string_fndecl_41835 wdt87xx_get_string fndecl 4 41835 NULL
+enable_so_root_btrfs_super_block_41846 root btrfs_super_block 0 41846 NULL
+enable_so_al_tr_number_drbd_device_41847 al_tr_number drbd_device 0 41847 NULL
-+enable_so_max_tags_index_Tekram_nvram_41851 max_tags_index Tekram_nvram 0 41851 NULL
+enable_so_ar5523_cmd_write_fndecl_41852 ar5523_cmd_write fndecl 4 41852 NULL nohasharray
+enable_so_free_bootmem_node_fndecl_41852 free_bootmem_node fndecl 3-2 41852 &enable_so_ar5523_cmd_write_fndecl_41852 nohasharray
+enable_so_nf_setsockopt_fndecl_41852 nf_setsockopt fndecl 0 41852 &enable_so_free_bootmem_node_fndecl_41852
@@ -168281,7 +167564,6 @@ index 0000000..9da833a
+enable_so_ino_nilfs_fid_41858 ino nilfs_fid 0 41858 &enable_so_dm_add_exception_fndecl_41858
+enable_so_ext_tree_mark_written_fndecl_41860 ext_tree_mark_written fndecl 2-3 41860 NULL nohasharray
+enable_so_nla_reserve_nohdr_fndecl_41860 nla_reserve_nohdr fndecl 2 41860 &enable_so_ext_tree_mark_written_fndecl_41860
-+enable_so_num_tags_esp_41863 num_tags esp 0 41863 NULL
+enable_so_i2c_smbus_xfer_emulated_fndecl_41868 i2c_smbus_xfer_emulated fndecl 0 41868 NULL nohasharray
+enable_so_ssb_bus_register_fndecl_41868 ssb_bus_register fndecl 3 41868 &enable_so_i2c_smbus_xfer_emulated_fndecl_41868
+enable_so_snd_rme96_capture_getrate_fndecl_41874 snd_rme96_capture_getrate fndecl 0 41874 NULL
@@ -168297,10 +167579,10 @@ index 0000000..9da833a
+enable_so_raw_decoder_line_size_vbi_info_41920 raw_decoder_line_size vbi_info 0 41920 NULL
+enable_so_b_read_mon_reader_bin_41923 b_read mon_reader_bin 0 41923 NULL nohasharray
+enable_so_print_endpoint_stat_fndecl_41923 print_endpoint_stat fndecl 0-4 41923 &enable_so_b_read_mon_reader_bin_41923
-+enable_so_wil_pmc_llseek_fndecl_41924 wil_pmc_llseek fndecl 2 41924 NULL nohasharray
-+enable_so_num_descriptors_wmi_p2p_noa_info_41924 num_descriptors wmi_p2p_noa_info 0 41924 &enable_so_wil_pmc_llseek_fndecl_41924
++enable_so_wil_pmc_llseek_fndecl_41924 wil_pmc_llseek fndecl 2 41924 NULL
+enable_so_dm_complete_request_fndecl_41925 dm_complete_request fndecl 2 41925 NULL
+enable_so_byte_cnt_mthca_cqe_41927 byte_cnt mthca_cqe 0 41927 NULL
++enable_so_regmap_encx24j600_sfr_read_fndecl_41930 regmap_encx24j600_sfr_read fndecl 4 41930 NULL
+enable_so_whci_n_caps_fndecl_41932 whci_n_caps fndecl 0 41932 NULL
+enable_so_ss_nblocks_nilfs_segment_summary_41935 ss_nblocks nilfs_segment_summary 0 41935 NULL
+enable_so_rx_rx_done_read_fndecl_41938 rx_rx_done_read fndecl 3 41938 NULL
@@ -168375,8 +167657,8 @@ index 0000000..9da833a
+enable_so_smb2_sync_write_fndecl_42139 smb2_sync_write fndecl 6 42139 NULL
+enable_so_snd_compr_write_fndecl_42144 snd_compr_write fndecl 3 42144 NULL
+enable_so_uvc_alloc_urb_buffers_fndecl_42145 uvc_alloc_urb_buffers fndecl 0-3-2 42145 NULL
-+enable_so_num_cliprects_drm_i915_gem_execbuffer2_42146 num_cliprects drm_i915_gem_execbuffer2 0 42146 NULL
+enable_so_ath6kl_wmi_set_lpreamble_cmd_fndecl_42153 ath6kl_wmi_set_lpreamble_cmd fndecl 2 42153 NULL
++enable_so_remote_addr_rds_atomic_args_42154 remote_addr rds_atomic_args 0 42154 NULL
+enable_so_channels_audioformat_42156 channels audioformat 0 42156 NULL nohasharray
+enable_so_cnic_support_bnx2x_42156 cnic_support bnx2x 0 42156 &enable_so_channels_audioformat_42156
+enable_so_bfad_iocmd_cfg_trunk_fndecl_42157 bfad_iocmd_cfg_trunk fndecl 0 42157 NULL
@@ -168401,14 +167683,14 @@ index 0000000..9da833a
+enable_so_set_bredr_fndecl_42228 set_bredr fndecl 4 42228 NULL nohasharray
+enable_so_diva_xdi_write_fndecl_42228 diva_xdi_write fndecl 4 42228 &enable_so_set_bredr_fndecl_42228
+enable_so_dwMaxVideoFrameBufferSize_uvc_frame_42230 dwMaxVideoFrameBufferSize uvc_frame 0 42230 NULL
-+enable_so_num_q_vectors_igb_adapter_42232 num_q_vectors igb_adapter 0 42232 NULL
++enable_so_nr_map_efi_memory_map_42232 nr_map efi_memory_map 0 42232 NULL nohasharray
++enable_so_num_q_vectors_igb_adapter_42232 num_q_vectors igb_adapter 0 42232 &enable_so_nr_map_efi_memory_map_42232
+enable_so_chunksize_mdp_superblock_1_42236 chunksize mdp_superblock_1 0 42236 NULL nohasharray
+enable_so_max_data_size_irda_sock_42236 max_data_size irda_sock 0 42236 &enable_so_chunksize_mdp_superblock_1_42236
+enable_so_scrollback_phys_max_vardecl_fbcon_c_42241 scrollback_phys_max vardecl_fbcon.c 0 42241 NULL
+enable_so_len_wmi_tlv_42244 len wmi_tlv 0 42244 NULL
+enable_so_buf_write_ptr_comedi_async_42247 buf_write_ptr comedi_async 0 42247 NULL
+enable_so_nchunks_radeon_cs_parser_42251 nchunks radeon_cs_parser 0 42251 NULL
-+enable_so_iwl_dbgfs_bcast_filters_read_fndecl_42258 iwl_dbgfs_bcast_filters_read fndecl 3 42258 NULL
+enable_so_read_kcore_fndecl_42259 read_kcore fndecl 3 42259 NULL
+enable_so_bfad_iocmd_rport_get_attr_fndecl_42263 bfad_iocmd_rport_get_attr fndecl 0 42263 NULL
+enable_so_snd_pcm_plug_write_transfer_fndecl_42268 snd_pcm_plug_write_transfer fndecl 3-0 42268 NULL
@@ -168433,10 +167715,12 @@ index 0000000..9da833a
+enable_so_dbg_leb_write_fndecl_42320 dbg_leb_write fndecl 5-4 42320 &enable_so_pg_test_nfs_pageio_ops_42320
+enable_so_gsi_base_mp_ioapic_gsi_42330 gsi_base mp_ioapic_gsi 0 42330 NULL
+enable_so_ib_register_mad_agent_fndecl_42332 ib_register_mad_agent fndecl 2 42332 NULL
++enable_so_soc_tplg_dapm_widget_dbytes_create_fndecl_42336 soc_tplg_dapm_widget_dbytes_create fndecl 2 42336 NULL
+enable_so_mlx4_ib_alloc_cq_buf_fndecl_42345 mlx4_ib_alloc_cq_buf fndecl 3 42345 NULL
+enable_so_fw_xcb_count_qla_hw_data_42354 fw_xcb_count qla_hw_data 0 42354 NULL
+enable_so_nftl_readblock_fndecl_42358 nftl_readblock fndecl 2 42358 NULL
-+enable_so_gart_start_crash_elf_data_42365 gart_start crash_elf_data 0 42365 NULL
++enable_so_gart_start_crash_elf_data_42365 gart_start crash_elf_data 0 42365 NULL nohasharray
++enable_so_mixer_channels_device_info_42365 mixer_channels device_info 0 42365 &enable_so_gart_start_crash_elf_data_42365
+enable_so_minor_mei_device_42366 minor mei_device 0 42366 NULL
+enable_so_inbufBitCount_bunzip_data_42367 inbufBitCount bunzip_data 0 42367 NULL
+enable_so_symbol_build_supp_rates_fndecl_42369 symbol_build_supp_rates fndecl 0 42369 NULL
@@ -168448,6 +167732,7 @@ index 0000000..9da833a
+enable_so_mlx5_wq_ll_get_size_fndecl_42379 mlx5_wq_ll_get_size fndecl 0 42379 NULL
+enable_so_placement_offset_bnx2x_agg_info_42380 placement_offset bnx2x_agg_info 0 42380 NULL
+enable_so___spi_validate_fndecl_42385 __spi_validate fndecl 0 42385 NULL
++enable_so_num_cache_leaves_vardecl_intel_cacheinfo_c_42390 num_cache_leaves vardecl_intel_cacheinfo.c 0 42390 NULL
+enable_so_remote_payload_max_nfc_digital_dev_42391 remote_payload_max nfc_digital_dev 0 42391 NULL
+enable_so_no_of_vpath_vxgedev_42396 no_of_vpath vxgedev 0 42396 NULL
+enable_so_module_alloc_fndecl_42397 module_alloc fndecl 1 42397 NULL
@@ -168456,7 +167741,6 @@ index 0000000..9da833a
+enable_so_dma_rxsize_vardecl_stmmac_main_c_42409 dma_rxsize vardecl_stmmac_main.c 0 42409 NULL
+enable_so_vbi_read_fndecl_42410 vbi_read fndecl 3 42410 NULL
+enable_so_length_mei_msg_hdr_42413 length mei_msg_hdr 0 42413 NULL
-+enable_so_ext2_xattr_security_set_fndecl_42417 ext2_xattr_security_set fndecl 4 42417 NULL
+enable_so_data_offset_iscsi_r2t_info_42419 data_offset iscsi_r2t_info 0 42419 NULL
+enable_so_defrag_lookup_extent_fndecl_42423 defrag_lookup_extent fndecl 2 42423 NULL
+enable_so_hidraw_ioctl_fndecl_42425 hidraw_ioctl fndecl 2 42425 NULL
@@ -168484,11 +167768,13 @@ index 0000000..9da833a
+enable_so_tot_len_pkt_gl_42487 tot_len pkt_gl 0 42487 NULL
+enable_so_hid_sensor_client_cnt_sensor_hub_data_42488 hid_sensor_client_cnt sensor_hub_data 0 42488 NULL
+enable_so_keylength_gss_krb5_enctype_42493 keylength gss_krb5_enctype 0 42493 NULL
++enable_so_bnxt_rx_skb_fndecl_42495 bnxt_rx_skb fndecl 7 42495 NULL
+enable_so_hsi_alloc_msg_fndecl_42496 hsi_alloc_msg fndecl 1 42496 NULL
+enable_so_bpf_check_classic_fndecl_42501 bpf_check_classic fndecl 2 42501 NULL
+enable_so_DataTransferLength_DAC960_V1_UserCommand_42502 DataTransferLength DAC960_V1_UserCommand 0 42502 NULL
+enable_so_ath6kl_sdio_read_write_sync_fndecl_42504 ath6kl_sdio_read_write_sync fndecl 4 42504 NULL
+enable_so_fs_start_efs_sb_info_42506 fs_start efs_sb_info 0 42506 NULL
++enable_so_st21nfca_hci_dm_load_fndecl_42509 st21nfca_hci_dm_load fndecl 3 42509 NULL
+enable_so_dec_cluster_info_page_fndecl_42521 dec_cluster_info_page fndecl 3 42521 NULL
+enable_so_xfs_rtmodify_summary_fndecl_42522 xfs_rtmodify_summary fndecl 4-3 42522 NULL
+enable_so_cn_netlink_send_mult_fndecl_42523 cn_netlink_send_mult fndecl 2 42523 NULL
@@ -168517,8 +167803,8 @@ index 0000000..9da833a
+enable_so_map_region_fndecl_42587 map_region fndecl 1 42587 NULL
+enable_so_bcm3510_readbytes_fndecl_42592 bcm3510_readbytes fndecl 4 42592 NULL
+enable_so_name_len_jffs2_xattr_datum_42593 name_len jffs2_xattr_datum 0 42593 NULL
-+enable_so_offset_dmi_ipmi_data_42594 offset dmi_ipmi_data 0 42594 NULL nohasharray
-+enable_so_cdc_ncm_set_dgram_size_fndecl_42594 cdc_ncm_set_dgram_size fndecl 2 42594 &enable_so_offset_dmi_ipmi_data_42594
++enable_so_cdc_ncm_set_dgram_size_fndecl_42594 cdc_ncm_set_dgram_size fndecl 2 42594 NULL nohasharray
++enable_so_offset_dmi_ipmi_data_42594 offset dmi_ipmi_data 0 42594 &enable_so_cdc_ncm_set_dgram_size_fndecl_42594
+enable_so_bsize_nfs_parsed_mount_data_42598 bsize nfs_parsed_mount_data 0 42598 NULL
+enable_so_wrap_bcma_device_42599 wrap bcma_device 0 42599 NULL nohasharray
+enable_so_reg_create_fndecl_42599 reg_create fndecl 5 42599 &enable_so_wrap_bcma_device_42599
@@ -168528,6 +167814,7 @@ index 0000000..9da833a
+enable_so_nilfs_alloc_seg_bio_fndecl_42604 nilfs_alloc_seg_bio fndecl 2-3 42604 NULL
+enable_so_qlcnic_82xx_calculate_msix_vector_fndecl_42609 qlcnic_82xx_calculate_msix_vector fndecl 0 42609 NULL
+enable_so_n_channels_wmi_start_scan_arg_42610 n_channels wmi_start_scan_arg 0 42610 NULL
++enable_so_vendor_diag_write_fndecl_42612 vendor_diag_write fndecl 3 42612 NULL
+enable_so_hashsize_Qdisc_class_hash_42616 hashsize Qdisc_class_hash 0 42616 NULL
+enable_so_size_ck804xrom_window_42617 size ck804xrom_window 0 42617 NULL
+enable_so_HFP_kyrofb_info_42618 HFP kyrofb_info 0 42618 NULL
@@ -168583,8 +167870,7 @@ index 0000000..9da833a
+enable_so_hfi1_sdma_comp_ring_size_vardecl_user_sdma_c_42743 hfi1_sdma_comp_ring_size vardecl_user_sdma.c 0 42743 &enable_so_tcp_adjust_pcount_fndecl_42743
+enable_so_p54_parse_rssical_fndecl_42750 p54_parse_rssical fndecl 3 42750 NULL
+enable_so_SyS_rt_sigpending_fndecl_42753 SyS_rt_sigpending fndecl 2 42753 NULL
-+enable_so_unmap_entire_bt_fndecl_42755 unmap_entire_bt fndecl 3 42755 NULL nohasharray
-+enable_so_bmc150_accel_fifo_transfer_fndecl_42755 bmc150_accel_fifo_transfer fndecl 3 42755 &enable_so_unmap_entire_bt_fndecl_42755
++enable_so_unmap_entire_bt_fndecl_42755 unmap_entire_bt fndecl 3 42755 NULL
+enable_so_tcf_csum_skb_nextlayer_fndecl_42762 tcf_csum_skb_nextlayer fndecl 3 42762 NULL
+enable_so_elems_v4l2_ctrl_42763 elems v4l2_ctrl 0 42763 NULL
+enable_so_maxdev_blogic_adapter_42764 maxdev blogic_adapter 0 42764 NULL
@@ -168599,8 +167885,7 @@ index 0000000..9da833a
+enable_so_lov_tgt_size_lov_obd_42782 lov_tgt_size lov_obd 0 42782 NULL
+enable_so_rx_data_length_hso_serial_42783 rx_data_length hso_serial 0 42783 NULL
+enable_so_usbnet_change_mtu_fndecl_42784 usbnet_change_mtu fndecl 2 42784 NULL nohasharray
-+enable_so_ssid_len_ath6kl_vif_42784 ssid_len ath6kl_vif 0 42784 &enable_so_usbnet_change_mtu_fndecl_42784 nohasharray
-+enable_so_dvb_dmxdev_ts_callback_fndecl_42784 dvb_dmxdev_ts_callback fndecl 2-4 42784 &enable_so_ssid_len_ath6kl_vif_42784
++enable_so_ssid_len_ath6kl_vif_42784 ssid_len ath6kl_vif 0 42784 &enable_so_usbnet_change_mtu_fndecl_42784
+enable_so_offset_fuse_page_desc_42785 offset fuse_page_desc 0 42785 NULL
+enable_so_memblock_add_region_fndecl_42790 memblock_add_region fndecl 1-2 42790 NULL
+enable_so_xdr_encode_word_fndecl_42802 xdr_encode_word fndecl 2 42802 NULL
@@ -168615,6 +167900,7 @@ index 0000000..9da833a
+enable_so_lbs_highrssi_read_fndecl_42826 lbs_highrssi_read fndecl 3 42826 NULL
+enable_so_clear_update_marker_fndecl_42827 clear_update_marker fndecl 3 42827 NULL
+enable_so_ezusb_program_bytes_fndecl_42828 ezusb_program_bytes fndecl 4 42828 NULL
++enable_so_rrpc_init_fndecl_42834 rrpc_init fndecl 3-4 42834 NULL
+enable_so_dev_addr_fsl_edma_slave_config_42835 dev_addr fsl_edma_slave_config 0 42835 NULL
+enable_so_pcifront_bus_write_fndecl_42836 pcifront_bus_write fndecl 5 42836 NULL
+enable_so_decompress_compressor_42840 decompress compressor 0 42840 NULL
@@ -168634,7 +167920,6 @@ index 0000000..9da833a
+enable_so_reset_poll_ide_port_ops_42895 reset_poll ide_port_ops 0 42895 NULL nohasharray
+enable_so_number_of_tds_fndecl_42895 number_of_tds fndecl 0 42895 &enable_so_reset_poll_ide_port_ops_42895
+enable_so_init_bch_fndecl_42897 init_bch fndecl 1-2 42897 NULL
-+enable_so_ql2xmaxqdepth_vardecl_qla_os_c_42899 ql2xmaxqdepth vardecl_qla_os.c 0 42899 NULL
+enable_so_memblock_find_in_range_node_fndecl_42905 memblock_find_in_range_node fndecl 0-2-1-3-4 42905 NULL
+enable_so_name_length_spar_controlvm_parameters_header_42909 name_length spar_controlvm_parameters_header 0 42909 NULL
+enable_so_vd_vblocknr_nilfs_vdesc_42910 vd_vblocknr nilfs_vdesc 0 42910 NULL
@@ -168643,6 +167928,7 @@ index 0000000..9da833a
+enable_so_do_command_extended_fndecl_42913 do_command_extended fndecl 0 42913 NULL
+enable_so_clkin_adf4350_state_42914 clkin adf4350_state 0 42914 NULL
+enable_so_i915_gem_stolen_insert_node_fndecl_42918 i915_gem_stolen_insert_node fndecl 3 42918 NULL
++enable_so_st21nfca_hci_dm_field_generator_fndecl_42926 st21nfca_hci_dm_field_generator fndecl 3 42926 NULL
+enable_so_carl9170_handle_command_response_fndecl_42930 carl9170_handle_command_response fndecl 3 42930 NULL
+enable_so_wMaxInputLength_i2c_hid_desc_42932 wMaxInputLength i2c_hid_desc 0 42932 NULL
+enable_so_bnx2x_vf_mcast_fndecl_42933 bnx2x_vf_mcast fndecl 4 42933 NULL
@@ -168660,7 +167946,6 @@ index 0000000..9da833a
+enable_so___pskb_copy_fclone_fndecl_42969 __pskb_copy_fclone fndecl 2 42969 NULL
+enable_so_periods_max_snd_pcm_hardware_42979 periods_max snd_pcm_hardware 0 42979 NULL
+enable_so_brcmf_sdiod_send_buf_fndecl_42982 brcmf_sdiod_send_buf fndecl 3 42982 NULL
-+enable_so_max_pfn_amdgpu_vm_manager_42989 max_pfn amdgpu_vm_manager 0 42989 NULL
+enable_so_len_kvaser_msg_42994 len kvaser_msg 0 42994 NULL
+enable_so_hw_token_fotg210_qh_hw_42995 hw_token fotg210_qh_hw 0 42995 NULL
+enable_so_num_mappings_nd_region_desc_42998 num_mappings nd_region_desc 0 42998 NULL nohasharray
@@ -168675,8 +167960,8 @@ index 0000000..9da833a
+enable_so_len_i2c_msg_43014 len i2c_msg 0 43014 NULL nohasharray
+enable_so_obd_ioctl_popdata_fndecl_43014 obd_ioctl_popdata fndecl 3 43014 &enable_so_len_i2c_msg_43014
+enable_so_ath6kl_wmi_reconnect_cmd_fndecl_43017 ath6kl_wmi_reconnect_cmd fndecl 2 43017 NULL nohasharray
-+enable_so_key_replays_read_fndecl_43017 key_replays_read fndecl 3 43017 &enable_so_ath6kl_wmi_reconnect_cmd_fndecl_43017 nohasharray
-+enable_so_phonet_rxq_size_vardecl_f_phonet_c_43017 phonet_rxq_size vardecl_f_phonet.c 0 43017 &enable_so_key_replays_read_fndecl_43017
++enable_so_phonet_rxq_size_vardecl_f_phonet_c_43017 phonet_rxq_size vardecl_f_phonet.c 0 43017 &enable_so_ath6kl_wmi_reconnect_cmd_fndecl_43017
++enable_so_r5l_log_write_empty_meta_block_fndecl_43018 r5l_log_write_empty_meta_block fndecl 2 43018 NULL
+enable_so_PacketLength__MSG_LAN_RECEIVE_POST_REPLY_43028 PacketLength _MSG_LAN_RECEIVE_POST_REPLY 0 43028 NULL
+enable_so_a_bss_exec_43030 a_bss exec 0 43030 NULL
+enable_so_usHActive__ATOM_DTD_FORMAT_43031 usHActive _ATOM_DTD_FORMAT 0 43031 NULL nohasharray
@@ -168689,12 +167974,10 @@ index 0000000..9da833a
+enable_so_stmmac_change_mtu_fndecl_43052 stmmac_change_mtu fndecl 2 43052 NULL
+enable_so_logical_block_size_queue_limits_43053 logical_block_size queue_limits 0 43053 NULL
+enable_so_s_reserved_gdt_blocks_ext4_super_block_43054 s_reserved_gdt_blocks ext4_super_block 0 43054 NULL
-+enable_so_mwifiex_rdeeprom_write_fndecl_43057 mwifiex_rdeeprom_write fndecl 3 43057 NULL
+enable_so_inode_number_squashfs_base_inode_43062 inode_number squashfs_base_inode 0 43062 NULL nohasharray
+enable_so_acpi_dev_get_ioresource_fndecl_43062 acpi_dev_get_ioresource fndecl 3-2 43062 &enable_so_inode_number_squashfs_base_inode_43062
+enable_so_len_ib_ucm_rep_43064 len ib_ucm_rep 0 43064 NULL
+enable_so_len_srp_direct_buf_43066 len srp_direct_buf 0 43066 NULL
-+enable_so_quirk_simultaneous_discovery_write_fndecl_43076 quirk_simultaneous_discovery_write fndecl 3 43076 NULL
+enable_so_raw_skid_size_pkcs7_parse_context_43081 raw_skid_size pkcs7_parse_context 0 43081 NULL
+enable_so_output_buffer_size_vardecl_seq_midi_c_43084 output_buffer_size vardecl_seq_midi.c 0 43084 NULL
+enable_so_bttv_prepare_buffer_fndecl_43088 bttv_prepare_buffer fndecl 6-5 43088 NULL
@@ -168702,7 +167985,6 @@ index 0000000..9da833a
+enable_so_i2c_wr_max_cx24116_config_43094 i2c_wr_max cx24116_config 0 43094 NULL
+enable_so__create_message_fndecl_43096 _create_message fndecl 2 43096 NULL
+enable_so_printf_size_mon_reader_text_43097 printf_size mon_reader_text 0 43097 NULL
-+enable_so_hpsa_change_queue_depth_fndecl_43098 hpsa_change_queue_depth fndecl 2 43098 NULL
+enable_so_if_sdio_read_rx_unit_fndecl_43099 if_sdio_read_rx_unit fndecl 0 43099 NULL
+enable_so_sector_badblocks_43102 sector badblocks 0 43102 NULL
+enable_so_cyttsp_i2c_write_block_data_fndecl_43104 cyttsp_i2c_write_block_data fndecl 4 43104 NULL
@@ -168736,6 +168018,7 @@ index 0000000..9da833a
+enable_so_length_ib_mac_iocb_rsp_43186 length ib_mac_iocb_rsp 0 43186 NULL
+enable_so_block_end_dm_cell_key_43191 block_end dm_cell_key 0 43191 NULL
+enable_so_if_spi_host_to_card_fndecl_43193 if_spi_host_to_card fndecl 4 43193 NULL
++enable_so_msi_assign_ce_max_ath10k_hw_values_43194 msi_assign_ce_max ath10k_hw_values 0 43194 NULL
+enable_so_nilfs_cpfile_block_get_snapshot_list_fndecl_43198 nilfs_cpfile_block_get_snapshot_list fndecl 2 43198 NULL
+enable_so_tidno_ath_atx_tid_43202 tidno ath_atx_tid 0 43202 NULL nohasharray
+enable_so_rx_data_eaten_rxrpc_call_43202 rx_data_eaten rxrpc_call 0 43202 &enable_so_tidno_ath_atx_tid_43202
@@ -168760,7 +168043,8 @@ index 0000000..9da833a
+enable_so_persistent_ram_new_fndecl_43278 persistent_ram_new fndecl 2-1 43278 NULL
+enable_so_tx_modulus_cdc_ncm_ctx_43289 tx_modulus cdc_ncm_ctx 0 43289 NULL
+enable_so_size_oid_t_43292 size oid_t 0 43292 NULL
-+enable_so_ip_vs_icmp_xmit_v6_fndecl_43294 ip_vs_icmp_xmit_v6 fndecl 4 43294 NULL
++enable_so_ip_vs_icmp_xmit_v6_fndecl_43294 ip_vs_icmp_xmit_v6 fndecl 4 43294 NULL nohasharray
++enable_so_of_property_read_string_array_fndecl_43294 of_property_read_string_array fndecl 0 43294 &enable_so_ip_vs_icmp_xmit_v6_fndecl_43294
+enable_so_transfer_dma_urb_43305 transfer_dma urb 0 43305 NULL
+enable_so_total_nic_func_qlcnic_hardware_context_43307 total_nic_func qlcnic_hardware_context 0 43307 NULL
+enable_so_rio_request_outb_mbox_fndecl_43309 rio_request_outb_mbox fndecl 3 43309 NULL
@@ -168777,8 +168061,7 @@ index 0000000..9da833a
+enable_so_vactive_videomode_43345 vactive videomode 0 43345 NULL
+enable_so_wake_packet_bufsize_iwl_wowlan_status_data_43348 wake_packet_bufsize iwl_wowlan_status_data 0 43348 NULL nohasharray
+enable_so_debugfs_read_fndecl_43348 debugfs_read fndecl 3 43348 &enable_so_wake_packet_bufsize_iwl_wowlan_status_data_43348
-+enable_so_test_iso_queue_fndecl_43349 test_iso_queue fndecl 5-3 43349 NULL nohasharray
-+enable_so___kmalloc_node_track_caller_fndecl_43349 __kmalloc_node_track_caller fndecl 1 43349 &enable_so_test_iso_queue_fndecl_43349
++enable_so___kmalloc_node_track_caller_fndecl_43349 __kmalloc_node_track_caller fndecl 1 43349 NULL
+enable_so_pktsz_fifo_43351 pktsz fifo 0 43351 NULL nohasharray
+enable_so_entry_size_xpc_channel_43351 entry_size xpc_channel 0 43351 &enable_so_pktsz_fifo_43351
+enable_so_header_len_dst_entry_43355 header_len dst_entry 0 43355 NULL nohasharray
@@ -168797,6 +168080,7 @@ index 0000000..9da833a
+enable_so_xfrm_user_policy_fndecl_43390 xfrm_user_policy fndecl 4 43390 NULL
+enable_so_lpt_spc_bits_ubifs_info_43392 lpt_spc_bits ubifs_info 0 43392 NULL
+enable_so_offset_isert_data_buf_43395 offset isert_data_buf 0 43395 NULL
++enable_so_vlan_proto_net_bridge_43397 vlan_proto net_bridge 0 43397 NULL
+enable_so_id_via_isa_bridge_43399 id via_isa_bridge 0 43399 NULL
+enable_so_base_nr_i2c_mux_gpio_platform_data_43400 base_nr i2c_mux_gpio_platform_data 0 43400 NULL
+enable_so_depth_saa7146_format_43402 depth saa7146_format 0 43402 NULL
@@ -168810,7 +168094,6 @@ index 0000000..9da833a
+enable_so_prism2_send_mgmt_fndecl_43422 prism2_send_mgmt fndecl 4 43422 NULL
+enable_so_status_fealnx_desc_43423 status fealnx_desc 0 43423 NULL
+enable_so_ath6kl_wmi_set_apsd_bfrd_traf_fndecl_43427 ath6kl_wmi_set_apsd_bfrd_traf fndecl 2 43427 NULL
-+enable_so_clk_fd_round_rate_fndecl_43428 clk_fd_round_rate fndecl 2 43428 NULL
+enable_so_lpfc_sli4_queue_alloc_fndecl_43429 lpfc_sli4_queue_alloc fndecl 3 43429 NULL
+enable_so_offset_afs_call_43431 offset afs_call 0 43431 NULL
+enable_so_nfs4_proc_set_acl_fndecl_43435 nfs4_proc_set_acl fndecl 3 43435 NULL
@@ -168843,7 +168126,8 @@ index 0000000..9da833a
+enable_so_total_size_vardecl_mtdram_c_43478 total_size vardecl_mtdram.c 0 43478 NULL nohasharray
+enable_so_length_cpcs_trailer_43478 length cpcs_trailer 0 43478 &enable_so_total_size_vardecl_mtdram_c_43478
+enable_so_sd_jbsize_gfs2_sbd_43480 sd_jbsize gfs2_sbd 0 43480 NULL
-+enable_so_sysv_iget_fndecl_43483 sysv_iget fndecl 2 43483 NULL
++enable_so_pcm_capture_analog_channels_snd_tscm_spec_43483 pcm_capture_analog_channels snd_tscm_spec 0 43483 NULL nohasharray
++enable_so_sysv_iget_fndecl_43483 sysv_iget fndecl 2 43483 &enable_so_pcm_capture_analog_channels_snd_tscm_spec_43483
+enable_so_atl1e_change_mtu_fndecl_43485 atl1e_change_mtu fndecl 2 43485 NULL
+enable_so_secondary_bin_count_drm_mga_dma_bootstrap_43491 secondary_bin_count drm_mga_dma_bootstrap 0 43491 NULL
+enable_so_bioset_integrity_create_fndecl_43495 bioset_integrity_create fndecl 2 43495 NULL
@@ -168864,7 +168148,6 @@ index 0000000..9da833a
+enable_so_sb_rextslog_xfs_sb_43520 sb_rextslog xfs_sb 0 43520 NULL nohasharray
+enable_so_ptp_read_fndecl_43520 ptp_read fndecl 4 43520 &enable_so_sb_rextslog_xfs_sb_43520
+enable_so_fifo_pool_size_snd_seq_user_client_43523 fifo_pool_size snd_seq_user_client 0 43523 NULL
-+enable_so__iwl_dbgfs_rx_phyinfo_write_fndecl_43525 _iwl_dbgfs_rx_phyinfo_write fndecl 3 43525 NULL
+enable_so_xfs_dir2_leaf_getdents_fndecl_43533 xfs_dir2_leaf_getdents fndecl 3 43533 NULL
+enable_so_mei_amthif_read_start_fndecl_43534 mei_amthif_read_start fndecl 0 43534 NULL
+enable_so_dccps_gsr_dccp_sock_43535 dccps_gsr dccp_sock 0 43535 NULL
@@ -168880,7 +168163,6 @@ index 0000000..9da833a
+enable_so_xfs_difree_fndecl_43581 xfs_difree fndecl 2 43581 NULL
+enable_so___br_vlan_set_default_pvid_fndecl_43587 __br_vlan_set_default_pvid fndecl 2 43587 NULL
+enable_so_size_ext4_io_end_43590 size ext4_io_end 0 43590 NULL
-+enable_so_ath10k_read_fw_dbglog_fndecl_43592 ath10k_read_fw_dbglog fndecl 3 43592 NULL
+enable_so_recv_data_fndecl_43596 recv_data fndecl 3 43596 NULL
+enable_so_rem_len_hci_rp_read_local_amp_assoc_43602 rem_len hci_rp_read_local_amp_assoc 0 43602 NULL nohasharray
+enable_so_mult_req_ide_drive_s_43602 mult_req ide_drive_s 0 43602 &enable_so_rem_len_hci_rp_read_local_amp_assoc_43602 nohasharray
@@ -168921,13 +168203,13 @@ index 0000000..9da833a
+enable_so_of_irq_get_fndecl_43712 of_irq_get fndecl 0 43712 NULL
+enable_so_data_block_quadlets_amdtp_stream_43723 data_block_quadlets amdtp_stream 0 43723 NULL
+enable_so_in_size_xz_buf_43724 in_size xz_buf 0 43724 NULL
-+enable_so_tpm_tis_init_fndecl_43728 tpm_tis_init fndecl 4-3 43728 NULL
+enable_so_ReplyFrameSize_mpt3sas_facts_43736 ReplyFrameSize mpt3sas_facts 0 43736 NULL
+enable_so_gfn_to_hva_many_fndecl_43742 gfn_to_hva_many fndecl 2 43742 NULL
+enable_so_acpi_rs_strcpy_fndecl_43746 acpi_rs_strcpy fndecl 0 43746 NULL
+enable_so_used_map_cnt_verifier_env_43747 used_map_cnt verifier_env 0 43747 NULL
+enable_so_stat_end_vardecl_drv_c_43748 stat_end vardecl_drv.c 0 43748 NULL
+enable_so_sas_host_smp_write_gpio_fndecl_43749 sas_host_smp_write_gpio fndecl 0 43749 NULL
++enable_so_rrpc_update_map_fndecl_43752 rrpc_update_map fndecl 2 43752 NULL
+enable_so_osd_req_encode_op_fndecl_43755 osd_req_encode_op fndecl 0 43755 NULL
+enable_so_data1_sisusb_command_43756 data1 sisusb_command 0 43756 NULL nohasharray
+enable_so_len_meta_value_43756 len meta_value 0 43756 &enable_so_data1_sisusb_command_43756 nohasharray
@@ -168951,14 +168233,14 @@ index 0000000..9da833a
+enable_so___vb2_perform_fileio_fndecl_43818 __vb2_perform_fileio fndecl 3 43818 NULL
+enable_so__save_mc_fndecl_43819 _save_mc fndecl 0-3 43819 NULL
+enable_so_i915_gem_object_create_stolen_fndecl_43837 i915_gem_object_create_stolen fndecl 2 43837 NULL
-+enable_so_unlink1_fndecl_43840 unlink1 fndecl 3-2 43840 NULL
++enable_so_unlink1_fndecl_43840 unlink1 fndecl 3-2 43840 NULL nohasharray
++enable_so_snd_timer_user_info_fndecl_43840 snd_timer_user_info fndecl 0 43840 &enable_so_unlink1_fndecl_43840
+enable_so_ath6kl_wmi_enable_sched_scan_cmd_fndecl_43841 ath6kl_wmi_enable_sched_scan_cmd fndecl 2 43841 NULL
+enable_so_bfad_iocmd_diag_lb_stat_fndecl_43844 bfad_iocmd_diag_lb_stat fndecl 0 43844 NULL
+enable_so_initrd_start_vardecl_43848 initrd_start vardecl 0 43848 NULL nohasharray
+enable_so_parport_ieee1284_ecp_write_data_fndecl_43848 parport_ieee1284_ecp_write_data fndecl 0 43848 &enable_so_initrd_start_vardecl_43848
+enable_so_xen_set_nslabs_fndecl_43849 xen_set_nslabs fndecl 0-1 43849 NULL
+enable_so_wlcore_scan_fndecl_43850 wlcore_scan fndecl 4 43850 NULL
-+enable_so_iwl_dbgfs_fw_rx_stats_read_fndecl_43853 iwl_dbgfs_fw_rx_stats_read fndecl 3 43853 NULL
+enable_so_scsi_host_alloc_fndecl_43858 scsi_host_alloc fndecl 2 43858 NULL
+enable_so_indat_endpoint_keyspan_device_details_43860 indat_endpoint keyspan_device_details 0 43860 NULL
+enable_so_get_sset_count_ethtool_ops_43861 get_sset_count ethtool_ops 0 43861 NULL
@@ -168985,9 +168267,7 @@ index 0000000..9da833a
+enable_so_phys_statctrl_base__synclinkmp_info_43923 phys_statctrl_base _synclinkmp_info 0 43923 NULL
+enable_so_rd_length_nfsd4_read_43924 rd_length nfsd4_read 0 43924 NULL
+enable_so_mbind_range_fndecl_43926 mbind_range fndecl 3-2 43926 NULL
-+enable_so_iwl_dbgfs_sensitivity_read_fndecl_43935 iwl_dbgfs_sensitivity_read fndecl 3 43935 NULL
-+enable_so_req_fiv_s5k5baf_43938 req_fiv s5k5baf 0 43938 NULL nohasharray
-+enable_so_iwl_mvm_coex_dump_mbox_fndecl_43938 iwl_mvm_coex_dump_mbox fndecl 0-3 43938 &enable_so_req_fiv_s5k5baf_43938
++enable_so_req_fiv_s5k5baf_43938 req_fiv s5k5baf 0 43938 NULL
+enable_so_max_threads_vardecl_43940 max_threads vardecl 0 43940 NULL nohasharray
+enable_so_queue_pages_pte_range_fndecl_43940 queue_pages_pte_range fndecl 2 43940 &enable_so_max_threads_vardecl_43940
+enable_so_ubifs_change_one_lp_fndecl_43942 ubifs_change_one_lp fndecl 3 43942 NULL
@@ -169013,8 +168293,7 @@ index 0000000..9da833a
+enable_so_smk_write_revoke_subj_fndecl_43990 smk_write_revoke_subj fndecl 3 43990 NULL
+enable_so_SyS_syslog_fndecl_43993 SyS_syslog fndecl 3 43993 NULL
+enable_so_nsize_jffs2_raw_dirent_43995 nsize jffs2_raw_dirent 0 43995 NULL nohasharray
-+enable_so_pvm_determine_end_fndecl_43995 pvm_determine_end fndecl 0-3 43995 &enable_so_nsize_jffs2_raw_dirent_43995 nohasharray
-+enable_so_ovl_fill_merge_fndecl_43995 ovl_fill_merge fndecl 3 43995 &enable_so_pvm_determine_end_fndecl_43995
++enable_so_pvm_determine_end_fndecl_43995 pvm_determine_end fndecl 0-3 43995 &enable_so_nsize_jffs2_raw_dirent_43995
+enable_so_copy_templates_fndecl_43996 copy_templates fndecl 3 43996 NULL
+enable_so_snd_pcm_lib_malloc_pages_fndecl_43997 snd_pcm_lib_malloc_pages fndecl 2 43997 NULL
+enable_so___e820_add_region_fndecl_44001 __e820_add_region fndecl 3 44001 NULL
@@ -169024,11 +168303,12 @@ index 0000000..9da833a
+enable_so_rbd_img_obj_exists_submit_fndecl_44011 rbd_img_obj_exists_submit fndecl 0 44011 NULL
+enable_so_ext2_direct_IO_fndecl_44012 ext2_direct_IO fndecl 3 44012 NULL
+enable_so_level_pid_namespace_44021 level pid_namespace 0 44021 NULL
++enable_so_nr_chnls_nvm_dev_44026 nr_chnls nvm_dev 0 44026 NULL
+enable_so_rx_buffer_truesize_efx_nic_44027 rx_buffer_truesize efx_nic 0 44027 NULL
++enable_so_response_length_ib_uverbs_ex_create_qp_resp_44030 response_length ib_uverbs_ex_create_qp_resp 0 44030 NULL
+enable_so_SyS_kexec_file_load_fndecl_44032 SyS_kexec_file_load fndecl 3 44032 NULL
-+enable_so_fragmentation_threshold_read_fndecl_44037 fragmentation_threshold_read fndecl 3 44037 NULL
+enable_so_regsize_octeon_mdiobus_44041 regsize octeon_mdiobus 0 44041 NULL
-+enable_so_convert_extent_bit_fndecl_44046 convert_extent_bit fndecl 3-2 44046 NULL
++enable_so_convert_extent_bit_fndecl_44046 convert_extent_bit fndecl 2-3 44046 NULL
+enable_so_ahc_linux_map_seg_fndecl_44059 ahc_linux_map_seg fndecl 4-5 44059 NULL nohasharray
+enable_so_btrfs_submit_direct_fndecl_44059 btrfs_submit_direct fndecl 4 44059 &enable_so_ahc_linux_map_seg_fndecl_44059
+enable_so_prog_page_fndecl_44060 prog_page fndecl 2 44060 NULL
@@ -169036,7 +168316,6 @@ index 0000000..9da833a
+enable_so_xen_io_tlb_nslabs_vardecl_swiotlb_xen_c_44077 xen_io_tlb_nslabs vardecl_swiotlb-xen.c 0 44077 NULL
+enable_so_maxports_board_t_44081 maxports board_t 0 44081 NULL
+enable_so_debug_pmt_fndecl_44082 debug_pmt fndecl 2 44082 NULL
-+enable_so_read_file_regval_fndecl_44093 read_file_regval fndecl 3 44093 NULL
+enable_so_netup_read_i2c_fndecl_44096 netup_read_i2c fndecl 5 44096 NULL
+enable_so_ipoib_cm_create_srq_fndecl_44098 ipoib_cm_create_srq fndecl 2 44098 NULL
+enable_so_xdr_decode_array2_fndecl_44099 xdr_decode_array2 fndecl 2-0 44099 NULL
@@ -169064,6 +168343,7 @@ index 0000000..9da833a
+enable_so_btrfs_ioctl_clone_fndecl_44205 btrfs_ioctl_clone fndecl 5-3-4 44205 NULL
+enable_so_wm8993_set_fll_fndecl_44206 wm8993_set_fll fndecl 4-5 44206 NULL
+enable_so_evdev_compute_buffer_size_fndecl_44212 evdev_compute_buffer_size fndecl 0 44212 NULL
++enable_so_len_scifioctl_copy_44214 len scifioctl_copy 0 44214 NULL
+enable_so_s_bsize_jfs_superblock_44215 s_bsize jfs_superblock 0 44215 NULL
+enable_so_ext2_inode_by_name_fndecl_44217 ext2_inode_by_name fndecl 0 44217 NULL nohasharray
+enable_so_IA_TX_BUF_vardecl_iphase_c_44217 IA_TX_BUF vardecl_iphase.c 0 44217 &enable_so_ext2_inode_by_name_fndecl_44217
@@ -169081,7 +168361,6 @@ index 0000000..9da833a
+enable_so_frag_stride_mlx4_en_frag_info_44239 frag_stride mlx4_en_frag_info 0 44239 &enable_so_irda_sendmsg_fndecl_44239
+enable_so_num_pages_vb2_dma_sg_buf_44241 num_pages vb2_dma_sg_buf 0 44241 NULL
+enable_so_spk_xs_vardecl_44242 spk_xs vardecl 0 44242 NULL
-+enable_so_features_virtio_device_44247 features virtio_device 0 44247 NULL
+enable_so_cxgb4_pktgl_to_skb_fndecl_44248 cxgb4_pktgl_to_skb fndecl 2-3 44248 NULL nohasharray
+enable_so_ax25_addr_size_fndecl_44248 ax25_addr_size fndecl 0 44248 &enable_so_cxgb4_pktgl_to_skb_fndecl_44248
+enable_so_num_reg_defaults_raw_regmap_config_44249 num_reg_defaults_raw regmap_config 0 44249 NULL
@@ -169095,7 +168374,6 @@ index 0000000..9da833a
+enable_so_length_ceph_pagelist_44267 length ceph_pagelist 0 44267 NULL
+enable_so_s_blocks_per_group_ext2_sb_info_44270 s_blocks_per_group ext2_sb_info 0 44270 NULL nohasharray
+enable_so_skb_put_frags_fndecl_44270 skb_put_frags fndecl 3-2 44270 &enable_so_s_blocks_per_group_ext2_sb_info_44270
-+enable_so_il4965_ucode_rx_stats_read_fndecl_44271 il4965_ucode_rx_stats_read fndecl 3 44271 NULL
+enable_so_efi_get_runtime_map_size_fndecl_44276 efi_get_runtime_map_size fndecl 0 44276 NULL
+enable_so_new_raid_disk_md_rdev_44282 new_raid_disk md_rdev 0 44282 NULL
+enable_so_rsp_len_bfad_fcxp_44290 rsp_len bfad_fcxp 0 44290 NULL
@@ -169122,8 +168400,8 @@ index 0000000..9da833a
+enable_so_pwm_buf_sz_usbdux_private_44375 pwm_buf_sz usbdux_private 0 44375 NULL
+enable_so_ocfs2_get_refcount_rec_fndecl_44377 ocfs2_get_refcount_rec fndecl 3-4 44377 NULL
+enable_so_rnr_retry_count_cm_id_private_44380 rnr_retry_count cm_id_private 0 44380 NULL
++enable_so_tipc_link_bc_create_fndecl_44381 tipc_link_bc_create fndecl 4 44381 NULL
+enable_so_epp_read_data_parport_operations_44383 epp_read_data parport_operations 0 44383 NULL
-+enable_so_wmi_evt_connect_fndecl_44385 wmi_evt_connect fndecl 4 44385 NULL
+enable_so_ip_gre_calc_hlen_fndecl_44386 ip_gre_calc_hlen fndecl 0 44386 NULL
+enable_so_dvb_net_ioctl_fndecl_44388 dvb_net_ioctl fndecl 2 44388 NULL
+enable_so_reiserfs_xattr_set_fndecl_44389 reiserfs_xattr_set fndecl 4 44389 NULL nohasharray
@@ -169140,11 +168418,11 @@ index 0000000..9da833a
+enable_so_seq_open_private_fndecl_44422 seq_open_private fndecl 3 44422 NULL
+enable_so___get_vm_area_fndecl_44428 __get_vm_area fndecl 1-3 44428 NULL nohasharray
+enable_so_rq_ecount_lpfc_sli4_hba_44428 rq_ecount lpfc_sli4_hba 0 44428 &enable_so___get_vm_area_fndecl_44428
-+enable_so_ieee80211_if_read_rc_rateidx_mask_2ghz_fndecl_44433 ieee80211_if_read_rc_rateidx_mask_2ghz fndecl 3 44433 NULL
+enable_so_fan_proc_write_fndecl_44434 fan_proc_write fndecl 3 44434 NULL
+enable_so_fd_do_rw_fndecl_44435 fd_do_rw fndecl 5 44435 NULL
+enable_so_nchunks_amdgpu_cs_parser_44436 nchunks amdgpu_cs_parser 0 44436 NULL
+enable_so_nbd_ioctl_fndecl_44444 nbd_ioctl fndecl 4 44444 NULL
++enable_so_ivsize_crypto_skcipher_44448 ivsize crypto_skcipher 0 44448 NULL
+enable_so_get_pages_array_fndecl_44453 get_pages_array fndecl 1 44453 NULL
+enable_so_configfs_write_file_fndecl_44454 configfs_write_file fndecl 3 44454 NULL
+enable_so_hh_len_hh_cache_44455 hh_len hh_cache 0 44455 NULL
@@ -169184,8 +168462,7 @@ index 0000000..9da833a
+enable_so_max_cqes_mthca_limits_44535 max_cqes mthca_limits 0 44535 NULL
+enable_so_consume_size_vmci_transport_44542 consume_size vmci_transport 0 44542 NULL
+enable_so_smk_read_syslog_fndecl_44544 smk_read_syslog fndecl 3 44544 NULL
-+enable_so_add_debugfs_mem_fndecl_44546 add_debugfs_mem fndecl 4 44546 NULL nohasharray
-+enable_so_numps_powernow_k8_data_44546 numps powernow_k8_data 0 44546 &enable_so_add_debugfs_mem_fndecl_44546
++enable_so_numps_powernow_k8_data_44546 numps powernow_k8_data 0 44546 NULL
+enable_so_mmc_execute_tuning_fndecl_44557 mmc_execute_tuning fndecl 0 44557 NULL nohasharray
+enable_so_chanctx_data_size_ieee80211_hw_44557 chanctx_data_size ieee80211_hw 0 44557 &enable_so_mmc_execute_tuning_fndecl_44557
+enable_so_hpfs_fnode_dno_fndecl_44569 hpfs_fnode_dno fndecl 0-2 44569 NULL nohasharray
@@ -169200,12 +168477,13 @@ index 0000000..9da833a
+enable_so_len_poll_list_44603 len poll_list 0 44603 NULL
+enable_so_of_io_request_and_map_fndecl_44605 of_io_request_and_map fndecl 2 44605 NULL
+enable_so_bop_mark_nilfs_bmap_operations_44618 bop_mark nilfs_bmap_operations 0 44618 NULL
-+enable_so_il_dbgfs_sram_read_fndecl_44619 il_dbgfs_sram_read fndecl 3 44619 NULL
++enable_so_hns_nic_get_headlen_fndecl_44621 hns_nic_get_headlen fndecl 0-3 44621 NULL
+enable_so_vid_hdr_offset_ubi_attach_req_44622 vid_hdr_offset ubi_attach_req 0 44622 NULL nohasharray
+enable_so_irq_cros_ec_device_44622 irq cros_ec_device 0 44622 &enable_so_vid_hdr_offset_ubi_attach_req_44622
+enable_so_security_file_permission_fndecl_44629 security_file_permission fndecl 0 44629 NULL
+enable_so_max_sectors_Scsi_Host_44630 max_sectors Scsi_Host 0 44630 NULL nohasharray
+enable_so_sel_last_ino_vardecl_selinuxfs_c_44630 sel_last_ino vardecl_selinuxfs.c 0 44630 &enable_so_max_sectors_Scsi_Host_44630
++enable_so_msdc_tune_data_fndecl_44632 msdc_tune_data fndecl 2 44632 NULL
+enable_so_data_len_krb5_tagged_data_44634 data_len krb5_tagged_data 0 44634 NULL
+enable_so_bd_block_size_block_device_44635 bd_block_size block_device 0 44635 NULL
+enable_so_osst_write_error_recovery_fndecl_44636 osst_write_error_recovery fndecl 3 44636 NULL
@@ -169239,8 +168517,7 @@ index 0000000..9da833a
+enable_so_msg_size_ecryptfs_msg_ctx_44687 msg_size ecryptfs_msg_ctx 0 44687 NULL
+enable_so_offset_drm_map_44692 offset drm_map 0 44692 NULL
+enable_so_start_linear_c_44708 start linear_c 0 44708 NULL
-+enable_so_ts_packet_count_saa7164_port_44712 ts_packet_count saa7164_port 0 44712 NULL nohasharray
-+enable_so_au_rslack_rpc_auth_44712 au_rslack rpc_auth 0 44712 &enable_so_ts_packet_count_saa7164_port_44712
++enable_so_au_rslack_rpc_auth_44712 au_rslack rpc_auth 0 44712 NULL
+enable_so_altera_irscan_fndecl_44719 altera_irscan fndecl 2 44719 NULL
+enable_so___nilfs_get_page_block_fndecl_44723 __nilfs_get_page_block fndecl 4 44723 NULL
+enable_so_inlen_mimd_44727 inlen mimd 0 44727 NULL nohasharray
@@ -169263,7 +168540,7 @@ index 0000000..9da833a
+enable_so_cb710_mmc_send_fndecl_44773 cb710_mmc_send fndecl 0 44773 NULL nohasharray
+enable_so_count_snd_kcontrol_44773 count snd_kcontrol 0 44773 &enable_so_cb710_mmc_send_fndecl_44773
+enable_so_dce_v8_0_afmt_update_ACR_fndecl_44781 dce_v8_0_afmt_update_ACR fndecl 2 44781 NULL
-+enable_so_nbp_vlan_add_fndecl_44783 nbp_vlan_add fndecl 2 44783 NULL
++enable_so_nbp_vlan_add_fndecl_44783 nbp_vlan_add fndecl 2-0 44783 NULL
+enable_so_ocfs2_handle_error_fndecl_44785 ocfs2_handle_error fndecl 0 44785 NULL nohasharray
+enable_so_vb2_vmalloc_alloc_fndecl_44785 vb2_vmalloc_alloc fndecl 2 44785 &enable_so_ocfs2_handle_error_fndecl_44785
+enable_so_btt_data_write_fndecl_44793 btt_data_write fndecl 0 44793 NULL
@@ -169279,8 +168556,10 @@ index 0000000..9da833a
+enable_so_resp_ctrl_m_pg_fndecl_44811 resp_ctrl_m_pg fndecl 0 44811 &enable_so___remove_privs_fndecl_44811
+enable_so_ndev_debugfs_read_fndecl_44812 ndev_debugfs_read fndecl 3 44812 NULL
+enable_so_set_extent_delalloc_fndecl_44813 set_extent_delalloc fndecl 3-2 44813 NULL
++enable_so_st21nfca_hci_dm_reset_fndecl_44819 st21nfca_hci_dm_reset fndecl 3 44819 NULL
+enable_so_sb_uquotino_xfs_sb_44820 sb_uquotino xfs_sb 0 44820 NULL
-+enable_so_cluster_pages_for_defrag_fndecl_44823 cluster_pages_for_defrag fndecl 0 44823 NULL
++enable_so_loffset_scifioctl_copy_44823 loffset scifioctl_copy 0 44823 NULL nohasharray
++enable_so_cluster_pages_for_defrag_fndecl_44823 cluster_pages_for_defrag fndecl 0-4-3 44823 &enable_so_loffset_scifioctl_copy_44823
+enable_so_bytesize_nbd_device_44824 bytesize nbd_device 0 44824 NULL nohasharray
+enable_so_count_atl1c_tpd_ring_44824 count atl1c_tpd_ring 0 44824 &enable_so_bytesize_nbd_device_44824
+enable_so_squashfs_read_id_index_table_fndecl_44826 squashfs_read_id_index_table fndecl 4 44826 NULL
@@ -169288,7 +168567,8 @@ index 0000000..9da833a
+enable_so_fix_read_error_fndecl_44830 fix_read_error fndecl 4-3 44830 &enable_so_vlan_tag_be_rx_compl_info_44830
+enable_so_dequeue_event_fndecl_44835 dequeue_event fndecl 3 44835 NULL
+enable_so_name_len_exofs_dir_entry_44838 name_len exofs_dir_entry 0 44838 NULL
-+enable_so_xt_compat_match_offset_fndecl_44840 xt_compat_match_offset fndecl 0 44840 NULL
++enable_so_xt_compat_match_offset_fndecl_44840 xt_compat_match_offset fndecl 0 44840 NULL nohasharray
++enable_so_acpi_parse_entries_array_fndecl_44840 acpi_parse_entries_array fndecl 0 44840 &enable_so_xt_compat_match_offset_fndecl_44840
+enable_so_exofs_readpages_fndecl_44841 exofs_readpages fndecl 4 44841 NULL
+enable_so_submit_bh_wbc_fndecl_44843 submit_bh_wbc fndecl 0 44843 NULL
+enable_so_num_zones_quirk_entry_44844 num_zones quirk_entry 0 44844 NULL
@@ -169322,14 +168602,13 @@ index 0000000..9da833a
+enable_so_catas_size_mlx4_fw_44916 catas_size mlx4_fw 0 44916 NULL
+enable_so_do_pselect_fndecl_44926 do_pselect fndecl 1 44926 NULL
+enable_so_bvec_iter_advance_fndecl_44933 bvec_iter_advance fndecl 3 44933 NULL
-+enable_so_jffs2_security_setxattr_fndecl_44936 jffs2_security_setxattr fndecl 4 44936 NULL
+enable_so_data_dev_block_bits_dm_verity_44943 data_dev_block_bits dm_verity 0 44943 NULL
+enable_so_data_block_dm_thin_new_mapping_44944 data_block dm_thin_new_mapping 0 44944 NULL nohasharray
+enable_so_acpiphp_max_busnr_fndecl_44944 acpiphp_max_busnr fndecl 0 44944 &enable_so_data_block_dm_thin_new_mapping_44944
+enable_so_srp_sq_size_srpt_port_attrib_44947 srp_sq_size srpt_port_attrib 0 44947 NULL
-+enable_so_sd_diptrs_gfs2_sbd_44954 sd_diptrs gfs2_sbd 0 44954 NULL nohasharray
-+enable_so_max_msix_vectors_vardecl_mpt2sas_base_c_44954 max_msix_vectors vardecl_mpt2sas_base.c 0 44954 &enable_so_sd_diptrs_gfs2_sbd_44954
++enable_so_sd_diptrs_gfs2_sbd_44954 sd_diptrs gfs2_sbd 0 44954 NULL
+enable_so_coff_ddb_output_44962 coff ddb_output 0 44962 NULL
++enable_so_mlx4_ib_alloc_mr_fndecl_44964 mlx4_ib_alloc_mr fndecl 3 44964 NULL
+enable_so_qib_diag_write_fndecl_44966 qib_diag_write fndecl 3 44966 NULL
+enable_so_fat12_ent_bread_fndecl_44968 fat12_ent_bread fndecl 4 44968 NULL
+enable_so_i915_pages_create_for_stolen_fndecl_44970 i915_pages_create_for_stolen fndecl 3 44970 NULL
@@ -169344,7 +168623,8 @@ index 0000000..9da833a
+enable_so_fts_libipw_device_44996 fts libipw_device 0 44996 NULL
+enable_so_iscsi_max_outsnd_r2t_dev_db_entry_44997 iscsi_max_outsnd_r2t dev_db_entry 0 44997 NULL nohasharray
+enable_so_SyS_getxattr_fndecl_44997 SyS_getxattr fndecl 4 44997 &enable_so_iscsi_max_outsnd_r2t_dev_db_entry_44997
-+enable_so_eeprom_size_il_cfg_44998 eeprom_size il_cfg 0 44998 NULL
++enable_so_host_int_set_join_req_fndecl_44998 host_int_set_join_req fndecl 6-4 44998 NULL nohasharray
++enable_so_eeprom_size_il_cfg_44998 eeprom_size il_cfg 0 44998 &enable_so_host_int_set_join_req_fndecl_44998
+enable_so_ocfs2_list_xattr_tree_rec_fndecl_45001 ocfs2_list_xattr_tree_rec fndecl 3 45001 NULL
+enable_so_prism54_wpa_bss_ie_get_fndecl_45006 prism54_wpa_bss_ie_get fndecl 0 45006 NULL
+enable_so_bnx2fc_initiate_els_fndecl_45008 bnx2fc_initiate_els fndecl 4 45008 NULL
@@ -169355,7 +168635,6 @@ index 0000000..9da833a
+enable_so_rd_size_hidp_session_45023 rd_size hidp_session 0 45023 NULL
+enable_so_nvalid_xfs_dir3_icfree_hdr_45035 nvalid xfs_dir3_icfree_hdr 0 45035 NULL
+enable_so_sock_kmalloc_fndecl_45038 sock_kmalloc fndecl 2 45038 NULL
-+enable_so_write_file_dfs_fndecl_45047 write_file_dfs fndecl 3 45047 NULL
+enable_so_alloc_upcall_fndecl_45049 alloc_upcall fndecl 2 45049 NULL nohasharray
+enable_so_ib_uverbs_rereg_mr_fndecl_45049 ib_uverbs_rereg_mr fndecl 4 45049 &enable_so_alloc_upcall_fndecl_45049
+enable_so_hs_extra_bytes_cfs_hash_45050 hs_extra_bytes cfs_hash 0 45050 NULL
@@ -169377,11 +168656,13 @@ index 0000000..9da833a
+enable_so_skb_tx_rsvd_cxgbi_device_45109 skb_tx_rsvd cxgbi_device 0 45109 NULL
+enable_so_init_data_container_fndecl_45110 init_data_container fndecl 1 45110 NULL nohasharray
+enable_so_watchdog_devt_vardecl_watchdog_dev_c_45110 watchdog_devt vardecl_watchdog_dev.c 0 45110 &enable_so_init_data_container_fndecl_45110
-+enable_so_ea_size_s_fnode_45115 ea_size_s fnode 0 45115 NULL
++enable_so_ea_size_s_fnode_45115 ea_size_s fnode 0 45115 NULL nohasharray
++enable_so_handle_error_msi_domain_ops_45115 handle_error msi_domain_ops 0 45115 &enable_so_ea_size_s_fnode_45115
+enable_so_ov518_pkt_scan_fndecl_45121 ov518_pkt_scan fndecl 3 45121 NULL
+enable_so_vblk_size_vmdb_45123 vblk_size vmdb 0 45123 NULL
+enable_so_early_init_dt_scan_root_fndecl_45127 early_init_dt_scan_root fndecl 1 45127 NULL nohasharray
-+enable_so_key_len_mwifiex_ds_encrypt_key_45127 key_len mwifiex_ds_encrypt_key 0 45127 &enable_so_early_init_dt_scan_root_fndecl_45127
++enable_so_key_len_mwifiex_ds_encrypt_key_45127 key_len mwifiex_ds_encrypt_key 0 45127 &enable_so_early_init_dt_scan_root_fndecl_45127 nohasharray
++enable_so_offset_nb8800_rx_buf_45127 offset nb8800_rx_buf 0 45127 &enable_so_key_len_mwifiex_ds_encrypt_key_45127
+enable_so_img_x_zoran_jpg_settings_45135 img_x zoran_jpg_settings 0 45135 NULL
+enable_so_offset_mlx4_clock_params_45137 offset mlx4_clock_params 0 45137 NULL
+enable_so_specified_table_size_vardecl_45152 specified_table_size vardecl 0 45152 NULL
@@ -169389,14 +168670,13 @@ index 0000000..9da833a
+enable_so_ocfs2_set_refcount_tree_fndecl_45158 ocfs2_set_refcount_tree fndecl 3 45158 NULL
+enable_so_pwc_get_fps_Nala_fndecl_45162 pwc_get_fps_Nala fndecl 0 45162 NULL
+enable_so_cmd_sg_cnt_srp_target_port_45169 cmd_sg_cnt srp_target_port 0 45169 NULL
-+enable_so_desc_len_skb_frame_desc_45170 desc_len skb_frame_desc 0 45170 NULL nohasharray
-+enable_so_pkcs7_sig_note_issuer_fndecl_45170 pkcs7_sig_note_issuer fndecl 5 45170 &enable_so_desc_len_skb_frame_desc_45170
++enable_so_pkcs7_sig_note_issuer_fndecl_45170 pkcs7_sig_note_issuer fndecl 5 45170 NULL
+enable_so_hpfs_remove_dirent_fndecl_45171 hpfs_remove_dirent fndecl 2 45171 NULL nohasharray
+enable_so_remove_nearest_fndecl_45171 remove_nearest fndecl 4 45171 &enable_so_hpfs_remove_dirent_fndecl_45171 nohasharray
+enable_so_n_ao_urbs_usbdux_private_45171 n_ao_urbs usbdux_private 0 45171 &enable_so_remove_nearest_fndecl_45171
+enable_so_opticon_write_fndecl_45172 opticon_write fndecl 4 45172 NULL
+enable_so_sel_write_checkreqprot_fndecl_45173 sel_write_checkreqprot fndecl 3 45173 NULL
-+enable_so_leaf_cut_entries_fndecl_45176 leaf_cut_entries fndecl 4-0 45176 NULL
++enable_so_leaf_cut_entries_fndecl_45176 leaf_cut_entries fndecl 0-4 45176 NULL
+enable_so_acl_alloc_num_fndecl_45177 acl_alloc_num fndecl 2-1 45177 NULL
+enable_so_nfsd_splice_read_fndecl_45181 nfsd_splice_read fndecl 3 45181 NULL nohasharray
+enable_so_quirk_awe32_add_ports_fndecl_45181 quirk_awe32_add_ports fndecl 3 45181 &enable_so_nfsd_splice_read_fndecl_45181
@@ -169415,6 +168695,7 @@ index 0000000..9da833a
+enable_so_max_cqes_mlx4_caps_45237 max_cqes mlx4_caps 0 45237 NULL
+enable_so_internal_dev_change_mtu_fndecl_45242 internal_dev_change_mtu fndecl 2 45242 NULL
+enable_so_aggregate_new_rx_fndecl_45246 aggregate_new_rx fndecl 4 45246 NULL
++enable_so_st_nci_hci_dm_fwupd_start_fndecl_45248 st_nci_hci_dm_fwupd_start fndecl 3 45248 NULL
+enable_so_f_height_fimc_frame_45250 f_height fimc_frame 0 45250 NULL
+enable_so_base_erst_erange_45255 base erst_erange 0 45255 NULL
+enable_so_ext4_update_inline_data_fndecl_45259 ext4_update_inline_data fndecl 3 45259 NULL
@@ -169431,7 +168712,6 @@ index 0000000..9da833a
+enable_so_ath6kl_sdio_write_async_fndecl_45290 ath6kl_sdio_write_async fndecl 4 45290 NULL
+enable_so_rcvhdrcnt_qib_devdata_45297 rcvhdrcnt qib_devdata 0 45297 NULL
+enable_so_hugetlbfs_read_actor_fndecl_45304 hugetlbfs_read_actor fndecl 0-4-2 45304 NULL
-+enable_so_iio_debugfs_read_reg_fndecl_45311 iio_debugfs_read_reg fndecl 3 45311 NULL
+enable_so_atl1_change_mtu_fndecl_45313 atl1_change_mtu fndecl 2 45313 NULL nohasharray
+enable_so_rx_count_ethtool_channels_45313 rx_count ethtool_channels 0 45313 &enable_so_atl1_change_mtu_fndecl_45313 nohasharray
+enable_so_rx_ring_count_xgbe_prv_data_45313 rx_ring_count xgbe_prv_data 0 45313 &enable_so_rx_count_ethtool_channels_45313
@@ -169485,7 +168765,6 @@ index 0000000..9da833a
+enable_so_i_pos_fat_slot_info_45481 i_pos fat_slot_info 0 45481 NULL
+enable_so_hdisplay_drm_display_mode_45484 hdisplay drm_display_mode 0 45484 NULL
+enable_so_memblock_virt_alloc_try_nid_nopanic_fndecl_45487 memblock_virt_alloc_try_nid_nopanic fndecl 2-1-3-4 45487 NULL
-+enable_so_ovl_cache_entry_add_rb_fndecl_45488 ovl_cache_entry_add_rb fndecl 3 45488 NULL
+enable_so_convert_initialized_extent_fndecl_45492 convert_initialized_extent fndecl 0-6 45492 NULL
+enable_so_pipe_out_lan78xx_net_45497 pipe_out lan78xx_net 0 45497 NULL nohasharray
+enable_so_isofs_bmap_fndecl_45497 isofs_bmap fndecl 0-2 45497 &enable_so_pipe_out_lan78xx_net_45497
@@ -169508,13 +168787,13 @@ index 0000000..9da833a
+enable_so_size_nft_expr_ops_45543 size nft_expr_ops 0 45543 NULL
+enable_so_if_sdio_host_to_card_fndecl_45545 if_sdio_host_to_card fndecl 4 45545 NULL
+enable_so_mp_agg_pkt_limit_sdio_mmc_card_45546 mp_agg_pkt_limit sdio_mmc_card 0 45546 NULL
-+enable_so_ieee80211_if_read_dot11MeshConfirmTimeout_fndecl_45549 ieee80211_if_read_dot11MeshConfirmTimeout fndecl 3 45549 NULL
+enable_so_driver_max_VFs_pci_sriov_45552 driver_max_VFs pci_sriov 0 45552 NULL
+enable_so_bpp_via_format_45554 bpp via_format 0 45554 NULL
+enable_so_pci_quatech_setup_fndecl_45560 pci_quatech_setup fndecl 4 45560 NULL
+enable_so_syncinterval_snd_usb_endpoint_45567 syncinterval snd_usb_endpoint 0 45567 NULL
+enable_so_SyS_prctl_fndecl_45569 SyS_prctl fndecl 4 45569 NULL
-+enable_so_height_pwc_device_45570 height pwc_device 0 45570 NULL
++enable_so_height_pwc_device_45570 height pwc_device 0 45570 NULL nohasharray
++enable_so_amdtp_tscm_init_fndecl_45570 amdtp_tscm_init fndecl 4 45570 &enable_so_height_pwc_device_45570
+enable_so_get_gate_page_fndecl_45571 get_gate_page fndecl 2 45571 NULL
+enable_so_srp_create_fr_pool_fndecl_45572 srp_create_fr_pool fndecl 3 45572 NULL
+enable_so_s_partition_func_udf_part_map_45579 s_partition_func udf_part_map 0 45579 NULL
@@ -169534,11 +168813,11 @@ index 0000000..9da833a
+enable_so_ifalias_store_fndecl_45637 ifalias_store fndecl 4 45637 &enable_so_btrfs_bio_alloc_fndecl_45637
+enable_so_tcfv_push_vid_tcf_vlan_45639 tcfv_push_vid tcf_vlan 0 45639 NULL
+enable_so_ib_uverbs_modify_srq_fndecl_45645 ib_uverbs_modify_srq fndecl 4 45645 NULL
-+enable_so___verify_planes_array_fndecl_45650 __verify_planes_array fndecl 0 45650 NULL
+enable_so_inftl_writeblock_fndecl_45653 inftl_writeblock fndecl 2 45653 NULL
+enable_so_preproc_res_proc_context_45654 preproc res_proc_context 0 45654 NULL
+enable_so_size_core_name_45656 size core_name 0 45656 NULL
-+enable_so_submit_bh_fndecl_45660 submit_bh fndecl 0 45660 NULL
++enable_so_submit_bh_fndecl_45660 submit_bh fndecl 0 45660 NULL nohasharray
++enable_so_bnxt_alloc_vf_resources_fndecl_45660 bnxt_alloc_vf_resources fndecl 2 45660 &enable_so_submit_bh_fndecl_45660
+enable_so_jfs_direct_IO_fndecl_45661 jfs_direct_IO fndecl 3 45661 NULL
+enable_so_blockmask_alauda_media_info_45662 blockmask alauda_media_info 0 45662 NULL
+enable_so_xfer_from_user_fndecl_45672 xfer_from_user fndecl 3 45672 NULL
@@ -169562,7 +168841,6 @@ index 0000000..9da833a
+enable_so_do_splice_direct_fndecl_45710 do_splice_direct fndecl 5-0 45710 NULL nohasharray
+enable_so_fi_nblocks_nilfs_finfo_45710 fi_nblocks nilfs_finfo 0 45710 &enable_so_do_splice_direct_fndecl_45710
+enable_so_st5481_setup_isocpipes_fndecl_45711 st5481_setup_isocpipes fndecl 6-4 45711 NULL
-+enable_so_rl_niovs_rpcrdma_req_45712 rl_niovs rpcrdma_req 0 45712 NULL
+enable_so_width_cx23885_dev_45714 width cx23885_dev 0 45714 NULL
+enable_so_ocfs2_xattr_set_fndecl_45720 ocfs2_xattr_set fndecl 5 45720 NULL
+enable_so_num_cqs_mlx4_caps_45727 num_cqs mlx4_caps 0 45727 NULL
@@ -169596,12 +168874,14 @@ index 0000000..9da833a
+enable_so_max_channels_evtchn_ops_45841 max_channels evtchn_ops 0 45841 NULL
+enable_so_width_zr364xx_camera_45844 width zr364xx_camera 0 45844 NULL nohasharray
+enable_so_mwifiex_cfg80211_assoc_fndecl_45844 mwifiex_cfg80211_assoc fndecl 2 45844 &enable_so_width_zr364xx_camera_45844
-+enable_so_bochs_gem_create_fndecl_45847 bochs_gem_create fndecl 2 45847 NULL nohasharray
-+enable_so_sys_mlock_fndecl_45847 sys_mlock fndecl 1-2 45847 &enable_so_bochs_gem_create_fndecl_45847
++enable_so_sys_mlock_fndecl_45847 sys_mlock fndecl 1-2 45847 NULL nohasharray
++enable_so_bochs_gem_create_fndecl_45847 bochs_gem_create fndecl 2 45847 &enable_so_sys_mlock_fndecl_45847
+enable_so_xfs_rtallocate_extent_size_fndecl_45848 xfs_rtallocate_extent_size fndecl 4-8 45848 NULL
+enable_so_num_fault_mutexes_vardecl_hugetlb_c_45857 num_fault_mutexes vardecl_hugetlb.c 0 45857 NULL
+enable_so_num_wsm_udp_port_filter_hdr_45858 num wsm_udp_port_filter_hdr 0 45858 NULL
-+enable_so_data_used_cx18_mdl_ack_45859 data_used cx18_mdl_ack 0 45859 NULL
++enable_so_st21nfca_hci_dm_put_data_fndecl_45859 st21nfca_hci_dm_put_data fndecl 3 45859 NULL nohasharray
++enable_so_data_used_cx18_mdl_ack_45859 data_used cx18_mdl_ack 0 45859 &enable_so_st21nfca_hci_dm_put_data_fndecl_45859
++enable_so_pipe_interrupt_rtl8xxxu_priv_45862 pipe_interrupt rtl8xxxu_priv 0 45862 NULL
+enable_so_net_header_len_inet_connection_sock_af_ops_45863 net_header_len inet_connection_sock_af_ops 0 45863 NULL
+enable_so___a2mp_build_fndecl_45864 __a2mp_build fndecl 3 45864 NULL
+enable_so_xfrm_nr_xfrm_policy_45865 xfrm_nr xfrm_policy 0 45865 NULL
@@ -169612,7 +168892,8 @@ index 0000000..9da833a
+enable_so_mwifiex_alloc_sdio_mpa_buffers_fndecl_45874 mwifiex_alloc_sdio_mpa_buffers fndecl 2-3 45874 NULL
+enable_so_pti_char_write_fndecl_45875 pti_char_write fndecl 3 45875 NULL
+enable_so_ext4_es_remove_extent_fndecl_45877 ext4_es_remove_extent fndecl 3-2 45877 NULL
-+enable_so_quality_v4l2_jpegcompression_45881 quality v4l2_jpegcompression 0 45881 NULL
++enable_so_quality_v4l2_jpegcompression_45881 quality v4l2_jpegcompression 0 45881 NULL nohasharray
++enable_so_alloc_wr_fndecl_45881 alloc_wr fndecl 2-1 45881 &enable_so_quality_v4l2_jpegcompression_45881
+enable_so_max_buffer_sectors_vardecl_floppy_c_45884 max_buffer_sectors vardecl_floppy.c 0 45884 NULL
+enable_so_index_cnt_btrfs_inode_45890 index_cnt btrfs_inode 0 45890 NULL
+enable_so_do_shared_fault_fndecl_45891 do_shared_fault fndecl 3-5 45891 NULL
@@ -169625,26 +168906,25 @@ index 0000000..9da833a
+enable_so_generic_file_direct_write_fndecl_45904 generic_file_direct_write fndecl 3-0 45904 NULL nohasharray
+enable_so_bLength_usb_descriptor_header_45904 bLength usb_descriptor_header 0 45904 &enable_so_generic_file_direct_write_fndecl_45904
+enable_so_jhead_cnt_ubifs_info_45905 jhead_cnt ubifs_info 0 45905 NULL
-+enable_so_init_currently_empty_zone_fndecl_45907 init_currently_empty_zone fndecl 2 45907 NULL
+enable_so_vce_v1_0_bo_size_fndecl_45909 vce_v1_0_bo_size fndecl 0 45909 NULL
+enable_so_bg_itable_unused_hi_ext4_group_desc_45918 bg_itable_unused_hi ext4_group_desc 0 45918 NULL
-+enable_so_lpfc_idiag_queacc_write_fndecl_45920 lpfc_idiag_queacc_write fndecl 3 45920 NULL
++enable_so_alloc_sglist_fndecl_45919 alloc_sglist fndecl 3-2-1 45919 NULL
+enable_so_wl1271_tx_allocate_fndecl_45921 wl1271_tx_allocate fndecl 4 45921 NULL
+enable_so_mru_asyncppp_45929 mru asyncppp 0 45929 NULL
++enable_so_range_ccu_data_45932 range ccu_data 0 45932 NULL
+enable_so_fan_count_applesmc_registers_45934 fan_count applesmc_registers 0 45934 NULL
+enable_so_num_ports_pciserial_board_45938 num_ports pciserial_board 0 45938 NULL
+enable_so_sdhci_pltfm_register_fndecl_45940 sdhci_pltfm_register fndecl 3 45940 NULL
+enable_so_ath6kl_wmi_setpmkid_cmd_fndecl_45949 ath6kl_wmi_setpmkid_cmd fndecl 2 45949 NULL nohasharray
+enable_so_num_vfs_be_pcie_res_desc_45949 num_vfs be_pcie_res_desc 0 45949 &enable_so_ath6kl_wmi_setpmkid_cmd_fndecl_45949 nohasharray
+enable_so_smbus_base_vardecl_i2c_sis630_c_45949 smbus_base vardecl_i2c-sis630.c 0 45949 &enable_so_num_vfs_be_pcie_res_desc_45949
-+enable_so_fraglen_decryptor_desc_45950 fraglen decryptor_desc 0 45950 NULL nohasharray
-+enable_so_read_file_ackto_fndecl_45950 read_file_ackto fndecl 3 45950 &enable_so_fraglen_decryptor_desc_45950
++enable_so_fraglen_decryptor_desc_45950 fraglen decryptor_desc 0 45950 NULL
+enable_so_sigma_fw_load_samplerates_fndecl_45951 sigma_fw_load_samplerates fndecl 3 45951 NULL
-+enable_so_security_set_fndecl_45953 security_set fndecl 4 45953 NULL
+enable_so_max_sge_ib_srq_attr_45956 max_sge ib_srq_attr 0 45956 NULL
+enable_so_qnx6_find_entry_fndecl_45969 qnx6_find_entry fndecl 0 45969 NULL nohasharray
+enable_so_len_ippp_buf_queue_45969 len ippp_buf_queue 0 45969 &enable_so_qnx6_find_entry_fndecl_45969
+enable_so_ext_tree_split_fndecl_45973 ext_tree_split fndecl 3 45973 NULL
++enable_so_addr_rrpc_rev_addr_45978 addr rrpc_rev_addr 0 45978 NULL
+enable_so_dbdma_cmd_yellowfin_desc_45980 dbdma_cmd yellowfin_desc 0 45980 NULL nohasharray
+enable_so_target_size_ebt_entry_target_45980 target_size ebt_entry_target 0 45980 &enable_so_dbdma_cmd_yellowfin_desc_45980
+enable_so_i40e_calculate_l2fpm_size_fndecl_45987 i40e_calculate_l2fpm_size fndecl 0-1-2-3-4 45987 NULL
@@ -169673,16 +168953,14 @@ index 0000000..9da833a
+enable_so_seg_count_drm_buf_entry_46065 seg_count drm_buf_entry 0 46065 NULL
+enable_so_piobufs_qib_ctxtdata_46066 piobufs qib_ctxtdata 0 46066 NULL
+enable_so_FirstPhysicalEUN_NFTLMediaHeader_46068 FirstPhysicalEUN NFTLMediaHeader 0 46068 NULL
-+enable_so_iwl_dbgfs_mac_params_read_fndecl_46081 iwl_dbgfs_mac_params_read fndecl 3 46081 NULL
+enable_so___devcgroup_check_permission_fndecl_46082 __devcgroup_check_permission fndecl 0 46082 NULL
+enable_so_wSamplesPerFrame_uac_format_type_ii_ext_descriptor_46084 wSamplesPerFrame uac_format_type_ii_ext_descriptor 0 46084 NULL
+enable_so_alloc_dca_provider_fndecl_46085 alloc_dca_provider fndecl 2 46085 NULL
+enable_so_dm_startblk_adfs_discmap_46088 dm_startblk adfs_discmap 0 46088 NULL
+enable_so_nr_pages_splice_pipe_desc_46095 nr_pages splice_pipe_desc 0 46095 NULL
-+enable_so_v9fs_xattr_set_acl_fndecl_46096 v9fs_xattr_set_acl fndecl 4 46096 NULL
-+enable_so_len_sfi_table_header_46097 len sfi_table_header 0 46097 NULL nohasharray
-+enable_so_ubifs_setxattr_fndecl_46097 ubifs_setxattr fndecl 4 46097 &enable_so_len_sfi_table_header_46097 nohasharray
-+enable_so_hidraw_read_fndecl_46097 hidraw_read fndecl 3 46097 &enable_so_ubifs_setxattr_fndecl_46097
++enable_so_ubifs_setxattr_fndecl_46097 ubifs_setxattr fndecl 4 46097 NULL nohasharray
++enable_so_len_sfi_table_header_46097 len sfi_table_header 0 46097 &enable_so_ubifs_setxattr_fndecl_46097 nohasharray
++enable_so_hidraw_read_fndecl_46097 hidraw_read fndecl 3 46097 &enable_so_len_sfi_table_header_46097
+enable_so_rxsz_fc_plogi_csp_s_46103 rxsz fc_plogi_csp_s 0 46103 NULL nohasharray
+enable_so_jbd2_journal_write_metadata_buffer_fndecl_46103 jbd2_journal_write_metadata_buffer fndecl 4 46103 &enable_so_rxsz_fc_plogi_csp_s_46103 nohasharray
+enable_so_ym_wmfw_adsp2_alg_hdr_46103 ym wmfw_adsp2_alg_hdr 0 46103 &enable_so_jbd2_journal_write_metadata_buffer_fndecl_46103 nohasharray
@@ -169698,18 +168976,17 @@ index 0000000..9da833a
+enable_so_get_mctgt_type_fndecl_46128 get_mctgt_type fndecl 2 46128 &enable_so_len_cp_header_46128
+enable_so_sriov_enable_fndecl_46138 sriov_enable fndecl 2 46138 NULL
+enable_so_prism2_info_scanresults_fndecl_46146 prism2_info_scanresults fndecl 3 46146 NULL
-+enable_so_memblock_alloc_range_nid_fndecl_46147 memblock_alloc_range_nid fndecl 2-1-3-0-4 46147 NULL
++enable_so_memblock_alloc_range_nid_fndecl_46147 memblock_alloc_range_nid fndecl 2-1-3-0-4 46147 NULL nohasharray
++enable_so_next_read_size_fdp_i2c_phy_46147 next_read_size fdp_i2c_phy 0 46147 &enable_so_memblock_alloc_range_nid_fndecl_46147
+enable_so_port_mthca_qp_46155 port mthca_qp 0 46155 NULL
+enable_so_udf_put_filename_fndecl_46157 udf_put_filename fndecl 0 46157 NULL
-+enable_so_ieee80211_if_read_fwded_unicast_fndecl_46159 ieee80211_if_read_fwded_unicast fndecl 3 46159 NULL
+enable_so_bfad_iocmd_diag_sfp_fndecl_46160 bfad_iocmd_diag_sfp fndecl 0 46160 NULL
+enable_so_transfer_len_xhci_transfer_event_46161 transfer_len xhci_transfer_event 0 46161 NULL
+enable_so_max_segs_mmc_test_area_46176 max_segs mmc_test_area 0 46176 NULL
-+enable_so_key_size_ecryptfs_private_key_46181 key_size ecryptfs_private_key 0 46181 NULL nohasharray
-+enable_so_long_retry_limit_read_fndecl_46181 long_retry_limit_read fndecl 3 46181 &enable_so_key_size_ecryptfs_private_key_46181
++enable_so_key_size_ecryptfs_private_key_46181 key_size ecryptfs_private_key 0 46181 NULL
+enable_so_mlock_fixup_fndecl_46182 mlock_fixup fndecl 4-3 46182 NULL
-+enable_so_size_aper_size_info_32_46193 size aper_size_info_32 0 46193 NULL nohasharray
-+enable_so_fuse_file_llseek_fndecl_46193 fuse_file_llseek fndecl 2 46193 &enable_so_size_aper_size_info_32_46193
++enable_so_fuse_file_llseek_fndecl_46193 fuse_file_llseek fndecl 2 46193 NULL nohasharray
++enable_so_size_aper_size_info_32_46193 size aper_size_info_32 0 46193 &enable_so_fuse_file_llseek_fndecl_46193
+enable_so_length_usb_iso_packet_descriptor_46197 length usb_iso_packet_descriptor 0 46197 NULL
+enable_so_sctp_manip_pkt_fndecl_46198 sctp_manip_pkt fndecl 4 46198 NULL
+enable_so_musb_readb_vardecl_46199 musb_readb vardecl 0 46199 NULL nohasharray
@@ -169732,13 +169009,13 @@ index 0000000..9da833a
+enable_so_rsn_ie_len_libipw_network_46238 rsn_ie_len libipw_network 0 46238 NULL nohasharray
+enable_so_xlog_do_recover_fndecl_46238 xlog_do_recover fndecl 3 46238 &enable_so_rsn_ie_len_libipw_network_46238
+enable_so_response_length_mlx4_uverbs_ex_query_device_resp_46245 response_length mlx4_uverbs_ex_query_device_resp 0 46245 NULL
-+enable_so_ieee80211_if_read_dot11MeshHWMPmaxPREQretries_fndecl_46246 ieee80211_if_read_dot11MeshHWMPmaxPREQretries fndecl 3 46246 NULL
+enable_so_node_acl_size_target_core_fabric_ops_46247 node_acl_size target_core_fabric_ops 0 46247 NULL
+enable_so_erst_clear_fndecl_46248 erst_clear fndecl 1 46248 NULL
+enable_so_proc_pid_cmdline_read_fndecl_46249 proc_pid_cmdline_read fndecl 3 46249 NULL
+enable_so_gspca_dev_probe2_fndecl_46250 gspca_dev_probe2 fndecl 4 46250 NULL
+enable_so_extra_beacon_tailroom_ieee80211_hw_46256 extra_beacon_tailroom ieee80211_hw 0 46256 NULL
-+enable_so_rocker_port_change_mtu_fndecl_46262 rocker_port_change_mtu fndecl 2 46262 NULL
++enable_so_rocker_port_change_mtu_fndecl_46262 rocker_port_change_mtu fndecl 2 46262 NULL nohasharray
++enable_so_len_ath10k_fw_ie_46262 len ath10k_fw_ie 0 46262 &enable_so_rocker_port_change_mtu_fndecl_46262
+enable_so_size_xenvif_rx_meta_46270 size xenvif_rx_meta 0 46270 NULL
+enable_so_qla27xx_fwdt_template_size_fndecl_46273 qla27xx_fwdt_template_size fndecl 0 46273 NULL
+enable_so_onenand_read_oob_fndecl_46274 onenand_read_oob fndecl 2 46274 NULL
@@ -169767,7 +169044,6 @@ index 0000000..9da833a
+enable_so_recently_deleted_fndecl_46346 recently_deleted fndecl 3 46346 NULL
+enable_so_zoran_v4l_set_format_fndecl_46347 zoran_v4l_set_format fndecl 2-3 46347 NULL
+enable_so_fc_frame_alloc_fill_fndecl_46353 fc_frame_alloc_fill fndecl 2 46353 NULL
-+enable_so_wm_adsp_debugfs_bin_read_fndecl_46356 wm_adsp_debugfs_bin_read fndecl 3 46356 NULL
+enable_so_dvb_ep_isoc_em28xx_46357 dvb_ep_isoc em28xx 0 46357 NULL
+enable_so_shadow_image_fndecl_46361 shadow_image fndecl 3 46361 NULL
+enable_so_debilen_av7110_46363 debilen av7110 0 46363 NULL
@@ -169778,13 +169054,13 @@ index 0000000..9da833a
+enable_so_bnx2_change_mtu_fndecl_46374 bnx2_change_mtu fndecl 2 46374 NULL nohasharray
+enable_so_fs_path_ensure_buf_fndecl_46374 fs_path_ensure_buf fndecl 2 46374 &enable_so_bnx2_change_mtu_fndecl_46374
+enable_so_acpi_ds_build_internal_buffer_obj_fndecl_46379 acpi_ds_build_internal_buffer_obj fndecl 3 46379 NULL
++enable_so_gb_vardecl_null_blk_c_46399 gb vardecl_null_blk.c 0 46399 NULL
+enable_so_max_loop_vardecl_loop_c_46402 max_loop vardecl_loop.c 0 46402 NULL
-+enable_so_srp_map_finish_fr_fndecl_46405 srp_map_finish_fr fndecl 0 46405 NULL
+enable_so_piosize4k_qib_devdata_46406 piosize4k qib_devdata 0 46406 NULL
+enable_so_SavagePanelWidth_savagefb_par_46407 SavagePanelWidth savagefb_par 0 46407 NULL
+enable_so_skb_maybe_pull_tail_fndecl_46422 skb_maybe_pull_tail fndecl 3 46422 NULL
+enable_so_proberesp_ies_len_cfg80211_beacon_data_46424 proberesp_ies_len cfg80211_beacon_data 0 46424 NULL
-+enable_so_len_minstrel_debugfs_info_46425 len minstrel_debugfs_info 0 46425 NULL
++enable_so_qtd_copy_status_fndecl_46425 qtd_copy_status fndecl 4-3 46425 NULL
+enable_so_rds_pin_pages_fndecl_46432 rds_pin_pages fndecl 1-0 46432 NULL
+enable_so_st21nfca_hci_dep_link_up_fndecl_46438 st21nfca_hci_dep_link_up fndecl 5 46438 NULL nohasharray
+enable_so_qib_dev_vardecl_qib_file_ops_c_46438 qib_dev vardecl_qib_file_ops.c 0 46438 &enable_so_st21nfca_hci_dep_link_up_fndecl_46438
@@ -169794,7 +169070,6 @@ index 0000000..9da833a
+enable_so_btrfsic_process_superblock_dev_mirror_fndecl_46444 btrfsic_process_superblock_dev_mirror fndecl 4 46444 NULL nohasharray
+enable_so_iblock_execute_unmap_fndecl_46444 iblock_execute_unmap fndecl 3-2 46444 &enable_so_btrfsic_process_superblock_dev_mirror_fndecl_46444
+enable_so_C_SYSC_get_mempolicy_fndecl_46447 C_SYSC_get_mempolicy fndecl 3 46447 NULL
-+enable_so__iwl_dbgfs_bcast_filters_write_fndecl_46448 _iwl_dbgfs_bcast_filters_write fndecl 3 46448 NULL
+enable_so_fb_base_phys_mb862xxfb_par_46449 fb_base_phys mb862xxfb_par 0 46449 NULL
+enable_so_untranslate_fndecl_46453 untranslate fndecl 3 46453 NULL
+enable_so_snd_seq_oss_writeq_new_fndecl_46455 snd_seq_oss_writeq_new fndecl 2 46455 NULL
@@ -169834,7 +169109,6 @@ index 0000000..9da833a
+enable_so_sc18is602_check_transfer_fndecl_46545 sc18is602_check_transfer fndecl 0 46545 NULL
+enable_so_size_p_trim_46549 size p_trim 0 46549 NULL nohasharray
+enable_so_memdup_user_fndecl_46549 memdup_user fndecl 2 46549 &enable_so_size_p_trim_46549
-+enable_so_seq_open_tab_fndecl_46562 seq_open_tab fndecl 2-3 46562 NULL
+enable_so_erasesize_shift_mtd_info_46565 erasesize_shift mtd_info 0 46565 NULL nohasharray
+enable_so_xt_compat_init_offsets_fndecl_46565 xt_compat_init_offsets fndecl 2 46565 &enable_so_erasesize_shift_mtd_info_46565
+enable_so_max_msix_vectors_vardecl_mpt3sas_base_c_46566 max_msix_vectors vardecl_mpt3sas_base.c 0 46566 NULL
@@ -169866,7 +169140,8 @@ index 0000000..9da833a
+enable_so_ccp_queue_buf_fndecl_46635 ccp_queue_buf fndecl 0 46635 NULL
+enable_so_btrfs_get_token_16_fndecl_46639 btrfs_get_token_16 fndecl 0 46639 NULL
+enable_so_data_offset_iscsi_tcp_task_46641 data_offset iscsi_tcp_task 0 46641 NULL
-+enable_so_rx_rx_tkip_replays_read_fndecl_46642 rx_rx_tkip_replays_read fndecl 3 46642 NULL
++enable_so_arch_setup_msi_irqs_fndecl_46642 arch_setup_msi_irqs fndecl 0 46642 NULL nohasharray
++enable_so_rx_rx_tkip_replays_read_fndecl_46642 rx_rx_tkip_replays_read fndecl 3 46642 &enable_so_arch_setup_msi_irqs_fndecl_46642
+enable_so_roaming_rssi_level_read_fndecl_46643 roaming_rssi_level_read fndecl 3 46643 NULL
+enable_so_qib_reg_phys_mr_fndecl_46649 qib_reg_phys_mr fndecl 3 46649 NULL
+enable_so_mwifiex_set_wps_ie_fndecl_46650 mwifiex_set_wps_ie fndecl 3 46650 NULL
@@ -169885,17 +169160,17 @@ index 0000000..9da833a
+enable_so___pskb_pull_tail_fndecl_46700 __pskb_pull_tail fndecl 2 46700 NULL
+enable_so_compat_sys_fcntl64_fndecl_46707 compat_sys_fcntl64 fndecl 3 46707 NULL
+enable_so_cmsg_len_cmsghdr_46711 cmsg_len cmsghdr 0 46711 NULL
-+enable_so_extra_priv_size_ehci_driver_overrides_46713 extra_priv_size ehci_driver_overrides 0 46713 NULL
++enable_so_length_ib_mr_46713 length ib_mr 0 46713 NULL nohasharray
++enable_so_extra_priv_size_ehci_driver_overrides_46713 extra_priv_size ehci_driver_overrides 0 46713 &enable_so_length_ib_mr_46713
+enable_so_irq_alloc_domain_generic_chips_fndecl_46715 irq_alloc_domain_generic_chips fndecl 3-2 46715 NULL
-+enable_so_length_page_collect_46716 length page_collect 0 46716 NULL
++enable_so_nor_size_fsl_qspi_46716 nor_size fsl_qspi 0 46716 NULL nohasharray
++enable_so_length_page_collect_46716 length page_collect 0 46716 &enable_so_nor_size_fsl_qspi_46716
+enable_so_peer_max_bio_size_drbd_device_46722 peer_max_bio_size drbd_device 0 46722 NULL
+enable_so_first_ino_xfs_icluster_46725 first_ino xfs_icluster 0 46725 NULL
+enable_so_virtio_gpu_cmd_resource_attach_backing_fndecl_46726 virtio_gpu_cmd_resource_attach_backing fndecl 4 46726 NULL
-+enable_so_get_ep_limit_fndecl_46743 get_ep_limit fndecl 0 46743 NULL
+enable_so_wm8994_set_fll_fndecl_46745 wm8994_set_fll fndecl 4-5 46745 NULL
+enable_so_rxsz_fc_plogi_clp_s_46751 rxsz fc_plogi_clp_s 0 46751 NULL
+enable_so_cvmx_bootmem_phy_named_block_find_fndecl_46752 cvmx_bootmem_phy_named_block_find fndecl 0 46752 NULL
-+enable_so_v9fs_xattr_security_get_fndecl_46758 v9fs_xattr_security_get fndecl 4 46758 NULL
+enable_so_count_nfs_readdirargs_46759 count nfs_readdirargs 0 46759 NULL
+enable_so___kfifo_from_user_r_fndecl_46762 __kfifo_from_user_r fndecl 3-5 46762 NULL nohasharray
+enable_so_perf_aux_output_skip_fndecl_46762 perf_aux_output_skip fndecl 2 46762 &enable_so___kfifo_from_user_r_fndecl_46762
@@ -169931,16 +169206,12 @@ index 0000000..9da833a
+enable_so___bread_gfp_fndecl_46858 __bread_gfp fndecl 3-2 46858 NULL
+enable_so_xwrite_fndecl_46865 xwrite fndecl 3 46865 NULL
+enable_so_lookup_node_fndecl_46882 lookup_node fndecl 2 46882 NULL
-+enable_so_il_dbgfs_missed_beacon_read_fndecl_46887 il_dbgfs_missed_beacon_read fndecl 3 46887 NULL
+enable_so_len_nfsd3_readlinkres_46888 len nfsd3_readlinkres 0 46888 NULL
+enable_so_ksi_nthreads_max_ksock_sched_info_46891 ksi_nthreads_max ksock_sched_info 0 46891 NULL
+enable_so_buffer_size_snd_urb_ctx_46897 buffer_size snd_urb_ctx 0 46897 NULL
+enable_so_cb_break_head_afs_server_46900 cb_break_head afs_server 0 46900 NULL
+enable_so_ql_process_mac_rx_gro_page_fndecl_46902 ql_process_mac_rx_gro_page fndecl 5-4 46902 NULL
+enable_so_ipoib_recvq_size_vardecl_46904 ipoib_recvq_size vardecl 0 46904 NULL
-+enable_so_il_dbgfs_rxon_flags_read_fndecl_46909 il_dbgfs_rxon_flags_read fndecl 3 46909 NULL nohasharray
-+enable_so_dapm_widget_power_read_file_fndecl_46909 dapm_widget_power_read_file fndecl 3 46909 &enable_so_il_dbgfs_rxon_flags_read_fndecl_46909
-+enable_so_ath10k_read_dfs_stats_fndecl_46910 ath10k_read_dfs_stats fndecl 3 46910 NULL
+enable_so_size_vbt_r0_46913 size vbt_r0 0 46913 NULL
+enable_so_num_sacks_tcp_options_received_46914 num_sacks tcp_options_received 0 46914 NULL nohasharray
+enable_so_mmc_queue_packed_map_sg_fndecl_46914 mmc_queue_packed_map_sg fndecl 0 46914 &enable_so_num_sacks_tcp_options_received_46914
@@ -169950,7 +169221,6 @@ index 0000000..9da833a
+enable_so_c_iusedoff_ufs_cg_private_info_46933 c_iusedoff ufs_cg_private_info 0 46933 NULL
+enable_so___free_pages_bootmem_fndecl_46937 __free_pages_bootmem fndecl 3 46937 NULL nohasharray
+enable_so_squashfs_max_decompressors_fndecl_46937 squashfs_max_decompressors fndecl 0 46937 &enable_so___free_pages_bootmem_fndecl_46937
-+enable_so_periodic_size_fusbh200_hcd_46943 periodic_size fusbh200_hcd 0 46943 NULL
+enable_so_devblksize_squashfs_sb_info_46950 devblksize squashfs_sb_info 0 46950 NULL
+enable_so_osd_req_list_dev_partitions_fndecl_46952 osd_req_list_dev_partitions fndecl 4 46952 NULL
+enable_so_tx_ring_num_mlx4_en_priv_46953 tx_ring_num mlx4_en_priv 0 46953 NULL
@@ -169967,7 +169237,8 @@ index 0000000..9da833a
+enable_so_vcs_size_fndecl_46977 vcs_size fndecl 0 46977 NULL
+enable_so_numbers_count_tomoyo_condition_46984 numbers_count tomoyo_condition 0 46984 NULL
+enable_so_size_dwc3_trb_46986 size dwc3_trb 0 46986 NULL
-+enable_so_gru_alloc_gts_fndecl_46987 gru_alloc_gts fndecl 4-6-3-2 46987 NULL
++enable_so_gru_alloc_gts_fndecl_46987 gru_alloc_gts fndecl 4-6-3-2 46987 NULL nohasharray
++enable_so_ri_max_frmr_depth_rpcrdma_ia_46987 ri_max_frmr_depth rpcrdma_ia 0 46987 &enable_so_gru_alloc_gts_fndecl_46987
+enable_so_compat_writev_fndecl_46988 compat_writev fndecl 3 46988 NULL nohasharray
+enable_so_tx_queue_size_pxa168_eth_platform_data_46988 tx_queue_size pxa168_eth_platform_data 0 46988 &enable_so_compat_writev_fndecl_46988
+enable_so_msb_cache_write_fndecl_46992 msb_cache_write fndecl 0-6-2 46992 NULL
@@ -169975,7 +169246,6 @@ index 0000000..9da833a
+enable_so_sys_sched_getaffinity_fndecl_46994 sys_sched_getaffinity fndecl 2 46994 &enable_so_lrg_buffer_len_ql3_adapter_46994
+enable_so_buflen_cdrom_generic_command_47000 buflen cdrom_generic_command 0 47000 NULL
+enable_so_do_ip6t_set_ctl_fndecl_47003 do_ip6t_set_ctl fndecl 4 47003 NULL
-+enable_so_pmcraid_change_queue_depth_fndecl_47007 pmcraid_change_queue_depth fndecl 2 47007 NULL
+enable_so_y_offset_mxr_crop_47012 y_offset mxr_crop 0 47012 NULL
+enable_so_vmw_kms_update_proxy_fndecl_47016 vmw_kms_update_proxy fndecl 3 47016 NULL nohasharray
+enable_so_va_start_vmap_area_47016 va_start vmap_area 0 47016 &enable_so_vmw_kms_update_proxy_fndecl_47016
@@ -169998,7 +169268,6 @@ index 0000000..9da833a
+enable_so_sect_ide_drive_s_47062 sect ide_drive_s 0 47062 NULL
+enable_so_len_Vmxnet3_RxCompDesc_47066 len Vmxnet3_RxCompDesc 0 47066 NULL
+enable_so___remove_zone_fndecl_47073 __remove_zone fndecl 2 47073 NULL
-+enable_so_ccp_reverse_set_dm_area_fndecl_47074 ccp_reverse_set_dm_area fndecl 4-3 47074 NULL
+enable_so_ext_clk_mt9t001_platform_data_47078 ext_clk mt9t001_platform_data 0 47078 NULL
+enable_so_buf_size_usbatm_channel_47081 buf_size usbatm_channel 0 47081 NULL
+enable_so_epnum_isp116x_ep_47082 epnum isp116x_ep 0 47082 NULL
@@ -170013,6 +169282,7 @@ index 0000000..9da833a
+enable_so_len_wmi_rx_action_event_47102 len wmi_rx_action_event 0 47102 NULL
+enable_so___scsi_print_sense_fndecl_47105 __scsi_print_sense fndecl 4 47105 NULL
+enable_so_agp_size_drm_mga_dma_bootstrap_47108 agp_size drm_mga_dma_bootstrap 0 47108 NULL
++enable_so_vc4_bo_create_fndecl_47110 vc4_bo_create fndecl 2 47110 NULL
+enable_so_f_height_camif_frame_47111 f_height camif_frame 0 47111 NULL
+enable_so_total_len_lro_47113 total_len lro 0 47113 NULL
+enable_so_num_mthca_resource_47114 num mthca_resource 0 47114 NULL nohasharray
@@ -170025,11 +169295,11 @@ index 0000000..9da833a
+enable_so_filemap_fdatawrite_range_fndecl_47125 filemap_fdatawrite_range fndecl 2-3 47125 NULL
+enable_so_i2400m_rx_fake_eth_header_fndecl_47128 i2400m_rx_fake_eth_header fndecl 3 47128 NULL
+enable_so_efi_ioremap_fndecl_47129 efi_ioremap fndecl 2-1 47129 NULL
-+enable_so_acl_pgbase_nfs_getaclargs_47131 acl_pgbase nfs_getaclargs 0 47131 NULL
+enable_so_bfad_iocmd_ratelim_fndecl_47133 bfad_iocmd_ratelim fndecl 0 47133 NULL
+enable_so_target_xcopy_write_destination_fndecl_47134 target_xcopy_write_destination fndecl 5 47134 NULL
+enable_so_of_fdt_is_big_endian_fndecl_47137 of_fdt_is_big_endian fndecl 2 47137 NULL
-+enable_so_data_len_nvme_passthru_cmd_47145 data_len nvme_passthru_cmd 0 47145 NULL
++enable_so_data_len_nvme_passthru_cmd_47145 data_len nvme_passthru_cmd 0 47145 NULL nohasharray
++enable_so_param_data_size_skl_ipc_init_instance_msg_47145 param_data_size skl_ipc_init_instance_msg 0 47145 &enable_so_data_len_nvme_passthru_cmd_47145
+enable_so_do_otp_lock_fndecl_47148 do_otp_lock fndecl 3 47148 NULL
+enable_so_vmw_kms_sou_readback_fndecl_47150 vmw_kms_sou_readback fndecl 6 47150 NULL nohasharray
+enable_so_mcs7830_set_reg_async_fndecl_47150 mcs7830_set_reg_async fndecl 3 47150 &enable_so_vmw_kms_sou_readback_fndecl_47150
@@ -170050,7 +169320,6 @@ index 0000000..9da833a
+enable_so_rnr_retry_ib_qp_attr_47198 rnr_retry ib_qp_attr 0 47198 NULL
+enable_so_vmalloc_node_fndecl_47199 vmalloc_node fndecl 1 47199 NULL
+enable_so_bi_phys_segments_bio_47200 bi_phys_segments bio 0 47200 NULL
-+enable_so_max_outstanding_cmds_bnx2fc_hba_47210 max_outstanding_cmds bnx2fc_hba 0 47210 NULL
+enable_so_wpos_p9_conn_47212 wpos p9_conn 0 47212 NULL
+enable_so_ieee80211_if_write_tkip_mic_test_fndecl_47215 ieee80211_if_write_tkip_mic_test fndecl 3 47215 NULL
+enable_so_authsize_crypto_aead_47219 authsize crypto_aead 0 47219 NULL nohasharray
@@ -170080,19 +169349,21 @@ index 0000000..9da833a
+enable_so___wa_xfer_submit_fndecl_47289 __wa_xfer_submit fndecl 0 47289 NULL nohasharray
+enable_so_ipx_sendmsg_fndecl_47289 ipx_sendmsg fndecl 3 47289 &enable_so___wa_xfer_submit_fndecl_47289
+enable_so_dev_number_mdp_superblock_1_47292 dev_number mdp_superblock_1 0 47292 NULL
++enable_so_fwnode_property_read_string_array_fndecl_47300 fwnode_property_read_string_array fndecl 0 47300 NULL
+enable_so_pppol2tp_recvmsg_fndecl_47301 pppol2tp_recvmsg fndecl 3 47301 NULL
+enable_so_command_write_fndecl_47306 command_write fndecl 3 47306 NULL
++enable_so_qed_cxt_ilt_shadow_size_fndecl_47308 qed_cxt_ilt_shadow_size fndecl 0 47308 NULL
+enable_so_bigdirsize_adfs_bigdirheader_47315 bigdirsize adfs_bigdirheader 0 47315 NULL
-+enable_so_ufshcd_change_queue_depth_fndecl_47318 ufshcd_change_queue_depth fndecl 2 47318 NULL
+enable_so_special_e1000_rx_desc_47320 special e1000_rx_desc 0 47320 NULL
+enable_so_nr_pages_swap_extent_47325 nr_pages swap_extent 0 47325 NULL
++enable_so_nr_pages_scif_window_47329 nr_pages scif_window 0 47329 NULL
+enable_so_dma_buffer_size_vardecl_budget_core_c_47332 dma_buffer_size vardecl_budget-core.c 0 47332 NULL
+enable_so_words_nf_conn_labels_47334 words nf_conn_labels 0 47334 NULL
+enable_so_thermal_irq_thr_low_read_fndecl_47339 thermal_irq_thr_low_read fndecl 3 47339 NULL
+enable_so_brcmf_chip_core_read32_fndecl_47346 brcmf_chip_core_read32 fndecl 0 47346 NULL
+enable_so_nd_label_active_count_fndecl_47348 nd_label_active_count fndecl 0 47348 NULL
-+enable_so_gtt_base_align_amdgpu_mc_47351 gtt_base_align amdgpu_mc 0 47351 NULL nohasharray
-+enable_so_myri10ge_change_mtu_fndecl_47351 myri10ge_change_mtu fndecl 2 47351 &enable_so_gtt_base_align_amdgpu_mc_47351
++enable_so_myri10ge_change_mtu_fndecl_47351 myri10ge_change_mtu fndecl 2 47351 NULL nohasharray
++enable_so_gtt_base_align_amdgpu_mc_47351 gtt_base_align amdgpu_mc 0 47351 &enable_so_myri10ge_change_mtu_fndecl_47351
+enable_so_dmi_memdev_nr_vardecl_dmi_scan_c_47352 dmi_memdev_nr vardecl_dmi_scan.c 0 47352 NULL
+enable_so_dump_midi_fndecl_47356 dump_midi fndecl 3 47356 NULL
+enable_so_erasesize_mtd_info_47358 erasesize mtd_info 0 47358 NULL
@@ -170103,7 +169374,6 @@ index 0000000..9da833a
+enable_so_SYSC_sched_getattr_fndecl_47361 SYSC_sched_getattr fndecl 3 47361 NULL
+enable_so_nr_sects_hd_struct_47364 nr_sects hd_struct 0 47364 NULL
+enable_so_rx_position_r3964_info_47365 rx_position r3964_info 0 47365 NULL
-+enable_so_il_dbgfs_status_read_fndecl_47367 il_dbgfs_status_read fndecl 3 47367 NULL
+enable_so_batadv_iv_ogm_aggregate_fndecl_47372 batadv_iv_ogm_aggregate fndecl 3 47372 NULL
+enable_so_btt_data_read_fndecl_47374 btt_data_read fndecl 0 47374 NULL
+enable_so_max_fibre_devices_qla_hw_data_47375 max_fibre_devices qla_hw_data 0 47375 NULL
@@ -170123,21 +169393,19 @@ index 0000000..9da833a
+enable_so_tp_len_tpacket_hdr_47410 tp_len tpacket_hdr 0 47410 NULL
+enable_so_idetape_pad_zeros_fndecl_47413 idetape_pad_zeros fndecl 2 47413 NULL
+enable_so_cdc_ncm_update_rxtx_max_fndecl_47421 cdc_ncm_update_rxtx_max fndecl 3-2 47421 NULL
-+enable_so_move_pfn_range_right_fndecl_47425 move_pfn_range_right fndecl 3-4 47425 NULL
++enable_so_ctx_index_i915_guc_client_47425 ctx_index i915_guc_client 0 47425 NULL nohasharray
++enable_so_move_pfn_range_right_fndecl_47425 move_pfn_range_right fndecl 3-4 47425 &enable_so_ctx_index_i915_guc_client_47425
+enable_so_sinit_max_instreams_sctp_cookie_47433 sinit_max_instreams sctp_cookie 0 47433 NULL
+enable_so_capabilities_read_fndecl_47434 capabilities_read fndecl 3 47434 NULL
+enable_so_usnic_vnic_get_resources_fndecl_47437 usnic_vnic_get_resources fndecl 3 47437 NULL
+enable_so_depth_bttv_format_47442 depth bttv_format 0 47442 NULL nohasharray
+enable_so_ufs_frag_map_fndecl_47442 ufs_frag_map fndecl 0 47442 &enable_so_depth_bttv_format_47442
-+enable_so_MaxChainDepth_mpt2sas_facts_47453 MaxChainDepth mpt2sas_facts 0 47453 NULL
-+enable_so_dw_spi_show_regs_fndecl_47461 dw_spi_show_regs fndecl 3 47461 NULL
+enable_so_part_bits_mtd_blktrans_ops_47462 part_bits mtd_blktrans_ops 0 47462 NULL
+enable_so_len_wmfw_region_47463 len wmfw_region 0 47463 NULL nohasharray
+enable_so_snd_rme96_capture_copy_fndecl_47463 snd_rme96_capture_copy fndecl 5 47463 &enable_so_len_wmfw_region_47463
+enable_so_batadv_bla_is_backbone_gw_fndecl_47467 batadv_bla_is_backbone_gw fndecl 3 47467 NULL
+enable_so_memblock_alloc_try_nid_fndecl_47470 memblock_alloc_try_nid fndecl 2-1 47470 NULL
-+enable_so_compat_do_ipt_set_ctl_fndecl_47473 compat_do_ipt_set_ctl fndecl 4 47473 NULL nohasharray
-+enable_so_lpfc_idiag_baracc_read_fndecl_47473 lpfc_idiag_baracc_read fndecl 3 47473 &enable_so_compat_do_ipt_set_ctl_fndecl_47473
++enable_so_compat_do_ipt_set_ctl_fndecl_47473 compat_do_ipt_set_ctl fndecl 4 47473 NULL
+enable_so_maxDataSize__mpt_ioctl_header_47477 maxDataSize _mpt_ioctl_header 0 47477 NULL
+enable_so_fifo_len_tx_fifo_config_47480 fifo_len tx_fifo_config 0 47480 NULL
+enable_so_affs_write_end_ofs_fndecl_47486 affs_write_end_ofs fndecl 4-3 47486 NULL
@@ -170168,6 +169436,7 @@ index 0000000..9da833a
+enable_so_add_replay_bud_fndecl_47552 add_replay_bud fndecl 3 47552 NULL
+enable_so_max_concur_ios_snic_fw_info_47556 max_concur_ios snic_fw_info 0 47556 NULL
+enable_so_cur_wm_latency_write_fndecl_47558 cur_wm_latency_write fndecl 3 47558 NULL
++enable_so_tx_dma_len_sci_port_47562 tx_dma_len sci_port 0 47562 NULL
+enable_so_max_xmit_dlength_iscsi_bus_flash_conn_47565 max_xmit_dlength iscsi_bus_flash_conn 0 47565 NULL nohasharray
+enable_so_isku_sysfs_read_keys_thumbster_fndecl_47565 isku_sysfs_read_keys_thumbster fndecl 6 47565 &enable_so_max_xmit_dlength_iscsi_bus_flash_conn_47565
+enable_so_ubh_bread_uspi_fndecl_47568 ubh_bread_uspi fndecl 3 47568 NULL
@@ -170212,7 +169481,6 @@ index 0000000..9da833a
+enable_so_ksize_fndecl_47675 ksize fndecl 0 47675 NULL
+enable_so_height_v4l2_pix_format_47682 height v4l2_pix_format 0 47682 NULL
+enable_so_rs_length_rpcrdma_segment_47683 rs_length rpcrdma_segment 0 47683 NULL
-+enable_so_ath10k_debug_cal_data_read_fndecl_47685 ath10k_debug_cal_data_read fndecl 3 47685 NULL
+enable_so_pci_iov_bus_range_fndecl_47686 pci_iov_bus_range fndecl 0 47686 NULL
+enable_so_maxframesize_snd_usb_endpoint_47687 maxframesize snd_usb_endpoint 0 47687 NULL
+enable_so_batadv_hardif_min_mtu_fndecl_47691 batadv_hardif_min_mtu fndecl 0 47691 NULL nohasharray
@@ -170236,7 +169504,8 @@ index 0000000..9da833a
+enable_so_max_size_ttm_pool_opts_47726 max_size ttm_pool_opts 0 47726 NULL
+enable_so_bdev_stack_limits_fndecl_47732 bdev_stack_limits fndecl 3 47732 NULL
+enable_so_copy_nocow_pages_for_inode_fndecl_47736 copy_nocow_pages_for_inode fndecl 2 47736 NULL
-+enable_so_SMB2_write_fndecl_47741 SMB2_write fndecl 5 47741 NULL
++enable_so_geneve_build_skb_fndecl_47741 geneve_build_skb fndecl 5 47741 NULL nohasharray
++enable_so_SMB2_write_fndecl_47741 SMB2_write fndecl 5 47741 &enable_so_geneve_build_skb_fndecl_47741
+enable_so_eccbytes_nand_ecclayout_47742 eccbytes nand_ecclayout 0 47742 NULL
+enable_so_minbcnt_aoetgt_47744 minbcnt aoetgt 0 47744 NULL
+enable_so_acpi_tb_install_fixed_table_fndecl_47749 acpi_tb_install_fixed_table fndecl 1 47749 NULL
@@ -170252,12 +169521,11 @@ index 0000000..9da833a
+enable_so_rx_count_ll_struct_47772 rx_count ll_struct 0 47772 NULL nohasharray
+enable_so_minor_osd_uld_device_47772 minor osd_uld_device 0 47772 &enable_so_rx_count_ll_struct_47772
+enable_so_fill_func_debug_buffer_47773 fill_func debug_buffer 0 47773 NULL
-+enable_so_snic_reset_stats_read_fndecl_47774 snic_reset_stats_read fndecl 3 47774 NULL
+enable_so_dma1_shift_es1938_47776 dma1_shift es1938 0 47776 NULL
-+enable_so_v9fs_remote_set_acl_fndecl_47784 v9fs_remote_set_acl fndecl 4 47784 NULL nohasharray
-+enable_so_rx_ring_size_bnx2x_47784 rx_ring_size bnx2x 0 47784 &enable_so_v9fs_remote_set_acl_fndecl_47784 nohasharray
++enable_so_rx_ring_size_bnx2x_47784 rx_ring_size bnx2x 0 47784 NULL nohasharray
+enable_so_fd_copyout_fndecl_47784 fd_copyout fndecl 3 47784 &enable_so_rx_ring_size_bnx2x_47784
+enable_so_bg_blkno_ocfs2_group_desc_47785 bg_blkno ocfs2_group_desc 0 47785 NULL
++enable_so_nfs4_xattr_get_nfs4_acl_fndecl_47789 nfs4_xattr_get_nfs4_acl fndecl 5 47789 NULL
+enable_so_skb_prepare_seq_read_fndecl_47790 skb_prepare_seq_read fndecl 2 47790 NULL nohasharray
+enable_so_max_cmds_mlx4_cmd_47790 max_cmds mlx4_cmd 0 47790 &enable_so_skb_prepare_seq_read_fndecl_47790
+enable_so_do_otp_read_fndecl_47794 do_otp_read fndecl 2 47794 NULL
@@ -170298,7 +169566,6 @@ index 0000000..9da833a
+enable_so_spi_map_msg_fndecl_47912 spi_map_msg fndecl 0 47912 NULL
+enable_so_nbytes_fsl_edma_hw_tcd_47913 nbytes fsl_edma_hw_tcd 0 47913 NULL
+enable_so_compat_fillonedir_fndecl_47921 compat_fillonedir fndecl 3 47921 NULL
-+enable_so_mxl111sf_stream_config_isoc_fndecl_47924 mxl111sf_stream_config_isoc fndecl 2 47924 NULL
+enable_so_phys_esb2rom_window_47933 phys esb2rom_window 0 47933 NULL
+enable_so_fddi_change_mtu_fndecl_47942 fddi_change_mtu fndecl 2 47942 NULL
+enable_so_rxd_vlan_rxd_desc_47943 rxd_vlan rxd_desc 0 47943 NULL
@@ -170310,9 +169577,9 @@ index 0000000..9da833a
+enable_so_netpoll_send_udp_fndecl_47960 netpoll_send_udp fndecl 3 47960 NULL
+enable_so_st5481_isoc_flatten_fndecl_47963 st5481_isoc_flatten fndecl 0 47963 NULL
+enable_so_handle_rx_packet_fndecl_47970 handle_rx_packet fndecl 3 47970 NULL
-+enable_so_reg_size_sci_port_47971 reg_size sci_port 0 47971 NULL nohasharray
-+enable_so_encap_hlen_ip_tunnel_encap_ops_47971 encap_hlen ip_tunnel_encap_ops 0 47971 &enable_so_reg_size_sci_port_47971 nohasharray
-+enable_so_length_xfs_bmalloca_47971 length xfs_bmalloca 0 47971 &enable_so_encap_hlen_ip_tunnel_encap_ops_47971
++enable_so_encap_hlen_ip_tunnel_encap_ops_47971 encap_hlen ip_tunnel_encap_ops 0 47971 NULL nohasharray
++enable_so_length_xfs_bmalloca_47971 length xfs_bmalloca 0 47971 &enable_so_encap_hlen_ip_tunnel_encap_ops_47971 nohasharray
++enable_so_reg_size_sci_port_47971 reg_size sci_port 0 47971 &enable_so_length_xfs_bmalloca_47971
+enable_so_le_ih_k_offset_fndecl_47992 le_ih_k_offset fndecl 0 47992 NULL
+enable_so_remap_to_cache_dirty_fndecl_47996 remap_to_cache_dirty fndecl 4 47996 NULL
+enable_so_size_sc_config_sizes_47998 size sc_config_sizes 0 47998 NULL
@@ -170325,12 +169592,12 @@ index 0000000..9da833a
+enable_so_selinux_transaction_write_fndecl_48013 selinux_transaction_write fndecl 3 48013 NULL
+enable_so_size_nfs_fh_48014 size nfs_fh 0 48014 NULL
+enable_so_temp_end_applesmc_registers_48016 temp_end applesmc_registers 0 48016 NULL
-+enable_so_lpfc_idiag_baracc_write_fndecl_48021 lpfc_idiag_baracc_write fndecl 3 48021 NULL
++enable_so_mdiobus_read_nested_fndecl_48017 mdiobus_read_nested fndecl 0 48017 NULL
+enable_so_original_mtu_slave_48025 original_mtu slave 0 48025 NULL
+enable_so_hmac_len_sctp_hmac_48030 hmac_len sctp_hmac 0 48030 NULL
+enable_so_aim_write_fndecl_48032 aim_write fndecl 3 48032 NULL
+enable_so_dlci_header_fndecl_48034 dlci_header fndecl 3 48034 NULL
-+enable_so_init_page_array_fndecl_48038 init_page_array fndecl 2-0 48038 NULL
++enable_so_init_page_array_fndecl_48038 init_page_array fndecl 2 48038 NULL
+enable_so_rm_namelen_nfsd4_remove_48040 rm_namelen nfsd4_remove 0 48040 NULL
+enable_so_fc_flogi_build_fndecl_48042 fc_flogi_build fndecl 7 48042 NULL
+enable_so_s_reserved_affs_sb_info_48043 s_reserved affs_sb_info 0 48043 NULL
@@ -170344,7 +169611,8 @@ index 0000000..9da833a
+enable_so_sc16is7xx_alloc_line_fndecl_48075 sc16is7xx_alloc_line fndecl 0 48075 NULL
+enable_so_xfs_zero_eof_fndecl_48076 xfs_zero_eof fndecl 3-2 48076 NULL
+enable_so_mt9t031_skip_fndecl_48078 mt9t031_skip fndecl 0-3-2 48078 NULL
-+enable_so_blocksize_sddr55_card_info_48082 blocksize sddr55_card_info 0 48082 NULL
++enable_so_blocksize_sddr55_card_info_48082 blocksize sddr55_card_info 0 48082 NULL nohasharray
++enable_so_setup_irq_msi_controller_48082 setup_irq msi_controller 0 48082 &enable_so_blocksize_sddr55_card_info_48082
+enable_so_osst_max_dev_vardecl_osst_c_48086 osst_max_dev vardecl_osst.c 0 48086 NULL
+enable_so_ipath_rcvegrcnt_ipath_devdata_48089 ipath_rcvegrcnt ipath_devdata 0 48089 NULL
+enable_so_count_atl1c_rfd_ring_48095 count atl1c_rfd_ring 0 48095 NULL
@@ -170357,7 +169625,6 @@ index 0000000..9da833a
+enable_so_nfc_llcp_send_i_frame_fndecl_48105 nfc_llcp_send_i_frame fndecl 3 48105 NULL nohasharray
+enable_so_bit_offset_nvmem_cell_info_48105 bit_offset nvmem_cell_info 0 48105 &enable_so_nfc_llcp_send_i_frame_fndecl_48105 nohasharray
+enable_so___cvmx_bootmem_desc_get_fndecl_48105 __cvmx_bootmem_desc_get fndecl 0 48105 &enable_so_bit_offset_nvmem_cell_info_48105
-+enable_so_m25p80_write_reg_fndecl_48115 m25p80_write_reg fndecl 4 48115 NULL
+enable_so_max_pkt_size_cx231xx_audio_48117 max_pkt_size cx231xx_audio 0 48117 NULL nohasharray
+enable_so_namelen_xensyms_48117 namelen xensyms 0 48117 &enable_so_max_pkt_size_cx231xx_audio_48117
+enable_so_discard_granularity_queue_limits_48119 discard_granularity queue_limits 0 48119 NULL
@@ -170396,10 +169663,8 @@ index 0000000..9da833a
+enable_so_qib_rkey_ok_fndecl_48221 qib_rkey_ok fndecl 3-4 48221 NULL
+enable_so_b_map_count_xfs_buf_48228 b_map_count xfs_buf 0 48228 NULL
+enable_so_sys_nice_fndecl_48229 sys_nice fndecl 1 48229 NULL
-+enable_so_ieee80211_if_read_dot11MeshHWMPconfirmationInterval_fndecl_48233 ieee80211_if_read_dot11MeshHWMPconfirmationInterval fndecl 3 48233 NULL
+enable_so_xdr_buf_read_netobj_fndecl_48238 xdr_buf_read_netobj fndecl 3 48238 NULL
+enable_so_num_rx_rings_bnx2_48240 num_rx_rings bnx2 0 48240 NULL
-+enable_so_i2400m_rx_stats_read_fndecl_48249 i2400m_rx_stats_read fndecl 3 48249 NULL
+enable_so_qib_make_grh_fndecl_48250 qib_make_grh fndecl 0 48250 NULL
+enable_so_height_cx88_core_48255 height cx88_core 0 48255 NULL
+enable_so_ib_uverbs_create_xsrq_fndecl_48257 ib_uverbs_create_xsrq fndecl 4 48257 NULL
@@ -170409,7 +169674,7 @@ index 0000000..9da833a
+enable_so_reg_shift_pciserial_board_48293 reg_shift pciserial_board 0 48293 NULL
+enable_so_add_packet_fndecl_48295 add_packet fndecl 3 48295 NULL
+enable_so_next_dtslot_48300 next dtslot 0 48300 NULL
-+enable_so_hackrf_convert_stream_fndecl_48309 hackrf_convert_stream fndecl 0-4 48309 NULL
++enable_so_ofs_atmel_dma_buffer_48310 ofs atmel_dma_buffer 0 48310 NULL
+enable_so_nep_buffer_size_wahc_48313 nep_buffer_size wahc 0 48313 NULL
+enable_so_ci_flags_f2fs_crypt_info_48318 ci_flags f2fs_crypt_info 0 48318 NULL
+enable_so_ngroups_group_info_48320 ngroups group_info 0 48320 NULL
@@ -170441,11 +169706,11 @@ index 0000000..9da833a
+enable_so_mlxsw_cmd_mbox_query_aq_cap_max_num_rdqs_get_fndecl_48399 mlxsw_cmd_mbox_query_aq_cap_max_num_rdqs_get fndecl 0 48399 NULL
+enable_so_blk_queue_dma_pad_fndecl_48409 blk_queue_dma_pad fndecl 2 48409 NULL
+enable_so_osd_depth_vardecl_ivtvfb_c_48413 osd_depth vardecl_ivtvfb.c 0 48413 NULL
++enable_so___install_special_mapping_fndecl_48415 __install_special_mapping fndecl 3-2 48415 NULL
+enable_so_seq_buf_putmem_fndecl_48421 seq_buf_putmem fndecl 3 48421 NULL
+enable_so_max_kioc_mraid_mmadp_48422 max_kioc mraid_mmadp 0 48422 NULL
+enable_so_sys_fadvise64_64_fndecl_48424 sys_fadvise64_64 fndecl 2-3 48424 NULL nohasharray
+enable_so_stex_copy_data_fndecl_48424 stex_copy_data fndecl 3 48424 &enable_so_sys_fadvise64_64_fndecl_48424
-+enable_so_read_file_blob_fndecl_48429 read_file_blob fndecl 3 48429 NULL
+enable_so_bMaxBurst_usb_wireless_ep_comp_descriptor_48430 bMaxBurst usb_wireless_ep_comp_descriptor 0 48430 NULL
+enable_so_mmio_phys_end_amd_iommu_48432 mmio_phys_end amd_iommu 0 48432 NULL
+enable_so_tty_register_device_attr_fndecl_48438 tty_register_device_attr fndecl 2 48438 NULL
@@ -170471,16 +169736,13 @@ index 0000000..9da833a
+enable_so_addidata_apci7800_setup_fndecl_48487 addidata_apci7800_setup fndecl 4 48487 &enable_so___origin_write_fndecl_48487
+enable_so_sisusb_clear_vram_fndecl_48489 sisusb_clear_vram fndecl 2-3 48489 NULL
+enable_so_l_len_ocfs2_space_resv_48490 l_len ocfs2_space_resv 0 48490 NULL
-+enable_so_ieee80211_if_read_flags_fndecl_48493 ieee80211_if_read_flags fndecl 3 48493 NULL
-+enable_so_ydepth_sh_veu_format_48498 ydepth sh_veu_format 0 48498 NULL nohasharray
-+enable_so_rss_key_write_fndecl_48498 rss_key_write fndecl 3 48498 &enable_so_ydepth_sh_veu_format_48498
++enable_so_ydepth_sh_veu_format_48498 ydepth sh_veu_format 0 48498 NULL
+enable_so_ping_v6_sendmsg_fndecl_48499 ping_v6_sendmsg fndecl 3 48499 NULL
+enable_so_encode_filename_fndecl_48501 encode_filename fndecl 3 48501 NULL
+enable_so_len_cfg80211_bss_ies_48503 len cfg80211_bss_ies 0 48503 NULL
+enable_so_sys_pselect6_fndecl_48506 sys_pselect6 fndecl 1 48506 NULL
+enable_so_channels_snd_soc_dai_48509 channels snd_soc_dai 0 48509 NULL
-+enable_so_rx_count_kim_data_s_48513 rx_count kim_data_s 0 48513 NULL nohasharray
-+enable_so_read_file_skb_rx_fndecl_48513 read_file_skb_rx fndecl 3 48513 &enable_so_rx_count_kim_data_s_48513
++enable_so_rx_count_kim_data_s_48513 rx_count kim_data_s 0 48513 NULL
+enable_so_get_lr_context_size_fndecl_48518 get_lr_context_size fndecl 0 48518 NULL
+enable_so_octeon_read_device_mem32_fndecl_48520 octeon_read_device_mem32 fndecl 0 48520 NULL
+enable_so_fcoe_get_paged_crc_eof_fndecl_48522 fcoe_get_paged_crc_eof fndecl 2 48522 NULL
@@ -170491,24 +169753,21 @@ index 0000000..9da833a
+enable_so_nilfs_sufile_update_fndecl_48533 nilfs_sufile_update fndecl 2 48533 NULL
+enable_so_ocfs2_write_cluster_fndecl_48536 ocfs2_write_cluster fndecl 2-8 48536 NULL
+enable_so_discard_block_size_cache_48539 discard_block_size cache 0 48539 NULL
-+enable_so_tot_len_iphdr_48541 tot_len iphdr 0 48541 NULL
++enable_so_total_pages_balloon_stats_48541 total_pages balloon_stats 0 48541 NULL nohasharray
++enable_so_tot_len_iphdr_48541 tot_len iphdr 0 48541 &enable_so_total_pages_balloon_stats_48541
+enable_so_fack_count_tcp_sacktag_state_48543 fack_count tcp_sacktag_state 0 48543 NULL
+enable_so_aid_len_nfc_evt_transaction_48544 aid_len nfc_evt_transaction 0 48544 NULL
+enable_so_cmm_read_fndecl_48547 cmm_read fndecl 3 48547 NULL
+enable_so_dm_stats_create_fndecl_48550 dm_stats_create fndecl 4-2-3-6 48550 NULL
-+enable_so_inode_permission_fndecl_48552 inode_permission fndecl 0 48552 NULL nohasharray
-+enable_so_max_reply_bytes_mpt2_ioctl_command_48552 max_reply_bytes mpt2_ioctl_command 0 48552 &enable_so_inode_permission_fndecl_48552
++enable_so_inode_permission_fndecl_48552 inode_permission fndecl 0 48552 NULL
+enable_so_dccp_sync_mss_fndecl_48556 dccp_sync_mss fndecl 2 48556 NULL
+enable_so_acpi_dev_get_resources_fndecl_48557 acpi_dev_get_resources fndecl 0 48557 NULL
+enable_so___vlan_vid_add_fndecl_48559 __vlan_vid_add fndecl 3 48559 NULL
-+enable_so_eth_header_cache_fndecl_48564 eth_header_cache fndecl 3 48564 NULL nohasharray
-+enable_so_internal_depth_MPT2SAS_ADAPTER_48564 internal_depth MPT2SAS_ADAPTER 0 48564 &enable_so_eth_header_cache_fndecl_48564
-+enable_so_intel_tile_height_fndecl_48566 intel_tile_height fndecl 0 48566 NULL
++enable_so_eth_header_cache_fndecl_48564 eth_header_cache fndecl 3 48564 NULL
+enable_so_init_tag_map_fndecl_48568 init_tag_map fndecl 3 48568 NULL
+enable_so_start_spy_cam_fndecl_48570 start_spy_cam fndecl 0 48570 NULL
+enable_so_len_wep_key_t_48574 len wep_key_t 0 48574 NULL nohasharray
-+enable_so_il_dbgfs_force_reset_read_fndecl_48574 il_dbgfs_force_reset_read fndecl 3 48574 &enable_so_len_wep_key_t_48574 nohasharray
-+enable_so_wil_read_file_ssid_fndecl_48574 wil_read_file_ssid fndecl 3 48574 &enable_so_il_dbgfs_force_reset_read_fndecl_48574
++enable_so_wil_read_file_ssid_fndecl_48574 wil_read_file_ssid fndecl 3 48574 &enable_so_len_wep_key_t_48574
+enable_so_iomem_reg_shift_old_serial_port_48579 iomem_reg_shift old_serial_port 0 48579 NULL nohasharray
+enable_so_dynamic_fw_traces_read_fndecl_48579 dynamic_fw_traces_read fndecl 3 48579 &enable_so_iomem_reg_shift_old_serial_port_48579
+enable_so_vce_v2_0_bo_size_fndecl_48581 vce_v2_0_bo_size fndecl 0 48581 NULL
@@ -170518,7 +169777,6 @@ index 0000000..9da833a
+enable_so_backup_size_vmw_resource_48590 backup_size vmw_resource 0 48590 &enable_so_flow_label_ib_sa_path_rec_48590
+enable_so_driver_register_fndecl_48593 driver_register fndecl 0 48593 NULL
+enable_so_len_isert_data_buf_48596 len isert_data_buf 0 48596 NULL
-+enable_so_wm_adsp_debugfs_wmfw_read_fndecl_48599 wm_adsp_debugfs_wmfw_read fndecl 3 48599 NULL
+enable_so_datalen_atp_info_48607 datalen atp_info 0 48607 NULL nohasharray
+enable_so_aggr_size_tx_agg_rate_read_fndecl_48607 aggr_size_tx_agg_rate_read fndecl 3 48607 &enable_so_datalen_atp_info_48607
+enable_so_count_e8390_pkt_hdr_48610 count e8390_pkt_hdr 0 48610 NULL
@@ -170530,7 +169788,8 @@ index 0000000..9da833a
+enable_so_ili210x_read_reg_fndecl_48632 ili210x_read_reg fndecl 4 48632 NULL nohasharray
+enable_so_get_bridge_ifindices_fndecl_48632 get_bridge_ifindices fndecl 0 48632 &enable_so_ili210x_read_reg_fndecl_48632
+enable_so_srcbusirq_mpc_intsrc_48636 srcbusirq mpc_intsrc 0 48636 NULL
-+enable_so_nsymbols_dsp_symbol_desc_48638 nsymbols dsp_symbol_desc 0 48638 NULL
++enable_so_igu_sb_cnt_qed_igu_info_48638 igu_sb_cnt qed_igu_info 0 48638 NULL nohasharray
++enable_so_nsymbols_dsp_symbol_desc_48638 nsymbols dsp_symbol_desc 0 48638 &enable_so_igu_sb_cnt_qed_igu_info_48638
+enable_so_check_next_phase_fndecl_48641 check_next_phase fndecl 2 48641 NULL
+enable_so_submit_extent_page_fndecl_48642 submit_extent_page fndecl 7-5-6 48642 NULL nohasharray
+enable_so_savemem_fndecl_48642 savemem fndecl 3 48642 &enable_so_submit_extent_page_fndecl_48642
@@ -170544,6 +169803,7 @@ index 0000000..9da833a
+enable_so_length_fw_cdev_send_request_48658 length fw_cdev_send_request 0 48658 &enable_so_pkt_len_eth_end_agg_rx_cqe_48658
+enable_so_mmc_test_rnd_perf_fndecl_48660 mmc_test_rnd_perf fndecl 4 48660 NULL
+enable_so_nn_rs_control_48667 nn rs_control 0 48667 NULL
++enable_so_brcmf_sdio_bus_get_memdump_fndecl_48669 brcmf_sdio_bus_get_memdump fndecl 3 48669 NULL
+enable_so_snd_seq_fifo_new_fndecl_48670 snd_seq_fifo_new fndecl 1 48670 NULL
+enable_so_ep_out_if_usb_card_48678 ep_out if_usb_card 0 48678 NULL
+enable_so_vscan_drm_display_mode_48680 vscan drm_display_mode 0 48680 NULL nohasharray
@@ -170557,6 +169817,7 @@ index 0000000..9da833a
+enable_so_make_cpu_key_fndecl_48699 make_cpu_key fndecl 3 48699 &enable_so_max_rds_rings_netxen_adapter_48699
+enable_so_tx_load_fndecl_48707 tx_load fndecl 3 48707 NULL nohasharray
+enable_so_cqe_ib_cq_init_attr_48707 cqe ib_cq_init_attr 0 48707 &enable_so_tx_load_fndecl_48707
++enable_so_xfs_zero_extent_fndecl_48709 xfs_zero_extent fndecl 2-3 48709 NULL
+enable_so_sect_count_hfsplus_sb_info_48715 sect_count hfsplus_sb_info 0 48715 NULL
+enable_so_base_gfn_kvm_memory_slot_48716 base_gfn kvm_memory_slot 0 48716 NULL
+enable_so_nci_send_cmd_fndecl_48717 nci_send_cmd fndecl 3 48717 NULL nohasharray
@@ -170564,6 +169825,7 @@ index 0000000..9da833a
+enable_so_rx_max_cdc_ncm_ctx_48720 rx_max cdc_ncm_ctx 0 48720 NULL nohasharray
+enable_so_mdata_ofs_cyttsp4_sysinfo_ofs_48720 mdata_ofs cyttsp4_sysinfo_ofs 0 48720 &enable_so_rx_max_cdc_ncm_ctx_48720
+enable_so_ceph_tcp_recvmsg_fndecl_48722 ceph_tcp_recvmsg fndecl 0-3 48722 NULL
++enable_so_mbox_test_signal_write_fndecl_48729 mbox_test_signal_write fndecl 3 48729 NULL
+enable_so_vmw_view_add_fndecl_48730 vmw_view_add fndecl 7 48730 NULL
+enable_so_garmin_write_bulk_fndecl_48732 garmin_write_bulk fndecl 3 48732 NULL
+enable_so_can_dlc_can_frame_48738 can_dlc can_frame 0 48738 NULL
@@ -170574,6 +169836,7 @@ index 0000000..9da833a
+enable_so_i40evf_allocate_virt_mem_d_fndecl_48753 i40evf_allocate_virt_mem_d fndecl 3 48753 NULL
+enable_so_e_blkno_ocfs2_extent_rec_48756 e_blkno ocfs2_extent_rec 0 48756 NULL nohasharray
+enable_so_bfad_iocmd_port_get_stats_fndecl_48756 bfad_iocmd_port_get_stats fndecl 0 48756 &enable_so_e_blkno_ocfs2_extent_rec_48756
++enable_so_string_escape_mem_fndecl_48758 string_escape_mem fndecl 0 48758 NULL
+enable_so_ide_rate_filter_fndecl_48764 ide_rate_filter fndecl 0 48764 NULL
+enable_so_nfree_arena_info_48769 nfree arena_info 0 48769 NULL
+enable_so_read_file_debug_fndecl_48771 read_file_debug fndecl 3 48771 NULL
@@ -170583,9 +169846,9 @@ index 0000000..9da833a
+enable_so_cfg80211_mgmt_tx_status_fndecl_48777 cfg80211_mgmt_tx_status fndecl 4 48777 NULL
+enable_so_acpi_ds_build_internal_package_obj_fndecl_48780 acpi_ds_build_internal_package_obj fndecl 3 48780 NULL
+enable_so_height_drm_framebuffer_48781 height drm_framebuffer 0 48781 NULL
-+enable_so_value_len_jffs2_xattr_datum_48786 value_len jffs2_xattr_datum 0 48786 NULL nohasharray
-+enable_so_mwifiex_host_to_card_mp_aggr_fndecl_48786 mwifiex_host_to_card_mp_aggr fndecl 3 48786 &enable_so_value_len_jffs2_xattr_datum_48786 nohasharray
-+enable_so_hva_to_pfn_fndecl_48786 hva_to_pfn fndecl 1 48786 &enable_so_mwifiex_host_to_card_mp_aggr_fndecl_48786
++enable_so_mwifiex_host_to_card_mp_aggr_fndecl_48786 mwifiex_host_to_card_mp_aggr fndecl 3 48786 NULL nohasharray
++enable_so_value_len_jffs2_xattr_datum_48786 value_len jffs2_xattr_datum 0 48786 &enable_so_mwifiex_host_to_card_mp_aggr_fndecl_48786 nohasharray
++enable_so_hva_to_pfn_fndecl_48786 hva_to_pfn fndecl 1 48786 &enable_so_value_len_jffs2_xattr_datum_48786
+enable_so_head_len_cfg80211_beacon_data_48794 head_len cfg80211_beacon_data 0 48794 NULL
+enable_so_unit_size_mspro_sys_info_48796 unit_size mspro_sys_info 0 48796 NULL
+enable_so_len_spi_transfer_48802 len spi_transfer 0 48802 NULL
@@ -170606,10 +169869,10 @@ index 0000000..9da833a
+enable_so_busnum_usb_bus_48843 busnum usb_bus 0 48843 NULL
+enable_so_agf_flcount_xfs_agf_48844 agf_flcount xfs_agf 0 48844 NULL
+enable_so_pcim_iomap_fndecl_48845 pcim_iomap fndecl 3 48845 NULL
-+enable_so_ieee80211_if_read_dot11MeshTTL_fndecl_48848 ieee80211_if_read_dot11MeshTTL fndecl 3 48848 NULL
+enable_so_end_io_target_type_48863 end_io target_type 0 48863 NULL
+enable_so_pagefault_single_data_segment_fndecl_48864 pagefault_single_data_segment fndecl 4 48864 NULL
+enable_so_vmalloc_to_sg_fndecl_48865 vmalloc_to_sg fndecl 2 48865 NULL
++enable_so_mpls_count_nexthops_fndecl_48869 mpls_count_nexthops fndecl 0 48869 NULL
+enable_so_num_desc_i40e_vsi_48872 num_desc i40e_vsi 0 48872 NULL
+enable_so_log_mtts_per_seg_vardecl_48880 log_mtts_per_seg vardecl 0 48880 NULL
+enable_so_ax25_create_fndecl_48882 ax25_create fndecl 3 48882 NULL nohasharray
@@ -170619,8 +169882,6 @@ index 0000000..9da833a
+enable_so_memblock_clear_hotplug_fndecl_48883 memblock_clear_hotplug fndecl 2-1 48883 &enable_so_diva_init_dma_map_fndecl_48883
+enable_so_cl_in_max_entry_size_mvumi_hs_page1_48890 cl_in_max_entry_size mvumi_hs_page1 0 48890 NULL nohasharray
+enable_so_bylength_atto_vda_ae_hdr_48890 bylength atto_vda_ae_hdr 0 48890 &enable_so_cl_in_max_entry_size_mvumi_hs_page1_48890
-+enable_so_regmap_cache_only_write_file_fndecl_48899 regmap_cache_only_write_file fndecl 3 48899 NULL
-+enable_so_radeon_ttm_gtt_read_fndecl_48900 radeon_ttm_gtt_read fndecl 3 48900 NULL
+enable_so_nr_buffers_drm_nouveau_gem_pushbuf_48902 nr_buffers drm_nouveau_gem_pushbuf 0 48902 NULL
+enable_so_RPyLen_hfs_cat_file_48906 RPyLen hfs_cat_file 0 48906 NULL
+enable_so_offset_scatterlist_48908 offset scatterlist 0 48908 NULL nohasharray
@@ -170643,13 +169904,12 @@ index 0000000..9da833a
+enable_so_user_dlm_lock_fndecl_48959 user_dlm_lock fndecl 6 48959 NULL nohasharray
+enable_so_wptr_radeon_ring_48959 wptr radeon_ring 0 48959 &enable_so_user_dlm_lock_fndecl_48959
+enable_so_xfs_mru_cache_create_fndecl_48964 xfs_mru_cache_create fndecl 3 48964 NULL nohasharray
-+enable_so_num_requests_vardecl_48964 num_requests vardecl 0 48964 &enable_so_xfs_mru_cache_create_fndecl_48964
++enable_so_num_requests_vardecl_48964 num_requests vardecl 0 48964 &enable_so_xfs_mru_cache_create_fndecl_48964 nohasharray
++enable_so_snd_timer_user_gparams_fndecl_48964 snd_timer_user_gparams fndecl 0 48964 &enable_so_num_requests_vardecl_48964
+enable_so_SyS_io_setup_fndecl_48965 SyS_io_setup fndecl 1 48965 NULL
+enable_so_block_size_sm_ftl_48967 block_size sm_ftl 0 48967 NULL
-+enable_so_key_algorithm_read_fndecl_48969 key_algorithm_read fndecl 3 48969 NULL
+enable_so_rx_fndecl_48971 rx fndecl 4 48971 NULL
+enable_so_twl_i2c_write_fndecl_48976 twl_i2c_write fndecl 0 48976 NULL
-+enable_so_mwifiex_hscfg_read_fndecl_48979 mwifiex_hscfg_read fndecl 3 48979 NULL
+enable_so_num_packet_sock_48980 num packet_sock 0 48980 NULL
+enable_so_pkt_overhead_pktgen_dev_48989 pkt_overhead pktgen_dev 0 48989 NULL
+enable_so_sel_read_handle_unknown_fndecl_48990 sel_read_handle_unknown fndecl 3 48990 NULL
@@ -170658,6 +169918,7 @@ index 0000000..9da833a
+enable_so_rec_len_exofs_dir_entry_49002 rec_len exofs_dir_entry 0 49002 NULL
+enable_so_size_mlx4_en_tx_ring_49005 size mlx4_en_tx_ring 0 49005 NULL
+enable_so_ip_set_alloc_fndecl_49010 ip_set_alloc fndecl 1 49010 NULL
++enable_so_mmio_addr_stm_data_49015 mmio_addr stm_data 0 49015 NULL
+enable_so_bm_len_xfs_buf_map_49022 bm_len xfs_buf_map 0 49022 NULL
+enable_so_rx_reset_counter_read_fndecl_49026 rx_reset_counter_read fndecl 3 49026 NULL
+enable_so_usb_dmac_prep_slave_sg_fndecl_49027 usb_dmac_prep_slave_sg fndecl 3 49027 NULL
@@ -170675,7 +169936,6 @@ index 0000000..9da833a
+enable_so_cm_size_tp_params_49065 cm_size tp_params 0 49065 NULL
+enable_so_transport_mtu_vardecl_ntb_transport_c_49067 transport_mtu vardecl_ntb_transport.c 0 49067 NULL
+enable_so_do_writepage_fndecl_49068 do_writepage fndecl 2 49068 NULL
-+enable_so_iwl_dbgfs_ucode_rx_stats_read_fndecl_49076 iwl_dbgfs_ucode_rx_stats_read fndecl 3 49076 NULL
+enable_so_ccid_hc_tx_obj_size_ccid_operations_49077 ccid_hc_tx_obj_size ccid_operations 0 49077 NULL
+enable_so_max_ctrl_pkt_payload_len_nci_core_conn_create_rsp_49079 max_ctrl_pkt_payload_len nci_core_conn_create_rsp 0 49079 NULL
+enable_so_tty_major_vardecl_hso_c_49084 tty_major vardecl_hso.c 0 49084 NULL
@@ -170700,15 +169960,18 @@ index 0000000..9da833a
+enable_so_mad_seg_size_ib_mad_recv_wc_49134 mad_seg_size ib_mad_recv_wc 0 49134 NULL
+enable_so_neo_init_hw_fndecl_49135 neo_init_hw fndecl 0 49135 NULL
+enable_so_snd_pcm_hw_param_min_fndecl_49139 snd_pcm_hw_param_min fndecl 4 49139 NULL
++enable_so_scif_rma_list_mmap_fndecl_49142 scif_rma_list_mmap fndecl 2 49142 NULL
+enable_so_batch_len_drm_i915_gem_execbuffer2_49145 batch_len drm_i915_gem_execbuffer2 0 49145 NULL
+enable_so_fll_out_wm8900_priv_49147 fll_out wm8900_priv 0 49147 NULL
+enable_so_max_dev_mdp_superblock_1_49148 max_dev mdp_superblock_1 0 49148 NULL
+enable_so_ufx_reg_clear_and_set_bits_fndecl_49150 ufx_reg_clear_and_set_bits fndecl 0 49150 NULL
+enable_so_ecryptfs_inode_newsize_ok_fndecl_49153 ecryptfs_inode_newsize_ok fndecl 2 49153 NULL
+enable_so_port_mlx4_ib_demux_pv_ctx_49165 port mlx4_ib_demux_pv_ctx 0 49165 NULL
++enable_so_size_uv_intel_rotation_info_49166 size_uv intel_rotation_info 0 49166 NULL
+enable_so_d_size_p_sizes_49167 d_size p_sizes 0 49167 NULL
+enable_so_tx_tr_cfv_info_49171 tx_tr cfv_info 0 49171 NULL
+enable_so_ipr_alloc_ucode_buffer_fndecl_49172 ipr_alloc_ucode_buffer fndecl 1 49172 NULL
++enable_so_guc_fw_size_intel_guc_fw_49177 guc_fw_size intel_guc_fw 0 49177 NULL
+enable_so_nilfs_sufile_do_cancel_free_fndecl_49183 nilfs_sufile_do_cancel_free fndecl 2 49183 NULL
+enable_so_s_last_ino_logfs_super_49185 s_last_ino logfs_super 0 49185 NULL
+enable_so_len_fb_cmap_user_49195 len fb_cmap_user 0 49195 NULL
@@ -170723,7 +169986,6 @@ index 0000000..9da833a
+enable_so_rx_xfr_hint_trig_read_fndecl_49224 rx_xfr_hint_trig_read fndecl 3 49224 NULL
+enable_so_offset_rq_map_data_49234 offset rq_map_data 0 49234 NULL nohasharray
+enable_so_bfad_iocmd_fcpim_cfg_profile_fndecl_49234 bfad_iocmd_fcpim_cfg_profile fndecl 0 49234 &enable_so_offset_rq_map_data_49234
-+enable_so_rs_sta_dbgfs_scale_table_read_fndecl_49237 rs_sta_dbgfs_scale_table_read fndecl 3 49237 NULL
+enable_so_ext_ramdisk_image_boot_params_49238 ext_ramdisk_image boot_params 0 49238 NULL
+enable_so_mos7840_write_fndecl_49240 mos7840_write fndecl 4 49240 NULL
+enable_so_persistent_ram_iomap_fndecl_49243 persistent_ram_iomap fndecl 2-1 49243 NULL
@@ -170757,7 +170019,8 @@ index 0000000..9da833a
+enable_so_cmnd_res_ep_vub300_mmc_host_49334 cmnd_res_ep vub300_mmc_host 0 49334 NULL
+enable_so_event_rx_mem_empty_read_fndecl_49336 event_rx_mem_empty_read fndecl 3 49336 NULL
+enable_so_s3fwrn5_fw_enter_update_mode_fndecl_49342 s3fwrn5_fw_enter_update_mode fndecl 3-5 49342 NULL
-+enable_so_vxlan_xmit_skb_fndecl_49345 vxlan_xmit_skb fndecl 11 49345 NULL
++enable_so___iterate_backrefs_fndecl_49345 __iterate_backrefs fndecl 2 49345 NULL nohasharray
++enable_so_vxlan_xmit_skb_fndecl_49345 vxlan_xmit_skb fndecl 11 49345 &enable_so___iterate_backrefs_fndecl_49345
+enable_so_db_handle_buf_size_vmci_ctx_notify_recv_info_49346 db_handle_buf_size vmci_ctx_notify_recv_info 0 49346 NULL
+enable_so_mute_bttv_49358 mute bttv 0 49358 NULL
+enable_so_num_msix_entries_qib_chip_specific_49373 num_msix_entries qib_chip_specific 0 49373 NULL
@@ -170771,6 +170034,7 @@ index 0000000..9da833a
+enable_so_current_font_height_sisusb_usb_data_49394 current_font_height sisusb_usb_data 0 49394 NULL nohasharray
+enable_so_usb_ftdi_elan_edset_empty_fndecl_49394 usb_ftdi_elan_edset_empty fndecl 0 49394 &enable_so_current_font_height_sisusb_usb_data_49394 nohasharray
+enable_so_send_cmd_iwl_trans_ops_49394 send_cmd iwl_trans_ops 0 49394 &enable_so_usb_ftdi_elan_edset_empty_fndecl_49394
++enable_so_btrfs_delalloc_release_space_fndecl_49397 btrfs_delalloc_release_space fndecl 2-3 49397 NULL
+enable_so_max_exp_lines_ov965x_framesize_49400 max_exp_lines ov965x_framesize 0 49400 NULL
+enable_so_tty_prepare_flip_string_fndecl_49408 tty_prepare_flip_string fndecl 3 49408 NULL
+enable_so_ss_next_nilfs_segment_summary_49410 ss_next nilfs_segment_summary 0 49410 NULL nohasharray
@@ -170796,8 +170060,7 @@ index 0000000..9da833a
+enable_so_rtl2832_regmap_write_fndecl_49456 rtl2832_regmap_write fndecl 3 49456 NULL
+enable_so_dma_push_rx_fndecl_49462 dma_push_rx fndecl 2 49462 NULL
+enable_so_minix_inode_by_name_fndecl_49464 minix_inode_by_name fndecl 0 49464 NULL
-+enable_so_NumberOfPorts_mpt2sas_facts_49465 NumberOfPorts mpt2sas_facts 0 49465 NULL nohasharray
-+enable_so_ch_count_srp_target_port_49465 ch_count srp_target_port 0 49465 &enable_so_NumberOfPorts_mpt2sas_facts_49465
++enable_so_ch_count_srp_target_port_49465 ch_count srp_target_port 0 49465 NULL
+enable_so_usb_tx_block_fndecl_49466 usb_tx_block fndecl 3 49466 NULL
+enable_so_broadsheetfb_write_fndecl_49467 broadsheetfb_write fndecl 3 49467 NULL
+enable_so_len_r6040_descriptor_49471 len r6040_descriptor 0 49471 NULL
@@ -170806,10 +170069,9 @@ index 0000000..9da833a
+enable_so_ks8995_read_fndecl_49475 ks8995_read fndecl 4 49475 NULL
+enable_so_nf_nat_icmpv6_reply_translation_fndecl_49476 nf_nat_icmpv6_reply_translation fndecl 5 49476 NULL nohasharray
+enable_so_ivtvfb_write_fndecl_49476 ivtvfb_write fndecl 3 49476 &enable_so_nf_nat_icmpv6_reply_translation_fndecl_49476
-+enable_so_make_rx_response_fndecl_49477 make_rx_response fndecl 5-4-3 49477 NULL
-+enable_so_mc_mask_amdgpu_mc_49478 mc_mask amdgpu_mc 0 49478 NULL nohasharray
-+enable_so_rpc_max_payload_fndecl_49478 rpc_max_payload fndecl 0 49478 &enable_so_mc_mask_amdgpu_mc_49478
-+enable_so_max_queue_depth_vardecl_mpt2sas_base_c_49479 max_queue_depth vardecl_mpt2sas_base.c 0 49479 NULL
++enable_so_make_rx_response_fndecl_49477 make_rx_response fndecl 5-3-4 49477 NULL
++enable_so_rpc_max_payload_fndecl_49478 rpc_max_payload fndecl 0 49478 NULL nohasharray
++enable_so_mc_mask_amdgpu_mc_49478 mc_mask amdgpu_mc 0 49478 &enable_so_rpc_max_payload_fndecl_49478
+enable_so_i2c_readn_fndecl_49490 i2c_readn fndecl 4 49490 NULL
+enable_so_xfs_file_llseek_fndecl_49492 xfs_file_llseek fndecl 2 49492 NULL
+enable_so_din_xfer_len_sg_io_v4_49498 din_xfer_len sg_io_v4 0 49498 NULL
@@ -170827,10 +170089,10 @@ index 0000000..9da833a
+enable_so_num_eps_bdc_49525 num_eps bdc 0 49525 NULL nohasharray
+enable_so_datablob_hmac_append_fndecl_49525 datablob_hmac_append fndecl 3 49525 &enable_so_num_eps_bdc_49525
+enable_so_mtt_entry_sz_mlx4_caps_49531 mtt_entry_sz mlx4_caps 0 49531 NULL
-+enable_so_num_connector_drm_atomic_state_49542 num_connector drm_atomic_state 0 49542 NULL
++enable_so_consume_bytes_snd_fw_async_midi_port_49542 consume_bytes snd_fw_async_midi_port 0 49542 NULL nohasharray
++enable_so_num_connector_drm_atomic_state_49542 num_connector drm_atomic_state 0 49542 &enable_so_consume_bytes_snd_fw_async_midi_port_49542
+enable_so_disk_offset_pnfs_block_dev_map_49546 disk_offset pnfs_block_dev_map 0 49546 NULL
+enable_so_oobavail_nand_ecclayout_49548 oobavail nand_ecclayout 0 49548 NULL
-+enable_so_lpfc_debugfs_hbqinfo_data_fndecl_49551 lpfc_debugfs_hbqinfo_data fndecl 0 49551 NULL
+enable_so_ioremap_wt_fndecl_49562 ioremap_wt fndecl 2-1 49562 NULL
+enable_so_nrs_num_pols_ptlrpc_nrs_49564 nrs_num_pols ptlrpc_nrs 0 49564 NULL
+enable_so_nilfs_mdt_delete_block_fndecl_49565 nilfs_mdt_delete_block fndecl 2 49565 NULL
@@ -170842,7 +170104,6 @@ index 0000000..9da833a
+enable_so_xfs_rtbuf_get_fndecl_49592 xfs_rtbuf_get fndecl 3 49592 NULL
+enable_so_tag_enabled_ocrdma_ae_pvid_mcqe_49596 tag_enabled ocrdma_ae_pvid_mcqe 0 49596 NULL
+enable_so_width_vim2m_q_data_49600 width vim2m_q_data 0 49600 NULL
-+enable_so_iwch_alloc_fastreg_pbl_fndecl_49610 iwch_alloc_fastreg_pbl fndecl 2 49610 NULL
+enable_so_pt_write_fndecl_49612 pt_write fndecl 3 49612 NULL
+enable_so_hsync_start_drm_display_mode_49613 hsync_start drm_display_mode 0 49613 NULL nohasharray
+enable_so_start_drm_mm_node_49613 start drm_mm_node 0 49613 &enable_so_hsync_start_drm_display_mode_49613
@@ -170856,7 +170117,6 @@ index 0000000..9da833a
+enable_so_dwc2_max_desc_num_fndecl_49623 dwc2_max_desc_num fndecl 0 49623 &enable_so_reg_read_range_fndecl_49623
+enable_so_end_async_cow_49625 end async_cow 0 49625 NULL nohasharray
+enable_so_nn_nvme_id_ctrl_49625 nn nvme_id_ctrl 0 49625 &enable_so_end_async_cow_49625
-+enable_so_ath10k_write_simulate_fw_crash_fndecl_49628 ath10k_write_simulate_fw_crash fndecl 3 49628 NULL
+enable_so_srsize_brcmf_chip_49639 srsize brcmf_chip 0 49639 NULL
+enable_so_list_size_of_flash_49643 list_size of_flash 0 49643 NULL
+enable_so_stride_mlx4_en_priv_49644 stride mlx4_en_priv 0 49644 NULL
@@ -170868,6 +170128,7 @@ index 0000000..9da833a
+enable_so_bytes_ubi_leb_change_req_49669 bytes ubi_leb_change_req 0 49669 NULL
+enable_so_smiapp_read_no_quirk_fndecl_49670 smiapp_read_no_quirk fndecl 2 49670 NULL
+enable_so_size_unit_element_struct_49673 size unit_element_struct 0 49673 NULL
++enable_so_placement_offset_eth_fast_path_rx_reg_cqe_49676 placement_offset eth_fast_path_rx_reg_cqe 0 49676 NULL
+enable_so_intel_gtt_map_memory_fndecl_49677 intel_gtt_map_memory fndecl 2 49677 NULL
+enable_so_port_priv_size_team_mode_49682 port_priv_size team_mode 0 49682 NULL
+enable_so_clk_core_get_rate_nolock_fndecl_49685 clk_core_get_rate_nolock fndecl 0 49685 NULL
@@ -170875,26 +170136,23 @@ index 0000000..9da833a
+enable_so___seq_open_private_fndecl_49688 __seq_open_private fndecl 3 49688 &enable_so_subsampling_s5p_jpeg_fmt_49688
+enable_so_report_size_iowarrior_49692 report_size iowarrior 0 49692 NULL nohasharray
+enable_so_set_extent_bit_fndecl_49692 set_extent_bit fndecl 3-2 49692 &enable_so_report_size_iowarrior_49692
-+enable_so_slider_num_ad714x_platform_data_49695 slider_num ad714x_platform_data 0 49695 NULL
+enable_so_security_inode_listxattr_fndecl_49699 security_inode_listxattr fndecl 0 49699 NULL
+enable_so_s_segshift_logfs_super_49707 s_segshift logfs_super 0 49707 NULL
+enable_so_pg_write_fndecl_49709 pg_write fndecl 3 49709 NULL
-+enable_so_ieee80211_if_read_rc_rateidx_vht_mcs_mask_5ghz_fndecl_49710 ieee80211_if_read_rc_rateidx_vht_mcs_mask_5ghz fndecl 3 49710 NULL
+enable_so_end_resource_49712 end resource 0 49712 NULL
+enable_so_fuse_readpages_fndecl_49714 fuse_readpages fndecl 4 49714 NULL
+enable_so_brd_init_one_fndecl_49718 brd_init_one fndecl 1 49718 NULL
-+enable_so_geneve_build_skb_fndecl_49723 geneve_build_skb fndecl 5 49723 NULL nohasharray
-+enable_so_xfs_iext_remove_direct_fndecl_49723 xfs_iext_remove_direct fndecl 3 49723 &enable_so_geneve_build_skb_fndecl_49723
++enable_so_xfs_iext_remove_direct_fndecl_49723 xfs_iext_remove_direct fndecl 3 49723 NULL
+enable_so_sof_len_sd_49729 sof_len sd 0 49729 NULL
+enable_so_num_uars_mthca_limits_49735 num_uars mthca_limits 0 49735 NULL
+enable_so_pyra_sysfs_read_fndecl_49736 pyra_sysfs_read fndecl 6 49736 NULL
+enable_so_wqe_size_ib_uverbs_post_recv_49738 wqe_size ib_uverbs_post_recv 0 49738 NULL
+enable_so_xfs_bmap_split_extent_fndecl_49740 xfs_bmap_split_extent fndecl 2 49740 NULL
+enable_so_kernfs_fop_read_fndecl_49745 kernfs_fop_read fndecl 3 49745 NULL
-+enable_so_ts_packet_size_saa7164_port_49752 ts_packet_size saa7164_port 0 49752 NULL
+enable_so_hpfs_add_dirent_fndecl_49754 hpfs_add_dirent fndecl 3 49754 NULL
+enable_so_provider_in_words_ib_uverbs_ex_cmd_hdr_49757 provider_in_words ib_uverbs_ex_cmd_hdr 0 49757 NULL
-+enable_so_ngroups_netlink_sock_49758 ngroups netlink_sock 0 49758 NULL
++enable_so_ngroups_netlink_sock_49758 ngroups netlink_sock 0 49758 NULL nohasharray
++enable_so_mlx5_alloc_priv_descs_fndecl_49758 mlx5_alloc_priv_descs fndecl 3-4 49758 &enable_so_ngroups_netlink_sock_49758
+enable_so_match_size_compat_ebt_entry_mwt_49763 match_size compat_ebt_entry_mwt 0 49763 NULL
+enable_so_nl80211_send_roamed_fndecl_49770 nl80211_send_roamed fndecl 5-7 49770 NULL
+enable_so_dwFrameInterval_uvc_streaming_control_49771 dwFrameInterval uvc_streaming_control 0 49771 NULL
@@ -170907,7 +170165,6 @@ index 0000000..9da833a
+enable_so_seeks_shrinker_49793 seeks shrinker 0 49793 NULL
+enable_so_nilfs_mdt_init_fndecl_49794 nilfs_mdt_init fndecl 3 49794 NULL
+enable_so_outlen_mimd_49796 outlen mimd 0 49796 NULL
-+enable_so_write_file_wow_fndecl_49799 write_file_wow fndecl 3 49799 NULL
+enable_so_substream_alloc_pages_fndecl_49800 substream_alloc_pages fndecl 3 49800 NULL
+enable_so_n_mmc_ies_whc_49802 n_mmc_ies whc 0 49802 NULL
+enable_so_ocfs2_zero_partial_clusters_fndecl_49803 ocfs2_zero_partial_clusters fndecl 2-3 49803 NULL
@@ -170936,8 +170193,8 @@ index 0000000..9da833a
+enable_so_bucket_bits_cache_set_49869 bucket_bits cache_set 0 49869 NULL
+enable_so_record_inode_for_nocow_fndecl_49872 record_inode_for_nocow fndecl 2 49872 NULL
+enable_so_waiters_read_fndecl_49877 waiters_read fndecl 3 49877 NULL
-+enable_so___i915_error_seek_fndecl_49882 __i915_error_seek fndecl 2 49882 NULL nohasharray
-+enable_so_isdn_add_channels_fndecl_49882 isdn_add_channels fndecl 3 49882 &enable_so___i915_error_seek_fndecl_49882
++enable_so_isdn_add_channels_fndecl_49882 isdn_add_channels fndecl 3 49882 NULL
++enable_so_head_len_beacon_attr_49884 head_len beacon_attr 0 49884 NULL
+enable_so_tty_audit_add_data_fndecl_49885 tty_audit_add_data fndecl 3 49885 NULL
+enable_so_path_listxattr_fndecl_49894 path_listxattr fndecl 3 49894 NULL nohasharray
+enable_so_walk_iomem_res_fndecl_49894 walk_iomem_res fndecl 4-3 49894 &enable_so_path_listxattr_fndecl_49894
@@ -170947,7 +170204,6 @@ index 0000000..9da833a
+enable_so_max_sds_rings_netxen_adapter_49896 max_sds_rings netxen_adapter 0 49896 &enable_so_offset_drm_i915_gem_pwrite_49896
+enable_so_max_desc_sz_mthca_dev_lim_49905 max_desc_sz mthca_dev_lim 0 49905 NULL
+enable_so_block_descriptor_length_scsi_mode_data_49918 block_descriptor_length scsi_mode_data 0 49918 NULL
-+enable_so_current_size_ipg_jumbo_49923 current_size ipg_jumbo 0 49923 NULL
+enable_so_SyS_select_fndecl_49930 SyS_select fndecl 1 49930 NULL
+enable_so_skd_max_queue_depth_vardecl_skd_main_c_49938 skd_max_queue_depth vardecl_skd_main.c 0 49938 NULL
+enable_so_cx18_prepare_buffer_fndecl_49942 cx18_prepare_buffer fndecl 6-5 49942 NULL
@@ -170976,18 +170232,20 @@ index 0000000..9da833a
+enable_so_buffer_target_count_pvr2_stream_49996 buffer_target_count pvr2_stream 0 49996 NULL
+enable_so_leafblk_xfs_da_geometry_49997 leafblk xfs_da_geometry 0 49997 NULL
+enable_so_ff_effects_max_uinput_device_49998 ff_effects_max uinput_device 0 49998 NULL
-+enable_so_make_checksum_fndecl_49999 make_checksum fndecl 3-5 49999 NULL nohasharray
-+enable_so_ixgbe_dbg_reg_ops_read_fndecl_49999 ixgbe_dbg_reg_ops_read fndecl 3 49999 &enable_so_make_checksum_fndecl_49999
++enable_so_make_checksum_fndecl_49999 make_checksum fndecl 3-5 49999 NULL
+enable_so_block_isofs_iget5_callback_data_50000 block isofs_iget5_callback_data 0 50000 NULL
+enable_so_vbi_v_start_0_saa7134_tvnorm_50002 vbi_v_start_0 saa7134_tvnorm 0 50002 NULL
-+enable_so_tcm_qla2xxx_handle_cmd_fndecl_50016 tcm_qla2xxx_handle_cmd fndecl 4 50016 NULL
++enable_so_tcm_qla2xxx_handle_cmd_fndecl_50016 tcm_qla2xxx_handle_cmd fndecl 4 50016 NULL nohasharray
++enable_so_nci_core_cmd_fndecl_50016 nci_core_cmd fndecl 3 50016 &enable_so_tcm_qla2xxx_handle_cmd_fndecl_50016
+enable_so_bi_size_bvec_iter_50026 bi_size bvec_iter 0 50026 NULL nohasharray
+enable_so_bl_alloc_init_bio_fndecl_50026 bl_alloc_init_bio fndecl 3-1 50026 &enable_so_bi_size_bvec_iter_50026
+enable_so_snd_oss_kernel_minor_fndecl_50028 snd_oss_kernel_minor fndecl 0 50028 NULL
+enable_so_length_fotg210_qtd_50029 length fotg210_qtd 0 50029 NULL
+enable_so_BlockMultiplierBits_INFTLMediaHeader_50032 BlockMultiplierBits INFTLMediaHeader 0 50032 NULL
+enable_so_depth_zoran_format_50033 depth zoran_format 0 50033 NULL
-+enable_so_c_plan_ahead_p_rs_param_95_50035 c_plan_ahead p_rs_param_95 0 50035 NULL
++enable_so_f_dac_hackrf_dev_50035 f_dac hackrf_dev 0 50035 NULL nohasharray
++enable_so_c_plan_ahead_p_rs_param_95_50035 c_plan_ahead p_rs_param_95 0 50035 &enable_so_f_dac_hackrf_dev_50035
++enable_so_qed_rd_fndecl_50037 qed_rd fndecl 0 50037 NULL
+enable_so_ima_write_policy_fndecl_50039 ima_write_policy fndecl 3 50039 NULL
+enable_so_esp_alloc_tmp_fndecl_50045 esp_alloc_tmp fndecl 2-3 50045 NULL
+enable_so_pwc_vidioc_fill_fmt_fndecl_50048 pwc_vidioc_fill_fmt fndecl 2-3 50048 NULL
@@ -170997,7 +170255,6 @@ index 0000000..9da833a
+enable_so_pf_end_request_fndecl_50064 pf_end_request fndecl 1 50064 NULL
+enable_so_lba_to_map_index_fndecl_50071 lba_to_map_index fndecl 0-1 50071 NULL
+enable_so_rtsx_pci_read_ppbuf_fndecl_50078 rtsx_pci_read_ppbuf fndecl 0 50078 NULL
-+enable_so_n_tags_ata_host_50082 n_tags ata_host 0 50082 NULL
+enable_so_memblock_reserve_region_fndecl_50083 memblock_reserve_region fndecl 1-2 50083 NULL
+enable_so_sem_nsems_sem_array_50085 sem_nsems sem_array 0 50085 NULL nohasharray
+enable_so_sch56xx_find_fndecl_50085 sch56xx_find fndecl 0 50085 &enable_so_sem_nsems_sem_array_50085
@@ -171011,7 +170268,6 @@ index 0000000..9da833a
+enable_so_max_burst_whc_qset_50130 max_burst whc_qset 0 50130 NULL
+enable_so_i_files_ceph_inode_info_50132 i_files ceph_inode_info 0 50132 NULL
+enable_so_tool_peer_db_read_fndecl_50135 tool_peer_db_read fndecl 3 50135 NULL
-+enable_so_d_size_lowpan_frag_info_50136 d_size lowpan_frag_info 0 50136 NULL
+enable_so_num_entries_ip6t_replace_50138 num_entries ip6t_replace 0 50138 NULL
+enable_so_pid_nr_ns_fndecl_50141 pid_nr_ns fndecl 0 50141 NULL
+enable_so_usb_tx_block_fndecl_50144 usb_tx_block fndecl 3 50144 NULL
@@ -171030,7 +170286,6 @@ index 0000000..9da833a
+enable_so_xfs_qm_scall_getquota_fndecl_50173 xfs_qm_scall_getquota fndecl 2 50173 NULL
+enable_so_mclk_rate_wm9081_priv_50176 mclk_rate wm9081_priv 0 50176 NULL
+enable_so_hdr_len_atm_flow_data_50178 hdr_len atm_flow_data 0 50178 NULL
-+enable_so_ubi_more_update_data_fndecl_50182 ubi_more_update_data fndecl 4 50182 NULL
+enable_so_nested_cr3_nested_state_50183 nested_cr3 nested_state 0 50183 NULL
+enable_so_gfs2_create_inode_fndecl_50184 gfs2_create_inode fndecl 7 50184 NULL
+enable_so_echo_client_kbrw_fndecl_50193 echo_client_kbrw fndecl 6 50193 NULL
@@ -171046,8 +170301,8 @@ index 0000000..9da833a
+enable_so_vd_ino_nilfs_vdesc_50241 vd_ino nilfs_vdesc 0 50241 NULL nohasharray
+enable_so_pwr_cont_miss_bcns_spread_read_fndecl_50241 pwr_cont_miss_bcns_spread_read fndecl 3 50241 &enable_so_vd_ino_nilfs_vdesc_50241 nohasharray
+enable_so_r128_compat_ioctl_fndecl_50241 r128_compat_ioctl fndecl 2 50241 &enable_so_pwr_cont_miss_bcns_spread_read_fndecl_50241
-+enable_so_i915_error_state_read_fndecl_50245 i915_error_state_read fndecl 3 50245 NULL
-+enable_so_fnic_trace_max_pages_vardecl_50246 fnic_trace_max_pages vardecl 0 50246 NULL
++enable_so_chip_base_addr_fsl_qspi_50246 chip_base_addr fsl_qspi 0 50246 NULL nohasharray
++enable_so_fnic_trace_max_pages_vardecl_50246 fnic_trace_max_pages vardecl 0 50246 &enable_so_chip_base_addr_fsl_qspi_50246
+enable_so_h_tot_disp_crtc_50258 h_tot_disp crtc 0 50258 NULL
+enable_so_posix_acl_to_xattr_fndecl_50262 posix_acl_to_xattr fndecl 0 50262 NULL nohasharray
+enable_so_len_mrp_attr_50262 len mrp_attr 0 50262 &enable_so_posix_acl_to_xattr_fndecl_50262
@@ -171059,33 +170314,35 @@ index 0000000..9da833a
+enable_so_rx_filter_protection_filter_read_fndecl_50273 rx_filter_protection_filter_read fndecl 3 50273 &enable_so_curr_resync_completed_mddev_50273
+enable_so_count_defcmd_set_50274 count defcmd_set 0 50274 NULL
+enable_so_phys_amd76xrom_window_50277 phys amd76xrom_window 0 50277 NULL
++enable_so___rocker_port_mem_alloc_fndecl_50278 __rocker_port_mem_alloc fndecl 4 50278 NULL
+enable_so_ath6kl_wmi_set_appie_cmd_fndecl_50289 ath6kl_wmi_set_appie_cmd fndecl 5-2 50289 NULL
+enable_so_mwifiex_append_rsn_ie_wpa_wpa2_fndecl_50296 mwifiex_append_rsn_ie_wpa_wpa2 fndecl 0 50296 NULL nohasharray
+enable_so_wptr_old_amdgpu_ring_50296 wptr_old amdgpu_ring 0 50296 &enable_so_mwifiex_append_rsn_ie_wpa_wpa2_fndecl_50296
-+enable_so_insert_reserved_file_extent_fndecl_50316 insert_reserved_file_extent fndecl 6-3 50316 NULL
++enable_so_insert_reserved_file_extent_fndecl_50316 insert_reserved_file_extent fndecl 6-3-7 50316 NULL
+enable_so___cfg80211_connect_result_fndecl_50317 __cfg80211_connect_result fndecl 4-6 50317 NULL nohasharray
+enable_so_fs_cgfsize_efs_super_50317 fs_cgfsize efs_super 0 50317 &enable_so___cfg80211_connect_result_fndecl_50317
-+enable_so__iwl_dbgfs_pm_params_write_fndecl_50318 _iwl_dbgfs_pm_params_write fndecl 3 50318 NULL
++enable_so_scif_rma_copy_fndecl_50320 scif_rma_copy fndecl 2-5-4-3 50320 NULL
+enable_so_rbytes_ceph_mds_reply_inode_50321 rbytes ceph_mds_reply_inode 0 50321 NULL
+enable_so_VST_kyrofb_info_50324 VST kyrofb_info 0 50324 NULL
+enable_so_level_guest_walker64_50325 level guest_walker64 0 50325 NULL
+enable_so_ucNumEntries__ATOM_PPLIB_CAC_Leakage_Table_50326 ucNumEntries _ATOM_PPLIB_CAC_Leakage_Table 0 50326 NULL
++enable_so_pos_r5l_recovery_ctx_50328 pos r5l_recovery_ctx 0 50328 NULL
+enable_so___vmalloc_node_fndecl_50335 __vmalloc_node fndecl 1-2 50335 NULL nohasharray
+enable_so_size_nand_ecc_ctrl_50335 size nand_ecc_ctrl 0 50335 &enable_so___vmalloc_node_fndecl_50335
+enable_so_aim_read_fndecl_50336 aim_read fndecl 3 50336 NULL
+enable_so___copy_from_user_nocache_fndecl_50340 __copy_from_user_nocache fndecl 0-3 50340 NULL
+enable_so_ide_complete_rq_fndecl_50345 ide_complete_rq fndecl 3-2 50345 NULL
++enable_so_vb2_core_dqbuf_fndecl_50346 vb2_core_dqbuf fndecl 0 50346 NULL
+enable_so_nextindex_xtheader_50354 nextindex xtheader 0 50354 NULL
+enable_so_next_minor_vardecl_md_c_50357 next_minor vardecl_md.c 0 50357 NULL
+enable_so_wimax_msg_alloc_fndecl_50364 wimax_msg_alloc fndecl 4 50364 NULL
-+enable_so_regmap_name_read_file_fndecl_50368 regmap_name_read_file fndecl 3 50368 NULL
+enable_so_fnic_trace_debugfs_read_fndecl_50375 fnic_trace_debugfs_read fndecl 3 50375 NULL
+enable_so___send_to_port_fndecl_50377 __send_to_port fndecl 3 50377 NULL
+enable_so_table_size_amdgpu_gart_50380 table_size amdgpu_gart 0 50380 NULL
++enable_so_num_tc_qede_dev_50384 num_tc qede_dev 0 50384 NULL
+enable_so_NumberOfReferrals_smb_com_transaction_get_dfs_refer_rsp_50387 NumberOfReferrals smb_com_transaction_get_dfs_refer_rsp 0 50387 NULL
+enable_so_len_udphdr_50395 len udphdr 0 50395 NULL
+enable_so_max_write_len_cftype_50399 max_write_len cftype 0 50399 NULL
-+enable_so_user_power_read_fndecl_50405 user_power_read fndecl 3 50405 NULL
+enable_so_init_urbs_fndecl_50408 init_urbs fndecl 2-4-5 50408 NULL
+enable_so_sgx_offset_psb_ops_50417 sgx_offset psb_ops 0 50417 NULL
+enable_so_size_uvc_clock_50418 size uvc_clock 0 50418 NULL
@@ -171097,7 +170354,6 @@ index 0000000..9da833a
+enable_so_nilfs_gccache_submit_read_data_fndecl_50434 nilfs_gccache_submit_read_data fndecl 3-4 50434 NULL
+enable_so_pkt_size_asender_cmd_50437 pkt_size asender_cmd 0 50437 NULL
+enable_so_sbp_count_se_tpg_luns_fndecl_50444 sbp_count_se_tpg_luns fndecl 0 50444 NULL
-+enable_so_il_dbgfs_sram_write_fndecl_50445 il_dbgfs_sram_write fndecl 3 50445 NULL
+enable_so_nfsd4_encode_fattr_to_buf_fndecl_50449 nfsd4_encode_fattr_to_buf fndecl 2 50449 NULL nohasharray
+enable_so_nr_phys_segments_request_50449 nr_phys_segments request 0 50449 &enable_so_nfsd4_encode_fattr_to_buf_fndecl_50449
+enable_so_nfsd_drc_mem_used_vardecl_50456 nfsd_drc_mem_used vardecl 0 50456 NULL
@@ -171112,7 +170368,6 @@ index 0000000..9da833a
+enable_so_snd_sbmixer_add_ctl_fndecl_50491 snd_sbmixer_add_ctl fndecl 5 50491 NULL
+enable_so_max_pages_nilfs_write_info_50494 max_pages nilfs_write_info 0 50494 NULL
+enable_so_udf_new_block_fndecl_50500 udf_new_block fndecl 0 50500 NULL
-+enable_so_lpfc_idiag_extacc_write_fndecl_50501 lpfc_idiag_extacc_write fndecl 3 50501 NULL
+enable_so_bio_clone_range_fndecl_50502 bio_clone_range fndecl 2-3 50502 NULL
+enable_so_mwifiex_read_data_sync_fndecl_50504 mwifiex_read_data_sync fndecl 3 50504 NULL
+enable_so_readahead_tree_block_fndecl_50505 readahead_tree_block fndecl 2 50505 NULL
@@ -171161,35 +170416,35 @@ index 0000000..9da833a
+enable_so_tomoyo_truncate_fndecl_50642 tomoyo_truncate fndecl 0 50642 &enable_so_ircomm_tty_write_fndecl_50642
+enable_so_num_regs_soc_bytes_50648 num_regs soc_bytes 0 50648 NULL
+enable_so_usb_hcd_giveback_urb_fndecl_50649 usb_hcd_giveback_urb fndecl 3 50649 NULL
++enable_so_pvid_net_bridge_vlan_group_50651 pvid net_bridge_vlan_group 0 50651 NULL
+enable_so_xor_sources_dmatest_params_50653 xor_sources dmatest_params 0 50653 NULL
+enable_so_recalc_rate_clk_ops_50655 recalc_rate clk_ops 0 50655 NULL
-+enable_so_io_size_tulip_chip_table_50656 io_size tulip_chip_table 0 50656 NULL nohasharray
-+enable_so_create_bounce_buffer_fndecl_50656 create_bounce_buffer fndecl 3 50656 &enable_so_io_size_tulip_chip_table_50656
++enable_so_io_size_tulip_chip_table_50656 io_size tulip_chip_table 0 50656 NULL
+enable_so_proc_coredump_filter_read_fndecl_50658 proc_coredump_filter_read fndecl 3 50658 NULL
-+enable_so_enc_pools_release_free_pages_fndecl_50669 enc_pools_release_free_pages fndecl 1 50669 NULL
++enable_so_da9150_i2c_write_device_fndecl_50670 da9150_i2c_write_device fndecl 3 50670 NULL
+enable_so_i915_gem_alloc_context_obj_fndecl_50671 i915_gem_alloc_context_obj fndecl 2 50671 NULL
+enable_so_nclips_bttv_overlay_50673 nclips bttv_overlay 0 50673 NULL
+enable_so_dig_in_ca0132_spec_50677 dig_in ca0132_spec 0 50677 NULL
-+enable_so_pci_iomap_wc_fndecl_50679 pci_iomap_wc fndecl 3 50679 NULL nohasharray
-+enable_so___kernfs_create_file_fndecl_50679 __kernfs_create_file fndecl 4 50679 &enable_so_pci_iomap_wc_fndecl_50679 nohasharray
-+enable_so_size_snd_util_memblk_50679 size snd_util_memblk 0 50679 &enable_so___kernfs_create_file_fndecl_50679
++enable_so___kernfs_create_file_fndecl_50679 __kernfs_create_file fndecl 4 50679 NULL nohasharray
++enable_so_pci_iomap_wc_fndecl_50679 pci_iomap_wc fndecl 3 50679 &enable_so___kernfs_create_file_fndecl_50679 nohasharray
++enable_so_size_snd_util_memblk_50679 size snd_util_memblk 0 50679 &enable_so_pci_iomap_wc_fndecl_50679
+enable_so_count_dm_io_region_50683 count dm_io_region 0 50683 NULL
+enable_so_sr_offset_nfs42_seek_res_50684 sr_offset nfs42_seek_res 0 50684 NULL nohasharray
+enable_so_alloc_ring_fndecl_50684 alloc_ring fndecl 4-2 50684 &enable_so_sr_offset_nfs42_seek_res_50684
+enable_so_generic_permission_fndecl_50685 generic_permission fndecl 0 50685 NULL
-+enable_so_hv_mem_hot_add_fndecl_50687 hv_mem_hot_add fndecl 1 50687 NULL nohasharray
-+enable_so_rxkad_secure_packet_encrypt_fndecl_50687 rxkad_secure_packet_encrypt fndecl 3 50687 &enable_so_hv_mem_hot_add_fndecl_50687
-+enable_so_dm_bm_read_try_lock_fndecl_50688 dm_bm_read_try_lock fndecl 2 50688 NULL
-+enable_so___find_rev_next_bit_fndecl_50712 __find_rev_next_bit fndecl 0-2-3 50712 NULL
++enable_so_rxkad_secure_packet_encrypt_fndecl_50687 rxkad_secure_packet_encrypt fndecl 3 50687 NULL nohasharray
++enable_so_hv_mem_hot_add_fndecl_50687 hv_mem_hot_add fndecl 1 50687 &enable_so_rxkad_secure_packet_encrypt_fndecl_50687
++enable_so_dm_bm_read_try_lock_fndecl_50688 dm_bm_read_try_lock fndecl 2-0 50688 NULL
++enable_so___find_rev_next_bit_fndecl_50712 __find_rev_next_bit fndecl 0-3-2 50712 NULL
+enable_so_back_xfs_da3_icnode_hdr_50715 back xfs_da3_icnode_hdr 0 50715 NULL
+enable_so_sc18is602_wait_ready_fndecl_50717 sc18is602_wait_ready fndecl 0 50717 NULL
+enable_so_get_device_info_fndecl_50718 get_device_info fndecl 0 50718 NULL
+enable_so_ibnl_put_msg_fndecl_50721 ibnl_put_msg fndecl 4 50721 NULL nohasharray
+enable_so_num_lbufq_entries_ql3_adapter_50721 num_lbufq_entries ql3_adapter 0 50721 &enable_so_ibnl_put_msg_fndecl_50721
+enable_so_mpdu_header_off_wcn36xx_pdu_50723 mpdu_header_off wcn36xx_pdu 0 50723 NULL
++enable_so_print_hex_dump_bytes_fndecl_50726 print_hex_dump_bytes fndecl 4 50726 NULL
+enable_so_i915_gem_alloc_object_fndecl_50728 i915_gem_alloc_object fndecl 2 50728 NULL
-+enable_so_srp_change_queue_depth_fndecl_50733 srp_change_queue_depth fndecl 2 50733 NULL nohasharray
-+enable_so_max_table_count_acpi_table_list_50733 max_table_count acpi_table_list 0 50733 &enable_so_srp_change_queue_depth_fndecl_50733
++enable_so_max_table_count_acpi_table_list_50733 max_table_count acpi_table_list 0 50733 NULL
+enable_so_agg_wsize_vardecl_50735 agg_wsize vardecl 0 50735 NULL nohasharray
+enable_so_max_mr_size_ib_device_attr_50735 max_mr_size ib_device_attr 0 50735 &enable_so_agg_wsize_vardecl_50735
+enable_so_data_size_usbtouch_usb_50738 data_size usbtouch_usb 0 50738 NULL
@@ -171239,6 +170494,7 @@ index 0000000..9da833a
+enable_so_force_bredr_smp_read_fndecl_50855 force_bredr_smp_read fndecl 3 50855 NULL
+enable_so_dat_offset_brcmf_sdio_hdrinfo_50859 dat_offset brcmf_sdio_hdrinfo 0 50859 NULL
+enable_so_alloc_disk_fndecl_50861 alloc_disk fndecl 1 50861 NULL
++enable_so_rrpc_l2p_update_fndecl_50868 rrpc_l2p_update fndecl 1 50868 NULL
+enable_so_alg_key_len_xfrm_algo_auth_50871 alg_key_len xfrm_algo_auth 0 50871 NULL
+enable_so_mtu_adj_ipvl_dev_50874 mtu_adj ipvl_dev 0 50874 NULL
+enable_so_mmc_select_hs400_fndecl_50875 mmc_select_hs400 fndecl 0 50875 NULL
@@ -171258,8 +170514,7 @@ index 0000000..9da833a
+enable_so_first_minor_gendisk_50925 first_minor gendisk 0 50925 &enable_so_num_chunks_drm_radeon_cs_50925
+enable_so___spi_async_fndecl_50927 __spi_async fndecl 0 50927 NULL
+enable_so_j_start_reiserfs_journal_50930 j_start reiserfs_journal 0 50930 NULL
-+enable_so_ssidLen_BSSListRid_50931 ssidLen BSSListRid 0 50931 NULL nohasharray
-+enable_so_ReplyFrameSize_mpt2sas_facts_50931 ReplyFrameSize mpt2sas_facts 0 50931 &enable_so_ssidLen_BSSListRid_50931
++enable_so_ssidLen_BSSListRid_50931 ssidLen BSSListRid 0 50931 NULL
+enable_so_efs_map_block_fndecl_50932 efs_map_block fndecl 0-2 50932 NULL
+enable_so_read_file_modal_eeprom_fndecl_50934 read_file_modal_eeprom fndecl 3 50934 NULL
+enable_so_sge_pktshift_cxgb4_lld_info_50935 sge_pktshift cxgb4_lld_info 0 50935 NULL
@@ -171267,11 +170522,9 @@ index 0000000..9da833a
+enable_so_gen_pool_add_virt_fndecl_50938 gen_pool_add_virt fndecl 4 50938 NULL
+enable_so_wil_rx_init_fndecl_50939 wil_rx_init fndecl 2 50939 NULL
+enable_so_ubi_start_update_fndecl_50948 ubi_start_update fndecl 3 50948 NULL
-+enable_so_kvm_hv_set_msr_fndecl_50949 kvm_hv_set_msr fndecl 3 50949 NULL
+enable_so_sync_key_len_pvr2_ioread_50952 sync_key_len pvr2_ioread 0 50952 NULL
-+enable_so_iser_prepare_write_cmd_fndecl_50953 iser_prepare_write_cmd fndecl 2 50953 NULL
-+enable_so_reg_list_size_radeon_rlc_50955 reg_list_size radeon_rlc 0 50955 NULL nohasharray
-+enable_so___vb2_get_done_vb_fndecl_50955 __vb2_get_done_vb fndecl 0 50955 &enable_so_reg_list_size_radeon_rlc_50955
++enable_so_iser_prepare_write_cmd_fndecl_50953 iser_prepare_write_cmd fndecl 2-3 50953 NULL
++enable_so_reg_list_size_radeon_rlc_50955 reg_list_size radeon_rlc 0 50955 NULL
+enable_so_alloc_agpphysmem_i8xx_fndecl_50960 alloc_agpphysmem_i8xx fndecl 1 50960 NULL
+enable_so_nsegments_dsp_module_desc_50965 nsegments dsp_module_desc 0 50965 NULL
+enable_so_gamma_sd_gl860_50970 gamma sd_gl860 0 50970 NULL
@@ -171283,25 +170536,24 @@ index 0000000..9da833a
+enable_so_usif_ioctl_fndecl_50986 usif_ioctl fndecl 3 50986 NULL
+enable_so_first_burst_len_iscsi_cmd_50987 first_burst_len iscsi_cmd 0 50987 NULL
+enable_so_do_get_mempolicy_fndecl_50990 do_get_mempolicy fndecl 3 50990 NULL
-+enable_so_cb_break_tail_afs_server_51003 cb_break_tail afs_server 0 51003 NULL
++enable_so_pa_mic_mw_51003 pa mic_mw 0 51003 NULL nohasharray
++enable_so_cb_break_tail_afs_server_51003 cb_break_tail afs_server 0 51003 &enable_so_pa_mic_mw_51003
+enable_so_resize_size_resize_parms_51005 resize_size resize_parms 0 51005 NULL
+enable_so_room_ceph_pagelist_51016 room ceph_pagelist 0 51016 NULL
+enable_so_sg_count_realtek_pci_sdmmc_51022 sg_count realtek_pci_sdmmc 0 51022 NULL
+enable_so_num_of_queues_il_cfg_51023 num_of_queues il_cfg 0 51023 NULL
+enable_so_ib_uverbs_create_srq_fndecl_51025 ib_uverbs_create_srq fndecl 4 51025 NULL
+enable_so_img_sram_size_fw_hdr_51027 img_sram_size fw_hdr 0 51027 NULL
-+enable_so_cpu_count_MPT2SAS_ADAPTER_51044 cpu_count MPT2SAS_ADAPTER 0 51044 NULL
+enable_so_int_proc_write_fndecl_51045 int_proc_write fndecl 3 51045 NULL
+enable_so_setattr_inode_operations_51054 setattr inode_operations 0 51054 NULL
+enable_so_vfs_truncate_fndecl_51056 vfs_truncate fndecl 2 51056 NULL nohasharray
+enable_so_cl_req_alloc_fndecl_51056 cl_req_alloc fndecl 4 51056 &enable_so_vfs_truncate_fndecl_51056
-+enable_so_romfs_dev_strnlen_fndecl_51058 romfs_dev_strnlen fndecl 2-3-0 51058 NULL nohasharray
-+enable_so_xfs_trans_log_efi_extent_fndecl_51058 xfs_trans_log_efi_extent fndecl 3-4 51058 &enable_so_romfs_dev_strnlen_fndecl_51058
++enable_so_xfs_trans_log_efi_extent_fndecl_51058 xfs_trans_log_efi_extent fndecl 3-4 51058 NULL nohasharray
++enable_so_romfs_dev_strnlen_fndecl_51058 romfs_dev_strnlen fndecl 2-3-0 51058 &enable_so_xfs_trans_log_efi_extent_fndecl_51058
+enable_so_index_vardecl_atiixp_modem_c_51061 index vardecl_atiixp_modem.c 0 51061 NULL
+enable_so_crtc_vtotal_drm_display_mode_51070 crtc_vtotal drm_display_mode 0 51070 NULL
+enable_so_fbmem_len_viafb_dev_51071 fbmem_len viafb_dev 0 51071 NULL
-+enable_so_ieee80211_if_read_fwded_mcast_fndecl_51072 ieee80211_if_read_fwded_mcast fndecl 3 51072 NULL nohasharray
-+enable_so_datablob_format_fndecl_51072 datablob_format fndecl 2 51072 &enable_so_ieee80211_if_read_fwded_mcast_fndecl_51072
++enable_so_datablob_format_fndecl_51072 datablob_format fndecl 2 51072 NULL
+enable_so_size_p9_wstat_51083 size p9_wstat 0 51083 NULL
+enable_so_td_end_whc_qset_51089 td_end whc_qset 0 51089 NULL nohasharray
+enable_so_pp_write_fndecl_51089 pp_write fndecl 3 51089 &enable_so_td_end_whc_qset_51089
@@ -171333,10 +170585,11 @@ index 0000000..9da833a
+enable_so_sdio_readb_fndecl_51153 sdio_readb fndecl 0 51153 NULL
+enable_so_nfs_idmap_get_key_fndecl_51155 nfs_idmap_get_key fndecl 2 51155 NULL
+enable_so_n_krcvqs_vardecl_51157 n_krcvqs vardecl 0 51157 NULL
++enable_so_nvme_major_vardecl_pci_c_51159 nvme_major vardecl_pci.c 0 51159 NULL
+enable_so_num_backlights_lm3533_platform_data_51165 num_backlights lm3533_platform_data 0 51165 NULL
+enable_so_bytes_per_pixel_osd_info_51169 bytes_per_pixel osd_info 0 51169 NULL nohasharray
-+enable_so_kvm_read_guest_cached_fndecl_51169 kvm_read_guest_cached fndecl 4 51169 &enable_so_bytes_per_pixel_osd_info_51169 nohasharray
-+enable_so_max_sge_rd_ib_device_attr_51169 max_sge_rd ib_device_attr 0 51169 &enable_so_kvm_read_guest_cached_fndecl_51169
++enable_so_max_sge_rd_ib_device_attr_51169 max_sge_rd ib_device_attr 0 51169 &enable_so_bytes_per_pixel_osd_info_51169 nohasharray
++enable_so_kvm_read_guest_cached_fndecl_51169 kvm_read_guest_cached fndecl 4 51169 &enable_so_max_sge_rd_ib_device_attr_51169
+enable_so_raid10_takeover_raid0_fndecl_51171 raid10_takeover_raid0 fndecl 3-2 51171 NULL
+enable_so_v4l_stk_read_fndecl_51179 v4l_stk_read fndecl 3 51179 NULL
+enable_so_splice_write_null_fndecl_51181 splice_write_null fndecl 4 51181 NULL
@@ -171354,7 +170607,6 @@ index 0000000..9da833a
+enable_so_mt9v032_calc_ratio_fndecl_51219 mt9v032_calc_ratio fndecl 0 51219 NULL
+enable_so_vsi_oltext_vxfs_sb_info_51222 vsi_oltext vxfs_sb_info 0 51222 NULL
+enable_so_mem_cgroup_count_precharge_pte_range_fndecl_51229 mem_cgroup_count_precharge_pte_range fndecl 2 51229 NULL
-+enable_so_rt2x00debug_write_rf_fndecl_51232 rt2x00debug_write_rf fndecl 3 51232 NULL
+enable_so_stb0899_read_regs_fndecl_51234 stb0899_read_regs fndecl 4 51234 NULL nohasharray
+enable_so_pte_entry_mm_walk_51234 pte_entry mm_walk 0 51234 &enable_so_stb0899_read_regs_fndecl_51234
+enable_so_proc_set_size_fndecl_51237 proc_set_size fndecl 2 51237 NULL
@@ -171376,8 +170628,7 @@ index 0000000..9da833a
+enable_so_xfs_qm_dqrepair_fndecl_51301 xfs_qm_dqrepair fndecl 4 51301 NULL
+enable_so_vmci_qp_broker_set_page_store_fndecl_51303 vmci_qp_broker_set_page_store fndecl 2-3 51303 NULL
+enable_so_y2_virtio_gpu_framebuffer_51309 y2 virtio_gpu_framebuffer 0 51309 NULL
-+enable_so_ieee80211_if_read_auto_open_plinks_fndecl_51311 ieee80211_if_read_auto_open_plinks fndecl 3 51311 NULL nohasharray
-+enable_so_mthca_alloc_icm_table_fndecl_51311 mthca_alloc_icm_table fndecl 3-4 51311 &enable_so_ieee80211_if_read_auto_open_plinks_fndecl_51311
++enable_so_mthca_alloc_icm_table_fndecl_51311 mthca_alloc_icm_table fndecl 3-4 51311 NULL
+enable_so__ipw_read_reg32_fndecl_51318 _ipw_read_reg32 fndecl 0 51318 NULL
+enable_so_drv_sds_rings_qlcnic_adapter_51319 drv_sds_rings qlcnic_adapter 0 51319 NULL
+enable_so_size_bts_phys_51332 size bts_phys 0 51332 NULL
@@ -171410,10 +170661,13 @@ index 0000000..9da833a
+enable_so_size_hbucket_51397 size hbucket 0 51397 NULL
+enable_so_rss_size_i40e_pf_51407 rss_size i40e_pf 0 51407 NULL
+enable_so_ext4_ext_next_allocated_block_fndecl_51410 ext4_ext_next_allocated_block fndecl 0 51410 NULL
++enable_so_bcm63xx_txrx_bufs_fndecl_51413 bcm63xx_txrx_bufs fndecl 0 51413 NULL
+enable_so_max_header_size_irnet_socket_51423 max_header_size irnet_socket 0 51423 NULL
+enable_so_base_memblock_region_51424 base memblock_region 0 51424 NULL
+enable_so_num_rx_queues_ixgbevf_adapter_51428 num_rx_queues ixgbevf_adapter 0 51428 NULL
-+enable_so_nethctrl_vf_resources_51438 nethctrl vf_resources 0 51438 NULL
++enable_so_hns_nic_reuse_page_fndecl_51437 hns_nic_reuse_page fndecl 2 51437 NULL
++enable_so_send_extent_data_fndecl_51438 send_extent_data fndecl 2 51438 NULL nohasharray
++enable_so_nethctrl_vf_resources_51438 nethctrl vf_resources 0 51438 &enable_so_send_extent_data_fndecl_51438
+enable_so_max_cmds_ipr_ioa_cfg_51439 max_cmds ipr_ioa_cfg 0 51439 NULL
+enable_so_xfs_free_file_space_fndecl_51452 xfs_free_file_space fndecl 2-3 51452 NULL
+enable_so_pcpu_fc_free_fndecl_51456 pcpu_fc_free fndecl 2 51456 NULL
@@ -171431,7 +170685,6 @@ index 0000000..9da833a
+enable_so_dm_kill_unmapped_request_fndecl_51490 dm_kill_unmapped_request fndecl 2 51490 NULL
+enable_so_end_soundfont_sample_info_51497 end soundfont_sample_info 0 51497 NULL
+enable_so_height_drm_radeon_tex_image_51500 height drm_radeon_tex_image 0 51500 NULL
-+enable_so_fw_handle_comment_fndecl_51503 fw_handle_comment fndecl 3 51503 NULL
+enable_so_inftl_readblock_fndecl_51508 inftl_readblock fndecl 2 51508 NULL
+enable_so_xfer_len_scb_platform_data_51509 xfer_len scb_platform_data 0 51509 NULL
+enable_so_count_atl1_tpd_ring_51510 count atl1_tpd_ring 0 51510 NULL
@@ -171464,9 +170717,9 @@ index 0000000..9da833a
+enable_so_rx_buf_missing_hso_net_51595 rx_buf_missing hso_net 0 51595 NULL
+enable_so_klsi_105_prepare_write_buffer_fndecl_51599 klsi_105_prepare_write_buffer fndecl 3 51599 NULL nohasharray
+enable_so_af9013_wr_regs_i2c_fndecl_51599 af9013_wr_regs_i2c fndecl 5 51599 &enable_so_klsi_105_prepare_write_buffer_fndecl_51599 nohasharray
-+enable_so_ep_count_bytes_remain_fndecl_51599 ep_count_bytes_remain fndecl 0 51599 &enable_so_af9013_wr_regs_i2c_fndecl_51599 nohasharray
-+enable_so_il_dbgfs_chain_noise_read_fndecl_51599 il_dbgfs_chain_noise_read fndecl 3 51599 &enable_so_ep_count_bytes_remain_fndecl_51599
++enable_so_ep_count_bytes_remain_fndecl_51599 ep_count_bytes_remain fndecl 0 51599 &enable_so_af9013_wr_regs_i2c_fndecl_51599
+enable_so_receive_mergeable_fndecl_51601 receive_mergeable fndecl 5-4 51601 NULL
++enable_so_va_for_temp_scif_window_51603 va_for_temp scif_window 0 51603 NULL
+enable_so_data_transfer_length_vmscsi_request_51616 data_transfer_length vmscsi_request 0 51616 NULL nohasharray
+enable_so_cur_vfio_pci_fill_info_51616 cur vfio_pci_fill_info 0 51616 &enable_so_data_transfer_length_vmscsi_request_51616
+enable_so_alloc_ltalkdev_fndecl_51620 alloc_ltalkdev fndecl 1 51620 NULL
@@ -171475,17 +170728,17 @@ index 0000000..9da833a
+enable_so_cifs_send_async_read_fndecl_51630 cifs_send_async_read fndecl 2 51630 NULL
+enable_so_m25p80_read_fndecl_51631 m25p80_read fndecl 3 51631 NULL
+enable_so_nodesize_btrfs_root_51633 nodesize btrfs_root 0 51633 NULL nohasharray
-+enable_so_wil_vring_init_bcast_fndecl_51633 wil_vring_init_bcast fndecl 3 51633 &enable_so_nodesize_btrfs_root_51633 nohasharray
-+enable_so__iwl_dbgfs_fw_dbg_conf_write_fndecl_51633 _iwl_dbgfs_fw_dbg_conf_write fndecl 3 51633 &enable_so_wil_vring_init_bcast_fndecl_51633
++enable_so_wil_vring_init_bcast_fndecl_51633 wil_vring_init_bcast fndecl 3 51633 &enable_so_nodesize_btrfs_root_51633
+enable_so_SyS_llistxattr_fndecl_51635 SyS_llistxattr fndecl 3 51635 NULL
+enable_so_SsidLength_ndis_802_11_ssid_51638 SsidLength ndis_802_11_ssid 0 51638 NULL
+enable_so_remap_cell_to_cache_dirty_fndecl_51640 remap_cell_to_cache_dirty fndecl 4 51640 NULL
+enable_so__xfs_buf_alloc_fndecl_51641 _xfs_buf_alloc fndecl 3 51641 NULL
-+enable_so_nsm_create_handle_fndecl_51647 nsm_create_handle fndecl 4 51647 NULL
-+enable_so_ath10k_mem_value_read_fndecl_51648 ath10k_mem_value_read fndecl 3 51648 NULL
++enable_so_hsu_dma_desc_size_fndecl_51647 hsu_dma_desc_size fndecl 0 51647 NULL nohasharray
++enable_so_nsm_create_handle_fndecl_51647 nsm_create_handle fndecl 4 51647 &enable_so_hsu_dma_desc_size_fndecl_51647
+enable_so_kernfs_dir_fop_llseek_fndecl_51649 kernfs_dir_fop_llseek fndecl 2 51649 NULL
+enable_so_max_txsz_cxgbi_ddp_info_51655 max_txsz cxgbi_ddp_info 0 51655 NULL
+enable_so_o2hb_read_slots_fndecl_51658 o2hb_read_slots fndecl 2 51658 NULL
++enable_so_create_cache_fndecl_51660 create_cache fndecl 3-4-2 51660 NULL
+enable_so_inet_set_ifa_fndecl_51661 inet_set_ifa fndecl 0 51661 NULL
+enable_so_snd_pcm_oss_write_fndecl_51663 snd_pcm_oss_write fndecl 3 51663 NULL
+enable_so_xfs_buf_readahead_map_fndecl_51666 xfs_buf_readahead_map fndecl 3 51666 NULL nohasharray
@@ -171508,9 +170761,9 @@ index 0000000..9da833a
+enable_so_bb_numrecs_xfs_bmdr_block_51702 bb_numrecs xfs_bmdr_block 0 51702 NULL
+enable_so_bNumMMCIEs_usb_wa_descriptor_51706 bNumMMCIEs usb_wa_descriptor 0 51706 NULL
+enable_so_num_req_context_skd_device_51707 num_req_context skd_device 0 51707 NULL
++enable_so_reqsize_crypto_skcipher_51708 reqsize crypto_skcipher 0 51708 NULL
+enable_so_ubifs_scan_fndecl_51715 ubifs_scan fndecl 3 51715 NULL nohasharray
+enable_so_mwifiex_cmd_append_11n_tlv_fndecl_51715 mwifiex_cmd_append_11n_tlv fndecl 0 51715 &enable_so_ubifs_scan_fndecl_51715
-+enable_so_tt_stat_ofs_cyttsp4_sysinfo_ofs_51717 tt_stat_ofs cyttsp4_sysinfo_ofs 0 51717 NULL
+enable_so_iscsit_dump_data_payload_fndecl_51720 iscsit_dump_data_payload fndecl 2 51720 NULL
+enable_so_do_wp_page_fndecl_51721 do_wp_page fndecl 3 51721 NULL nohasharray
+enable_so_nlimbs_gcry_mpi_51721 nlimbs gcry_mpi 0 51721 &enable_so_do_wp_page_fndecl_51721 nohasharray
@@ -171519,6 +170772,8 @@ index 0000000..9da833a
+enable_so_MaxChainDepth__MSG_IOC_FACTS_REPLY_51731 MaxChainDepth _MSG_IOC_FACTS_REPLY 0 51731 NULL
+enable_so_type_learning_pkt_51733 type learning_pkt 0 51733 NULL
+enable_so_xfs_da3_node_create_fndecl_51737 xfs_da3_node_create fndecl 2 51737 NULL
++enable_so_start_falloc_range_51744 start falloc_range 0 51744 NULL nohasharray
++enable_so_acpi_copy_property_array_u32_fndecl_51744 acpi_copy_property_array_u32 fndecl 0 51744 &enable_so_start_falloc_range_51744
+enable_so_bnx2_change_ring_size_fndecl_51748 bnx2_change_ring_size fndecl 3-2 51748 NULL
+enable_so_sie_num_c67x00_sie_51754 sie_num c67x00_sie 0 51754 NULL
+enable_so_sd_size_stat_data_v1_51758 sd_size stat_data_v1 0 51758 NULL
@@ -171537,32 +170792,30 @@ index 0000000..9da833a
+enable_so_ns_nextnum_the_nilfs_51797 ns_nextnum the_nilfs 0 51797 NULL
+enable_so_uar_page_size_mlx4_caps_51798 uar_page_size mlx4_caps 0 51798 NULL
+enable_so_fs_cgisize_efs_super_51811 fs_cgisize efs_super 0 51811 NULL
-+enable_so_iwl_dbgfs_thermal_throttling_read_fndecl_51816 iwl_dbgfs_thermal_throttling_read fndecl 3 51816 NULL
+enable_so_si476x_core_i2c_xfer_fndecl_51818 si476x_core_i2c_xfer fndecl 4 51818 NULL
+enable_so_val_ulist_node_51819 val ulist_node 0 51819 NULL
-+enable_so_bcache_device_init_fndecl_51822 bcache_device_init fndecl 2-3 51822 NULL
++enable_so___pdp_init_fndecl_51821 __pdp_init fndecl 0 51821 NULL
++enable_so_bcache_device_init_fndecl_51822 bcache_device_init fndecl 2-3 51822 NULL nohasharray
++enable_so_port_num_ib_ud_wr_51822 port_num ib_ud_wr 0 51822 &enable_so_bcache_device_init_fndecl_51822
+enable_so_isac_empty_fifo_fndecl_51832 isac_empty_fifo fndecl 2 51832 NULL
+enable_so_udf_readpages_fndecl_51834 udf_readpages fndecl 4 51834 NULL
+enable_so_hde_ast_vbios_enhtable_51835 hde ast_vbios_enhtable 0 51835 NULL
+enable_so_do_pci_enable_device_fndecl_51841 do_pci_enable_device fndecl 0 51841 NULL
-+enable_so_nfs4_xattr_get_nfs4_acl_fndecl_51843 nfs4_xattr_get_nfs4_acl fndecl 4 51843 NULL
+enable_so_mmio_len_mb862xxfb_par_51844 mmio_len mb862xxfb_par 0 51844 NULL
+enable_so_xfs_qm_dqiter_bufs_fndecl_51846 xfs_qm_dqiter_bufs fndecl 3-2 51846 NULL
+enable_so_max_bdi_bd_list_51847 max_bdi bd_list 0 51847 NULL
+enable_so_free_size_jffs2_eraseblock_51848 free_size jffs2_eraseblock 0 51848 NULL
+enable_so_xprt_rdma_max_inline_read_vardecl_transport_c_51852 xprt_rdma_max_inline_read vardecl_transport.c 0 51852 NULL
+enable_so_ipv6_renew_option_fndecl_51854 ipv6_renew_option fndecl 3 51854 NULL
++enable_so_gfs2_xattr_set_fndecl_51860 gfs2_xattr_set fndecl 5 51860 NULL
+enable_so_nr_dma_pages_drm_savage_private_51862 nr_dma_pages drm_savage_private 0 51862 NULL
-+enable_so_fmr_message_size_vardecl_51869 fmr_message_size vardecl 0 51869 NULL
+enable_so_TupleDataLen_tuple_t_51870 TupleDataLen tuple_t 0 51870 NULL
+enable_so_efs_get_block_fndecl_51871 efs_get_block fndecl 2 51871 NULL
+enable_so_MaxFrameSize_s_smt_os_51875 MaxFrameSize s_smt_os 0 51875 NULL
+enable_so_vbi_height_em28xx_v4l2_51876 vbi_height em28xx_v4l2 0 51876 NULL
+enable_so_lright_ext4_allocation_request_51877 lright ext4_allocation_request 0 51877 NULL
-+enable_so_direct_entry_fndecl_51879 direct_entry fndecl 3 51879 NULL
+enable_so_compat_udp_setsockopt_fndecl_51883 compat_udp_setsockopt fndecl 5 51883 NULL
-+enable_so_skb_headroom_port100_51893 skb_headroom port100 0 51893 NULL nohasharray
-+enable_so___vlan_add_flags_fndecl_51893 __vlan_add_flags fndecl 2 51893 &enable_so_skb_headroom_port100_51893
++enable_so_skb_headroom_port100_51893 skb_headroom port100 0 51893 NULL
+enable_so_sys_select_fndecl_51896 sys_select fndecl 1 51896 NULL
+enable_so_len_sdla_mem_51902 len sdla_mem 0 51902 NULL
+enable_so_datainterval_audioformat_51903 datainterval audioformat 0 51903 NULL
@@ -171573,6 +170826,7 @@ index 0000000..9da833a
+enable_so_aead_sendmsg_fndecl_51926 aead_sendmsg fndecl 3 51926 NULL
+enable_so_interfaces_fndecl_51928 interfaces fndecl 2 51928 NULL
+enable_so_start_discovery_fndecl_51929 start_discovery fndecl 4 51929 NULL
++enable_so_btrfs_read_dev_one_super_fndecl_51932 btrfs_read_dev_one_super fndecl 2 51932 NULL
+enable_so_xfs_dir_createname_fndecl_51936 xfs_dir_createname fndecl 7 51936 NULL
+enable_so___fswab16_fndecl_51937 __fswab16 fndecl 0-1 51937 NULL
+enable_so_traverse_fndecl_51938 traverse fndecl 2 51938 NULL
@@ -171583,19 +170837,17 @@ index 0000000..9da833a
+enable_so_nci_core_conn_create_fndecl_51946 nci_core_conn_create fndecl 4 51946 NULL
+enable_so_rsi_mgmt_pkt_to_core_fndecl_51950 rsi_mgmt_pkt_to_core fndecl 3 51950 NULL
+enable_so_size_mdp_superblock_s_51954 size mdp_superblock_s 0 51954 NULL
-+enable_so_max_channels_efx_nic_51955 max_channels efx_nic 0 51955 NULL nohasharray
-+enable_so___remaining_sg_mapping_iter_51955 __remaining sg_mapping_iter 0 51955 &enable_so_max_channels_efx_nic_51955 nohasharray
-+enable_so_start_drm_i915_error_state_buf_51955 start drm_i915_error_state_buf 0 51955 &enable_so___remaining_sg_mapping_iter_51955 nohasharray
-+enable_so_num_mpt_mlx4_profile_51955 num_mpt mlx4_profile 0 51955 &enable_so_start_drm_i915_error_state_buf_51955
++enable_so___remaining_sg_mapping_iter_51955 __remaining sg_mapping_iter 0 51955 NULL nohasharray
++enable_so_max_channels_efx_nic_51955 max_channels efx_nic 0 51955 &enable_so___remaining_sg_mapping_iter_51955 nohasharray
++enable_so_num_mpt_mlx4_profile_51955 num_mpt mlx4_profile 0 51955 &enable_so_max_channels_efx_nic_51955
+enable_so___blk_queue_init_tags_fndecl_51956 __blk_queue_init_tags fndecl 2 51956 NULL
++enable_so_meta_total_blocks_r5l_recovery_ctx_51960 meta_total_blocks r5l_recovery_ctx 0 51960 NULL
+enable_so_pipe_src_w_intel_crtc_state_51963 pipe_src_w intel_crtc_state 0 51963 NULL nohasharray
+enable_so_num_eqs_mthca_limits_51963 num_eqs mthca_limits 0 51963 &enable_so_pipe_src_w_intel_crtc_state_51963
+enable_so_bufsize_usbhid_device_51964 bufsize usbhid_device 0 51964 NULL nohasharray
+enable_so_max_data_size_mpt3_ioctl_header_51964 max_data_size mpt3_ioctl_header 0 51964 &enable_so_bufsize_usbhid_device_51964
-+enable_so_dbgfs_state_fndecl_51965 dbgfs_state fndecl 3 51965 NULL
+enable_so_should_error_unserviceable_bio_fndecl_51968 should_error_unserviceable_bio fndecl 0 51968 NULL nohasharray
-+enable_so_pad_bits_regmap_config_51968 pad_bits regmap_config 0 51968 &enable_so_should_error_unserviceable_bio_fndecl_51968 nohasharray
-+enable_so_ieee80211_if_read_dtim_count_fndecl_51968 ieee80211_if_read_dtim_count fndecl 3 51968 &enable_so_pad_bits_regmap_config_51968
++enable_so_pad_bits_regmap_config_51968 pad_bits regmap_config 0 51968 &enable_so_should_error_unserviceable_bio_fndecl_51968
+enable_so_req_lim_delta_srp_cred_req_51971 req_lim_delta srp_cred_req 0 51971 NULL
+enable_so_asix_write_cmd_async_fndecl_51975 asix_write_cmd_async fndecl 5 51975 NULL
+enable_so_insert_one_name_fndecl_51977 insert_one_name fndecl 6 51977 NULL
@@ -171629,7 +170881,7 @@ index 0000000..9da833a
+enable_so_btrfs_next_old_leaf_fndecl_52050 btrfs_next_old_leaf fndecl 0 52050 NULL nohasharray
+enable_so_section_size_nvsp_1_message_send_send_buffer_complete_52050 section_size nvsp_1_message_send_send_buffer_complete 0 52050 &enable_so_btrfs_next_old_leaf_fndecl_52050
+enable_so_cxgb_change_mtu_fndecl_52055 cxgb_change_mtu fndecl 2 52055 NULL
-+enable_so__iwl_dbgfs_scan_ant_rxchain_write_fndecl_52060 _iwl_dbgfs_scan_ant_rxchain_write fndecl 3 52060 NULL
++enable_so_scif_register_fndecl_52065 scif_register fndecl 3 52065 NULL
+enable_so_event_rx_mismatch_read_fndecl_52069 event_rx_mismatch_read fndecl 3 52069 NULL
+enable_so_lpfc_bsg_copy_data_fndecl_52084 lpfc_bsg_copy_data fndecl 0-3 52084 NULL
+enable_so_iscsi_create_iface_fndecl_52093 iscsi_create_iface fndecl 5 52093 NULL
@@ -171639,7 +170891,6 @@ index 0000000..9da833a
+enable_so_btindex_jfs_inode_info_52105 btindex jfs_inode_info 0 52105 NULL nohasharray
+enable_so_ceph_handle_auth_reply_fndecl_52105 ceph_handle_auth_reply fndecl 0 52105 &enable_so_btindex_jfs_inode_info_52105
+enable_so_attr_bytes_osdv1_attributes_list_element_52106 attr_bytes osdv1_attributes_list_element 0 52106 NULL
-+enable_so_acl_pgbase_nfs_setaclargs_52107 acl_pgbase nfs_setaclargs 0 52107 NULL
+enable_so_logical_offset_btrfs_ioctl_same_args_52108 logical_offset btrfs_ioctl_same_args 0 52108 NULL
+enable_so_mmc_test_nonblock_transfer_fndecl_52112 mmc_test_nonblock_transfer fndecl 6-5-3 52112 NULL nohasharray
+enable_so_MaxDevices__MSG_PORT_FACTS_REPLY_52112 MaxDevices _MSG_PORT_FACTS_REPLY 0 52112 &enable_so_mmc_test_nonblock_transfer_fndecl_52112
@@ -171661,7 +170912,6 @@ index 0000000..9da833a
+enable_so_tcp_update_reordering_fndecl_52147 tcp_update_reordering fndecl 2 52147 &enable_so_tcp_sendmsg_fndecl_52147
+enable_so_snd_nm256_playback_copy_fndecl_52148 snd_nm256_playback_copy fndecl 5 52148 NULL
+enable_so_set_le_ih_k_type_fndecl_52149 set_le_ih_k_type fndecl 2 52149 NULL
-+enable_so_il4965_rs_sta_dbgfs_scale_table_read_fndecl_52151 il4965_rs_sta_dbgfs_scale_table_read fndecl 3 52151 NULL
+enable_so_pep_indicate_fndecl_52160 pep_indicate fndecl 5 52160 NULL
+enable_so_indirect_sg_entries_vardecl_ib_srp_c_52165 indirect_sg_entries vardecl_ib_srp.c 0 52165 NULL
+enable_so_mpx_mmap_fndecl_52167 mpx_mmap fndecl 0-1 52167 NULL
@@ -171691,7 +170941,7 @@ index 0000000..9da833a
+enable_so_nfs3_proc_readlink_fndecl_52235 nfs3_proc_readlink fndecl 4-3 52235 NULL
+enable_so_num_ports_mthca_limits_52246 num_ports mthca_limits 0 52246 NULL
+enable_so_efs_iget_fndecl_52247 efs_iget fndecl 2 52247 NULL
-+enable_so_size_elf_note_info_52250 size elf_note_info 0 52250 NULL
++enable_so_paddr_drm_gem_cma_object_52250 paddr drm_gem_cma_object 0 52250 NULL
+enable_so_snd_hda_get_conn_list_fndecl_52255 snd_hda_get_conn_list fndecl 0 52255 NULL
+enable_so_bufsize_brcmf_console_52266 bufsize brcmf_console 0 52266 NULL
+enable_so_value_len_xattr_52269 value_len xattr 0 52269 NULL nohasharray
@@ -171715,19 +170965,19 @@ index 0000000..9da833a
+enable_so_alloc_page_ext_fndecl_52310 alloc_page_ext fndecl 1 52310 NULL
+enable_so_h_stop_saa7134_tvnorm_52311 h_stop saa7134_tvnorm 0 52311 NULL
+enable_so_rss_table_entry_width_i40e_hw_capabilities_52312 rss_table_entry_width i40e_hw_capabilities 0 52312 NULL
++enable_so_btrfs_delalloc_reserve_space_fndecl_52314 btrfs_delalloc_reserve_space fndecl 0-3-2 52314 NULL
+enable_so_ep_out_kingsun_cb_52317 ep_out kingsun_cb 0 52317 NULL
+enable_so_pglen_nfs4_readlink_52318 pglen nfs4_readlink 0 52318 NULL
+enable_so_cmd_len_c2h_evt_hdr_52322 cmd_len c2h_evt_hdr 0 52322 NULL
+enable_so_rx_filter_dup_filter_read_fndecl_52325 rx_filter_dup_filter_read fndecl 3 52325 NULL
-+enable_so_iwl_dbgfs_d3_sram_read_fndecl_52326 iwl_dbgfs_d3_sram_read fndecl 3 52326 NULL
+enable_so_cxgbi_conn_init_pdu_fndecl_52327 cxgbi_conn_init_pdu fndecl 3 52327 NULL
-+enable_so_inline_rsize_rpcrdma_create_data_internal_52331 inline_rsize rpcrdma_create_data_internal 0 52331 NULL
-+enable_so_regmap_access_read_file_fndecl_52340 regmap_access_read_file fndecl 3 52340 NULL nohasharray
-+enable_so_epp_max_pages_ptlrpc_enc_page_pool_52340 epp_max_pages ptlrpc_enc_page_pool 0 52340 &enable_so_regmap_access_read_file_fndecl_52340
++enable_so_inline_rsize_rpcrdma_create_data_internal_52331 inline_rsize rpcrdma_create_data_internal 0 52331 NULL nohasharray
++enable_so_user_set_fndecl_52331 user_set fndecl 5 52331 &enable_so_inline_rsize_rpcrdma_create_data_internal_52331
++enable_so_luns_per_chnl_nvm_dev_52339 luns_per_chnl nvm_dev 0 52339 NULL
++enable_so_regmap_access_read_file_fndecl_52340 regmap_access_read_file fndecl 3 52340 NULL
+enable_so___do_replace_fndecl_52344 __do_replace fndecl 5 52344 NULL
+enable_so_xpc_connect_fndecl_52346 xpc_connect fndecl 5 52346 NULL
+enable_so_mac_header_sk_buff_52356 mac_header sk_buff 0 52356 NULL
-+enable_so__iwl_dbgfs_fw_restart_write_fndecl_52357 _iwl_dbgfs_fw_restart_write fndecl 3 52357 NULL
+enable_so_pipe_src_h_intel_crtc_state_52358 pipe_src_h intel_crtc_state 0 52358 NULL nohasharray
+enable_so_blk_queue_max_hw_sectors_fndecl_52358 blk_queue_max_hw_sectors fndecl 2 52358 &enable_so_pipe_src_h_intel_crtc_state_52358 nohasharray
+enable_so_rtl_read_byte_fndecl_52358 rtl_read_byte fndecl 0 52358 &enable_so_blk_queue_max_hw_sectors_fndecl_52358
@@ -171745,32 +170995,30 @@ index 0000000..9da833a
+enable_so_ath6kl_wmi_set_ie_cmd_fndecl_52383 ath6kl_wmi_set_ie_cmd fndecl 6-2 52383 NULL nohasharray
+enable_so_sg_pgoffset_sg_page_iter_52383 sg_pgoffset sg_page_iter 0 52383 &enable_so_ath6kl_wmi_set_ie_cmd_fndecl_52383
+enable_so_error_tbc_exch_mismatch_read_fndecl_52388 error_tbc_exch_mismatch_read fndecl 3 52388 NULL
-+enable_so_raw_bufsize_edt_ft5x06_ts_data_52390 raw_bufsize edt_ft5x06_ts_data 0 52390 NULL
-+enable_so_ieee80211_if_read_power_mode_fndecl_52394 ieee80211_if_read_power_mode fndecl 3 52394 NULL
+enable_so_jffs2_write_dirent_fndecl_52396 jffs2_write_dirent fndecl 5 52396 NULL
+enable_so_u132_hcd_initial_input_recv_fndecl_52397 u132_hcd_initial_input_recv fndecl 4 52397 NULL
-+enable_so_srp_map_idb_fndecl_52402 srp_map_idb fndecl 0-5 52402 NULL
++enable_so_srp_map_idb_fndecl_52402 srp_map_idb fndecl 5-0 52402 NULL
+enable_so_length_TAG_TW_SG_Entry_52403 length TAG_TW_SG_Entry 0 52403 NULL
+enable_so_eapol_len_wmi_eapol_rx_event_52408 eapol_len wmi_eapol_rx_event 0 52408 NULL
+enable_so_command_fndecl_52411 command fndecl 0 52411 NULL
+enable_so_wm8904_set_fll_fndecl_52413 wm8904_set_fll fndecl 4-5 52413 NULL nohasharray
+enable_so_type_sctp_chunkhdr_52413 type sctp_chunkhdr 0 52413 &enable_so_wm8904_set_fll_fndecl_52413
-+enable_so_agp_return_size_fndecl_52417 agp_return_size fndecl 0 52417 NULL nohasharray
-+enable_so_scsi_mode_select_fndecl_52417 scsi_mode_select fndecl 6 52417 &enable_so_agp_return_size_fndecl_52417
++enable_so_drm_fbdev_cma_init_fndecl_52417 drm_fbdev_cma_init fndecl 2-3-4 52417 NULL nohasharray
++enable_so_scsi_mode_select_fndecl_52417 scsi_mode_select fndecl 6 52417 &enable_so_drm_fbdev_cma_init_fndecl_52417 nohasharray
++enable_so_agp_return_size_fndecl_52417 agp_return_size fndecl 0 52417 &enable_so_scsi_mode_select_fndecl_52417
+enable_so_sddr09_read_control_fndecl_52418 sddr09_read_control fndecl 3-5 52418 NULL
++enable_so_offset_scif_window_52420 offset scif_window 0 52420 NULL
+enable_so_group_ocfs2_new_group_input_52421 group ocfs2_new_group_input 0 52421 NULL
+enable_so_move_vma_fndecl_52430 move_vma fndecl 4-5-2-3 52430 NULL
+enable_so_zap_pte_range_fndecl_52434 zap_pte_range fndecl 4-0 52434 NULL
+enable_so_min_scaled_width_bttv_crop_52442 min_scaled_width bttv_crop 0 52442 NULL
-+enable_so_alt_offset132_cm_req_msg_52443 alt_offset132 cm_req_msg 0 52443 NULL nohasharray
-+enable_so_max_tag_sym_driver_setup_52443 max_tag sym_driver_setup 0 52443 &enable_so_alt_offset132_cm_req_msg_52443
++enable_so_alt_offset132_cm_req_msg_52443 alt_offset132 cm_req_msg 0 52443 NULL
+enable_so_dvb_max_pkt_size_isoc_em28xx_52444 dvb_max_pkt_size_isoc em28xx 0 52444 NULL nohasharray
+enable_so_map_nth_dirent_fndecl_52444 map_nth_dirent fndecl 2 52444 &enable_so_dvb_max_pkt_size_isoc_em28xx_52444
+enable_so_read_rsp_size_smb_version_values_52446 read_rsp_size smb_version_values 0 52446 NULL
+enable_so_bulk_out_size_usb_serial_port_52448 bulk_out_size usb_serial_port 0 52448 NULL
+enable_so_wl1251_spi_write_fndecl_52450 wl1251_spi_write fndecl 4 52450 NULL nohasharray
+enable_so_corr_peb_count_ubi_device_52450 corr_peb_count ubi_device 0 52450 &enable_so_wl1251_spi_write_fndecl_52450
-+enable_so_can_queue_scsi_host_template_52454 can_queue scsi_host_template 0 52454 NULL
+enable_so_end_bus_pci_mmcfg_region_52468 end_bus pci_mmcfg_region 0 52468 NULL
+enable_so_nvi_vf_resources_52470 nvi vf_resources 0 52470 NULL
+enable_so_sz_field_t_52472 sz field_t 0 52472 NULL
@@ -171778,6 +171026,8 @@ index 0000000..9da833a
+enable_so_metadata_snap_era_metadata_52475 metadata_snap era_metadata 0 52475 NULL
+enable_so_ppp_hard_header_fndecl_52482 ppp_hard_header fndecl 3 52482 NULL
+enable_so_ib_ucm_alloc_data_fndecl_52486 ib_ucm_alloc_data fndecl 3 52486 NULL
++enable_so_num_clks_qcom_cc_desc_52487 num_clks qcom_cc_desc 0 52487 NULL
++enable_so_rx_buf_size_hip04_priv_52495 rx_buf_size hip04_priv 0 52495 NULL
+enable_so_eqpc_entry_sz_mthca_dev_lim_52498 eqpc_entry_sz mthca_dev_lim 0 52498 NULL
+enable_so_s_clustersize_bits_ocfs2_super_52499 s_clustersize_bits ocfs2_super 0 52499 NULL
+enable_so_tx_tx_data_programmed_read_fndecl_52500 tx_tx_data_programmed_read fndecl 3 52500 NULL
@@ -171811,8 +171061,7 @@ index 0000000..9da833a
+enable_so_end_logsuper_52574 end logsuper 0 52574 NULL
+enable_so_amdgpu_ttm_tt_set_userptr_fndecl_52575 amdgpu_ttm_tt_set_userptr fndecl 2 52575 NULL nohasharray
+enable_so_data_length_iscsi_r2t_info_52575 data_length iscsi_r2t_info 0 52575 &enable_so_amdgpu_ttm_tt_set_userptr_fndecl_52575
-+enable_so_device_create_groups_vargs_fndecl_52576 device_create_groups_vargs fndecl 3 52576 NULL nohasharray
-+enable_so_il4965_rs_sta_dbgfs_scale_table_write_fndecl_52576 il4965_rs_sta_dbgfs_scale_table_write fndecl 3 52576 &enable_so_device_create_groups_vargs_fndecl_52576
++enable_so_device_create_groups_vargs_fndecl_52576 device_create_groups_vargs fndecl 3 52576 NULL
+enable_so___mincore_unmapped_range_fndecl_52595 __mincore_unmapped_range fndecl 1 52595 NULL
+enable_so_xfs_shift_file_space_fndecl_52596 xfs_shift_file_space fndecl 2-3 52596 NULL
+enable_so_cached_dev_init_fndecl_52600 cached_dev_init fndecl 2 52600 NULL
@@ -171823,13 +171072,15 @@ index 0000000..9da833a
+enable_so___logfs_write_je_fndecl_52617 __logfs_write_je fndecl 4 52617 NULL nohasharray
+enable_so_max_sge_ib_device_attr_52617 max_sge ib_device_attr 0 52617 &enable_so___logfs_write_je_fndecl_52617
+enable_so__set_error_resid_fndecl_52623 _set_error_resid fndecl 3 52623 NULL
-+enable_so_drbd_new_dev_size_fndecl_52629 drbd_new_dev_size fndecl 0-3 52629 NULL
++enable_so_lo_rw_aio_complete_fndecl_52629 lo_rw_aio_complete fndecl 2 52629 NULL nohasharray
++enable_so_drbd_new_dev_size_fndecl_52629 drbd_new_dev_size fndecl 0-3 52629 &enable_so_lo_rw_aio_complete_fndecl_52629
+enable_so_auok190xfb_write_fndecl_52634 auok190xfb_write fndecl 3 52634 NULL
-+enable_so_setxattr_fndecl_52637 setxattr fndecl 4 52637 NULL nohasharray
-+enable_so_burst_len_qcaspi_52637 burst_len qcaspi 0 52637 &enable_so_setxattr_fndecl_52637
++enable_so_burst_len_qcaspi_52637 burst_len qcaspi 0 52637 NULL nohasharray
++enable_so_setxattr_fndecl_52637 setxattr fndecl 4 52637 &enable_so_burst_len_qcaspi_52637
+enable_so___do_fault_fndecl_52642 __do_fault fndecl 3 52642 NULL
+enable_so_page_count_drm_device_dma_52645 page_count drm_device_dma 0 52645 NULL
+enable_so_num_txq_per_tx_bnad_52646 num_txq_per_tx bnad 0 52646 NULL
++enable_so_figure_loop_size_fndecl_52648 figure_loop_size fndecl 2 52648 NULL
+enable_so_vni_vxlan_config_52649 vni vxlan_config 0 52649 NULL
+enable_so_bop_insert_nilfs_bmap_operations_52653 bop_insert nilfs_bmap_operations 0 52653 NULL
+enable_so_qp_broker_create_fndecl_52654 qp_broker_create fndecl 5-6 52654 NULL
@@ -171851,13 +171102,11 @@ index 0000000..9da833a
+enable_so_fpHeight_nvidia_par_52691 fpHeight nvidia_par 0 52691 NULL nohasharray
+enable_so_urb_done_max3421_hcd_52691 urb_done max3421_hcd 0 52691 &enable_so_fpHeight_nvidia_par_52691
+enable_so_max_data_link_payload_nfc_hci_dev_52699 max_data_link_payload nfc_hci_dev 0 52699 NULL
-+enable_so__iwl_dbgfs_bcast_filters_macs_write_fndecl_52702 _iwl_dbgfs_bcast_filters_macs_write fndecl 3 52702 NULL
+enable_so_count_vfio_pci_hot_reset_52708 count vfio_pci_hot_reset 0 52708 NULL
+enable_so_gen_ie_buf_len_mwifiex_private_52710 gen_ie_buf_len mwifiex_private 0 52710 NULL
+enable_so_s_je_fill_logfs_super_52713 s_je_fill logfs_super 0 52713 NULL
+enable_so_videomemorysize_vardecl_vfb_c_52716 videomemorysize vardecl_vfb.c 0 52716 NULL nohasharray
+enable_so_wptr_old_radeon_ring_52716 wptr_old radeon_ring 0 52716 &enable_so_videomemorysize_vardecl_vfb_c_52716
-+enable_so_einj_error_inject_fndecl_52724 einj_error_inject fndecl 4-3 52724 NULL
+enable_so_cifs_min_small_vardecl_52732 cifs_min_small vardecl 0 52732 NULL
+enable_so_hmac_id_sctp_hmac_52747 hmac_id sctp_hmac 0 52747 NULL
+enable_so_vmw_framebuffer_dmabuf_dirty_fndecl_52750 vmw_framebuffer_dmabuf_dirty fndecl 6 52750 NULL
@@ -171872,28 +171121,23 @@ index 0000000..9da833a
+enable_so_size_drm_i915_gem_create_52771 size drm_i915_gem_create 0 52771 NULL
+enable_so_maxBuf_TCP_Server_Info_52774 maxBuf TCP_Server_Info 0 52774 NULL nohasharray
+enable_so_regmap_map_read_file_fndecl_52774 regmap_map_read_file fndecl 3 52774 &enable_so_maxBuf_TCP_Server_Info_52774
-+enable_so_leaf_paste_entries_fndecl_52780 leaf_paste_entries fndecl 4-7 52780 NULL
+enable_so_SYSC_get_mempolicy_fndecl_52787 SYSC_get_mempolicy fndecl 3 52787 NULL
+enable_so_avc_ca_pmt_fndecl_52789 avc_ca_pmt fndecl 3 52789 NULL
-+enable_so_setup_transfer_spi_bitbang_52790 setup_transfer spi_bitbang 0 52790 NULL
+enable_so_qxl_allocate_chunk_fndecl_52791 qxl_allocate_chunk fndecl 4 52791 NULL nohasharray
+enable_so_tcp_mss_split_point_fndecl_52791 tcp_mss_split_point fndecl 0 52791 &enable_so_qxl_allocate_chunk_fndecl_52791
-+enable_so_batadv_get_vid_fndecl_52792 batadv_get_vid fndecl 0-2 52792 NULL nohasharray
-+enable_so_ieee80211_if_read_rc_rateidx_mcs_mask_2ghz_fndecl_52792 ieee80211_if_read_rc_rateidx_mcs_mask_2ghz fndecl 3 52792 &enable_so_batadv_get_vid_fndecl_52792
++enable_so_batadv_get_vid_fndecl_52792 batadv_get_vid fndecl 0-2 52792 NULL
+enable_so___wa_seg_calculate_isoc_frame_count_fndecl_52795 __wa_seg_calculate_isoc_frame_count fndecl 0 52795 NULL
+enable_so_buffer_size_vardecl_ethoc_c_52796 buffer_size vardecl_ethoc.c 0 52796 NULL
+enable_so_payload_len_bfa_bsg_data_52800 payload_len bfa_bsg_data 0 52800 NULL
-+enable_so_i40e_dbg_dump_data_len_vardecl_i40e_debugfs_c_52806 i40e_dbg_dump_data_len vardecl_i40e_debugfs.c 0 52806 NULL nohasharray
-+enable_so_parport_ieee1284_epp_write_data_fndecl_52806 parport_ieee1284_epp_write_data fndecl 0 52806 &enable_so_i40e_dbg_dump_data_len_vardecl_i40e_debugfs_c_52806
++enable_so_parport_ieee1284_epp_write_data_fndecl_52806 parport_ieee1284_epp_write_data fndecl 0 52806 NULL
+enable_so_ule_sndu_type_dvb_net_priv_52811 ule_sndu_type dvb_net_priv 0 52811 NULL
+enable_so_mmc_test_map_sg_fndecl_52812 mmc_test_map_sg fndecl 6-5-8-2 52812 NULL
-+enable_so_ata_scsi_change_queue_depth_fndecl_52821 ata_scsi_change_queue_depth fndecl 2 52821 NULL
+enable_so_brcmf_sdiod_recv_chain_fndecl_52822 brcmf_sdiod_recv_chain fndecl 3 52822 NULL
+enable_so_wiphy_new_nm_fndecl_52833 wiphy_new_nm fndecl 2 52833 NULL
+enable_so_xdr_encode_array2_fndecl_52834 xdr_encode_array2 fndecl 0-2 52834 NULL
+enable_so_ocfs2_control_cfu_fndecl_52837 ocfs2_control_cfu fndecl 2 52837 NULL
-+enable_so_ocfs2_duplicate_clusters_by_jbd_fndecl_52838 ocfs2_duplicate_clusters_by_jbd fndecl 4-5 52838 NULL nohasharray
-+enable_so_xfs_read_agf_fndecl_52838 xfs_read_agf fndecl 3 52838 &enable_so_ocfs2_duplicate_clusters_by_jbd_fndecl_52838
++enable_so_xfs_read_agf_fndecl_52838 xfs_read_agf fndecl 3 52838 NULL nohasharray
++enable_so_ocfs2_duplicate_clusters_by_jbd_fndecl_52838 ocfs2_duplicate_clusters_by_jbd fndecl 4-5 52838 &enable_so_xfs_read_agf_fndecl_52838
+enable_so_xfs_cross_rename_fndecl_52839 xfs_cross_rename fndecl 10 52839 NULL
+enable_so_ext2_fsync_fndecl_52850 ext2_fsync fndecl 2-3 52850 NULL
+enable_so_netxen_validate_ringparam_fndecl_52863 netxen_validate_ringparam fndecl 0 52863 NULL
@@ -171909,11 +171153,9 @@ index 0000000..9da833a
+enable_so_buffer_size_vardecl_ir_usb_c_52893 buffer_size vardecl_ir-usb.c 0 52893 NULL
+enable_so_ino_jffs2_full_dirent_52898 ino jffs2_full_dirent 0 52898 NULL nohasharray
+enable_so_max_pde_used_amdgpu_vm_52898 max_pde_used amdgpu_vm 0 52898 &enable_so_ino_jffs2_full_dirent_52898
-+enable_so_ocrdma_alloc_frmr_page_list_fndecl_52900 ocrdma_alloc_frmr_page_list fndecl 2 52900 NULL
+enable_so_data_len_hermes_rx_descriptor_52909 data_len hermes_rx_descriptor 0 52909 NULL
+enable_so_rx_decrypt_key_not_found_read_fndecl_52911 rx_decrypt_key_not_found_read fndecl 3 52911 NULL
+enable_so_buf_width_s5p_mfc_ctx_52912 buf_width s5p_mfc_ctx 0 52912 NULL
-+enable_so_il4965_rs_sta_dbgfs_rate_scale_data_read_fndecl_52915 il4965_rs_sta_dbgfs_rate_scale_data_read fndecl 3 52915 NULL
+enable_so_dir_seek_data_fndecl_52916 dir_seek_data fndecl 2-0 52916 NULL nohasharray
+enable_so_of_alias_add_fndecl_52916 of_alias_add fndecl 3 52916 &enable_so_dir_seek_data_fndecl_52916 nohasharray
+enable_so_cqc_entry_sz_mlx4_dev_cap_52916 cqc_entry_sz mlx4_dev_cap 0 52916 &enable_so_of_alias_add_fndecl_52916
@@ -171921,11 +171163,11 @@ index 0000000..9da833a
+enable_so_smk_read_logging_fndecl_52927 smk_read_logging fndecl 3 52927 NULL
+enable_so_swd_swregs_state_52928 swd swregs_state 0 52928 NULL
+enable_so_max_write_shift_ubifs_info_52936 max_write_shift ubifs_info 0 52936 NULL nohasharray
-+enable_so_count_i40e_ring_52936 count i40e_ring 0 52936 &enable_so_max_write_shift_ubifs_info_52936 nohasharray
-+enable_so_o2hb_debug_read_fndecl_52936 o2hb_debug_read fndecl 3 52936 &enable_so_count_i40e_ring_52936
++enable_so_count_i40e_ring_52936 count i40e_ring 0 52936 &enable_so_max_write_shift_ubifs_info_52936
+enable_so_si2165_write_fndecl_52941 si2165_write fndecl 4 52941 NULL
+enable_so_rules_count_canid_match_52943 rules_count canid_match 0 52943 NULL nohasharray
+enable_so_num_rx_ethoc_52943 num_rx ethoc 0 52943 &enable_so_rules_count_canid_match_52943
++enable_so_ext2_xattr_user_set_fndecl_52946 ext2_xattr_user_set fndecl 5 52946 NULL
+enable_so_pipe_urb_52947 pipe urb 0 52947 NULL
+enable_so_minor_drbd_genlmsghdr_52949 minor drbd_genlmsghdr 0 52949 NULL
+enable_so_position_jfs_dirent_52952 position jfs_dirent 0 52952 NULL
@@ -171939,19 +171181,20 @@ index 0000000..9da833a
+enable_so_dma_start_lo_rx_buf_desc_52972 dma_start_lo rx_buf_desc 0 52972 NULL
+enable_so_dataOutSize_mpt_ioctl_command_52974 dataOutSize mpt_ioctl_command 0 52974 NULL
+enable_so_dvb_net_sec_fndecl_52975 dvb_net_sec fndecl 3 52975 NULL nohasharray
-+enable_so_xdr_truncate_encode_fndecl_52975 xdr_truncate_encode fndecl 2 52975 &enable_so_dvb_net_sec_fndecl_52975
++enable_so_xdr_truncate_encode_fndecl_52975 xdr_truncate_encode fndecl 2 52975 &enable_so_dvb_net_sec_fndecl_52975 nohasharray
++enable_so_scif_readfrom_fndecl_52975 scif_readfrom fndecl 2-4-3 52975 &enable_so_xdr_truncate_encode_fndecl_52975
+enable_so_scatter_n_efx_rx_queue_52988 scatter_n efx_rx_queue 0 52988 NULL
+enable_so_xfs_dir2_block_to_sf_fndecl_52991 xfs_dir2_block_to_sf fndecl 3 52991 NULL
+enable_so_max_rx_agg_size_iwl_cfg_52997 max_rx_agg_size iwl_cfg 0 52997 NULL
+enable_so_hidp_output_report_fndecl_53002 hidp_output_report fndecl 3 53002 NULL
-+enable_so_actual_length_urb_53003 actual_length urb 0 53003 NULL
++enable_so_actual_length_urb_53003 actual_length urb 0 53003 NULL nohasharray
++enable_so_rx_nr_pages_bnxt_53003 rx_nr_pages bnxt 0 53003 &enable_so_actual_length_urb_53003
+enable_so___shadow_block_fndecl_53011 __shadow_block fndecl 2 53011 NULL nohasharray
+enable_so_max_mlx4_srq_53011 max mlx4_srq 0 53011 &enable_so___shadow_block_fndecl_53011
+enable_so_gfs2_direct_IO_fndecl_53014 gfs2_direct_IO fndecl 3 53014 NULL
+enable_so_BC_Read_Reg_IsdnCardState_53020 BC_Read_Reg IsdnCardState 0 53020 NULL
+enable_so_bytesused_ivtv_buffer_53021 bytesused ivtv_buffer 0 53021 NULL
+enable_so_tty_insert_flip_string_fixed_flag_fndecl_53031 tty_insert_flip_string_fixed_flag fndecl 4-0 53031 NULL
-+enable_so___vlan_del_fndecl_53037 __vlan_del fndecl 2 53037 NULL
+enable_so_xfs_filestream_pick_ag_fndecl_53040 xfs_filestream_pick_ag fndecl 2 53040 NULL nohasharray
+enable_so_nports0_adapter_info_53040 nports0 adapter_info 0 53040 &enable_so_xfs_filestream_pick_ag_fndecl_53040
+enable_so_xmit_fifo_size_serial_struct_53048 xmit_fifo_size serial_struct 0 53048 NULL
@@ -171987,7 +171230,8 @@ index 0000000..9da833a
+enable_so_size_fuse_attr_53098 size fuse_attr 0 53098 &enable_so_packet_create_fndecl_53098
+enable_so_s_blocksize_minix3_super_block_53099 s_blocksize minix3_super_block 0 53099 NULL
+enable_so_brcmf_fw_nvram_strip_fndecl_53102 brcmf_fw_nvram_strip fndecl 2 53102 NULL
-+enable_so_prepare_header80_fndecl_53108 prepare_header80 fndecl 3-0 53108 NULL
++enable_so_prepare_header80_fndecl_53108 prepare_header80 fndecl 3-0 53108 NULL nohasharray
++enable_so_rx_nr_rings_bnxt_53108 rx_nr_rings bnxt 0 53108 &enable_so_prepare_header80_fndecl_53108
+enable_so_count_vbi_info_53110 count vbi_info 0 53110 NULL
+enable_so_fb_max_width_vmw_private_53114 fb_max_width vmw_private 0 53114 NULL
+enable_so_reserve_region_with_split_fndecl_53115 reserve_region_with_split fndecl 3-2 53115 NULL
@@ -171995,7 +171239,6 @@ index 0000000..9da833a
+enable_so_bfad_iocmd_vf_get_stats_fndecl_53119 bfad_iocmd_vf_get_stats fndecl 0 53119 NULL
+enable_so_xz_dec_test_write_fndecl_53124 xz_dec_test_write fndecl 3 53124 NULL
+enable_so_real_vram_size_radeon_mc_53132 real_vram_size radeon_mc 0 53132 NULL
-+enable_so_fault_inject_read_fndecl_53133 fault_inject_read fndecl 3 53133 NULL
+enable_so_data_dma_td_53137 data_dma td 0 53137 NULL
+enable_so_snd_timer_user_params_fndecl_53139 snd_timer_user_params fndecl 0 53139 NULL
+enable_so_log_rq_size_mlx5e_params_53140 log_rq_size mlx5e_params 0 53140 NULL
@@ -172007,11 +171250,10 @@ index 0000000..9da833a
+enable_so_xoffset_fb_var_screeninfo_53153 xoffset fb_var_screeninfo 0 53153 NULL
+enable_so_fat_cont_expand_fndecl_53155 fat_cont_expand fndecl 2 53155 NULL
+enable_so_sb_blocksize_xfs_sb_53160 sb_blocksize xfs_sb 0 53160 NULL
-+enable_so_lpfc_debugfs_max_disc_trc_vardecl_lpfc_debugfs_c_53169 lpfc_debugfs_max_disc_trc vardecl_lpfc_debugfs.c 0 53169 NULL
-+enable_so_uhci_debug_lseek_fndecl_53171 uhci_debug_lseek fndecl 2 53171 NULL
+enable_so_buf_size_mwifiex_event_scan_result_53175 buf_size mwifiex_event_scan_result 0 53175 NULL
+enable_so_tegra_spi_start_tx_dma_fndecl_53177 tegra_spi_start_tx_dma fndecl 0-2 53177 NULL
+enable_so_offset_page_frag_53180 offset page_frag 0 53180 NULL
++enable_so_rx_tpa_start_cmp_metadata_rx_tpa_start_cmp_ext_53181 rx_tpa_start_cmp_metadata rx_tpa_start_cmp_ext 0 53181 NULL
+enable_so_tpm_devt_vardecl_53182 tpm_devt vardecl 0 53182 NULL nohasharray
+enable_so_batadv_tt_global_client_is_roaming_fndecl_53182 batadv_tt_global_client_is_roaming fndecl 3 53182 &enable_so_tpm_devt_vardecl_53182
+enable_so_PID_frhdr_53185 PID frhdr 0 53185 NULL nohasharray
@@ -172019,7 +171261,6 @@ index 0000000..9da833a
+enable_so_rate_min_snd_soc_pcm_stream_53186 rate_min snd_soc_pcm_stream 0 53186 NULL
+enable_so_len_nxtfrm_brcmf_sdio_hdrinfo_53193 len_nxtfrm brcmf_sdio_hdrinfo 0 53193 NULL
+enable_so_mpage_process_page_bufs_fndecl_53197 mpage_process_page_bufs fndecl 4 53197 NULL
-+enable_so_tcp_synack_options_fndecl_53200 tcp_synack_options fndecl 0 53200 NULL
+enable_so_minor_start_tty_driver_53214 minor_start tty_driver 0 53214 NULL
+enable_so_write_iter_file_operations_53218 write_iter file_operations 0 53218 NULL
+enable_so_SYSC_mbind_fndecl_53221 SYSC_mbind fndecl 5 53221 NULL
@@ -172033,7 +171274,6 @@ index 0000000..9da833a
+enable_so_svcxdr_init_encode_from_buffer_fndecl_53239 svcxdr_init_encode_from_buffer fndecl 4 53239 NULL nohasharray
+enable_so_mmc_test_rw_multiple_fndecl_53239 mmc_test_rw_multiple fndecl 3-5 53239 &enable_so_svcxdr_init_encode_from_buffer_fndecl_53239
+enable_so_kvm_read_guest_page_mmu_fndecl_53240 kvm_read_guest_page_mmu fndecl 6 53240 NULL
-+enable_so_pnw_serial_setup_fndecl_53243 pnw_serial_setup fndecl 4 53243 NULL
+enable_so_sys_sync_file_range2_fndecl_53247 sys_sync_file_range2 fndecl 3-4 53247 NULL
+enable_so_vga_arb_write_fndecl_53251 vga_arb_write fndecl 3 53251 NULL
+enable_so_xpc_nasid_mask_nlongs_vardecl_53252 xpc_nasid_mask_nlongs vardecl 0 53252 NULL
@@ -172065,9 +171305,9 @@ index 0000000..9da833a
+enable_so_isoc_in_usbatm_driver_53310 isoc_in usbatm_driver 0 53310 NULL nohasharray
+enable_so___gfs2_free_blocks_fndecl_53310 __gfs2_free_blocks fndecl 2 53310 &enable_so_isoc_in_usbatm_driver_53310
+enable_so___sync_dirty_buffer_fndecl_53315 __sync_dirty_buffer fndecl 0 53315 NULL
-+enable_so_transport_get_sectors_10_fndecl_53319 transport_get_sectors_10 fndecl 0 53319 NULL
+enable_so_nfsd4_block_get_device_info_simple_fndecl_53320 nfsd4_block_get_device_info_simple fndecl 0 53320 NULL
+enable_so_sys_send_fndecl_53330 sys_send fndecl 3 53330 NULL
++enable_so___drm_gem_cma_create_fndecl_53334 __drm_gem_cma_create fndecl 2 53334 NULL
+enable_so_s_inode_readahead_blks_ext4_sb_info_53337 s_inode_readahead_blks ext4_sb_info 0 53337 NULL
+enable_so_snd_korg1212_copy_from_fndecl_53338 snd_korg1212_copy_from fndecl 6 53338 NULL
+enable_so_v9fs_xattr_set_fndecl_53342 v9fs_xattr_set fndecl 4 53342 NULL
@@ -172098,7 +171338,6 @@ index 0000000..9da833a
+enable_so_cfs_hash_buckets_realloc_fndecl_53415 cfs_hash_buckets_realloc fndecl 4 53415 &enable_so_dib9000_firmware_download_fndecl_53415
+enable_so_vlan_dev_set_egress_priority_fndecl_53418 vlan_dev_set_egress_priority fndecl 3 53418 NULL nohasharray
+enable_so_rxHeader3_edgeport_serial_53418 rxHeader3 edgeport_serial 0 53418 &enable_so_vlan_dev_set_egress_priority_fndecl_53418
-+enable_so_codec_reg_read_file_fndecl_53419 codec_reg_read_file fndecl 3 53419 NULL
+enable_so_expand_stack_fndecl_53426 expand_stack fndecl 2 53426 NULL nohasharray
+enable_so_nbits_nvmem_cell_info_53426 nbits nvmem_cell_info 0 53426 &enable_so_expand_stack_fndecl_53426
+enable_so_compat_sys_mbind_fndecl_53427 compat_sys_mbind fndecl 2-1-5 53427 NULL nohasharray
@@ -172111,7 +171350,6 @@ index 0000000..9da833a
+enable_so_first_offset_pciserial_board_53452 first_offset pciserial_board 0 53452 NULL
+enable_so_nouveau_cli_create_fndecl_53462 nouveau_cli_create fndecl 3 53462 NULL
+enable_so_c_blkno_ocfs2_chain_rec_53466 c_blkno ocfs2_chain_rec 0 53466 NULL
-+enable_so_lpfc_debugfs_dif_err_read_fndecl_53468 lpfc_debugfs_dif_err_read fndecl 3 53468 NULL
+enable_so_jbd2_journal_init_revoke_table_fndecl_53475 jbd2_journal_init_revoke_table fndecl 1 53475 NULL
+enable_so_isku_sysfs_read_key_mask_fndecl_53476 isku_sysfs_read_key_mask fndecl 6 53476 NULL
+enable_so_new_chunk_sectors_mddev_53479 new_chunk_sectors mddev 0 53479 NULL
@@ -172126,13 +171364,13 @@ index 0000000..9da833a
+enable_so_len_rx_pool_53489 len rx_pool 0 53489 &enable_so_usCRTC_V_SyncWidth__ATOM_MODE_TIMING_53489
+enable_so_len_nft_cmp_expr_53491 len nft_cmp_expr 0 53491 NULL
+enable_so_isdn_getnum_fndecl_53492 isdn_getnum fndecl 0 53492 NULL
-+enable_so_get_allocated_memblock_memory_regions_info_fndecl_53495 get_allocated_memblock_memory_regions_info fndecl 0 53495 NULL nohasharray
-+enable_so_subctxt_cnt_qib_ctxtdata_53495 subctxt_cnt qib_ctxtdata 0 53495 &enable_so_get_allocated_memblock_memory_regions_info_fndecl_53495
++enable_so_subctxt_cnt_qib_ctxtdata_53495 subctxt_cnt qib_ctxtdata 0 53495 NULL nohasharray
++enable_so_get_allocated_memblock_memory_regions_info_fndecl_53495 get_allocated_memblock_memory_regions_info fndecl 0 53495 &enable_so_subctxt_cnt_qib_ctxtdata_53495
+enable_so___blk_end_request_err_fndecl_53498 __blk_end_request_err fndecl 2 53498 NULL
+enable_so___compat_sys_pwritev64_fndecl_53499 __compat_sys_pwritev64 fndecl 3 53499 NULL
+enable_so_lc_create_fndecl_53503 lc_create fndecl 4 53503 NULL
-+enable_so_data_out_size_mpt2_ioctl_command_53510 data_out_size mpt2_ioctl_command 0 53510 NULL nohasharray
-+enable_so_mthca_buf_alloc_fndecl_53510 mthca_buf_alloc fndecl 2 53510 &enable_so_data_out_size_mpt2_ioctl_command_53510
++enable_so_tipc_link_mtu_fndecl_53508 tipc_link_mtu fndecl 0 53508 NULL
++enable_so_mthca_buf_alloc_fndecl_53510 mthca_buf_alloc fndecl 2 53510 NULL
+enable_so_mmc_io_rw_extended_fndecl_53515 mmc_io_rw_extended fndecl 8-7 53515 NULL
+enable_so_dme1737_isa_device_add_fndecl_53516 dme1737_isa_device_add fndecl 1 53516 NULL
+enable_so_max_dev_vardecl_osst_c_53523 max_dev vardecl_osst.c 0 53523 NULL
@@ -172172,25 +171410,23 @@ index 0000000..9da833a
+enable_so_len_rproc_vring_53618 len rproc_vring 0 53618 &enable_so_put_cmsg_compat_fndecl_53618
+enable_so_header_len_tso_state_53620 header_len tso_state 0 53620 NULL
+enable_so_qcaspi_write_legacy_fndecl_53623 qcaspi_write_legacy fndecl 3 53623 NULL
-+enable_so_pc_npartners_ptlrpcd_ctl_53625 pc_npartners ptlrpcd_ctl 0 53625 NULL
+enable_so_btt_flog_write_fndecl_53628 btt_flog_write fndecl 0 53628 NULL
+enable_so_num_channels_mlx5e_params_53632 num_channels mlx5e_params 0 53632 NULL
+enable_so_selfballoon_downhysteresis_vardecl_xen_selfballoon_c_53636 selfballoon_downhysteresis vardecl_xen-selfballoon.c 0 53636 NULL
+enable_so_remote_nentries_xpc_openclose_args_53643 remote_nentries xpc_openclose_args 0 53643 NULL
+enable_so_locks_mandatory_area_fndecl_53644 locks_mandatory_area fndecl 0 53644 NULL nohasharray
+enable_so_ticket2_len_rxk5_key_53644 ticket2_len rxk5_key 0 53644 &enable_so_locks_mandatory_area_fndecl_53644
-+enable_so_write_file_antenna_fndecl_53645 write_file_antenna fndecl 3 53645 NULL nohasharray
-+enable_so_kuc_alloc_fndecl_53645 kuc_alloc fndecl 1 53645 &enable_so_write_file_antenna_fndecl_53645
++enable_so_write_file_antenna_fndecl_53645 write_file_antenna fndecl 3 53645 NULL
+enable_so_ioc_plen2_obd_ioctl_data_53648 ioc_plen2 obd_ioctl_data 0 53648 NULL
+enable_so_extra_tx_headroom_rt2x00_dev_53650 extra_tx_headroom rt2x00_dev 0 53650 NULL
+enable_so_ceph_buffer_new_fndecl_53653 ceph_buffer_new fndecl 1 53653 NULL nohasharray
+enable_so_generic_ocp_read_fndecl_53653 generic_ocp_read fndecl 3 53653 &enable_so_ceph_buffer_new_fndecl_53653
+enable_so_acl_alloc_fndecl_53656 acl_alloc fndecl 1 53656 NULL
++enable_so_dlist_count_vc4_plane_state_53658 dlist_count vc4_plane_state 0 53658 NULL
+enable_so_ethertype_fddi_snap_hdr_53659 ethertype fddi_snap_hdr 0 53659 NULL
+enable_so_page_add_anon_rmap_fndecl_53660 page_add_anon_rmap fndecl 3 53660 NULL
+enable_so_hr_data_len_hsm_request_53666 hr_data_len hsm_request 0 53666 NULL
-+enable_so_num_sge_ib_uverbs_send_wr_53667 num_sge ib_uverbs_send_wr 0 53667 NULL nohasharray
-+enable_so_il3945_ucode_tx_stats_read_fndecl_53667 il3945_ucode_tx_stats_read fndecl 3 53667 &enable_so_num_sge_ib_uverbs_send_wr_53667
++enable_so_num_sge_ib_uverbs_send_wr_53667 num_sge ib_uverbs_send_wr 0 53667 NULL
+enable_so_cpu_addr_of_pci_range_53670 cpu_addr of_pci_range 0 53670 NULL
+enable_so_kvec_array_init_fndecl_53672 kvec_array_init fndecl 4-0-3 53672 NULL
+enable_so___videobuf_alloc_fndecl_53676 __videobuf_alloc fndecl 1 53676 NULL
@@ -172226,8 +171462,8 @@ index 0000000..9da833a
+enable_so_write_emulate_fndecl_53746 write_emulate fndecl 2-4 53746 NULL
+enable_so_get_crop_info_h_s5p_mfc_hw_ops_53747 get_crop_info_h s5p_mfc_hw_ops 0 53747 NULL
+enable_so_count_user_sgmap_53748 count user_sgmap 0 53748 NULL
-+enable_so_ieee80211_if_write_tsf_fndecl_53758 ieee80211_if_write_tsf fndecl 3 53758 NULL nohasharray
-+enable_so_SenderSize_aac_fibhdr_53758 SenderSize aac_fibhdr 0 53758 &enable_so_ieee80211_if_write_tsf_fndecl_53758
++enable_so_SenderSize_aac_fibhdr_53758 SenderSize aac_fibhdr 0 53758 NULL nohasharray
++enable_so_ieee80211_if_write_tsf_fndecl_53758 ieee80211_if_write_tsf fndecl 3 53758 &enable_so_SenderSize_aac_fibhdr_53758
+enable_so_seg_num_mad_rmpp_recv_53761 seg_num mad_rmpp_recv 0 53761 NULL
+enable_so_dies_onenand_chip_53762 dies onenand_chip 0 53762 NULL
+enable_so_padding_iscsi_cmd_53768 padding iscsi_cmd 0 53768 NULL
@@ -172242,6 +171478,7 @@ index 0000000..9da833a
+enable_so_resp_iec_m_pg_fndecl_53792 resp_iec_m_pg fndecl 0 53792 NULL
+enable_so_Control_2_RxD_t_53794 Control_2 RxD_t 0 53794 NULL nohasharray
+enable_so_qlcnic_process_rcv_fndecl_53794 qlcnic_process_rcv fndecl 4 53794 &enable_so_Control_2_RxD_t_53794
++enable_so_st21nfca_hci_loopback_fndecl_53795 st21nfca_hci_loopback fndecl 3 53795 NULL
+enable_so_epnum_isp1362_ep_53803 epnum isp1362_ep 0 53803 NULL nohasharray
+enable_so_osd_req_list_collection_objects_fndecl_53803 osd_req_list_collection_objects fndecl 5 53803 &enable_so_epnum_isp1362_ep_53803 nohasharray
+enable_so_mgmt_send_event_fndecl_53803 mgmt_send_event fndecl 5 53803 &enable_so_osd_req_list_collection_objects_fndecl_53803
@@ -172249,12 +171486,10 @@ index 0000000..9da833a
+enable_so_ring_size_netvsc_device_info_53811 ring_size netvsc_device_info 0 53811 NULL
+enable_so_msix_count_xhci_hcd_53816 msix_count xhci_hcd 0 53816 NULL
+enable_so_jffs2_flash_write_fndecl_53819 jffs2_flash_write fndecl 3-2 53819 NULL nohasharray
-+enable_so_lpfc_idiag_extacc_alloc_get_fndecl_53819 lpfc_idiag_extacc_alloc_get fndecl 0-3 53819 &enable_so_jffs2_flash_write_fndecl_53819 nohasharray
-+enable_so_tty_copy_to_user_fndecl_53819 tty_copy_to_user fndecl 4 53819 &enable_so_lpfc_idiag_extacc_alloc_get_fndecl_53819
++enable_so_tty_copy_to_user_fndecl_53819 tty_copy_to_user fndecl 4 53819 &enable_so_jffs2_flash_write_fndecl_53819
+enable_so_doorbell_start_nes_device_53820 doorbell_start nes_device 0 53820 NULL nohasharray
+enable_so_logical_minimum_hid_field_53820 logical_minimum hid_field 0 53820 &enable_so_doorbell_start_nes_device_53820
-+enable_so_choose_rate_fndecl_53821 choose_rate fndecl 3 53821 NULL nohasharray
-+enable_so_tx_data_ep_usb_card_rec_53821 tx_data_ep usb_card_rec 0 53821 &enable_so_choose_rate_fndecl_53821
++enable_so_choose_rate_fndecl_53821 choose_rate fndecl 3 53821 NULL
+enable_so_smem_len_fb_fix_screeninfo_53824 smem_len fb_fix_screeninfo 0 53824 NULL
+enable_so_cam_get_response16_fndecl_53836 cam_get_response16 fndecl 0 53836 NULL
+enable_so_gsmtty_write_fndecl_53837 gsmtty_write fndecl 3 53837 NULL
@@ -172274,10 +171509,10 @@ index 0000000..9da833a
+enable_so_path_getxattr_fndecl_53886 path_getxattr fndecl 4 53886 &enable_so_cx25821_alsa_dma_init_fndecl_53886
+enable_so_drbd_setbufsize_fndecl_53887 drbd_setbufsize fndecl 2 53887 NULL
+enable_so_amdgpu_vce_sw_init_fndecl_53888 amdgpu_vce_sw_init fndecl 2 53888 NULL
++enable_so_br_vlan_set_proto_fndecl_53897 br_vlan_set_proto fndecl 2 53897 NULL
+enable_so_total_read_TCP_Server_Info_53900 total_read TCP_Server_Info 0 53900 NULL
-+enable_so_alignf_resource_constraint_53903 alignf resource_constraint 0 53903 NULL nohasharray
-+enable_so_e1000_consume_page_fndecl_53903 e1000_consume_page fndecl 3 53903 &enable_so_alignf_resource_constraint_53903
-+enable_so_amdtp_stream_set_parameters_fndecl_53905 amdtp_stream_set_parameters fndecl 4-3 53905 NULL
++enable_so_e1000_consume_page_fndecl_53903 e1000_consume_page fndecl 3 53903 NULL nohasharray
++enable_so_alignf_resource_constraint_53903 alignf resource_constraint 0 53903 &enable_so_e1000_consume_page_fndecl_53903
+enable_so_image_len_brcmf_usbdev_info_53909 image_len brcmf_usbdev_info 0 53909 NULL
+enable_so_vop_len_solo_enc_dev_53910 vop_len solo_enc_dev 0 53910 NULL
+enable_so_snd_rawmidi_kernel_read1_fndecl_53911 snd_rawmidi_kernel_read1 fndecl 4-0 53911 NULL nohasharray
@@ -172309,19 +171544,16 @@ index 0000000..9da833a
+enable_so_cfpkt_add_head_fndecl_53990 cfpkt_add_head fndecl 3 53990 &enable_so_hfsplus_create_cat_fndecl_53990
+enable_so_cm_write_fndecl_53993 cm_write fndecl 3 53993 NULL
+enable_so_btrfs_init_new_buffer_fndecl_53996 btrfs_init_new_buffer fndecl 3 53996 NULL
-+enable_so_size_drbd_interval_54002 size drbd_interval 0 54002 NULL nohasharray
-+enable_so_int_hardware_entry_fndecl_54002 int_hardware_entry fndecl 3 54002 &enable_so_size_drbd_interval_54002
++enable_so_size_drbd_interval_54002 size drbd_interval 0 54002 NULL
+enable_so_ax88179_change_mtu_fndecl_54007 ax88179_change_mtu fndecl 2 54007 NULL
+enable_so_nonstatic_find_io_fndecl_54015 nonstatic_find_io fndecl 4 54015 NULL
+enable_so_submit_stripe_bio_fndecl_54016 submit_stripe_bio fndecl 4 54016 NULL
+enable_so_rsi_setblocklength_fndecl_54024 rsi_setblocklength fndecl 2 54024 NULL
-+enable_so_dlen_hci_vendor_hdr_54025 dlen hci_vendor_hdr 0 54025 NULL
+enable_so_xz_dec_lzma2_create_fndecl_54034 xz_dec_lzma2_create fndecl 2 54034 NULL
+enable_so_sum_size_jffs2_summary_54035 sum_size jffs2_summary 0 54035 NULL
+enable_so_s_nextid_exofs_sb_info_54042 s_nextid exofs_sb_info 0 54042 NULL
+enable_so_sierra_write_fndecl_54049 sierra_write fndecl 4 54049 NULL
+enable_so_sci_probe_single_fndecl_54053 sci_probe_single fndecl 2 54053 NULL
-+enable_so__iwl_dbgfs_uapsd_misbehaving_write_fndecl_54054 _iwl_dbgfs_uapsd_misbehaving_write fndecl 3 54054 NULL
+enable_so_storvsc_ringbuffer_size_vardecl_storvsc_drv_c_54060 storvsc_ringbuffer_size vardecl_storvsc_drv.c 0 54060 NULL
+enable_so_msb_update_block_fndecl_54063 msb_update_block fndecl 0-4-2 54063 NULL
+enable_so_tunables_read_fndecl_54066 tunables_read fndecl 3 54066 NULL
@@ -172331,6 +171563,7 @@ index 0000000..9da833a
+enable_so_rp2_minor_next_vardecl_rp2_c_54074 rp2_minor_next vardecl_rp2.c 0 54074 &enable_so_i_next_section_offset_iso_inode_info_54074
+enable_so_xennet_change_mtu_fndecl_54076 xennet_change_mtu fndecl 2 54076 NULL nohasharray
+enable_so_afs_alloc_flat_call_fndecl_54076 afs_alloc_flat_call fndecl 2-3 54076 &enable_so_xennet_change_mtu_fndecl_54076
++enable_so_qed_cxt_cdu_iids_fndecl_54088 qed_cxt_cdu_iids fndecl 0 54088 NULL
+enable_so_bytes_cifs_writedata_54089 bytes cifs_writedata 0 54089 NULL
+enable_so_get_mtu_xfrm_type_54090 get_mtu xfrm_type 0 54090 NULL
+enable_so_align_pnp_port_54093 align pnp_port 0 54093 NULL nohasharray
@@ -172353,10 +171586,12 @@ index 0000000..9da833a
+enable_so_carl9170_exec_cmd_fndecl_54141 carl9170_exec_cmd fndecl 3 54141 &enable_so_change_protection_range_fndecl_54141 nohasharray
+enable_so_gfs2_inode_ra_len_fndecl_54141 gfs2_inode_ra_len fndecl 0 54141 &enable_so_carl9170_exec_cmd_fndecl_54141
+enable_so_netvsc_change_mtu_fndecl_54142 netvsc_change_mtu fndecl 2 54142 NULL
++enable_so_f2fs_do_collapse_fndecl_54143 f2fs_do_collapse fndecl 2-3 54143 NULL
+enable_so_brcmf_usb_dl_writeimage_fndecl_54144 brcmf_usb_dl_writeimage fndecl 3 54144 NULL
+enable_so_hs_cur_bits_cfs_hash_54147 hs_cur_bits cfs_hash 0 54147 NULL
+enable_so_sp2_write_i2c_fndecl_54157 sp2_write_i2c fndecl 4 54157 NULL nohasharray
+enable_so___hwahc_op_set_ptk_fndecl_54157 __hwahc_op_set_ptk fndecl 5 54157 &enable_so_sp2_write_i2c_fndecl_54157
++enable_so_nval_property_entry_54158 nval property_entry 0 54158 NULL
+enable_so_num_qp_mthca_profile_54160 num_qp mthca_profile 0 54160 NULL
+enable_so_b43_nphy_load_samples_fndecl_54162 b43_nphy_load_samples fndecl 3 54162 NULL
+enable_so_lock_and_cleanup_extent_if_need_fndecl_54163 lock_and_cleanup_extent_if_need fndecl 3-4 54163 NULL
@@ -172364,20 +171599,19 @@ index 0000000..9da833a
+enable_so_cmd_loop_fndecl_54168 cmd_loop fndecl 0 54168 NULL
+enable_so_ip6_append_data_fndecl_54169 ip6_append_data fndecl 5-4 54169 NULL nohasharray
+enable_so_writebuf_size_tomoyo_io_buffer_54169 writebuf_size tomoyo_io_buffer 0 54169 &enable_so_ip6_append_data_fndecl_54169
++enable_so_st_nci_probe_fndecl_54170 st_nci_probe fndecl 2 54170 NULL
+enable_so_handle_one_ule_extension_fndecl_54174 handle_one_ule_extension fndecl 0 54174 NULL
+enable_so__osd_req_encode_partition_fndecl_54177 _osd_req_encode_partition fndecl 2 54177 NULL
+enable_so_num_bytes_drm_dp_remote_dpcd_write_54181 num_bytes drm_dp_remote_dpcd_write 0 54181 NULL
+enable_so_len_xfs_alloc_arg_54187 len xfs_alloc_arg 0 54187 NULL
+enable_so_cpu_type_read_fndecl_54191 cpu_type_read fndecl 3 54191 NULL
-+enable_so_nfs_llseek_dir_fndecl_54192 nfs_llseek_dir fndecl 2 54192 NULL nohasharray
-+enable_so__iwl_dbgfs_fw_nmi_write_fndecl_54192 _iwl_dbgfs_fw_nmi_write fndecl 3 54192 &enable_so_nfs_llseek_dir_fndecl_54192
++enable_so_nfs_llseek_dir_fndecl_54192 nfs_llseek_dir fndecl 2 54192 NULL
+enable_so_tp_ep_bcm5974_config_54193 tp_ep bcm5974_config 0 54193 NULL
+enable_so_current_speed_ide_drive_s_54197 current_speed ide_drive_s 0 54197 NULL
+enable_so_ipw2100_set_essid_fndecl_54200 ipw2100_set_essid fndecl 3 54200 NULL
-+enable_so_ieee80211_if_read_fwded_frames_fndecl_54203 ieee80211_if_read_fwded_frames fndecl 3 54203 NULL
-+enable_so_contexts_nouveau_fence_priv_54204 contexts nouveau_fence_priv 0 54204 NULL nohasharray
-+enable_so_p_filesz_elf32_phdr_54204 p_filesz elf32_phdr 0 54204 &enable_so_contexts_nouveau_fence_priv_54204 nohasharray
-+enable_so_ath6kl_interface_add_fndecl_54204 ath6kl_interface_add fndecl 5 54204 &enable_so_p_filesz_elf32_phdr_54204
++enable_so_p_filesz_elf32_phdr_54204 p_filesz elf32_phdr 0 54204 NULL nohasharray
++enable_so_contexts_nouveau_fence_priv_54204 contexts nouveau_fence_priv 0 54204 &enable_so_p_filesz_elf32_phdr_54204 nohasharray
++enable_so_ath6kl_interface_add_fndecl_54204 ath6kl_interface_add fndecl 5 54204 &enable_so_contexts_nouveau_fence_priv_54204
+enable_so_min_priority_binder_node_54207 min_priority binder_node 0 54207 NULL nohasharray
+enable_so_nframes_bcm_msg_head_54207 nframes bcm_msg_head 0 54207 &enable_so_min_priority_binder_node_54207
+enable_so_mxt_bootloader_write_fndecl_54210 mxt_bootloader_write fndecl 3 54210 NULL nohasharray
@@ -172405,7 +171639,6 @@ index 0000000..9da833a
+enable_so___erst_read_fndecl_54256 __erst_read fndecl 0-1 54256 NULL
+enable_so_ssb_bus_scan_fndecl_54257 ssb_bus_scan fndecl 2 54257 NULL
+enable_so_qnx6_iget_fndecl_54262 qnx6_iget fndecl 2 54262 NULL
-+enable_so_txrx_bufs_spi_bitbang_54265 txrx_bufs spi_bitbang 0 54265 NULL
+enable_so_put_cmsg_fndecl_54270 put_cmsg fndecl 4 54270 NULL
+enable_so_msdu_len_htt_rx_in_ord_msdu_desc_54278 msdu_len htt_rx_in_ord_msdu_desc 0 54278 NULL
+enable_so_key_size_crypt_config_54287 key_size crypt_config 0 54287 NULL
@@ -172424,7 +171657,6 @@ index 0000000..9da833a
+enable_so_vringh_iov_push_user_fndecl_54340 vringh_iov_push_user fndecl 3 54340 NULL nohasharray
+enable_so_iscsi_conn_setup_fndecl_54340 iscsi_conn_setup fndecl 2 54340 &enable_so_vringh_iov_push_user_fndecl_54340
+enable_so_max_rcvbuf_size_tipc_server_54342 max_rcvbuf_size tipc_server 0 54342 NULL
-+enable_so_ieee80211_if_read_bssid_fndecl_54346 ieee80211_if_read_bssid fndecl 3 54346 NULL
+enable_so_max_raw_minors_vardecl_raw_c_54348 max_raw_minors vardecl_raw.c 0 54348 NULL
+enable_so_wm8997_set_fll_fndecl_54349 wm8997_set_fll fndecl 5 54349 NULL
+enable_so_k_objectid_in_core_key_54352 k_objectid in_core_key 0 54352 NULL nohasharray
@@ -172434,6 +171666,7 @@ index 0000000..9da833a
+enable_so_encode_netobj_fndecl_54356 encode_netobj fndecl 3 54356 NULL
+enable_so_radeon_vram_limit_vardecl_54357 radeon_vram_limit vardecl 0 54357 NULL
+enable_so_tpm_tis_i2c_send_fndecl_54358 tpm_tis_i2c_send fndecl 3 54358 NULL
++enable_so_rocker_group_l2_flood_fndecl_54359 rocker_group_l2_flood fndecl 5 54359 NULL
+enable_so_pkt_size_rx_pkt_status_54360 pkt_size rx_pkt_status 0 54360 NULL
+enable_so_gntdev_alloc_map_fndecl_54362 gntdev_alloc_map fndecl 2 54362 NULL
+enable_so_ceph_get_caps_fndecl_54363 ceph_get_caps fndecl 0 54363 NULL
@@ -172443,16 +171676,15 @@ index 0000000..9da833a
+enable_so_num_cpu_pages_radeon_gart_54371 num_cpu_pages radeon_gart 0 54371 &enable_so_mlx4_ib_get_cq_umem_fndecl_54371
+enable_so_scif_setup_qp_connect_fndecl_54372 scif_setup_qp_connect fndecl 3 54372 NULL
+enable_so_saved_priority_binder_transaction_54377 saved_priority binder_transaction 0 54377 NULL
-+enable_so_iwl_nvm_read_chunk_fndecl_54381 iwl_nvm_read_chunk fndecl 0 54381 NULL
+enable_so_bt878_adr_bt878_54384 bt878_adr bt878 0 54384 NULL
+enable_so_mt7601u_rx_next_seg_len_fndecl_54390 mt7601u_rx_next_seg_len fndecl 0 54390 NULL
+enable_so_nbufs_mlx4_buf_54391 nbufs mlx4_buf 0 54391 NULL
+enable_so_ring_size_netvsc_device_54397 ring_size netvsc_device 0 54397 NULL
+enable_so_memsize_viafb_par_54399 memsize viafb_par 0 54399 NULL nohasharray
+enable_so_SyS_init_module_fndecl_54399 SyS_init_module fndecl 2 54399 &enable_so_memsize_viafb_par_54399
-+enable_so_striped_read_fndecl_54401 striped_read fndecl 0-2 54401 NULL nohasharray
-+enable_so_leaf_shift_left_fndecl_54401 leaf_shift_left fndecl 3 54401 &enable_so_striped_read_fndecl_54401 nohasharray
-+enable_so_security_key_getsecurity_fndecl_54401 security_key_getsecurity fndecl 0 54401 &enable_so_leaf_shift_left_fndecl_54401
++enable_so_leaf_shift_left_fndecl_54401 leaf_shift_left fndecl 3 54401 NULL nohasharray
++enable_so_striped_read_fndecl_54401 striped_read fndecl 0-2 54401 &enable_so_leaf_shift_left_fndecl_54401 nohasharray
++enable_so_security_key_getsecurity_fndecl_54401 security_key_getsecurity fndecl 0 54401 &enable_so_striped_read_fndecl_54401
+enable_so__osd_req_alist_elem_size_fndecl_54403 _osd_req_alist_elem_size fndecl 0-2 54403 NULL
+enable_so_gr_ep0_respond_fndecl_54405 gr_ep0_respond fndecl 3 54405 NULL
+enable_so_len_a2mp_cmd_54407 len a2mp_cmd 0 54407 NULL
@@ -172476,7 +171708,6 @@ index 0000000..9da833a
+enable_so_jbd2_journal_get_write_access_fndecl_54444 jbd2_journal_get_write_access fndecl 0 54444 NULL
+enable_so_gfn_to_page_many_atomic_fndecl_54449 gfn_to_page_many_atomic fndecl 2 54449 NULL
+enable_so_kimage_file_prepare_segments_fndecl_54451 kimage_file_prepare_segments fndecl 5 54451 NULL
-+enable_so_regmap_cache_bypass_write_file_fndecl_54455 regmap_cache_bypass_write_file fndecl 3 54455 NULL
+enable_so_upd_ltab_fndecl_54459 upd_ltab fndecl 3 54459 NULL
+enable_so_a_count_posix_acl_54461 a_count posix_acl 0 54461 NULL nohasharray
+enable_so_vringh_init_kern_fndecl_54461 vringh_init_kern fndecl 3 54461 &enable_so_a_count_posix_acl_54461
@@ -172507,10 +171738,10 @@ index 0000000..9da833a
+enable_so_v_sync_strt_wid_crtc_54541 v_sync_strt_wid crtc 0 54541 NULL nohasharray
+enable_so_bandlength_Kiara_table_entry_54541 bandlength Kiara_table_entry 0 54541 &enable_so_v_sync_strt_wid_crtc_54541
+enable_so_s_dev_table_count_exofs_fscb_54542 s_dev_table_count exofs_fscb 0 54542 NULL
-+enable_so_bpp_vardecl_tridentfb_c_54547 bpp vardecl_tridentfb.c 0 54547 NULL
++enable_so_dvb_dmxdev_section_callback_fndecl_54550 dvb_dmxdev_section_callback fndecl 2-4 54550 NULL
+enable_so_pages_snd_sg_buf_54557 pages snd_sg_buf 0 54557 NULL
-+enable_so_ieee80211_if_read_txpower_fndecl_54564 ieee80211_if_read_txpower fndecl 3 54564 NULL
-+enable_so_num_cache_leaves_vardecl_54568 num_cache_leaves vardecl 0 54568 NULL
++enable_so_interval_exp_blk_integrity_54558 interval_exp blk_integrity 0 54558 NULL
++enable_so_cp_nr_rings_bnxt_54565 cp_nr_rings bnxt 0 54565 NULL
+enable_so_ath6kl_wmi_probe_report_req_cmd_fndecl_54576 ath6kl_wmi_probe_report_req_cmd fndecl 2 54576 NULL
+enable_so_qnx6_check_first_superblock_fndecl_54577 qnx6_check_first_superblock fndecl 2 54577 NULL
+enable_so_priority_sk_buff_54581 priority sk_buff 0 54581 NULL
@@ -172531,16 +171762,15 @@ index 0000000..9da833a
+enable_so_adfs_f_read_fndecl_54612 adfs_f_read fndecl 2 54612 NULL
+enable_so_msg_print_text_fndecl_54618 msg_print_text fndecl 0 54618 NULL
+enable_so_ieee80211_if_write_fndecl_54621 ieee80211_if_write fndecl 3 54621 NULL
-+enable_so_pages_in_unit___stripe_pages_2d_54623 pages_in_unit __stripe_pages_2d 0 54623 NULL nohasharray
-+enable_so_nr_frames_frame_vector_54623 nr_frames frame_vector 0 54623 &enable_so_pages_in_unit___stripe_pages_2d_54623
++enable_so_pages_in_unit___stripe_pages_2d_54623 pages_in_unit __stripe_pages_2d 0 54623 NULL
+enable_so_fb_aper_offset_drm_radeon_private_54625 fb_aper_offset drm_radeon_private 0 54625 NULL
+enable_so_ext4_new_meta_blocks_fndecl_54631 ext4_new_meta_blocks fndecl 0 54631 NULL
+enable_so_len_ncp_privatedata_ioctl_54632 len ncp_privatedata_ioctl 0 54632 NULL
+enable_so_vt1211_device_add_fndecl_54634 vt1211_device_add fndecl 1 54634 NULL
+enable_so_bits_per_sample_soc_mbus_pixelfmt_54636 bits_per_sample soc_mbus_pixelfmt 0 54636 NULL nohasharray
+enable_so_text_len_printk_log_54636 text_len printk_log 0 54636 &enable_so_bits_per_sample_soc_mbus_pixelfmt_54636
-+enable_so_n_tx_channels_efx_nic_54638 n_tx_channels efx_nic 0 54638 NULL nohasharray
-+enable_so_max_dvc_qng_adv_dvc_var_54638 max_dvc_qng adv_dvc_var 0 54638 &enable_so_n_tx_channels_efx_nic_54638
++enable_so_scif_create_remote_window_fndecl_54638 scif_create_remote_window fndecl 2 54638 NULL nohasharray
++enable_so_n_tx_channels_efx_nic_54638 n_tx_channels efx_nic 0 54638 &enable_so_scif_create_remote_window_fndecl_54638
+enable_so_extra_mpdu_prefix_len_lib80211_crypto_ops_54644 extra_mpdu_prefix_len lib80211_crypto_ops 0 54644 NULL nohasharray
+enable_so_nchannels_cosa_data_54644 nchannels cosa_data 0 54644 &enable_so_extra_mpdu_prefix_len_lib80211_crypto_ops_54644
+enable_so_MaxChainDepth_mpt3sas_facts_54646 MaxChainDepth mpt3sas_facts 0 54646 NULL
@@ -172552,6 +171782,7 @@ index 0000000..9da833a
+enable_so_truncate_pagecache_fndecl_54660 truncate_pagecache fndecl 2 54660 &enable_so_target_freq_mt9p031_platform_data_54660 nohasharray
+enable_so_reshape_position_mddev_54660 reshape_position mddev 0 54660 &enable_so_truncate_pagecache_fndecl_54660
+enable_so_s_session_udf_sb_info_54662 s_session udf_sb_info 0 54662 NULL
++enable_so_qed_cxt_set_proto_cid_count_fndecl_54663 qed_cxt_set_proto_cid_count fndecl 3 54663 NULL
+enable_so_ssid_len_hostap_bss_info_54670 ssid_len hostap_bss_info 0 54670 NULL
+enable_so_sb_imax_pct_xfs_sb_54671 sb_imax_pct xfs_sb 0 54671 NULL
+enable_so_compat_SyS_kexec_load_fndecl_54672 compat_SyS_kexec_load fndecl 2 54672 NULL
@@ -172574,11 +171805,11 @@ index 0000000..9da833a
+enable_so_proc_setgroups_write_fndecl_54732 proc_setgroups_write fndecl 3 54732 NULL
+enable_so_queue_size_eata_info_54734 queue_size eata_info 0 54734 NULL nohasharray
+enable_so_hwdep_read_locked_fndecl_54734 hwdep_read_locked fndecl 3 54734 &enable_so_queue_size_eata_info_54734
-+enable_so_brcmf_fws_hdrpull_fndecl_54736 brcmf_fws_hdrpull fndecl 3 54736 NULL
+enable_so_wBytesPerInterval_usb_ss_ep_comp_descriptor_54739 wBytesPerInterval usb_ss_ep_comp_descriptor 0 54739 NULL
+enable_so_sisusb_copy_memory_fndecl_54747 sisusb_copy_memory fndecl 4 54747 NULL
+enable_so_end_writequeue_entry_54752 end writequeue_entry 0 54752 NULL
-+enable_so_lpfc_hba_queue_depth_init_fndecl_54754 lpfc_hba_queue_depth_init fndecl 2 54754 NULL
++enable_so_mei_cldev_send_fndecl_54754 mei_cldev_send fndecl 3 54754 NULL nohasharray
++enable_so_lpfc_hba_queue_depth_init_fndecl_54754 lpfc_hba_queue_depth_init fndecl 2 54754 &enable_so_mei_cldev_send_fndecl_54754
+enable_so_size__drm_via_cmdbuffer_54755 size _drm_via_cmdbuffer 0 54755 NULL
+enable_so_spi_xcomm_setup_transfer_fndecl_54757 spi_xcomm_setup_transfer fndecl 0 54757 NULL
+enable_so_pwr_connection_out_of_sync_read_fndecl_54758 pwr_connection_out_of_sync_read fndecl 3 54758 NULL
@@ -172620,6 +171851,7 @@ index 0000000..9da833a
+enable_so_usb_dmac_desc_get_fndecl_54869 usb_dmac_desc_get fndecl 2 54869 NULL
+enable_so_leaf_copy_boundary_item_fndecl_54870 leaf_copy_boundary_item fndecl 4 54870 NULL
+enable_so_bufsize_nm256_stream_54875 bufsize nm256_stream 0 54875 NULL
++enable_so_tt_stat_ofs_cyttsp4_opcfg_54880 tt_stat_ofs cyttsp4_opcfg 0 54880 NULL
+enable_so_md_super_write_fndecl_54884 md_super_write fndecl 4-3 54884 NULL
+enable_so_compress_sliced_buf_fndecl_54891 compress_sliced_buf fndecl 0 54891 NULL
+enable_so_lmc_proto_type_fndecl_54893 lmc_proto_type fndecl 0 54893 NULL
@@ -172639,16 +171871,17 @@ index 0000000..9da833a
+enable_so_ipr_copy_ucode_buffer_fndecl_54923 ipr_copy_ucode_buffer fndecl 3 54923 &enable_so_line_length_fb_fix_screeninfo_54923
+enable_so_sector_dm_io_region_54924 sector dm_io_region 0 54924 NULL
+enable_so_cc2520_write_txfifo_fndecl_54930 cc2520_write_txfifo fndecl 3 54930 NULL
-+enable_so_xfs_end_io_direct_write_fndecl_54936 xfs_end_io_direct_write fndecl 2-3 54936 NULL
++enable_so_xfs_end_io_direct_write_fndecl_54936 xfs_end_io_direct_write fndecl 3-2 54936 NULL
+enable_so_hfs_find_set_zero_bits_fndecl_54937 hfs_find_set_zero_bits fndecl 0-3-2 54937 NULL
-+enable_so_blk_queue_logical_block_size_fndecl_54946 blk_queue_logical_block_size fndecl 2 54946 NULL nohasharray
-+enable_so_iwl_dbgfs_disable_ht40_read_fndecl_54946 iwl_dbgfs_disable_ht40_read fndecl 3 54946 &enable_so_blk_queue_logical_block_size_fndecl_54946
-+enable_so_per_rxd_space_vxge_hw_ring_attr_54953 per_rxd_space vxge_hw_ring_attr 0 54953 NULL
++enable_so_blk_queue_logical_block_size_fndecl_54946 blk_queue_logical_block_size fndecl 2 54946 NULL
++enable_so_encx24j600_cmdn_fndecl_54953 encx24j600_cmdn fndecl 4 54953 NULL nohasharray
++enable_so_per_rxd_space_vxge_hw_ring_attr_54953 per_rxd_space vxge_hw_ring_attr 0 54953 &enable_so_encx24j600_cmdn_fndecl_54953
+enable_so_log_blocks_per_seg_f2fs_super_block_54960 log_blocks_per_seg f2fs_super_block 0 54960 NULL
+enable_so_pci_enable_sriov_fndecl_54962 pci_enable_sriov fndecl 2 54962 NULL
+enable_so_offset_usb_iso_packet_descriptor_54977 offset usb_iso_packet_descriptor 0 54977 NULL
+enable_so_v4l2_src_w_yuv_playback_info_54979 v4l2_src_w yuv_playback_info 0 54979 NULL
+enable_so_len_cn_msg_54981 len cn_msg 0 54981 NULL
++enable_so_fence_wait_any_timeout_fndecl_54982 fence_wait_any_timeout fndecl 2 54982 NULL
+enable_so_size_qib_rq_54983 size qib_rq 0 54983 NULL
+enable_so_ocfs2_direct_IO_write_fndecl_54985 ocfs2_direct_IO_write fndecl 3 54985 NULL
+enable_so_alloc_netdev_mqs_fndecl_54989 alloc_netdev_mqs fndecl 5-1-6 54989 NULL
@@ -172686,7 +171919,6 @@ index 0000000..9da833a
+enable_so_frame_len_b43legacy_rxhdr_fw3_55086 frame_len b43legacy_rxhdr_fw3 0 55086 &enable_so_ext4_iget_normal_fndecl_55086
+enable_so_width_smiapp_csi_data_format_55090 width smiapp_csi_data_format 0 55090 NULL
+enable_so_vlan_rx_desc_55097 vlan rx_desc 0 55097 NULL
-+enable_so_usrtags_sym_tcb_55101 usrtags sym_tcb 0 55101 NULL
+enable_so_read_kmem_fndecl_55103 read_kmem fndecl 3 55103 NULL
+enable_so_fat_mirror_bhs_fndecl_55104 fat_mirror_bhs fndecl 0 55104 NULL nohasharray
+enable_so_nftids_tid_info_55104 nftids tid_info 0 55104 &enable_so_fat_mirror_bhs_fndecl_55104
@@ -172705,7 +171937,6 @@ index 0000000..9da833a
+enable_so_gigaset_isowbuf_getbytes_fndecl_55147 gigaset_isowbuf_getbytes fndecl 0-2 55147 NULL
+enable_so_befs_find_brun_dblindirect_fndecl_55152 befs_find_brun_dblindirect fndecl 3 55152 NULL
+enable_so_offset_req_ies_ndis_80211_assoc_info_55155 offset_req_ies ndis_80211_assoc_info 0 55155 NULL
-+enable_so_iwl_dbgfs_drv_rx_stats_read_fndecl_55157 iwl_dbgfs_drv_rx_stats_read fndecl 3 55157 NULL
+enable_so_sb_start_md_rdev_55161 sb_start md_rdev 0 55161 NULL
+enable_so_buffer_to_user_fndecl_55164 buffer_to_user fndecl 3 55164 NULL
+enable_so_len_replay_entry_55168 len replay_entry 0 55168 NULL
@@ -172734,7 +171965,6 @@ index 0000000..9da833a
+enable_so_d_reclen_venus_dirent_55253 d_reclen venus_dirent 0 55253 NULL
+enable_so_size_pci_cap_saved_data_55258 size pci_cap_saved_data 0 55258 NULL
+enable_so___filemap_fdatawrite_range_fndecl_55259 __filemap_fdatawrite_range fndecl 0-2-3 55259 NULL
-+enable_so_iwl_dbgfs_bt_traffic_read_fndecl_55261 iwl_dbgfs_bt_traffic_read fndecl 3 55261 NULL
+enable_so_bpf_convert_filter_fndecl_55264 bpf_convert_filter fndecl 2 55264 NULL
+enable_so_mbox_count_blogic_adapter_55274 mbox_count blogic_adapter 0 55274 NULL
+enable_so_bSubframeSize_uac_format_type_i_discrete_descriptor_55277 bSubframeSize uac_format_type_i_discrete_descriptor 0 55277 NULL nohasharray
@@ -172743,7 +171973,8 @@ index 0000000..9da833a
+enable_so_ext2_acl_from_disk_fndecl_55279 ext2_acl_from_disk fndecl 2 55279 &enable_so_apic_phys_vardecl_apic_c_55279 nohasharray
+enable_so_num_radar_types_dfs_pattern_detector_55279 num_radar_types dfs_pattern_detector 0 55279 &enable_so_ext2_acl_from_disk_fndecl_55279
+enable_so_ld_default_stripe_count_lov_desc_55281 ld_default_stripe_count lov_desc 0 55281 NULL
-+enable_so_vb2_dqbuf_fndecl_55284 vb2_dqbuf fndecl 0 55284 NULL
++enable_so_copy_to_urb_fndecl_55284 copy_to_urb fndecl 5-4 55284 NULL nohasharray
++enable_so_vb2_dqbuf_fndecl_55284 vb2_dqbuf fndecl 0 55284 &enable_so_copy_to_urb_fndecl_55284
+enable_so_hdrlen_ipv6_rt_hdr_55289 hdrlen ipv6_rt_hdr 0 55289 NULL nohasharray
+enable_so_readlen_proc_data_55289 readlen proc_data 0 55289 &enable_so_hdrlen_ipv6_rt_hdr_55289
+enable_so_c_can_read_msg_object_fndecl_55291 c_can_read_msg_object fndecl 3 55291 NULL
@@ -172752,7 +171983,6 @@ index 0000000..9da833a
+enable_so_upd_bytes_ubi_volume_55301 upd_bytes ubi_volume 0 55301 NULL
+enable_so_memcg_update_all_caches_fndecl_55303 memcg_update_all_caches fndecl 1 55303 NULL
+enable_so_tgt_cnt_snic_report_tgts_cmpl_55306 tgt_cnt snic_report_tgts_cmpl 0 55306 NULL
-+enable_so_mxl111sf_stream_config_bulk_fndecl_55308 mxl111sf_stream_config_bulk fndecl 2 55308 NULL
+enable_so_xfs_dialloc_fndecl_55309 xfs_dialloc fndecl 2 55309 NULL
+enable_so_xfs_log_mount_fndecl_55312 xfs_log_mount fndecl 3-4 55312 NULL
+enable_so_dataflash_read_fndecl_55313 dataflash_read fndecl 3 55313 NULL nohasharray
@@ -172767,7 +171997,6 @@ index 0000000..9da833a
+enable_so_btrfs_csum_one_bio_fndecl_55370 btrfs_csum_one_bio fndecl 0 55370 NULL
+enable_so_cdc_mbim_process_dgram_fndecl_55371 cdc_mbim_process_dgram fndecl 4-3 55371 NULL nohasharray
+enable_so_sctp_addto_param_fndecl_55371 sctp_addto_param fndecl 2 55371 &enable_so_cdc_mbim_process_dgram_fndecl_55371
-+enable_so_ixgbe_dbg_netdev_ops_write_fndecl_55374 ixgbe_dbg_netdev_ops_write fndecl 3 55374 NULL
+enable_so_connect_frontend_dmx_demux_55378 connect_frontend dmx_demux 0 55378 NULL
+enable_so_DataLength_smb2_write_rsp_55389 DataLength smb2_write_rsp 0 55389 NULL
+enable_so_st_sensors_spi_read_multiple_byte_fndecl_55393 st_sensors_spi_read_multiple_byte fndecl 4 55393 NULL
@@ -172861,12 +172090,10 @@ index 0000000..9da833a
+enable_so_pagl_rightrec_xfs_perag_55670 pagl_rightrec xfs_perag 0 55670 NULL
+enable_so_smsc47m1_handle_resources_fndecl_55676 smsc47m1_handle_resources fndecl 1 55676 NULL
+enable_so_al_stripes_drbd_md_55679 al_stripes drbd_md 0 55679 NULL
-+enable_so_lpfc_idiag_ctlacc_read_fndecl_55684 lpfc_idiag_ctlacc_read fndecl 3 55684 NULL
+enable_so_sel_read_avc_cache_threshold_fndecl_55685 sel_read_avc_cache_threshold fndecl 3 55685 NULL
-+enable_so_rs_sta_dbgfs_drv_tx_stats_read_fndecl_55689 rs_sta_dbgfs_drv_tx_stats_read fndecl 3 55689 NULL
+enable_so_stv06xx_write_bridge_fndecl_55690 stv06xx_write_bridge fndecl 0 55690 NULL
-+enable_so_read_file_tgt_rx_stats_fndecl_55691 read_file_tgt_rx_stats fndecl 3 55691 NULL
+enable_so_omfs_iget_fndecl_55693 omfs_iget fndecl 2 55693 NULL
++enable_so_st_nci_hci_dm_update_aid_fndecl_55699 st_nci_hci_dm_update_aid fndecl 3 55699 NULL
+enable_so_unique_pos_vardecl_jfs_dtree_c_55709 unique_pos vardecl_jfs_dtree.c 0 55709 NULL
+enable_so_inline_wsize_rpcrdma_create_data_internal_55719 inline_wsize rpcrdma_create_data_internal 0 55719 NULL
+enable_so_fbcon_resize_fndecl_55724 fbcon_resize fndecl 3-2 55724 NULL
@@ -172886,16 +172113,17 @@ index 0000000..9da833a
+enable_so_offset_xfs_bmalloca_55767 offset xfs_bmalloca 0 55767 NULL
+enable_so_s_next_psn_qib_qp_55768 s_next_psn qib_qp 0 55768 NULL
+enable_so_flag_lpfc_dmabufext_55771 flag lpfc_dmabufext 0 55771 NULL
-+enable_so_dump_emit_fndecl_55772 dump_emit fndecl 3 55772 NULL nohasharray
-+enable_so_cmd_read_size_wiimote_state_55772 cmd_read_size wiimote_state 0 55772 &enable_so_dump_emit_fndecl_55772
++enable_so_dump_emit_fndecl_55772 dump_emit fndecl 3 55772 NULL
+enable_so_ppp_write_fndecl_55777 ppp_write fndecl 3 55777 NULL
+enable_so_rx_rx_xfr_read_fndecl_55779 rx_rx_xfr_read fndecl 3 55779 NULL
+enable_so_width_cx25821_channel_55782 width cx25821_channel 0 55782 NULL
+enable_so_MaxLiteCmds_vardecl_ips_c_55793 MaxLiteCmds vardecl_ips.c 0 55793 NULL
+enable_so_lbs_lowrssi_write_fndecl_55802 lbs_lowrssi_write fndecl 3 55802 NULL
+enable_so_media_dev_t_vardecl_media_devnode_c_55805 media_dev_t vardecl_media-devnode.c 0 55805 NULL
++enable_so_xennet_tx_setup_grant_fndecl_55807 xennet_tx_setup_grant fndecl 3-2 55807 NULL
+enable_so_velocity_rx_copy_fndecl_55812 velocity_rx_copy fndecl 2 55812 NULL
+enable_so_init_send_hfcd_fndecl_55817 init_send_hfcd fndecl 1 55817 NULL
++enable_so_encx24j600_raw_read_fndecl_55819 encx24j600_raw_read fndecl 4 55819 NULL
+enable_so_result_status_yellowfin_desc_55822 result_status yellowfin_desc 0 55822 NULL
+enable_so_sd_blksz_fw_dl_btmrvl_sdio_card_55832 sd_blksz_fw_dl btmrvl_sdio_card 0 55832 NULL
+enable_so_dvb_ringbuffer_init_fndecl_55834 dvb_ringbuffer_init fndecl 3 55834 NULL
@@ -172909,12 +172137,10 @@ index 0000000..9da833a
+enable_so_cw1200_queue_init_fndecl_55860 cw1200_queue_init fndecl 4 55860 &enable_so_ceph_msgpool_init_fndecl_55860
+enable_so_do_raw_getsockopt_fndecl_55863 do_raw_getsockopt fndecl 0 55863 NULL
+enable_so_cramino_fndecl_55864 cramino fndecl 0-2 55864 NULL
-+enable_so_nports_cyclades_card_55865 nports cyclades_card 0 55865 NULL nohasharray
-+enable_so_bio_integrity_bytes_fndecl_55865 bio_integrity_bytes fndecl 0-2 55865 &enable_so_nports_cyclades_card_55865
++enable_so_nports_cyclades_card_55865 nports cyclades_card 0 55865 NULL
+enable_so___find_pending_exception_fndecl_55867 __find_pending_exception fndecl 3 55867 NULL
+enable_so___nonstatic_find_io_region_fndecl_55871 __nonstatic_find_io_region fndecl 2-3 55871 NULL
-+enable_so_m_aptina_pll_55874 m aptina_pll 0 55874 NULL nohasharray
-+enable_so_cnic_alloc_dma_fndecl_55874 cnic_alloc_dma fndecl 3 55874 &enable_so_m_aptina_pll_55874
++enable_so_cnic_alloc_dma_fndecl_55874 cnic_alloc_dma fndecl 3 55874 NULL
+enable_so_usVSyncWidth__ATOM_DTD_FORMAT_55875 usVSyncWidth _ATOM_DTD_FORMAT 0 55875 NULL
+enable_so_frame_size_usb_stream_config_55876 frame_size usb_stream_config 0 55876 NULL
+enable_so_gtt_phys_start_psb_gtt_55877 gtt_phys_start psb_gtt 0 55877 NULL
@@ -172924,37 +172150,37 @@ index 0000000..9da833a
+enable_so_fragment_size_snd_compressed_buffer_55903 fragment_size snd_compressed_buffer 0 55903 NULL
+enable_so_major_char_device_struct_55907 major char_device_struct 0 55907 NULL
+enable_so_ad7280_chain_setup_fndecl_55912 ad7280_chain_setup fndecl 0 55912 NULL
++enable_so_rocker_port_kcalloc_fndecl_55915 rocker_port_kcalloc fndecl 5-4 55915 NULL
+enable_so_isr_fiqs_read_fndecl_55916 isr_fiqs_read fndecl 3 55916 NULL
-+enable_so__iwl_dbgfs_tof_enable_write_fndecl_55919 _iwl_dbgfs_tof_enable_write fndecl 3 55919 NULL
++enable_so_mrf24j40_long_regmap_read_fndecl_55922 mrf24j40_long_regmap_read fndecl 3-5 55922 NULL
+enable_so_nf_nat_mangle_udp_packet_fndecl_55926 nf_nat_mangle_udp_packet fndecl 4-6-8 55926 NULL
+enable_so_change_prot_numa_fndecl_55935 change_prot_numa fndecl 3-2 55935 NULL
+enable_so_pktlen_pkt_attrib_55936 pktlen pkt_attrib 0 55936 NULL
+enable_so__fdt_add_property_fndecl_55938 _fdt_add_property fndecl 2-4 55938 NULL
+enable_so_autofs4_write_fndecl_55944 autofs4_write fndecl 4 55944 NULL
+enable_so_image_size_nvbios_pcirT_55946 image_size nvbios_pcirT 0 55946 NULL
-+enable_so_ib_create_ah_from_wc_fndecl_55949 ib_create_ah_from_wc fndecl 4 55949 NULL
++enable_so_rate_snd_oxfw_stream_formation_55949 rate snd_oxfw_stream_formation 0 55949 NULL nohasharray
++enable_so_ib_create_ah_from_wc_fndecl_55949 ib_create_ah_from_wc fndecl 4 55949 &enable_so_rate_snd_oxfw_stream_formation_55949
+enable_so_osst_seek_logical_blk_fndecl_55950 osst_seek_logical_blk fndecl 3 55950 NULL
+enable_so_batadv_tvlv_realloc_packet_buff_fndecl_55955 batadv_tvlv_realloc_packet_buff fndecl 4-3 55955 NULL
+enable_so___generic_file_write_iter_fndecl_55960 __generic_file_write_iter fndecl 0 55960 NULL
-+enable_so_hptiop_adjust_disk_queue_depth_fndecl_55961 hptiop_adjust_disk_queue_depth fndecl 2 55961 NULL
+enable_so_pkey_table_len_mthca_limits_55962 pkey_table_len mthca_limits 0 55962 NULL
+enable_so_transfer_buffer_length_urb_55970 transfer_buffer_length urb 0 55970 NULL nohasharray
+enable_so_data2_sisusb_command_55970 data2 sisusb_command 0 55970 &enable_so_transfer_buffer_length_urb_55970 nohasharray
+enable_so_sctp_make_datafrag_empty_fndecl_55970 sctp_make_datafrag_empty fndecl 5 55970 &enable_so_data2_sisusb_command_55970
+enable_so_reg_w_ixbuf_fndecl_55971 reg_w_ixbuf fndecl 4 55971 NULL
++enable_so_host_int_scan_fndecl_55976 host_int_scan fndecl 5-7 55976 NULL
+enable_so_hippi_type_trans_fndecl_55978 hippi_type_trans fndecl 0 55978 NULL
+enable_so_subbuf_size_rchan_55979 subbuf_size rchan 0 55979 NULL nohasharray
+enable_so_scsi_sense_length_se_cmd_55979 scsi_sense_length se_cmd 0 55979 &enable_so_subbuf_size_rchan_55979
-+enable_so_ieee80211_if_read_num_sta_ps_fndecl_55985 ieee80211_if_read_num_sta_ps fndecl 3 55985 NULL
-+enable_so_out_clock_min_aptina_pll_limits_55990 out_clock_min aptina_pll_limits 0 55990 NULL
-+enable_so_platform_list_read_file_fndecl_55997 platform_list_read_file fndecl 3 55997 NULL
+enable_so_mon_bin_get_data_fndecl_55998 mon_bin_get_data fndecl 0-4 55998 NULL
+enable_so_mmc_send_cxd_native_fndecl_56003 mmc_send_cxd_native fndecl 4 56003 NULL
+enable_so_max_degraded_r5conf_56004 max_degraded r5conf 0 56004 NULL
+enable_so_len_pipe_buffer_56007 len pipe_buffer 0 56007 NULL
+enable_so_qib_cdev_init_fndecl_56009 qib_cdev_init fndecl 1 56009 NULL
-+enable_so__osdv1_req_encode_common_fndecl_56013 _osdv1_req_encode_common fndecl 2 56013 NULL
-+enable_so_ath10k_read_ani_enable_fndecl_56020 ath10k_read_ani_enable fndecl 3 56020 NULL
++enable_so_midi_snd_bebob_stream_formation_56012 midi snd_bebob_stream_formation 0 56012 NULL
++enable_so_usbtest_alloc_urb_fndecl_56013 usbtest_alloc_urb fndecl 3-5-2 56013 NULL nohasharray
++enable_so__osdv1_req_encode_common_fndecl_56013 _osdv1_req_encode_common fndecl 2 56013 &enable_so_usbtest_alloc_urb_fndecl_56013
+enable_so_i2400m_change_mtu_fndecl_56021 i2400m_change_mtu fndecl 2 56021 NULL
+enable_so_num_pins_lola_pin_array_56022 num_pins lola_pin_array 0 56022 NULL
+enable_so___ocfs2_change_file_space_fndecl_56023 __ocfs2_change_file_space fndecl 3 56023 NULL
@@ -172986,10 +172212,10 @@ index 0000000..9da833a
+enable_so_bfad_iocmd_ioc_get_pcifn_cfg_fndecl_56085 bfad_iocmd_ioc_get_pcifn_cfg fndecl 0 56085 NULL nohasharray
+enable_so_cb710_wait_for_event_fndecl_56085 cb710_wait_for_event fndecl 0 56085 &enable_so_bfad_iocmd_ioc_get_pcifn_cfg_fndecl_56085
+enable_so_num_chunks_drm_amdgpu_cs_in_56088 num_chunks drm_amdgpu_cs_in 0 56088 NULL
++enable_so_acpi_data_get_property_fndecl_56093 acpi_data_get_property fndecl 0 56093 NULL
+enable_so_xprt_udp_slot_table_entries_vardecl_xprtsock_c_56096 xprt_udp_slot_table_entries vardecl_xprtsock.c 0 56096 NULL nohasharray
+enable_so_size_perf_event_header_56096 size perf_event_header 0 56096 &enable_so_xprt_udp_slot_table_entries_vardecl_xprtsock_c_56096
+enable_so_datalength_fwheader_56097 datalength fwheader 0 56097 NULL
-+enable_so_snic_change_queue_depth_fndecl_56099 snic_change_queue_depth fndecl 2 56099 NULL
+enable_so_proc_thread_self_readlink_fndecl_56102 proc_thread_self_readlink fndecl 3 56102 NULL
+enable_so_l_sectBBsize_xlog_56103 l_sectBBsize xlog 0 56103 NULL
+enable_so_max_frame_size__synclinkmp_info_56104 max_frame_size _synclinkmp_info 0 56104 NULL nohasharray
@@ -173006,10 +172232,8 @@ index 0000000..9da833a
+enable_so_usbvision_v4l2_read_fndecl_56129 usbvision_v4l2_read fndecl 3 56129 NULL
+enable_so_size_direct_56131 size direct 0 56131 NULL nohasharray
+enable_so_av7110_vbi_write_fndecl_56131 av7110_vbi_write fndecl 3 56131 &enable_so_size_direct_56131
-+enable_so_xenvif_gop_frag_copy_fndecl_56135 xenvif_gop_frag_copy fndecl 5-6 56135 NULL
+enable_so_sl_max_ip_sf_socklist_56140 sl_max ip_sf_socklist 0 56140 NULL
+enable_so_prepare_add_efi_setup_data_fndecl_56147 prepare_add_efi_setup_data fndecl 3-2 56147 NULL
-+enable_so__iwl_dbgfs_low_latency_write_fndecl_56153 _iwl_dbgfs_low_latency_write fndecl 3 56153 NULL
+enable_so_reiserfs_resize_fndecl_56154 reiserfs_resize fndecl 2 56154 NULL
+enable_so_i2c_hid_get_raw_report_fndecl_56155 i2c_hid_get_raw_report fndecl 4 56155 NULL
+enable_so_ipx_pktsize_ipxhdr_56157 ipx_pktsize ipxhdr 0 56157 NULL
@@ -173049,7 +172273,6 @@ index 0000000..9da833a
+enable_so_cfpkt_peek_head_fndecl_56245 cfpkt_peek_head fndecl 3 56245 NULL nohasharray
+enable_so_dt_gpio_count_fndecl_56245 dt_gpio_count fndecl 0 56245 &enable_so_cfpkt_peek_head_fndecl_56245
+enable_so_qtd_fill_fndecl_56249 qtd_fill fndecl 5-6-3-0-4 56249 NULL
-+enable_so_mwifiex_regrdwr_read_fndecl_56251 mwifiex_regrdwr_read fndecl 3 56251 NULL
+enable_so_size_uvc_xu_control_query_56263 size uvc_xu_control_query 0 56263 NULL
+enable_so_dmreq_start_crypt_config_56268 dmreq_start crypt_config 0 56268 NULL
+enable_so_qp_alloc_res_fndecl_56275 qp_alloc_res fndecl 5 56275 NULL
@@ -173062,7 +172285,6 @@ index 0000000..9da833a
+enable_so_header_length_txentry_desc_56288 header_length txentry_desc 0 56288 NULL
+enable_so_nr_rates_audioformat_56293 nr_rates audioformat 0 56293 NULL
+enable_so_ttymajor_vardecl_synclink_gt_c_56300 ttymajor vardecl_synclink_gt.c 0 56300 NULL
-+enable_so_pd_handles_sz_MPT2SAS_ADAPTER_56310 pd_handles_sz MPT2SAS_ADAPTER 0 56310 NULL
+enable_so_ext4_fallocate_fndecl_56314 ext4_fallocate fndecl 3-4 56314 NULL
+enable_so_essid_len_ipw_priv_56318 essid_len ipw_priv 0 56318 NULL
+enable_so_SYSC_lgetxattr_fndecl_56330 SYSC_lgetxattr fndecl 4 56330 NULL
@@ -173070,15 +172292,14 @@ index 0000000..9da833a
+enable_so_pipeline_dec_packet_in_fifo_full_read_fndecl_56335 pipeline_dec_packet_in_fifo_full_read fndecl 3 56335 NULL
+enable_so_ath6kl_wmi_ap_set_apsd_fndecl_56339 ath6kl_wmi_ap_set_apsd fndecl 2 56339 NULL
+enable_so_drm_atomic_helper_plane_set_property_fndecl_56340 drm_atomic_helper_plane_set_property fndecl 3 56340 NULL
-+enable_so_blocked_fl_read_fndecl_56341 blocked_fl_read fndecl 3 56341 NULL
+enable_so_tx_ring_size_bnx2_56345 tx_ring_size bnx2 0 56345 NULL
+enable_so_blksize_vardecl_encrypted_c_56348 blksize vardecl_encrypted.c 0 56348 NULL
++enable_so_mapping_level_fndecl_56350 mapping_level fndecl 0-2 56350 NULL
+enable_so_dccp_ackvec_add_new_fndecl_56359 dccp_ackvec_add_new fndecl 2-3 56359 NULL
+enable_so_acl_permission_check_fndecl_56360 acl_permission_check fndecl 0 56360 NULL
+enable_so_i_ino_xfs_inode_56363 i_ino xfs_inode 0 56363 NULL
+enable_so_interrupt_out_endpointAddress_usb_serial_port_56364 interrupt_out_endpointAddress usb_serial_port 0 56364 NULL
+enable_so_ide_set_pio_mode_fndecl_56371 ide_set_pio_mode fndecl 2 56371 NULL
-+enable_so_stats_dot11RTSSuccessCount_read_fndecl_56378 stats_dot11RTSSuccessCount_read fndecl 3 56378 NULL
+enable_so_len_asd_ha_addrspace_56381 len asd_ha_addrspace 0 56381 NULL
+enable_so_sel_read_checkreqprot_fndecl_56383 sel_read_checkreqprot fndecl 3 56383 NULL
+enable_so_nd_cmd_in_size_fndecl_56386 nd_cmd_in_size fndecl 0 56386 NULL
@@ -173099,7 +172320,6 @@ index 0000000..9da833a
+enable_so_hsync_end_drm_display_mode_56439 hsync_end drm_display_mode 0 56439 NULL nohasharray
+enable_so_bdbars_count_intel8x0_56439 bdbars_count intel8x0 0 56439 &enable_so_hsync_end_drm_display_mode_56439 nohasharray
+enable_so_idx_lebs_ubifs_lp_stats_56439 idx_lebs ubifs_lp_stats 0 56439 &enable_so_bdbars_count_intel8x0_56439
-+enable_so_sas_change_queue_depth_fndecl_56440 sas_change_queue_depth fndecl 2 56440 NULL
+enable_so_vlan_tag_lro_56441 vlan_tag lro 0 56441 NULL nohasharray
+enable_so_fb_sys_write_fndecl_56441 fb_sys_write fndecl 0-3 56441 &enable_so_vlan_tag_lro_56441
+enable_so_gtk_ivlen_iwl_mvm_56442 gtk_ivlen iwl_mvm 0 56442 NULL nohasharray
@@ -173123,7 +172343,6 @@ index 0000000..9da833a
+enable_so_xen_allocate_irqs_dynamic_fndecl_56489 xen_allocate_irqs_dynamic fndecl 0 56489 NULL nohasharray
+enable_so_pp_read_fndecl_56489 pp_read fndecl 3 56489 &enable_so_xen_allocate_irqs_dynamic_fndecl_56489
+enable_so_ext4_split_convert_extents_fndecl_56493 ext4_split_convert_extents fndecl 0 56493 NULL
-+enable_so_active_ahd_linux_device_56494 active ahd_linux_device 0 56494 NULL
+enable_so_nci_hci_send_cmd_fndecl_56495 nci_hci_send_cmd fndecl 5 56495 NULL
+enable_so_free_bit_ocfs2_cached_block_free_56500 free_bit ocfs2_cached_block_free 0 56500 NULL
+enable_so_choose_mtu_fndecl_56503 choose_mtu fndecl 0 56503 NULL nohasharray
@@ -173141,14 +172360,13 @@ index 0000000..9da833a
+enable_so_snd_pcm_plug_client_size_fndecl_56544 snd_pcm_plug_client_size fndecl 0-2 56544 &enable_so_core_size_rw_module_56544
+enable_so_max_ethqsets_sge_56552 max_ethqsets sge 0 56552 NULL
+enable_so_cachefiles_cook_key_fndecl_56553 cachefiles_cook_key fndecl 2 56553 NULL
-+enable_so_sf_size_adapter_params_56574 sf_size adapter_params 0 56574 NULL
+enable_so_sctp_tsnmap_grow_fndecl_56579 sctp_tsnmap_grow fndecl 2 56579 NULL
-+enable_so_nbp_vlan_delete_fndecl_56582 nbp_vlan_delete fndecl 2 56582 NULL
+enable_so_rss_table_size_i40e_pf_56586 rss_table_size i40e_pf 0 56586 NULL
+enable_so_buf_bytes_mmc_blk_ioc_data_56589 buf_bytes mmc_blk_ioc_data 0 56589 NULL
+enable_so_offset_cramfs_inode_56601 offset cramfs_inode 0 56601 NULL
+enable_so_qt2_write_fndecl_56603 qt2_write fndecl 4 56603 NULL
+enable_so_cb_irq_yenta_socket_56604 cb_irq yenta_socket 0 56604 NULL
++enable_so_q_num_hnae_handle_56609 q_num hnae_handle 0 56609 NULL
+enable_so_security_size_rxrpc_connection_56613 security_size rxrpc_connection 0 56613 NULL
+enable_so_pll_op_clk_freq_hz_smiapp_pll_56615 pll_op_clk_freq_hz smiapp_pll 0 56615 NULL
+enable_so_pci_map_size_iadev_priv_56617 pci_map_size iadev_priv 0 56617 NULL
@@ -173182,8 +172400,7 @@ index 0000000..9da833a
+enable_so_ks8851_rdreg_fndecl_56695 ks8851_rdreg fndecl 4 56695 NULL
+enable_so_remove_migration_pte_fndecl_56701 remove_migration_pte fndecl 3 56701 NULL nohasharray
+enable_so_ath6kl_wmi_set_rssi_filter_cmd_fndecl_56701 ath6kl_wmi_set_rssi_filter_cmd fndecl 2 56701 &enable_so_remove_migration_pte_fndecl_56701
-+enable_so_usb_err_gspca_dev_56706 usb_err gspca_dev 0 56706 NULL nohasharray
-+enable_so_il_dbgfs_tx_stats_read_fndecl_56706 il_dbgfs_tx_stats_read fndecl 3 56706 &enable_so_usb_err_gspca_dev_56706
++enable_so_usb_err_gspca_dev_56706 usb_err gspca_dev 0 56706 NULL
+enable_so_mmc_erase_fndecl_56707 mmc_erase fndecl 0 56707 NULL
+enable_so_zlib_inflate_workspacesize_fndecl_56716 zlib_inflate_workspacesize fndecl 0 56716 NULL
+enable_so_qgroupid_btrfs_ioctl_qgroup_create_args_56717 qgroupid btrfs_ioctl_qgroup_create_args 0 56717 NULL
@@ -173194,7 +172411,8 @@ index 0000000..9da833a
+enable_so_opcnt_nfsd4_compoundargs_56722 opcnt nfsd4_compoundargs 0 56722 NULL
+enable_so_offset_cw1200_txpriv_56729 offset cw1200_txpriv 0 56729 NULL
+enable_so_search_empty_fndecl_56737 search_empty fndecl 2 56737 NULL
-+enable_so_val_len_ceph_inode_xattr_56742 val_len ceph_inode_xattr 0 56742 NULL
++enable_so_drm_gem_cma_create_fndecl_56742 drm_gem_cma_create fndecl 2 56742 NULL nohasharray
++enable_so_val_len_ceph_inode_xattr_56742 val_len ceph_inode_xattr 0 56742 &enable_so_drm_gem_cma_create_fndecl_56742
+enable_so_sb_logsectlog_xfs_sb_56750 sb_logsectlog xfs_sb 0 56750 NULL
+enable_so_page_offset_skb_frag_struct_56751 page_offset skb_frag_struct 0 56751 NULL
+enable_so_read_pipe_ezusb_priv_56753 read_pipe ezusb_priv 0 56753 NULL nohasharray
@@ -173211,7 +172429,6 @@ index 0000000..9da833a
+enable_so_ib_uverbs_create_cq_fndecl_56793 ib_uverbs_create_cq fndecl 4 56793 NULL
+enable_so_context_id_bnx2fc_rport_56807 context_id bnx2fc_rport 0 56807 NULL nohasharray
+enable_so_state_count_acpi_processor_performance_56807 state_count acpi_processor_performance 0 56807 &enable_so_context_id_bnx2fc_rport_56807
-+enable_so_write_file_bt_ant_diversity_fndecl_56808 write_file_bt_ant_diversity fndecl 3 56808 NULL
+enable_so_num_pages_vmci_queue_kern_if_56812 num_pages vmci_queue_kern_if 0 56812 NULL
+enable_so_di_entries_gfs2_dinode_56817 di_entries gfs2_dinode 0 56817 NULL
+enable_so_dm_thin_remove_range_fndecl_56819 dm_thin_remove_range fndecl 0 56819 NULL
@@ -173219,8 +172436,8 @@ index 0000000..9da833a
+enable_so_page_base_xdr_buf_56823 page_base xdr_buf 0 56823 NULL
+enable_so_netdev_change_mtu_fndecl_56827 netdev_change_mtu fndecl 2 56827 NULL
+enable_so_SyS_syslog_fndecl_56828 SyS_syslog fndecl 3 56828 NULL
-+enable_so_io_size_smi_info_56832 io_size smi_info 0 56832 NULL nohasharray
-+enable_so_ds_victim_ino_logfs_je_dynsb_56832 ds_victim_ino logfs_je_dynsb 0 56832 &enable_so_io_size_smi_info_56832
++enable_so_ds_victim_ino_logfs_je_dynsb_56832 ds_victim_ino logfs_je_dynsb 0 56832 NULL nohasharray
++enable_so_io_size_smi_info_56832 io_size smi_info 0 56832 &enable_so_ds_victim_ino_logfs_je_dynsb_56832
+enable_so_truesize_sk_buff_56834 truesize sk_buff 0 56834 NULL
+enable_so_sc_max_requests_svcxprt_rdma_56840 sc_max_requests svcxprt_rdma 0 56840 NULL
+enable_so_tail_TxFifo_56844 tail TxFifo 0 56844 NULL
@@ -173244,7 +172461,8 @@ index 0000000..9da833a
+enable_so_cmtp_send_frame_fndecl_56890 cmtp_send_frame fndecl 3 56890 NULL
+enable_so_zr364xx_got_frame_fndecl_56891 zr364xx_got_frame fndecl 2 56891 NULL
+enable_so_byte_count_drm_device_dma_56892 byte_count drm_device_dma 0 56892 NULL nohasharray
-+enable_so_prev_adaption_gsm_dlci_56892 prev_adaption gsm_dlci 0 56892 &enable_so_byte_count_drm_device_dma_56892
++enable_so_total_size_qed_ilt_cli_blk_56892 total_size qed_ilt_cli_blk 0 56892 &enable_so_byte_count_drm_device_dma_56892 nohasharray
++enable_so_prev_adaption_gsm_dlci_56892 prev_adaption gsm_dlci 0 56892 &enable_so_total_size_qed_ilt_cli_blk_56892
+enable_so_width_font_desc_56899 width font_desc 0 56899 NULL
+enable_so_xen_find_free_area_fndecl_56905 xen_find_free_area fndecl 0-1 56905 NULL
+enable_so___process_new_xattr_fndecl_56906 __process_new_xattr fndecl 6-4 56906 NULL nohasharray
@@ -173257,8 +172475,7 @@ index 0000000..9da833a
+enable_so_comedi_buf_write_n_allocated_fndecl_56919 comedi_buf_write_n_allocated fndecl 0 56919 NULL
+enable_so_ip6_find_1stfragopt_fndecl_56923 ip6_find_1stfragopt fndecl 0 56923 NULL nohasharray
+enable_so_xt_compat_target_offset_fndecl_56923 xt_compat_target_offset fndecl 0 56923 &enable_so_ip6_find_1stfragopt_fndecl_56923
-+enable_so_il_dbgfs_qos_read_fndecl_56924 il_dbgfs_qos_read fndecl 3 56924 NULL nohasharray
-+enable_so_usb_gstrings_attach_fndecl_56924 usb_gstrings_attach fndecl 3 56924 &enable_so_il_dbgfs_qos_read_fndecl_56924
++enable_so_usb_gstrings_attach_fndecl_56924 usb_gstrings_attach fndecl 3 56924 NULL
+enable_so_vram_vardecl_nvidia_c_56925 vram vardecl_nvidia.c 0 56925 NULL
+enable_so_beiscsi_process_async_pdu_fndecl_56929 beiscsi_process_async_pdu fndecl 6 56929 NULL
+enable_so_data_len_ib_mac_iocb_rsp_56930 data_len ib_mac_iocb_rsp 0 56930 NULL
@@ -173304,11 +172521,8 @@ index 0000000..9da833a
+enable_so_xfrm_count_pfkey_enc_supported_fndecl_57031 xfrm_count_pfkey_enc_supported fndecl 0 57031 &enable_so_s_pkey_index_qib_qp_57031 nohasharray
+enable_so_stacksize_xt_table_info_57031 stacksize xt_table_info 0 57031 &enable_so_xfrm_count_pfkey_enc_supported_fndecl_57031
+enable_so_do_munmap_fndecl_57035 do_munmap fndecl 2-3 57035 NULL
-+enable_so_size_mb_flash_desc_57036 size_mb flash_desc 0 57036 NULL
+enable_so_port_pd_mthca_av_57038 port_pd mthca_av 0 57038 NULL
-+enable_so_read_file_node_recv_fndecl_57042 read_file_node_recv fndecl 3 57042 NULL
-+enable_so_ib_qib_max_cqes_vardecl_57049 ib_qib_max_cqes vardecl 0 57049 NULL nohasharray
-+enable_so_iwl_dbgfs_tof_responder_params_read_fndecl_57049 iwl_dbgfs_tof_responder_params_read fndecl 3 57049 &enable_so_ib_qib_max_cqes_vardecl_57049
++enable_so_ib_qib_max_cqes_vardecl_57049 ib_qib_max_cqes vardecl 0 57049 NULL
+enable_so_i_subdirs_ceph_inode_info_57052 i_subdirs ceph_inode_info 0 57052 NULL
+enable_so_index_scsi_disk_57053 index scsi_disk 0 57053 NULL
+enable_so_nsindex_size_nvdimm_drvdata_57060 nsindex_size nvdimm_drvdata 0 57060 NULL
@@ -173348,11 +172562,10 @@ index 0000000..9da833a
+enable_so_create_xattr_datum_fndecl_57183 create_xattr_datum fndecl 5 57183 NULL nohasharray
+enable_so_irq_pkt_threshold_read_fndecl_57183 irq_pkt_threshold_read fndecl 3 57183 &enable_so_create_xattr_datum_fndecl_57183
+enable_so_num_vfs_mlx4_dev_persistent_57187 num_vfs mlx4_dev_persistent 0 57187 NULL
-+enable_so_z1_zt_57189 z1 zt 0 57189 NULL nohasharray
-+enable_so_h_datalen_logfs_journal_header_57189 h_datalen logfs_journal_header 0 57189 &enable_so_z1_zt_57189
++enable_so_h_datalen_logfs_journal_header_57189 h_datalen logfs_journal_header 0 57189 NULL nohasharray
++enable_so_z1_zt_57189 z1 zt 0 57189 &enable_so_h_datalen_logfs_journal_header_57189
+enable_so_cfs_trace_copyin_string_fndecl_57191 cfs_trace_copyin_string fndecl 4 57191 NULL
+enable_so_OutputCount_smb2_ioctl_rsp_57198 OutputCount smb2_ioctl_rsp 0 57198 NULL
-+enable_so_ieee80211_if_read_dropped_frames_no_route_fndecl_57204 ieee80211_if_read_dropped_frames_no_route fndecl 3 57204 NULL
+enable_so_sector_dm_crypt_io_57208 sector dm_crypt_io 0 57208 NULL
+enable_so_frag_max_size_inet6_skb_parm_57210 frag_max_size inet6_skb_parm 0 57210 NULL
+enable_so_osd_req_op_xattr_init_fndecl_57211 osd_req_op_xattr_init fndecl 6 57211 NULL
@@ -173362,8 +172575,8 @@ index 0000000..9da833a
+enable_so_mss_Vmxnet3_RxCompDescExt_57228 mss Vmxnet3_RxCompDescExt 0 57228 NULL
+enable_so_RxDescriptors_vardecl_pch_gbe_param_c_57229 RxDescriptors vardecl_pch_gbe_param.c 0 57229 NULL
+enable_so_sm_sl_qib_ibport_57230 sm_sl qib_ibport 0 57230 NULL
-+enable_so_len_setup_data_57234 len setup_data 0 57234 NULL nohasharray
-+enable_so_ufs_getfrag_block_fndecl_57234 ufs_getfrag_block fndecl 2 57234 &enable_so_len_setup_data_57234
++enable_so_ufs_getfrag_block_fndecl_57234 ufs_getfrag_block fndecl 2 57234 NULL nohasharray
++enable_so_len_setup_data_57234 len setup_data 0 57234 &enable_so_ufs_getfrag_block_fndecl_57234
+enable_so_ext4_meta_bg_first_block_no_fndecl_57235 ext4_meta_bg_first_block_no fndecl 0-2 57235 NULL
+enable_so_header_asix_rx_fixup_info_57237 header asix_rx_fixup_info 0 57237 NULL nohasharray
+enable_so_li_namelen_nfsd4_link_57237 li_namelen nfsd4_link 0 57237 &enable_so_header_asix_rx_fixup_info_57237
@@ -173387,19 +172600,16 @@ index 0000000..9da833a
+enable_so_tcp_off_tso_state_57305 tcp_off tso_state 0 57305 NULL
+enable_so_qtd_copy_status_fndecl_57306 qtd_copy_status fndecl 0-4-3 57306 NULL
+enable_so_ptk_ivlen_iwl_mvm_57307 ptk_ivlen iwl_mvm 0 57307 NULL
-+enable_so_usCRTC_V_SyncStart__ATOM_MODE_TIMING_57308 usCRTC_V_SyncStart _ATOM_MODE_TIMING 0 57308 NULL nohasharray
-+enable_so_elf_map_fndecl_57308 elf_map fndecl 6 57308 &enable_so_usCRTC_V_SyncStart__ATOM_MODE_TIMING_57308 nohasharray
-+enable_so_ip_setsockopt_fndecl_57308 ip_setsockopt fndecl 5-0 57308 &enable_so_elf_map_fndecl_57308
-+enable_so_nes_alloc_fast_reg_page_list_fndecl_57312 nes_alloc_fast_reg_page_list fndecl 2 57312 NULL
++enable_so_elf_map_fndecl_57308 elf_map fndecl 6 57308 NULL nohasharray
++enable_so_usCRTC_V_SyncStart__ATOM_MODE_TIMING_57308 usCRTC_V_SyncStart _ATOM_MODE_TIMING 0 57308 &enable_so_elf_map_fndecl_57308 nohasharray
++enable_so_ip_setsockopt_fndecl_57308 ip_setsockopt fndecl 5-0 57308 &enable_so_usCRTC_V_SyncStart__ATOM_MODE_TIMING_57308
+enable_so_orinoco_hw_get_essid_fndecl_57314 orinoco_hw_get_essid fndecl 0 57314 NULL
+enable_so_aggr_size_rx_size_read_fndecl_57317 aggr_size_rx_size_read fndecl 3 57317 NULL
+enable_so_interrupt_in_endpoint_size_ld_usb_57321 interrupt_in_endpoint_size ld_usb 0 57321 NULL
+enable_so_acpi_gsi_to_irq_fndecl_57326 acpi_gsi_to_irq fndecl 1 57326 NULL
+enable_so_fb_read_fndecl_57329 fb_read fndecl 3 57329 NULL
-+enable_so_musb_test_mode_write_fndecl_57341 musb_test_mode_write fndecl 3 57341 NULL
+enable_so_ext4_expand_extra_isize_ea_fndecl_57344 ext4_expand_extra_isize_ea fndecl 2 57344 NULL
+enable_so_root_hpfs_super_block_57345 root hpfs_super_block 0 57345 NULL
-+enable_so_ath10k_read_htt_max_amsdu_ampdu_fndecl_57346 ath10k_read_htt_max_amsdu_ampdu fndecl 3 57346 NULL
+enable_so_align_nf_ct_ext_type_57348 align nf_ct_ext_type 0 57348 NULL
+enable_so_ixgbe_pci_sriov_enable_fndecl_57353 ixgbe_pci_sriov_enable fndecl 2 57353 NULL
+enable_so_lbs_debugfs_write_fndecl_57358 lbs_debugfs_write fndecl 3 57358 NULL
@@ -173423,7 +172633,6 @@ index 0000000..9da833a
+enable_so_skb_pull_fndecl_57408 skb_pull fndecl 2 57408 NULL nohasharray
+enable_so_cryptlen_chachapoly_req_ctx_57408 cryptlen chachapoly_req_ctx 0 57408 &enable_so_skb_pull_fndecl_57408
+enable_so_copy_page_from_iter_iovec_fndecl_57409 copy_page_from_iter_iovec fndecl 3 57409 NULL
-+enable_so__iwl_dbgfs_bt_tx_prio_write_fndecl_57418 _iwl_dbgfs_bt_tx_prio_write fndecl 3 57418 NULL
+enable_so_numbered_hid_report_enum_57419 numbered hid_report_enum 0 57419 NULL
+enable_so_blkdev_get_block_fndecl_57432 blkdev_get_block fndecl 2 57432 NULL
+enable_so_key_size_ecryptfs_crypt_stat_57436 key_size ecryptfs_crypt_stat 0 57436 NULL
@@ -173451,7 +172660,6 @@ index 0000000..9da833a
+enable_so_consume_q_size_vmci_qp_57492 consume_q_size vmci_qp 0 57492 NULL
+enable_so_max_srq_rqe_sge_ocrdma_mbx_query_config_57494 max_srq_rqe_sge ocrdma_mbx_query_config 0 57494 NULL
+enable_so_r8a66597_urb_done_fndecl_57497 r8a66597_urb_done fndecl 3 57497 NULL
-+enable_so_ath10k_fw_stats_read_fndecl_57506 ath10k_fw_stats_read fndecl 3 57506 NULL
+enable_so_usnic_uiom_get_pages_fndecl_57510 usnic_uiom_get_pages fndecl 1-2 57510 NULL nohasharray
+enable_so_truncate_data_blocks_range_fndecl_57510 truncate_data_blocks_range fndecl 2 57510 &enable_so_usnic_uiom_get_pages_fndecl_57510 nohasharray
+enable_so_command_resume_fndecl_57510 command_resume fndecl 0 57510 &enable_so_truncate_data_blocks_range_fndecl_57510
@@ -173466,6 +172674,7 @@ index 0000000..9da833a
+enable_so_trimmed_cp_control_57542 trimmed cp_control 0 57542 NULL
+enable_so_i_file_sec_hpfs_inode_info_57545 i_file_sec hpfs_inode_info 0 57545 NULL nohasharray
+enable_so_y_max_wacom_features_57545 y_max wacom_features 0 57545 &enable_so_i_file_sec_hpfs_inode_info_57545
++enable_so_fdp_nci_probe_fndecl_57547 fdp_nci_probe fndecl 4 57547 NULL
+enable_so_ext4_ind_direct_IO_fndecl_57548 ext4_ind_direct_IO fndecl 3 57548 NULL nohasharray
+enable_so_is_zd1211b_zd_usb_57548 is_zd1211b zd_usb 0 57548 &enable_so_ext4_ind_direct_IO_fndecl_57548
+enable_so_last_to_afs_call_57563 last_to afs_call 0 57563 NULL
@@ -173493,7 +172702,7 @@ index 0000000..9da833a
+enable_so_isr_dma1_done_read_fndecl_57612 isr_dma1_done_read fndecl 3 57612 NULL
+enable_so_wWidth_uvc_frame_57615 wWidth uvc_frame 0 57615 NULL
+enable_so_vmw_framebuffer_surface_dirty_fndecl_57623 vmw_framebuffer_surface_dirty fndecl 6 57623 NULL
-+enable_so_f2fs_collapse_range_fndecl_57627 f2fs_collapse_range fndecl 2 57627 NULL
++enable_so_f2fs_collapse_range_fndecl_57627 f2fs_collapse_range fndecl 2-3 57627 NULL
+enable_so_memblock_enforce_memory_limit_fndecl_57628 memblock_enforce_memory_limit fndecl 1 57628 NULL
+enable_so_ieee80211_mesh_rx_probe_req_fndecl_57630 ieee80211_mesh_rx_probe_req fndecl 3 57630 NULL nohasharray
+enable_so_set_discoverable_fndecl_57630 set_discoverable fndecl 4 57630 &enable_so_ieee80211_mesh_rx_probe_req_fndecl_57630
@@ -173510,11 +172719,12 @@ index 0000000..9da833a
+enable_so_bnx2x_gunzip_fndecl_57655 bnx2x_gunzip fndecl 3 57655 NULL
+enable_so_fuse_request_init_fndecl_57656 fuse_request_init fndecl 4 57656 NULL
+enable_so_rbd_obj_method_sync_fndecl_57657 rbd_obj_method_sync fndecl 8-6 57657 NULL
++enable_so_btrfs_qgroup_release_data_fndecl_57660 btrfs_qgroup_release_data fndecl 2-3 57660 NULL nohasharray
++enable_so_setup_irqs_msi_controller_57660 setup_irqs msi_controller 0 57660 &enable_so_btrfs_qgroup_release_data_fndecl_57660
+enable_so_curheight_usb_usbvision_57669 curheight usb_usbvision 0 57669 NULL
+enable_so_len_pn533_poll_modulations_57671 len pn533_poll_modulations 0 57671 NULL
+enable_so_PQTAG_rdesc1_57683 PQTAG rdesc1 0 57683 NULL nohasharray
+enable_so_xfs_dir3_data_readahead_fndecl_57683 xfs_dir3_data_readahead fndecl 2 57683 &enable_so_PQTAG_rdesc1_57683
-+enable_so_srp_finish_mapping_fndecl_57687 srp_finish_mapping fndecl 0 57687 NULL
+enable_so_data_dma_kbtab_57688 data_dma kbtab 0 57688 NULL
+enable_so_length_ib_reth_57691 length ib_reth 0 57691 NULL nohasharray
+enable_so_cfg80211_process_deauth_fndecl_57691 cfg80211_process_deauth fndecl 3 57691 &enable_so_length_ib_reth_57691
@@ -173536,7 +172746,6 @@ index 0000000..9da833a
+enable_so_opts1_cp_desc_57736 opts1 cp_desc 0 57736 NULL nohasharray
+enable_so_compat_sys_io_getevents_fndecl_57736 compat_sys_io_getevents fndecl 3 57736 &enable_so_opts1_cp_desc_57736
+enable_so_buffer_width_budget_57739 buffer_width budget 0 57739 NULL
-+enable_so_disk_recovery_offset_dm_raid_superblock_57740 disk_recovery_offset dm_raid_superblock 0 57740 NULL
+enable_so_prepare_message_spi_master_57743 prepare_message spi_master 0 57743 NULL nohasharray
+enable_so_used_ebs_ubi_ainf_volume_57743 used_ebs ubi_ainf_volume 0 57743 &enable_so_prepare_message_spi_master_57743
+enable_so_residue_bfi_ioim_rsp_s_57746 residue bfi_ioim_rsp_s 0 57746 NULL nohasharray
@@ -173544,14 +172753,13 @@ index 0000000..9da833a
+enable_so_usb_hcd_submit_urb_fndecl_57747 usb_hcd_submit_urb fndecl 0 57747 NULL
+enable_so_acpi_ex_convert_to_ascii_fndecl_57750 acpi_ex_convert_to_ascii fndecl 0 57750 NULL
+enable_so___videobuf_free_fndecl_57751 __videobuf_free fndecl 0 57751 NULL
-+enable_so_mdts_nvme_id_ctrl_57754 mdts nvme_id_ctrl 0 57754 NULL nohasharray
-+enable_so_res_hor_val_pvr2_hdw_57754 res_hor_val pvr2_hdw 0 57754 &enable_so_mdts_nvme_id_ctrl_57754
++enable_so_res_hor_val_pvr2_hdw_57754 res_hor_val pvr2_hdw 0 57754 NULL
+enable_so_remove_memory_fndecl_57755 remove_memory fndecl 3-2 57755 NULL
+enable_so_cache_write_pipefs_fndecl_57757 cache_write_pipefs fndecl 3 57757 NULL
+enable_so_timblogiw_read_fndecl_57762 timblogiw_read fndecl 3 57762 NULL
+enable_so_kernel_sendmsg_fndecl_57763 kernel_sendmsg fndecl 0-5-4 57763 NULL
-+enable_so_numEntries__ATOM_PPLIB_ACPClk_Voltage_Limit_Table_57767 numEntries _ATOM_PPLIB_ACPClk_Voltage_Limit_Table 0 57767 NULL
-+enable_so_MaxDevHandle_mpt2sas_facts_57768 MaxDevHandle mpt2sas_facts 0 57768 NULL
++enable_so_numEntries__ATOM_PPLIB_ACPClk_Voltage_Limit_Table_57767 numEntries _ATOM_PPLIB_ACPClk_Voltage_Limit_Table 0 57767 NULL nohasharray
++enable_so_pset_prop_read_array_fndecl_57767 pset_prop_read_array fndecl 0 57767 &enable_so_numEntries__ATOM_PPLIB_ACPClk_Voltage_Limit_Table_57767
+enable_so_mdp_major_vardecl_57774 mdp_major vardecl 0 57774 NULL nohasharray
+enable_so_minor_media_devnode_57774 minor media_devnode 0 57774 &enable_so_mdp_major_vardecl_57774
+enable_so_read_data_parport_operations_57776 read_data parport_operations 0 57776 NULL
@@ -173560,14 +172768,13 @@ index 0000000..9da833a
+enable_so_end_numa_memblk_57780 end numa_memblk 0 57780 &enable_so_height_fb_copyarea_57780
+enable_so_fp_array_size_bnx2x_57781 fp_array_size bnx2x 0 57781 NULL
+enable_so_bfad_iocmd_phy_get_attr_fndecl_57786 bfad_iocmd_phy_get_attr fndecl 0 57786 NULL
-+enable_so_lpfc_idiag_extacc_read_fndecl_57790 lpfc_idiag_extacc_read fndecl 3 57790 NULL
+enable_so_mp_rx_agg_buf_size_sdio_mmc_card_57794 mp_rx_agg_buf_size sdio_mmc_card 0 57794 NULL
+enable_so_pos_lzma_header_57804 pos lzma_header 0 57804 NULL nohasharray
+enable_so_spk_xe_vardecl_57804 spk_xe vardecl 0 57804 &enable_so_pos_lzma_header_57804
+enable_so_nic_num_sqs_en_fndecl_57805 nic_num_sqs_en fndecl 0-2 57805 NULL
+enable_so_blocks_mmc_data_57821 blocks mmc_data 0 57821 NULL
-+enable_so_force_size_vardecl_pcmciamtd_c_57827 force_size vardecl_pcmciamtd.c 0 57827 NULL nohasharray
-+enable_so_eth_proto_xfrm_state_afinfo_57827 eth_proto xfrm_state_afinfo 0 57827 &enable_so_force_size_vardecl_pcmciamtd_c_57827
++enable_so_eth_proto_xfrm_state_afinfo_57827 eth_proto xfrm_state_afinfo 0 57827 NULL nohasharray
++enable_so_force_size_vardecl_pcmciamtd_c_57827 force_size vardecl_pcmciamtd.c 0 57827 &enable_so_eth_proto_xfrm_state_afinfo_57827
+enable_so_ioc_count_obd_ioctl_data_57830 ioc_count obd_ioctl_data 0 57830 NULL
+enable_so_vxfs_bmap_ext4_fndecl_57831 vxfs_bmap_ext4 fndecl 0-2 57831 NULL nohasharray
+enable_so_iscsi_complete_pdu_fndecl_57831 iscsi_complete_pdu fndecl 4 57831 &enable_so_vxfs_bmap_ext4_fndecl_57831
@@ -173577,6 +172784,7 @@ index 0000000..9da833a
+enable_so_vd_dsr_au_count_gru_vma_data_57855 vd_dsr_au_count gru_vma_data 0 57855 NULL
+enable_so_nilfs_resize_fs_fndecl_57861 nilfs_resize_fs fndecl 2 57861 NULL
+enable_so_len_splice_desc_57862 len splice_desc 0 57862 NULL
++enable_so_cid_count_qed_conn_type_cfg_57865 cid_count qed_conn_type_cfg 0 57865 NULL
+enable_so__usbctrl_vendorreq_async_write_fndecl_57866 _usbctrl_vendorreq_async_write fndecl 6 57866 NULL
+enable_so_lpfc_sli4_get_els_iocb_cnt_fndecl_57869 lpfc_sli4_get_els_iocb_cnt fndecl 0 57869 NULL
+enable_so_fsl_spi_setup_transfer_fndecl_57873 fsl_spi_setup_transfer fndecl 0 57873 NULL nohasharray
@@ -173610,25 +172818,26 @@ index 0000000..9da833a
+enable_so_hpfs_map_anode_fndecl_57993 hpfs_map_anode fndecl 2 57993 NULL
+enable_so_faultin_page_fndecl_57994 faultin_page fndecl 3 57994 NULL
+enable_so_perf_sample_ustack_size_fndecl_57995 perf_sample_ustack_size fndecl 0-2-1 57995 NULL
++enable_so_codes_size_input_mask_57996 codes_size input_mask 0 57996 NULL
+enable_so_max_idx_node_sz_ubifs_info_57997 max_idx_node_sz ubifs_info 0 57997 NULL
+enable_so_SSIDlen_StatusRid_58002 SSIDlen StatusRid 0 58002 NULL nohasharray
+enable_so_di_size_dinode_58002 di_size dinode 0 58002 &enable_so_SSIDlen_StatusRid_58002
+enable_so_set_alt_usb_function_58003 set_alt usb_function 0 58003 NULL
+enable_so_max_master_fs_adau1977_58013 max_master_fs adau1977 0 58013 NULL
-+enable_so_pvscsi_change_queue_depth_fndecl_58014 pvscsi_change_queue_depth fndecl 2 58014 NULL
+enable_so_atl2_change_mtu_fndecl_58020 atl2_change_mtu fndecl 2 58020 NULL nohasharray
+enable_so_wdata_prepare_pages_fndecl_58020 wdata_prepare_pages fndecl 0 58020 &enable_so_atl2_change_mtu_fndecl_58020
+enable_so_xdr_buf_subsegment_fndecl_58027 xdr_buf_subsegment fndecl 4-3 58027 NULL
+enable_so_xfs_extent_busy_reuse_fndecl_58034 xfs_extent_busy_reuse fndecl 4-3 58034 NULL
++enable_so_reserve_btrfs_dio_data_58035 reserve btrfs_dio_data 0 58035 NULL
+enable_so_rindex_sc18is602_58043 rindex sc18is602 0 58043 NULL nohasharray
+enable_so_rtw_check_beacon_data23a_fndecl_58043 rtw_check_beacon_data23a fndecl 3 58043 &enable_so_rindex_sc18is602_58043
+enable_so_len_mic_vring_58048 len mic_vring 0 58048 NULL nohasharray
+enable_so_num_sqsets_csio_hw_58048 num_sqsets csio_hw 0 58048 &enable_so_len_mic_vring_58048
+enable_so_acpi_gbl_integer_byte_width_vardecl_58054 acpi_gbl_integer_byte_width vardecl 0 58054 NULL
+enable_so_cylinders_mspro_devinfo_58057 cylinders mspro_devinfo 0 58057 NULL
-+enable_so_buffer_size_octeon_droq_58063 buffer_size octeon_droq 0 58063 NULL nohasharray
-+enable_so_offset_m48t59_plat_data_58063 offset m48t59_plat_data 0 58063 &enable_so_buffer_size_octeon_droq_58063 nohasharray
-+enable_so_wpa_ie_len_hostap_bss_info_58063 wpa_ie_len hostap_bss_info 0 58063 &enable_so_offset_m48t59_plat_data_58063
++enable_so_offset_m48t59_plat_data_58063 offset m48t59_plat_data 0 58063 NULL nohasharray
++enable_so_buffer_size_octeon_droq_58063 buffer_size octeon_droq 0 58063 &enable_so_offset_m48t59_plat_data_58063 nohasharray
++enable_so_wpa_ie_len_hostap_bss_info_58063 wpa_ie_len hostap_bss_info 0 58063 &enable_so_buffer_size_octeon_droq_58063
+enable_so_deflate_decompress_fndecl_58064 deflate_decompress fndecl 3 58064 NULL
+enable_so_ath10k_htt_rx_nwifi_hdrlen_fndecl_58065 ath10k_htt_rx_nwifi_hdrlen fndecl 0 58065 NULL
+enable_so_n_dma_bufs_vardecl_mcam_core_c_58067 n_dma_bufs vardecl_mcam-core.c 0 58067 NULL
@@ -173647,9 +172856,7 @@ index 0000000..9da833a
+enable_so_atyfb_setup_generic_fndecl_58092 atyfb_setup_generic fndecl 3 58092 &enable_so_p9_client_zc_rpc_fndecl_58092
+enable_so_floppy_end_request_fndecl_58094 floppy_end_request fndecl 2 58094 NULL
+enable_so_done_scsi_driver_58095 done scsi_driver 0 58095 NULL
-+enable_so_fifo_load_s3c_hsotg_ep_58096 fifo_load s3c_hsotg_ep 0 58096 NULL
+enable_so_ll_max_cached_mb_seq_write_fndecl_58097 ll_max_cached_mb_seq_write fndecl 3 58097 NULL
-+enable_so_button_num_ad714x_platform_data_58098 button_num ad714x_platform_data 0 58098 NULL
+enable_so_walk_pmd_range_fndecl_58100 walk_pmd_range fndecl 0 58100 NULL
+enable_so_lf_next_gfs2_leaf_58104 lf_next gfs2_leaf 0 58104 NULL
+enable_so_head_p9_rdir_58110 head p9_rdir 0 58110 NULL
@@ -173684,7 +172891,6 @@ index 0000000..9da833a
+enable_so_total_num_uuars_mlx5_ib_alloc_ucontext_req_v2_58191 total_num_uuars mlx5_ib_alloc_ucontext_req_v2 0 58191 NULL
+enable_so_virtfn_remove_fndecl_58193 virtfn_remove fndecl 2 58193 NULL
+enable_so_npages_ttm_page_pool_58200 npages ttm_page_pool 0 58200 NULL
-+enable_so_lpfc_idiag_drbacc_write_fndecl_58203 lpfc_idiag_drbacc_write fndecl 3 58203 NULL
+enable_so_o2net_init_msg_fndecl_58204 o2net_init_msg fndecl 2 58204 NULL nohasharray
+enable_so_SyS_lgetxattr_fndecl_58204 SyS_lgetxattr fndecl 4 58204 &enable_so_o2net_init_msg_fndecl_58204
+enable_so_maxOutstanding_AdapterControlBlock_58208 maxOutstanding AdapterControlBlock 0 58208 NULL
@@ -173712,7 +172918,7 @@ index 0000000..9da833a
+enable_so_tx_desc_count_i40evf_adapter_58286 tx_desc_count i40evf_adapter 0 58286 NULL
+enable_so_v9fs_fid_xattr_set_fndecl_58288 v9fs_fid_xattr_set fndecl 4 58288 NULL nohasharray
+enable_so_unique_len_drm_unique_58288 unique_len drm_unique 0 58288 &enable_so_v9fs_fid_xattr_set_fndecl_58288
-+enable_so_il3945_sta_dbgfs_stats_table_read_fndecl_58289 il3945_sta_dbgfs_stats_table_read fndecl 3 58289 NULL
++enable_so_balloon_add_region_fndecl_58290 balloon_add_region fndecl 2-1 58290 NULL
+enable_so_adfs_map_lookup_fndecl_58299 adfs_map_lookup fndecl 0-3 58299 NULL
+enable_so_y2_drm_clip_rect_58302 y2 drm_clip_rect 0 58302 NULL
+enable_so_buffer_size_snd_pcm_runtime_58304 buffer_size snd_pcm_runtime 0 58304 NULL
@@ -173743,8 +172949,8 @@ index 0000000..9da833a
+enable_so_window_vardecl_tcp_cdg_c_58396 window vardecl_tcp_cdg.c 0 58396 NULL
+enable_so_hci_prepare_cmd_fndecl_58399 hci_prepare_cmd fndecl 3 58399 NULL
+enable_so_ip_vs_sync_buff_create_v0_fndecl_58401 ip_vs_sync_buff_create_v0 fndecl 2 58401 NULL
-+enable_so_sta_vht_capa_read_fndecl_58402 sta_vht_capa_read fndecl 3 58402 NULL
+enable_so_lbs_wrrf_write_fndecl_58409 lbs_wrrf_write fndecl 3 58409 NULL
++enable_so_amdtp_stream_init_fndecl_58410 amdtp_stream_init fndecl 7 58410 NULL
+enable_so_remove_raw_fndecl_58413 remove_raw fndecl 4 58413 NULL
+enable_so_vzalloc_fndecl_58414 vzalloc fndecl 1 58414 NULL nohasharray
+enable_so_offset_snd_util_memblk_58414 offset snd_util_memblk 0 58414 &enable_so_vzalloc_fndecl_58414 nohasharray
@@ -173790,6 +172996,7 @@ index 0000000..9da833a
+enable_so_phys_in_snd_efw_58512 phys_in snd_efw 0 58512 &enable_so_mcp23s17_read_regs_fndecl_58512
+enable_so_pixel_stride_ivtv_osd_coords_58513 pixel_stride ivtv_osd_coords 0 58513 NULL
+enable_so_pmsg_size_ramoops_platform_data_58514 pmsg_size ramoops_platform_data 0 58514 NULL
++enable_so_len_bnxt_tpa_info_58516 len bnxt_tpa_info 0 58516 NULL
+enable_so___frontswap_curr_pages_fndecl_58517 __frontswap_curr_pages fndecl 0 58517 NULL nohasharray
+enable_so_brcmf_vndr_ie_fndecl_58517 brcmf_vndr_ie fndecl 0-4 58517 &enable_so___frontswap_curr_pages_fndecl_58517 nohasharray
+enable_so_core_sys_select_fndecl_58517 core_sys_select fndecl 1 58517 &enable_so_brcmf_vndr_ie_fndecl_58517
@@ -173808,6 +173015,7 @@ index 0000000..9da833a
+enable_so_xfs_inobt_insert_fndecl_58558 xfs_inobt_insert fndecl 4 58558 NULL nohasharray
+enable_so_process_vm_rw_fndecl_58558 process_vm_rw fndecl 3-5 58558 &enable_so_xfs_inobt_insert_fndecl_58558
+enable_so_read_ldt_fndecl_58561 read_ldt fndecl 2 58561 NULL
++enable_so_remaining_asix_rx_fixup_info_58562 remaining asix_rx_fixup_info 0 58562 NULL
+enable_so_pci_iomap_fndecl_58564 pci_iomap fndecl 3 58564 NULL
+enable_so_qib_copy_from_sge_fndecl_58565 qib_copy_from_sge fndecl 3 58565 NULL
+enable_so_isku_sysfs_read_last_set_fndecl_58567 isku_sysfs_read_last_set fndecl 6 58567 NULL
@@ -173825,19 +173033,19 @@ index 0000000..9da833a
+enable_so_mousedev_read_fndecl_58624 mousedev_read fndecl 3 58624 NULL
+enable_so_wusb_key_dump_fndecl_58627 wusb_key_dump fndecl 2 58627 NULL nohasharray
+enable_so___erst_write_to_storage_fndecl_58627 __erst_write_to_storage fndecl 1 58627 &enable_so_wusb_key_dump_fndecl_58627
-+enable_so_epp_pages_short_ptlrpc_enc_page_pool_58628 epp_pages_short ptlrpc_enc_page_pool 0 58628 NULL
+enable_so_dccps_gss_dccp_sock_58634 dccps_gss dccp_sock 0 58634 NULL
+enable_so_layout_mdu_array_info_s_58636 layout mdu_array_info_s 0 58636 NULL nohasharray
+enable_so_ext4_ext_handle_unwritten_extents_fndecl_58636 ext4_ext_handle_unwritten_extents fndecl 7-0-6 58636 &enable_so_layout_mdu_array_info_s_58636
++enable_so_mei_cldev_recv_fndecl_58637 mei_cldev_recv fndecl 0-3 58637 NULL
+enable_so_pgbase_nfs4_readdir_arg_58643 pgbase nfs4_readdir_arg 0 58643 NULL nohasharray
+enable_so_offset_qib_mregion_58643 offset qib_mregion 0 58643 &enable_so_pgbase_nfs4_readdir_arg_58643
++enable_so_msc_single_to_user_fndecl_58646 msc_single_to_user fndecl 4-3 58646 NULL
+enable_so_report_id_hid_global_58647 report_id hid_global 0 58647 NULL
+enable_so_page10_len_ses_device_58648 page10_len ses_device 0 58648 NULL
+enable_so_mwifiex_alloc_dma_align_buf_fndecl_58656 mwifiex_alloc_dma_align_buf fndecl 1 58656 NULL nohasharray
+enable_so_highest_bit_swap_info_struct_58656 highest_bit swap_info_struct 0 58656 &enable_so_mwifiex_alloc_dma_align_buf_fndecl_58656
+enable_so_mxms_headerlen_fndecl_58666 mxms_headerlen fndecl 0 58666 NULL
+enable_so_rx_rx_rts_timeout_read_fndecl_58667 rx_rx_rts_timeout_read fndecl 3 58667 NULL
-+enable_so_rs_sta_dbgfs_rate_scale_data_read_fndecl_58670 rs_sta_dbgfs_rate_scale_data_read fndecl 3 58670 NULL
+enable_so_max_key_len_hfs_btree_58671 max_key_len hfs_btree 0 58671 NULL
+enable_so_sb_inopblog_xfs_sb_58672 sb_inopblog xfs_sb 0 58672 NULL
+enable_so_s_dirblksize_ufs_sb_private_info_58675 s_dirblksize ufs_sb_private_info 0 58675 NULL
@@ -173846,7 +173054,8 @@ index 0000000..9da833a
+enable_so_s_partition_size_affs_sb_info_58677 s_partition_size affs_sb_info 0 58677 NULL
+enable_so_sctp_get_port_fndecl_58684 sctp_get_port fndecl 2 58684 NULL
+enable_so_ramoops_ftrace_size_vardecl_ram_c_58686 ramoops_ftrace_size vardecl_ram.c 0 58686 NULL
-+enable_so_max_response_len_sg_io_v4_58687 max_response_len sg_io_v4 0 58687 NULL
++enable_so_head_userio_device_58687 head userio_device 0 58687 NULL nohasharray
++enable_so_max_response_len_sg_io_v4_58687 max_response_len sg_io_v4 0 58687 &enable_so_head_userio_device_58687
+enable_so_subdirs_ceph_mds_reply_inode_58689 subdirs ceph_mds_reply_inode 0 58689 NULL
+enable_so_ioremap_cache_fndecl_58694 ioremap_cache fndecl 2-1 58694 NULL
+enable_so_rx_dma_len_efx_nic_58695 rx_dma_len efx_nic 0 58695 NULL
@@ -173856,6 +173065,8 @@ index 0000000..9da833a
+enable_so_fw_emem_len_rt_firmware_58718 fw_emem_len rt_firmware 0 58718 NULL nohasharray
+enable_so_btrfs_del_inode_ref_fndecl_58718 btrfs_del_inode_ref fndecl 4 58718 &enable_so_fw_emem_len_rt_firmware_58718 nohasharray
+enable_so_svc_pool_map_alloc_arrays_fndecl_58718 svc_pool_map_alloc_arrays fndecl 2-0 58718 &enable_so_btrfs_del_inode_ref_fndecl_58718
++enable_so_length_nhlt_resource_desc_58730 length nhlt_resource_desc 0 58730 NULL
++enable_so_read_va_isert_cmd_58733 read_va isert_cmd 0 58733 NULL
+enable_so_valid_chaoskey_58736 valid chaoskey 0 58736 NULL
+enable_so_Residue_bulk_cs_wrap_58746 Residue bulk_cs_wrap 0 58746 NULL
+enable_so_imaxpct_xfs_growfs_data_58747 imaxpct xfs_growfs_data 0 58747 NULL
@@ -173870,7 +173081,8 @@ index 0000000..9da833a
+enable_so_get_formats_soc_camera_host_ops_58784 get_formats soc_camera_host_ops 0 58784 NULL
+enable_so_meta_ino_f2fs_super_block_58785 meta_ino f2fs_super_block 0 58785 NULL nohasharray
+enable_so_off1_xad_58785 off1 xad 0 58785 &enable_so_meta_ino_f2fs_super_block_58785
-+enable_so_gfs2_readpages_fndecl_58790 gfs2_readpages fndecl 4 58790 NULL
++enable_so_gfs2_readpages_fndecl_58790 gfs2_readpages fndecl 4 58790 NULL nohasharray
++enable_so_cache_shift_qed_dev_58790 cache_shift qed_dev 0 58790 &enable_so_gfs2_readpages_fndecl_58790
+enable_so_at24_macc_read_fndecl_58791 at24_macc_read fndecl 4 58791 NULL
+enable_so_vsnprintf_fndecl_58792 vsnprintf fndecl 0 58792 NULL
+enable_so_mppe_decompress_fndecl_58795 mppe_decompress fndecl 3 58795 NULL
@@ -173888,8 +173100,8 @@ index 0000000..9da833a
+enable_so_nr_scratch_dwc3_58852 nr_scratch dwc3 0 58852 NULL
+enable_so_ms_lib_read_extrablock_fndecl_58857 ms_lib_read_extrablock fndecl 4 58857 NULL
+enable_so_exofs_iget_fndecl_58862 exofs_iget fndecl 2 58862 NULL
-+enable_so_ieee80211_if_read_dot11MeshHoldingTimeout_fndecl_58863 ieee80211_if_read_dot11MeshHoldingTimeout fndecl 3 58863 NULL
-+enable_so_vid_batadv_softif_vlan_58864 vid batadv_softif_vlan 0 58864 NULL
++enable_so_vid_batadv_softif_vlan_58864 vid batadv_softif_vlan 0 58864 NULL nohasharray
++enable_so_pd_groupsize_ptlrpcd_58864 pd_groupsize ptlrpcd 0 58864 &enable_so_vid_batadv_softif_vlan_58864
+enable_so_channel_num_sudmac_pdata_58865 channel_num sudmac_pdata 0 58865 NULL
+enable_so_uvc_ctrl_add_info_fndecl_58870 uvc_ctrl_add_info fndecl 0 58870 NULL
+enable_so_hfp_ast_vbios_enhtable_58872 hfp ast_vbios_enhtable 0 58872 NULL
@@ -173915,6 +173127,7 @@ index 0000000..9da833a
+enable_so_leaf_item_bottle_fndecl_58937 leaf_item_bottle fndecl 5 58937 NULL
+enable_so_cfs_percpt_alloc_fndecl_58941 cfs_percpt_alloc fndecl 2 58941 NULL
+enable_so_lpe_base_sst_pdata_58946 lpe_base sst_pdata 0 58946 NULL
++enable_so_arch_setup_msi_irq_fndecl_58948 arch_setup_msi_irq fndecl 0 58948 NULL
+enable_so_num_req_rx_rings_bnx2_58949 num_req_rx_rings bnx2 0 58949 NULL
+enable_so_size_drm_nouveau_gem_info_58954 size drm_nouveau_gem_info 0 58954 NULL
+enable_so__ext4_get_block_fndecl_58959 _ext4_get_block fndecl 2 58959 NULL
@@ -173933,10 +173146,11 @@ index 0000000..9da833a
+enable_so_ib_umad_write_fndecl_58986 ib_umad_write fndecl 3 58986 NULL
+enable_so___tda18271_write_regs_fndecl_58989 __tda18271_write_regs fndecl 3 58989 NULL nohasharray
+enable_so_index_ldtentry_58989 index ldtentry 0 58989 &enable_so___tda18271_write_regs_fndecl_58989
++enable_so_mpi_read_raw_from_sgl_fndecl_58990 mpi_read_raw_from_sgl fndecl 2 58990 NULL
+enable_so_nfs4_proc_get_acl_fndecl_58998 nfs4_proc_get_acl fndecl 3 58998 NULL
+enable_so_trace_max_pages_vardecl_59000 trace_max_pages vardecl 0 59000 NULL
-+enable_so_private_value_snd_kcontrol_59001 private_value snd_kcontrol 0 59001 NULL
-+enable_so_iwl_dbgfs_ucode_tracing_read_fndecl_59004 iwl_dbgfs_ucode_tracing_read fndecl 3 59004 NULL
++enable_so_private_value_snd_kcontrol_59001 private_value snd_kcontrol 0 59001 NULL nohasharray
++enable_so_num_lun_nvm_id_group_59001 num_lun nvm_id_group 0 59001 &enable_so_private_value_snd_kcontrol_59001
+enable_so_wa_urb_dequeue_fndecl_59008 wa_urb_dequeue fndecl 3 59008 NULL
+enable_so_numextents_efs_inode_info_59009 numextents efs_inode_info 0 59009 NULL
+enable_so_amdgpu_vram_location_fndecl_59010 amdgpu_vram_location fndecl 3 59010 NULL
@@ -173963,8 +173177,9 @@ index 0000000..9da833a
+enable_so_sys32_pread_fndecl_59062 sys32_pread fndecl 3 59062 NULL
+enable_so_piobufbase_qib_devdata_59067 piobufbase qib_devdata 0 59067 NULL
+enable_so_axi_dmac_prep_slave_sg_fndecl_59073 axi_dmac_prep_slave_sg fndecl 3 59073 NULL
-+enable_so_vlan_id_ib_ah_attr_59074 vlan_id ib_ah_attr 0 59074 NULL
-+enable_so_bmv_offset_getbmapx_59079 bmv_offset getbmapx 0 59079 NULL
++enable_so_bmv_offset_getbmapx_59079 bmv_offset getbmapx 0 59079 NULL nohasharray
++enable_so_write_va_isert_cmd_59079 write_va isert_cmd 0 59079 &enable_so_bmv_offset_getbmapx_59079
++enable_so_i915_gem_stolen_insert_node_in_range_fndecl_59083 i915_gem_stolen_insert_node_in_range fndecl 3 59083 NULL
+enable_so_buffer_mousedev_client_59098 buffer mousedev_client 0 59098 NULL
+enable_so_rcvidx_hscx_hw_59100 rcvidx hscx_hw 0 59100 NULL
+enable_so_ctrl_dma_ims_pcu_59106 ctrl_dma ims_pcu 0 59106 NULL
@@ -173999,7 +173214,6 @@ index 0000000..9da833a
+enable_so_s_bmap_bits_affs_sb_info_59206 s_bmap_bits affs_sb_info 0 59206 NULL
+enable_so_fat_sector_size_fat_bios_param_block_59207 fat_sector_size fat_bios_param_block 0 59207 NULL nohasharray
+enable_so_nblocks_nilfs_segsum_info_59207 nblocks nilfs_segsum_info 0 59207 &enable_so_fat_sector_size_fat_bios_param_block_59207
-+enable_so_max_data_size_mpt2_ioctl_header_59209 max_data_size mpt2_ioctl_header 0 59209 NULL
+enable_so_jade_empty_fifo_fndecl_59210 jade_empty_fifo fndecl 2 59210 NULL
+enable_so_usCRTC_H_SyncWidth__ATOM_MODE_TIMING_59211 usCRTC_H_SyncWidth _ATOM_MODE_TIMING 0 59211 NULL nohasharray
+enable_so_wbits_inflate_state_59211 wbits inflate_state 0 59211 &enable_so_usCRTC_H_SyncWidth__ATOM_MODE_TIMING_59211
@@ -174011,14 +173225,13 @@ index 0000000..9da833a
+enable_so_rtl8723b_parse_firmware_fndecl_59221 rtl8723b_parse_firmware fndecl 0 59221 &enable_so_fbmem_used_viafb_par_59221
+enable_so_gprs_set_mtu_fndecl_59222 gprs_set_mtu fndecl 2 59222 NULL
+enable_so_up_anode_59225 up anode 0 59225 NULL
-+enable_so_walk_page_test_fndecl_59232 walk_page_test fndecl 0 59232 NULL
++enable_so_sci_dma_rx_push_fndecl_59232 sci_dma_rx_push fndecl 3 59232 NULL nohasharray
++enable_so_walk_page_test_fndecl_59232 walk_page_test fndecl 0 59232 &enable_so_sci_dma_rx_push_fndecl_59232
+enable_so_sierra_net_skb_clone_fndecl_59236 sierra_net_skb_clone fndecl 3 59236 NULL
+enable_so_nfs_direct_IO_fndecl_59238 nfs_direct_IO fndecl 3 59238 NULL nohasharray
-+enable_so_bits_to_user_fndecl_59238 bits_to_user fndecl 2-3-0 59238 &enable_so_nfs_direct_IO_fndecl_59238
++enable_so_bits_to_user_fndecl_59238 bits_to_user fndecl 3-2-0 59238 &enable_so_nfs_direct_IO_fndecl_59238
+enable_so_nr_segs_iov_iter_59239 nr_segs iov_iter 0 59239 NULL
+enable_so_num_mbc_cfgs_wm8994_pdata_59240 num_mbc_cfgs wm8994_pdata 0 59240 NULL
-+enable_so_cxd2841er_i2c_debug_fndecl_59241 cxd2841er_i2c_debug fndecl 6 59241 NULL nohasharray
-+enable_so_carl9170_debugfs_read_fndecl_59241 carl9170_debugfs_read fndecl 3 59241 &enable_so_cxd2841er_i2c_debug_fndecl_59241
+enable_so_nlp_maxframe_lpfc_nodelist_59242 nlp_maxframe lpfc_nodelist 0 59242 NULL
+enable_so_req_it_iu_len_srp_login_req_59250 req_it_iu_len srp_login_req 0 59250 NULL
+enable_so_save_microcode_fndecl_59254 save_microcode fndecl 3 59254 NULL
@@ -174040,7 +173253,6 @@ index 0000000..9da833a
+enable_so_jffs2_write_dnode_fndecl_59301 jffs2_write_dnode fndecl 5 59301 NULL
+enable_so_next_segno_curseg_info_59302 next_segno curseg_info 0 59302 NULL
+enable_so_stretch_width_usb_usbvision_59304 stretch_width usb_usbvision 0 59304 NULL
-+enable_so_RequestCredit_mpt2sas_facts_59309 RequestCredit mpt2sas_facts 0 59309 NULL
+enable_so_W6692_empty_Bfifo_fndecl_59311 W6692_empty_Bfifo fndecl 2 59311 NULL
+enable_so_frame_bytes_ua101_stream_59312 frame_bytes ua101_stream 0 59312 NULL
+enable_so_befs_fblock2brun_fndecl_59313 befs_fblock2brun fndecl 3 59313 NULL
@@ -174048,8 +173260,6 @@ index 0000000..9da833a
+enable_so_pcpu_nr_units_vardecl_percpu_c_59323 pcpu_nr_units vardecl_percpu.c 0 59323 NULL
+enable_so_nv_getlen_fndecl_59327 nv_getlen fndecl 0-3 59327 NULL
+enable_so_i2c_inb_fndecl_59328 i2c_inb fndecl 0 59328 NULL
-+enable_so_read_file_spectral_bins_fndecl_59334 read_file_spectral_bins fndecl 3 59334 NULL
-+enable_so_pinconf_dbg_config_write_fndecl_59336 pinconf_dbg_config_write fndecl 3 59336 NULL
+enable_so_stmmac_set_bfsize_fndecl_59337 stmmac_set_bfsize fndecl 0 59337 NULL
+enable_so_raw_sendmsg_fndecl_59341 raw_sendmsg fndecl 3 59341 NULL
+enable_so_affs_iget_fndecl_59342 affs_iget fndecl 2 59342 NULL
@@ -174060,7 +173270,8 @@ index 0000000..9da833a
+enable_so_rtl_cmd_width_vardecl_ibm_rtl_c_59349 rtl_cmd_width vardecl_ibm_rtl.c 0 59349 NULL
+enable_so_size_s5p_jpeg_q_data_59350 size s5p_jpeg_q_data 0 59350 NULL
+enable_so_vc_cols_vc_data_59351 vc_cols vc_data 0 59351 NULL
-+enable_so_mw_count_ntb_dev_ops_59352 mw_count ntb_dev_ops 0 59352 NULL
++enable_so_r5l_write_super_and_discard_space_fndecl_59352 r5l_write_super_and_discard_space fndecl 2 59352 NULL nohasharray
++enable_so_mw_count_ntb_dev_ops_59352 mw_count ntb_dev_ops 0 59352 &enable_so_r5l_write_super_and_discard_space_fndecl_59352
+enable_so_vsync_end_drm_display_mode_59355 vsync_end drm_display_mode 0 59355 NULL nohasharray
+enable_so_ov_start_sector_drbd_device_59355 ov_start_sector drbd_device 0 59355 &enable_so_vsync_end_drm_display_mode_59355
+enable_so_hpfs_alloc_fnode_fndecl_59356 hpfs_alloc_fnode fndecl 2 59356 NULL nohasharray
@@ -174078,7 +173289,6 @@ index 0000000..9da833a
+enable_so_free_list_size_eni_dev_59386 free_list_size eni_dev 0 59386 NULL
+enable_so_line_outs_auto_pin_cfg_59389 line_outs auto_pin_cfg 0 59389 NULL nohasharray
+enable_so_tso_build_hdr_fndecl_59389 tso_build_hdr fndecl 4 59389 &enable_so_line_outs_auto_pin_cfg_59389
-+enable_so_iwl_dbgfs_chain_noise_read_fndecl_59392 iwl_dbgfs_chain_noise_read fndecl 3 59392 NULL
+enable_so_batadv_iv_ogm_queue_add_fndecl_59398 batadv_iv_ogm_queue_add fndecl 3 59398 NULL nohasharray
+enable_so_size_freelQ_59398 size freelQ 0 59398 &enable_so_batadv_iv_ogm_queue_add_fndecl_59398
+enable_so_fm_size_ubi_device_59399 fm_size ubi_device 0 59399 NULL
@@ -174095,8 +173305,7 @@ index 0000000..9da833a
+enable_so_num_vfs_ixgbe_adapter_59414 num_vfs ixgbe_adapter 0 59414 &enable_so_fotg210_urb_dequeue_fndecl_59414
+enable_so_desc_elems_timb_dma_chan_59416 desc_elems timb_dma_chan 0 59416 NULL
+enable_so_start_crash_mem_range_59421 start crash_mem_range 0 59421 NULL
-+enable_so_vma_adjust_fndecl_59429 vma_adjust fndecl 3-4-2 59429 NULL nohasharray
-+enable_so_ext2_xattr_user_set_fndecl_59429 ext2_xattr_user_set fndecl 4 59429 &enable_so_vma_adjust_fndecl_59429
++enable_so_vma_adjust_fndecl_59429 vma_adjust fndecl 3-4-2 59429 NULL
+enable_so_mmap_ureg_fndecl_59431 mmap_ureg fndecl 3 59431 NULL
+enable_so_s_checkpoint_size_nilfs_super_block_59433 s_checkpoint_size nilfs_super_block 0 59433 NULL
+enable_so_nilfs_cpfile_block_get_checkpoint_fndecl_59441 nilfs_cpfile_block_get_checkpoint fndecl 2 59441 NULL
@@ -174104,19 +173313,20 @@ index 0000000..9da833a
+enable_so_z2_zt_59452 z2 zt 0 59452 NULL
+enable_so_rng_get_data_fndecl_59453 rng_get_data fndecl 0 59453 NULL
+enable_so_ubi_dump_flash_fndecl_59454 ubi_dump_flash fndecl 4 59454 NULL
++enable_so_btrfs_add_delayed_data_ref_fndecl_59457 btrfs_add_delayed_data_ref fndecl 3 59457 NULL
+enable_so_platform_gpio_count_fndecl_59459 platform_gpio_count fndecl 0 59459 NULL
-+enable_so_vmbus_sendpacket_pagebuffer_fndecl_59463 vmbus_sendpacket_pagebuffer fndecl 3-5 59463 NULL
++enable_so_vmbus_sendpacket_pagebuffer_fndecl_59463 vmbus_sendpacket_pagebuffer fndecl 5 59463 NULL
+enable_so_ath6kl_wmi_mcast_filter_cmd_fndecl_59465 ath6kl_wmi_mcast_filter_cmd fndecl 2 59465 NULL
+enable_so_ttm_page_pool_get_pages_fndecl_59468 ttm_page_pool_get_pages fndecl 5-0 59468 NULL
+enable_so__pmcraid_io_done_fndecl_59469 _pmcraid_io_done fndecl 2 59469 NULL
+enable_so_common_ie_len_ieee80211_scan_ies_59478 common_ie_len ieee80211_scan_ies 0 59478 NULL
++enable_so_host_int_add_beacon_fndecl_59479 host_int_add_beacon fndecl 6-4 59479 NULL
+enable_so_phys_acpi_ioremap_59485 phys acpi_ioremap 0 59485 NULL
+enable_so_i2c_hid_output_raw_report_fndecl_59486 i2c_hid_output_raw_report fndecl 3 59486 NULL
+enable_so_length_acpi_pnp_device_id_59493 length acpi_pnp_device_id 0 59493 NULL
+enable_so_vma_to_resize_fndecl_59495 vma_to_resize fndecl 2-3 59495 NULL
+enable_so_rx_ringsz_alx_priv_59496 rx_ringsz alx_priv 0 59496 NULL
-+enable_so_src_addr_width_dma_slave_config_59497 src_addr_width dma_slave_config 0 59497 NULL nohasharray
-+enable_so_il_dbgfs_clear_traffic_stats_write_fndecl_59497 il_dbgfs_clear_traffic_stats_write fndecl 3 59497 &enable_so_src_addr_width_dma_slave_config_59497
++enable_so_src_addr_width_dma_slave_config_59497 src_addr_width dma_slave_config 0 59497 NULL
+enable_so_hd29l2_wr_regs_fndecl_59501 hd29l2_wr_regs fndecl 4 59501 NULL nohasharray
+enable_so_pci_frontend_enable_msix_fndecl_59501 pci_frontend_enable_msix fndecl 3 59501 &enable_so_hd29l2_wr_regs_fndecl_59501
+enable_so_lastbuf_for_pio_qib_chip_specific_59509 lastbuf_for_pio qib_chip_specific 0 59509 NULL
@@ -174152,32 +173362,29 @@ index 0000000..9da833a
+enable_so_port_num_ib_umad_port_59589 port_num ib_umad_port 0 59589 NULL
+enable_so_reserved_tags_blk_mq_tag_set_59594 reserved_tags blk_mq_tag_set 0 59594 NULL
+enable_so_bMaxPacketSize0_usb_device_descriptor_59595 bMaxPacketSize0 usb_device_descriptor 0 59595 NULL
-+enable_so_size_amd76xrom_window_59596 size amd76xrom_window 0 59596 NULL nohasharray
-+enable_so_last_sgs_total_ore_per_dev_state_59596 last_sgs_total ore_per_dev_state 0 59596 &enable_so_size_amd76xrom_window_59596
++enable_so_last_sgs_total_ore_per_dev_state_59596 last_sgs_total ore_per_dev_state 0 59596 NULL nohasharray
++enable_so_size_amd76xrom_window_59596 size amd76xrom_window 0 59596 &enable_so_last_sgs_total_ore_per_dev_state_59596
++enable_so_tipc_link_create_fndecl_59597 tipc_link_create fndecl 6 59597 NULL
+enable_so_min_coredump_linux_binfmt_59604 min_coredump linux_binfmt 0 59604 NULL
+enable_so_height_mxr_crop_59619 height mxr_crop 0 59619 NULL
+enable_so_serverworks_create_gatt_pages_fndecl_59621 serverworks_create_gatt_pages fndecl 1 59621 NULL
-+enable_so_br_vlan_delete_fndecl_59631 br_vlan_delete fndecl 2 59631 NULL
++enable_so_ndescs_mlx5_ib_mr_59624 ndescs mlx5_ib_mr 0 59624 NULL
+enable_so_unmap_single_vma_fndecl_59634 unmap_single_vma fndecl 4-3 59634 NULL
+enable_so_gpio_count_tle62x0_pdata_59637 gpio_count tle62x0_pdata 0 59637 NULL
+enable_so_q_fileoffset_xfs_dquot_59638 q_fileoffset xfs_dquot 0 59638 NULL
+enable_so_trf7970a_transmit_fndecl_59648 trf7970a_transmit fndecl 5-3 59648 NULL
+enable_so_SSID_len_brcmf_pno_net_info_le_59653 SSID_len brcmf_pno_net_info_le 0 59653 NULL
+enable_so_xfs_trim_extents_fndecl_59654 xfs_trim_extents fndecl 2 59654 NULL
-+enable_so_num_subchannels_nvsp_5_subchannel_complete_59660 num_subchannels nvsp_5_subchannel_complete 0 59660 NULL nohasharray
-+enable_so_il3945_ucode_general_stats_read_fndecl_59660 il3945_ucode_general_stats_read fndecl 3 59660 &enable_so_num_subchannels_nvsp_5_subchannel_complete_59660
++enable_so_num_subchannels_nvsp_5_subchannel_complete_59660 num_subchannels nvsp_5_subchannel_complete 0 59660 NULL
+enable_so_fat_free_clusters_fndecl_59665 fat_free_clusters fndecl 2 59665 NULL
+enable_so_mgmt_remote_name_fndecl_59667 mgmt_remote_name fndecl 7 59667 NULL nohasharray
+enable_so_amdgpu_kms_compat_ioctl_fndecl_59667 amdgpu_kms_compat_ioctl fndecl 2 59667 &enable_so_mgmt_remote_name_fndecl_59667
-+enable_so_ipmi_pci_probe_regspacing_fndecl_59668 ipmi_pci_probe_regspacing fndecl 0 59668 NULL nohasharray
-+enable_so_page_buf_cnt_hv_netvsc_packet_59668 page_buf_cnt hv_netvsc_packet 0 59668 &enable_so_ipmi_pci_probe_regspacing_fndecl_59668
++enable_so_ipmi_pci_probe_regspacing_fndecl_59668 ipmi_pci_probe_regspacing fndecl 0 59668 NULL
+enable_so_ms_read_bytes_fndecl_59672 ms_read_bytes fndecl 4-0 59672 NULL
+enable_so_old_block_size_swap_info_struct_59674 old_block_size swap_info_struct 0 59674 NULL
+enable_so_xprt_hlen_svc_deferred_req_59683 xprt_hlen svc_deferred_req 0 59683 NULL
+enable_so_rtw_buf_update_fndecl_59689 rtw_buf_update fndecl 4 59689 NULL
-+enable_so_intel_fbc_setup_cfb_fndecl_59691 intel_fbc_setup_cfb fndecl 2 59691 NULL
+enable_so_capacity_sddr55_card_info_59695 capacity sddr55_card_info 0 59695 NULL
-+enable_so_mlx4_ib_alloc_fast_reg_page_list_fndecl_59700 mlx4_ib_alloc_fast_reg_page_list fndecl 2 59700 NULL
+enable_so_flt_region_bootload_ql82xx_hw_data_59701 flt_region_bootload ql82xx_hw_data 0 59701 NULL
+enable_so_remote_qpn_mthca_qp_context_59707 remote_qpn mthca_qp_context 0 59707 NULL
+enable_so_atalk_sendmsg_fndecl_59718 atalk_sendmsg fndecl 3 59718 NULL nohasharray
@@ -174210,14 +173417,14 @@ index 0000000..9da833a
+enable_so_reiserfs_new_symlink_fndecl_59783 reiserfs_new_symlink fndecl 6 59783 NULL nohasharray
+enable_so_max_segments_queue_limits_59783 max_segments queue_limits 0 59783 &enable_so_reiserfs_new_symlink_fndecl_59783
+enable_so_mlx4_buf_alloc_fndecl_59788 mlx4_buf_alloc fndecl 2 59788 NULL
-+enable_so_sdio_set_block_size_fndecl_59792 sdio_set_block_size fndecl 2 59792 NULL nohasharray
-+enable_so_dma_npages_rds_iw_scatterlist_59792 dma_npages rds_iw_scatterlist 0 59792 &enable_so_sdio_set_block_size_fndecl_59792
++enable_so_sdio_set_block_size_fndecl_59792 sdio_set_block_size fndecl 2 59792 NULL
+enable_so_bandlength_Timon_table_entry_59793 bandlength Timon_table_entry 0 59793 NULL nohasharray
+enable_so_num_leds_lm3533_platform_data_59793 num_leds lm3533_platform_data 0 59793 &enable_so_bandlength_Timon_table_entry_59793
+enable_so_tm6000_i2c_recv_regs_fndecl_59796 tm6000_i2c_recv_regs fndecl 5 59796 NULL
+enable_so_length_lv_59797 length lv 0 59797 NULL
+enable_so_i2400m_op_msg_from_user_fndecl_59798 i2400m_op_msg_from_user fndecl 4 59798 NULL
-+enable_so_NumPhys__CONFIG_PAGE_SAS_IO_UNIT_0_59799 NumPhys _CONFIG_PAGE_SAS_IO_UNIT_0 0 59799 NULL
++enable_so_br_vlan_get_master_fndecl_59799 br_vlan_get_master fndecl 2 59799 NULL nohasharray
++enable_so_NumPhys__CONFIG_PAGE_SAS_IO_UNIT_0_59799 NumPhys _CONFIG_PAGE_SAS_IO_UNIT_0 0 59799 &enable_so_br_vlan_get_master_fndecl_59799
+enable_so_rcount_sixpack_59806 rcount sixpack 0 59806 NULL
+enable_so_vcan_change_mtu_fndecl_59807 vcan_change_mtu fndecl 2 59807 NULL
+enable_so_vmw_surface_gb_priv_define_fndecl_59811 vmw_surface_gb_priv_define fndecl 8 59811 NULL
@@ -174258,7 +173465,6 @@ index 0000000..9da833a
+enable_so_rxbuffersize_rtl_pci_59901 rxbuffersize rtl_pci 0 59901 &enable_so_mos7720_write_fndecl_59901
+enable_so_num_gpio_wm831x_59907 num_gpio wm831x 0 59907 NULL
+enable_so_x86_set_memory_region_fndecl_59911 x86_set_memory_region fndecl 4 59911 NULL
-+enable_so_wheel_num_ad714x_platform_data_59912 wheel_num ad714x_platform_data 0 59912 NULL
+enable_so_qp_memcpy_from_queue_iov_fndecl_59913 qp_memcpy_from_queue_iov fndecl 5-4 59913 NULL
+enable_so_rvmalloc_fndecl_59914 rvmalloc fndecl 1 59914 NULL
+enable_so_video_endp_usb_usbvision_59918 video_endp usb_usbvision 0 59918 NULL
@@ -174269,9 +173475,9 @@ index 0000000..9da833a
+enable_so_bfad_iocmd_vport_get_attr_fndecl_59935 bfad_iocmd_vport_get_attr fndecl 0 59935 &enable_so_n_user_regset_59935
+enable_so_maximum_acpi_address32_attribute_59936 maximum acpi_address32_attribute 0 59936 NULL
+enable_so_blk_queue_max_write_same_sectors_fndecl_59954 blk_queue_max_write_same_sectors fndecl 2 59954 NULL
-+enable_so_bpl_cx25821_buffer_59964 bpl cx25821_buffer 0 59964 NULL nohasharray
-+enable_so_ixgbe_dbg_reg_ops_write_fndecl_59964 ixgbe_dbg_reg_ops_write fndecl 3 59964 &enable_so_bpl_cx25821_buffer_59964
-+enable_so_pull_to_netfront_cb_59965 pull_to netfront_cb 0 59965 NULL
++enable_so_bpl_cx25821_buffer_59964 bpl cx25821_buffer 0 59964 NULL
++enable_so_size_wid_59965 size wid 0 59965 NULL nohasharray
++enable_so_pull_to_netfront_cb_59965 pull_to netfront_cb 0 59965 &enable_so_size_wid_59965
+enable_so_acpi_os_create_cache_fndecl_59968 acpi_os_create_cache fndecl 2 59968 NULL
+enable_so_mwifiex_set_wapi_ie_fndecl_59972 mwifiex_set_wapi_ie fndecl 3 59972 NULL
+enable_so_calc_line_length_fndecl_59973 calc_line_length fndecl 0-3-2 59973 NULL
@@ -174302,8 +173508,8 @@ index 0000000..9da833a
+enable_so_MaxMSIxVectors_mpt3sas_facts_60045 MaxMSIxVectors mpt3sas_facts 0 60045 NULL
+enable_so_blk_rq_map_kern_fndecl_60047 blk_rq_map_kern fndecl 4 60047 NULL
+enable_so_mgmt_pending_add_fndecl_60051 mgmt_pending_add fndecl 5 60051 NULL
++enable_so___br_vlan_set_proto_fndecl_60058 __br_vlan_set_proto fndecl 2 60058 NULL
+enable_so_drm_atomic_helper_update_plane_fndecl_60059 drm_atomic_helper_update_plane fndecl 6-7 60059 NULL
-+enable_so_user_set_fndecl_60060 user_set fndecl 4 60060 NULL
+enable_so_cx231xx_init_bulk_fndecl_60067 cx231xx_init_bulk fndecl 4-2-3 60067 NULL
+enable_so_level_ubifs_znode_60069 level ubifs_znode 0 60069 NULL
+enable_so_lpfc_hba_queue_depth_vardecl_lpfc_attr_c_60071 lpfc_hba_queue_depth vardecl_lpfc_attr.c 0 60071 NULL
@@ -174313,8 +173519,7 @@ index 0000000..9da833a
+enable_so_f2fs_issue_discard_fndecl_60090 f2fs_issue_discard fndecl 3-2 60090 NULL
+enable_so_persistent_gnts_c_blkfront_info_60091 persistent_gnts_c blkfront_info 0 60091 NULL
+enable_so_udpv6_sendmsg_fndecl_60103 udpv6_sendmsg fndecl 3 60103 NULL
-+enable_so_sample_rate_min_lola_60104 sample_rate_min lola 0 60104 NULL nohasharray
-+enable_so_event_trigger_regex_write_fndecl_60104 event_trigger_regex_write fndecl 3 60104 &enable_so_sample_rate_min_lola_60104
++enable_so_sample_rate_min_lola_60104 sample_rate_min lola 0 60104 NULL
+enable_so_vxfs_iget_fndecl_60105 vxfs_iget fndecl 2 60105 NULL
+enable_so_ufs_new_fragments_fndecl_60109 ufs_new_fragments fndecl 4-5-3 60109 NULL
+enable_so_tegra_slink_start_rx_dma_fndecl_60111 tegra_slink_start_rx_dma fndecl 2 60111 NULL
@@ -174322,8 +173527,7 @@ index 0000000..9da833a
+enable_so_num_tx_bnad_60115 num_tx bnad 0 60115 &enable_so_raid10_find_virt_fndecl_60115
+enable_so_display_height_vivid_dev_60116 display_height vivid_dev 0 60116 NULL
+enable_so_ht_ast_vbios_enhtable_60121 ht ast_vbios_enhtable 0 60121 NULL
-+enable_so_vga_vram_end_vardecl_vgacon_c_60130 vga_vram_end vardecl_vgacon.c 0 60130 NULL nohasharray
-+enable_so_iwl_dump_nic_event_log_fndecl_60130 iwl_dump_nic_event_log fndecl 0 60130 &enable_so_vga_vram_end_vardecl_vgacon_c_60130
++enable_so_vga_vram_end_vardecl_vgacon_c_60130 vga_vram_end vardecl_vgacon.c 0 60130 NULL
+enable_so_fb_base_drm_mode_config_60135 fb_base drm_mode_config 0 60135 NULL
+enable_so_external_rate_fndecl_60138 external_rate fndecl 0 60138 NULL
+enable_so_pci_xr17c154_setup_fndecl_60140 pci_xr17c154_setup fndecl 4 60140 NULL
@@ -174332,7 +173536,6 @@ index 0000000..9da833a
+enable_so_index_drm_minor_60149 index drm_minor 0 60149 NULL
+enable_so_pipeline_dec_packet_in_read_fndecl_60151 pipeline_dec_packet_in_read fndecl 3 60151 NULL
+enable_so_skb_checksum_setup_ip_fndecl_60154 skb_checksum_setup_ip fndecl 3 60154 NULL
-+enable_so_pvid_net_port_vlans_60155 pvid net_port_vlans 0 60155 NULL
+enable_so_dt_mem_next_cell_fndecl_60162 dt_mem_next_cell fndecl 0 60162 NULL
+enable_so_drm_fb_helper_initial_config_fndecl_60163 drm_fb_helper_initial_config fndecl 2 60163 NULL nohasharray
+enable_so_smem_start_fb_fix_screeninfo_60163 smem_start fb_fix_screeninfo 0 60163 &enable_so_drm_fb_helper_initial_config_fndecl_60163
@@ -174341,14 +173544,12 @@ index 0000000..9da833a
+enable_so_wm8962_set_fll_fndecl_60167 wm8962_set_fll fndecl 4-5 60167 NULL
+enable_so_vscnprintf_fndecl_60170 vscnprintf fndecl 0 60170 NULL
+enable_so___kfifo_out_r_fndecl_60172 __kfifo_out_r fndecl 4 60172 NULL
-+enable_so_acpi_parse_entries_fndecl_60174 acpi_parse_entries fndecl 0 60174 NULL
+enable_so_dccp_ackvec_buflen_fndecl_60177 dccp_ackvec_buflen fndecl 0 60177 NULL nohasharray
+enable_so_ec_device_read_fndecl_60177 ec_device_read fndecl 3 60177 &enable_so_dccp_ackvec_buflen_fndecl_60177
+enable_so_snd_compr_write_data_fndecl_60179 snd_compr_write_data fndecl 3 60179 NULL
+enable_so_cc2520_write_ram_fndecl_60183 cc2520_write_ram fndecl 3 60183 NULL
+enable_so_priority_binder_transaction_60184 priority binder_transaction 0 60184 NULL
+enable_so_unlink1_fndecl_60188 unlink1 fndecl 3 60188 NULL
-+enable_so_il3945_stats_flag_fndecl_60189 il3945_stats_flag fndecl 0 60189 NULL
+enable_so_pci_enable_device_fndecl_60193 pci_enable_device fndecl 0 60193 NULL
+enable_so_vsub_vsp1_format_info_60198 vsub vsp1_format_info 0 60198 NULL
+enable_so_esrt_efi_60200 esrt efi 0 60200 NULL
@@ -174374,8 +173575,7 @@ index 0000000..9da833a
+enable_so_length_squashfs_page_actor_60249 length squashfs_page_actor 0 60249 NULL
+enable_so_ah_rf_banks_size_ath5k_hw_60250 ah_rf_banks_size ath5k_hw 0 60250 NULL
+enable_so_dirty_bytes_extent_io_tree_60254 dirty_bytes extent_io_tree 0 60254 NULL
-+enable_so_sector_size_jffs2_sb_info_60255 sector_size jffs2_sb_info 0 60255 NULL nohasharray
-+enable_so__iwl_dbgfs_tof_range_request_write_fndecl_60255 _iwl_dbgfs_tof_range_request_write fndecl 3 60255 &enable_so_sector_size_jffs2_sb_info_60255
++enable_so_sector_size_jffs2_sb_info_60255 sector_size jffs2_sb_info 0 60255 NULL
+enable_so_xenvif_change_mtu_fndecl_60258 xenvif_change_mtu fndecl 2 60258 NULL
+enable_so_len_mwifiex_assoc_event_60259 len mwifiex_assoc_event 0 60259 NULL
+enable_so_size_of_priv_dvb_usb_adapter_properties_60261 size_of_priv dvb_usb_adapter_properties 0 60261 NULL
@@ -174387,33 +173587,31 @@ index 0000000..9da833a
+enable_so_f2fs_update_dentry_fndecl_60285 f2fs_update_dentry fndecl 1 60285 NULL
+enable_so___receive_buf_fndecl_60286 __receive_buf fndecl 4 60286 NULL
+enable_so_length_ore_per_dev_state_60287 length ore_per_dev_state 0 60287 NULL
-+enable_so___ata_change_queue_depth_fndecl_60290 __ata_change_queue_depth fndecl 3 60290 NULL
-+enable_so_read_file_tx99_fndecl_60294 read_file_tx99 fndecl 3 60294 NULL
+enable_so_s_retry_cnt_qib_qp_60301 s_retry_cnt qib_qp 0 60301 NULL
+enable_so_recv_actor_unix_stream_read_state_60306 recv_actor unix_stream_read_state 0 60306 NULL nohasharray
+enable_so_wl1271_rx_filter_alloc_field_fndecl_60306 wl1271_rx_filter_alloc_field fndecl 5 60306 &enable_so_recv_actor_unix_stream_read_state_60306
+enable_so_area_whcrc_60320 area whcrc 0 60320 NULL
+enable_so_inet6_create_fndecl_60321 inet6_create fndecl 3 60321 NULL nohasharray
-+enable_so_check_ref_fndecl_60321 check_ref fndecl 3 60321 &enable_so_inet6_create_fndecl_60321 nohasharray
-+enable_so_pnp_add_irq_resource_fndecl_60321 pnp_add_irq_resource fndecl 2 60321 &enable_so_check_ref_fndecl_60321
++enable_so_pnp_add_irq_resource_fndecl_60321 pnp_add_irq_resource fndecl 2 60321 &enable_so_inet6_create_fndecl_60321
+enable_so_kvm_vcpu_write_guest_fndecl_60323 kvm_vcpu_write_guest fndecl 2-4 60323 NULL
+enable_so_pg_count_nfs_pgio_mirror_60324 pg_count nfs_pgio_mirror 0 60324 NULL
+enable_so_transfer_fndecl_60326 transfer fndecl 4-0 60326 NULL
+enable_so_eor_jfs_log_60327 eor jfs_log 0 60327 NULL
+enable_so_rq_addrlen_svc_rqst_60328 rq_addrlen svc_rqst 0 60328 NULL
+enable_so_upper_vardecl_matroxfb_base_c_60329 upper vardecl_matroxfb_base.c 0 60329 NULL
-+enable_so_int_hw_irq_en_fndecl_60331 int_hw_irq_en fndecl 3 60331 NULL
+enable_so_bd_add_to_bdi_fndecl_60336 bd_add_to_bdi fndecl 0-2 60336 NULL
+enable_so_buf_size__IOCTL_Command_struct_60338 buf_size _IOCTL_Command_struct 0 60338 NULL
+enable_so_offset_nvkm_mem_60339 offset nvkm_mem 0 60339 NULL
+enable_so_qib_rc_rcv_resp_fndecl_60341 qib_rc_rcv_resp fndecl 7-9-8-4 60341 NULL
-+enable_so_h_dloarea_60342 h dloarea 0 60342 NULL
++enable_so_h_dloarea_60342 h dloarea 0 60342 NULL nohasharray
++enable_so_raid5_compute_blocknr_fndecl_60342 raid5_compute_blocknr fndecl 0-2 60342 &enable_so_h_dloarea_60342
+enable_so_pagesize_alauda_media_info_60348 pagesize alauda_media_info 0 60348 NULL
+enable_so_hest_ghes_dev_register_fndecl_60349 hest_ghes_dev_register fndecl 1 60349 NULL
+enable_so_setup_geo_fndecl_60351 setup_geo fndecl 0 60351 NULL nohasharray
+enable_so_rq_wqe_shift_mlx5_ib_create_qp_60351 rq_wqe_shift mlx5_ib_create_qp 0 60351 &enable_so_setup_geo_fndecl_60351
+enable_so_softback_lines_vardecl_fbcon_c_60357 softback_lines vardecl_fbcon.c 0 60357 NULL
+enable_so_length_dfw_pllrec_60358 length dfw_pllrec 0 60358 NULL
++enable_so_string_escape_str_fndecl_60365 string_escape_str fndecl 0 60365 NULL
+enable_so_num_counters_vardecl_sysfs_c_60371 num_counters vardecl_sysfs.c 0 60371 NULL
+enable_so_idd_bar0_ioc4_driver_data_60385 idd_bar0 ioc4_driver_data 0 60385 NULL
+enable_so_s_inodes_per_group_ext4_super_block_60387 s_inodes_per_group ext4_super_block 0 60387 NULL
@@ -174426,18 +173624,16 @@ index 0000000..9da833a
+enable_so_xfs_iroot_realloc_fndecl_60409 xfs_iroot_realloc fndecl 2 60409 NULL
+enable_so_xfs_bulkstat_one_int_fndecl_60410 xfs_bulkstat_one_int fndecl 2 60410 NULL
+enable_so_da_num_tokens_vardecl_dell_laptop_c_60413 da_num_tokens vardecl_dell-laptop.c 0 60413 NULL
-+enable_so_hw_token_fusbh200_qtd_60416 hw_token fusbh200_qtd 0 60416 NULL
+enable_so_sched_nice_sched_attr_60426 sched_nice sched_attr 0 60426 NULL
+enable_so___ocfs2_mknod_locked_fndecl_60427 __ocfs2_mknod_locked fndecl 8-9-10 60427 NULL
+enable_so_hippi_header_fndecl_60434 hippi_header fndecl 3 60434 NULL
-+enable_so_alloc_xenballooned_pages_fndecl_60439 alloc_xenballooned_pages fndecl 1 60439 NULL
+enable_so___i2c_hid_command_fndecl_60442 __i2c_hid_command fndecl 6-8 60442 NULL
+enable_so_minimum_cx88_ctrl_60444 minimum cx88_ctrl 0 60444 NULL
-+enable_so_digestsize_hash_alg_common_60446 digestsize hash_alg_common 0 60446 NULL nohasharray
-+enable_so_quirk_strict_duplicate_filter_write_fndecl_60446 quirk_strict_duplicate_filter_write fndecl 3 60446 &enable_so_digestsize_hash_alg_common_60446
++enable_so_digestsize_hash_alg_common_60446 digestsize hash_alg_common 0 60446 NULL
+enable_so_count_hscx_hw_60448 count hscx_hw 0 60448 NULL
+enable_so_lib80211_tkip_decrypt_fndecl_60450 lib80211_tkip_decrypt fndecl 2 60450 NULL
+enable_so_maxsgentries_ctlr_info_60455 maxsgentries ctlr_info 0 60455 NULL
++enable_so_clone_copy_inline_extent_fndecl_60461 clone_copy_inline_extent fndecl 7-6 60461 NULL
+enable_so_sd_quota_slots_gfs2_sbd_60466 sd_quota_slots gfs2_sbd 0 60466 NULL
+enable_so_write_fndecl_60467 write fndecl 3 60467 NULL
+enable_so_ath10k_dbg_dump_fndecl_60482 ath10k_dbg_dump fndecl 6 60482 NULL
@@ -174448,7 +173644,6 @@ index 0000000..9da833a
+enable_so_stat_rate_sl_mlx5_av_60503 stat_rate_sl mlx5_av 0 60503 NULL
+enable_so_cap_intel_iommu_60508 cap intel_iommu 0 60508 NULL
+enable_so_tiadc_channel_init_fndecl_60514 tiadc_channel_init fndecl 2 60514 NULL
-+enable_so_gfs2_xattr_set_fndecl_60515 gfs2_xattr_set fndecl 4 60515 NULL
+enable_so_rpcrdma_convert_iovs_fndecl_60516 rpcrdma_convert_iovs fndecl 0 60516 NULL
+enable_so_n_host_mvs_chip_info_60517 n_host mvs_chip_info 0 60517 NULL nohasharray
+enable_so_ll_iocontrol_register_fndecl_60517 ll_iocontrol_register fndecl 2 60517 &enable_so_n_host_mvs_chip_info_60517
@@ -174465,11 +173660,11 @@ index 0000000..9da833a
+enable_so_PSize_RxDesc_60553 PSize RxDesc 0 60553 NULL
+enable_so___calc_request_pg_fndecl_60557 __calc_request_pg fndecl 0 60557 NULL
+enable_so_max_response_cros_ec_device_60558 max_response cros_ec_device 0 60558 NULL
++enable_so_nilfs_palloc_delete_block_fndecl_60568 nilfs_palloc_delete_block fndecl 2 60568 NULL
+enable_so_chr_major_ports_device_60572 chr_major ports_device 0 60572 NULL
+enable_so_slot_dlm_member_60581 slot dlm_member 0 60581 NULL
+enable_so_nibble_read_data_parport_operations_60589 nibble_read_data parport_operations 0 60589 NULL
-+enable_so_xfs_dir2_free_try_read_fndecl_60591 xfs_dir2_free_try_read fndecl 3 60591 NULL nohasharray
-+enable_so_vfcount_arch_specific_params_60591 vfcount arch_specific_params 0 60591 &enable_so_xfs_dir2_free_try_read_fndecl_60591
++enable_so_xfs_dir2_free_try_read_fndecl_60591 xfs_dir2_free_try_read fndecl 3 60591 NULL
+enable_so_assoclen_chachapoly_req_ctx_60596 assoclen chachapoly_req_ctx 0 60596 NULL
+enable_so_in_size_ide_task_request_s_60603 in_size ide_task_request_s 0 60603 NULL
+enable_so___split_vma_fndecl_60609 __split_vma fndecl 3 60609 NULL
@@ -174485,8 +173680,9 @@ index 0000000..9da833a
+enable_so_gso_size_skb_shared_info_60636 gso_size skb_shared_info 0 60636 NULL nohasharray
+enable_so_num_tx_desc_iadev_priv_60636 num_tx_desc iadev_priv 0 60636 &enable_so_gso_size_skb_shared_info_60636
+enable_so_btrfs_new_extent_direct_fndecl_60642 btrfs_new_extent_direct fndecl 2 60642 NULL
-+enable_so_stats_dot11ACKFailureCount_read_fndecl_60645 stats_dot11ACKFailureCount_read fndecl 3 60645 NULL
++enable_so_fill_snd_fw_async_midi_port_60647 fill snd_fw_async_midi_port 0 60647 NULL
+enable_so_num_mpts_mthca_limits_60648 num_mpts mthca_limits 0 60648 NULL
++enable_so_psi_count_xhci_hub_60651 psi_count xhci_hub 0 60651 NULL
+enable_so_venus_rmdir_fndecl_60655 venus_rmdir fndecl 4 60655 NULL
+enable_so_neo_map_video_fndecl_60656 neo_map_video fndecl 3 60656 NULL
+enable_so_i_extra_isize_ext4_inode_info_60659 i_extra_isize ext4_inode_info 0 60659 NULL nohasharray
@@ -174512,8 +173708,7 @@ index 0000000..9da833a
+enable_so_kvm_mmu_page_get_gfn_fndecl_60709 kvm_mmu_page_get_gfn fndecl 0-2 60709 NULL
+enable_so_usbdev_read_fndecl_60713 usbdev_read fndecl 3 60713 NULL
+enable_so_pwr_missing_bcns_cnt_read_fndecl_60714 pwr_missing_bcns_cnt_read fndecl 3 60714 NULL
-+enable_so_sock_sendmsg_fndecl_60718 sock_sendmsg fndecl 0 60718 NULL nohasharray
-+enable_so_v9fs_xattr_user_set_fndecl_60718 v9fs_xattr_user_set fndecl 4 60718 &enable_so_sock_sendmsg_fndecl_60718
++enable_so_sock_sendmsg_fndecl_60718 sock_sendmsg fndecl 0 60718 NULL
+enable_so_bsg_request_fc_function_template_60721 bsg_request fc_function_template 0 60721 NULL nohasharray
+enable_so_HighPriorityCredit_mpt3sas_facts_60721 HighPriorityCredit mpt3sas_facts 0 60721 &enable_so_bsg_request_fc_function_template_60721
+enable_so_reserved_pebs_ubi_volume_60725 reserved_pebs ubi_volume 0 60725 NULL
@@ -174548,11 +173743,11 @@ index 0000000..9da833a
+enable_so_iso_alloc_urb_fndecl_60805 iso_alloc_urb fndecl 4-5-2 60805 NULL
+enable_so_mpt_lan_change_mtu_fndecl_60806 mpt_lan_change_mtu fndecl 2 60806 NULL
+enable_so_perdev_minors_vardecl_block_c_60809 perdev_minors vardecl_block.c 0 60809 NULL
++enable_so_min_addr_nhlt_resource_desc_60819 min_addr nhlt_resource_desc 0 60819 NULL
+enable_so_sctp_pack_cookie_fndecl_60821 sctp_pack_cookie fndecl 6 60821 NULL
+enable_so_new_log_buf_len_vardecl_printk_c_60824 new_log_buf_len vardecl_printk.c 0 60824 NULL
+enable_so___radix_tree_preload_fndecl_60830 __radix_tree_preload fndecl 0 60830 NULL
+enable_so_beacon_ies_len_cfg80211_beacon_data_60831 beacon_ies_len cfg80211_beacon_data 0 60831 NULL
-+enable_so_ieee80211_if_read_peer_fndecl_60834 ieee80211_if_read_peer fndecl 3 60834 NULL
+enable_so_register_sound_dsp_fndecl_60835 register_sound_dsp fndecl 2 60835 NULL
+enable_so_bInterval_usb_endpoint_descriptor_60843 bInterval usb_endpoint_descriptor 0 60843 NULL nohasharray
+enable_so_limit_fm10k_ring_feature_60843 limit fm10k_ring_feature 0 60843 &enable_so_bInterval_usb_endpoint_descriptor_60843
@@ -174574,7 +173769,6 @@ index 0000000..9da833a
+enable_so_orig_start_extent_map_60897 orig_start extent_map 0 60897 &enable_so_snd_pcm_oss_sync1_fndecl_60897 nohasharray
+enable_so_sn9c2028_short_command_fndecl_60897 sn9c2028_short_command fndecl 0 60897 &enable_so_orig_start_extent_map_60897
+enable_so_btmrvl_send_sync_cmd_fndecl_60899 btmrvl_send_sync_cmd fndecl 4 60899 NULL
-+enable_so_fusbh200_urb_dequeue_fndecl_60900 fusbh200_urb_dequeue fndecl 3 60900 NULL
+enable_so_bNrChannels_uac_input_terminal_descriptor_60901 bNrChannels uac_input_terminal_descriptor 0 60901 NULL
+enable_so_xdr_shrink_bufhead_fndecl_60908 xdr_shrink_bufhead fndecl 2 60908 NULL
+enable_so_gfs2_fiemap_fndecl_60913 gfs2_fiemap fndecl 4 60913 NULL
@@ -174583,8 +173777,7 @@ index 0000000..9da833a
+enable_so_blf_blkno_xfs_buf_log_format_60925 blf_blkno xfs_buf_log_format 0 60925 NULL
+enable_so_tool_peer_mask_write_fndecl_60928 tool_peer_mask_write fndecl 3 60928 NULL
+enable_so_tclass_flowlabel_mlx4_qp_path_60935 tclass_flowlabel mlx4_qp_path 0 60935 NULL
-+enable_so_read_ltv_hermes_ops_60939 read_ltv hermes_ops 0 60939 NULL nohasharray
-+enable_so_insert_state_fndecl_60939 insert_state fndecl 4-3 60939 &enable_so_read_ltv_hermes_ops_60939
++enable_so_read_ltv_hermes_ops_60939 read_ltv hermes_ops 0 60939 NULL
+enable_so_x509_process_extension_fndecl_60941 x509_process_extension fndecl 5 60941 NULL
+enable_so_msix_vector_count_MPT3SAS_ADAPTER_60944 msix_vector_count MPT3SAS_ADAPTER 0 60944 NULL
+enable_so_low_ino_proc_dir_entry_60945 low_ino proc_dir_entry 0 60945 NULL
@@ -174594,7 +173787,6 @@ index 0000000..9da833a
+enable_so_audit_make_reply_fndecl_60952 audit_make_reply fndecl 7 60952 NULL
+enable_so_ocfs2_dx_dir_new_cluster_fndecl_60953 ocfs2_dx_dir_new_cluster fndecl 3 60953 NULL
+enable_so_s_partition_root_udf_part_map_60954 s_partition_root udf_part_map 0 60954 NULL
-+enable_so_ath10k_reg_value_read_fndecl_60958 ath10k_reg_value_read fndecl 3 60958 NULL
+enable_so_get_rdac_req_fndecl_60969 get_rdac_req fndecl 3 60969 NULL
+enable_so_tx_remainder_cdc_ncm_ctx_60973 tx_remainder cdc_ncm_ctx 0 60973 NULL
+enable_so_xfs_extent_busy_update_extent_fndecl_60975 xfs_extent_busy_update_extent fndecl 5-4 60975 NULL
@@ -174605,7 +173797,6 @@ index 0000000..9da833a
+enable_so_weight_dlm_member_60989 weight dlm_member 0 60989 &enable_so_first_block_migrate_struct_60989
+enable_so_rtl8152_change_mtu_fndecl_60996 rtl8152_change_mtu fndecl 2 60996 NULL
+enable_so_endp_out_zd1201_61001 endp_out zd1201 0 61001 NULL
-+enable_so_dbgfs_frame_fndecl_61006 dbgfs_frame fndecl 3 61006 NULL
+enable_so_ocfs2_xattr_block_find_fndecl_61008 ocfs2_xattr_block_find fndecl 0 61008 NULL
+enable_so_cfs_cpt_weight_fndecl_61020 cfs_cpt_weight fndecl 0 61020 NULL
+enable_so_size_page_frag_61029 size page_frag 0 61029 NULL
@@ -174617,6 +173808,7 @@ index 0000000..9da833a
+enable_so_alloc_mr_fndecl_61052 alloc_mr fndecl 1 61052 NULL
+enable_so_len_tcp_fastopen_cookie_61053 len tcp_fastopen_cookie 0 61053 NULL
+enable_so_copy_to_fndecl_61058 copy_to fndecl 3 61058 NULL
++enable_so_regmap_encx24j600_read_fndecl_61061 regmap_encx24j600_read fndecl 5 61061 NULL
+enable_so_get_rx_packet_len_wlcore_ops_61070 get_rx_packet_len wlcore_ops 0 61070 NULL
+enable_so_untag_qdepth_blogic_adapter_61071 untag_qdepth blogic_adapter 0 61071 NULL
+enable_so_dccph_seq_dccp_hdr_61073 dccph_seq dccp_hdr 0 61073 NULL
@@ -174673,6 +173865,7 @@ index 0000000..9da833a
+enable_so_register_chrdev_region_fndecl_61223 register_chrdev_region fndecl 2-1 61223 &enable_so_rmtblkcnt_xfs_da_args_61223
+enable_so_rx_tail_len_pn533_frame_ops_61226 rx_tail_len pn533_frame_ops 0 61226 NULL
+enable_so_resource_clip_fndecl_61231 resource_clip fndecl 2-3 61231 NULL
++enable_so_isert_rx_opcode_fndecl_61234 isert_rx_opcode fndecl 4-6 61234 NULL
+enable_so_size_ceph_mds_reply_inode_61235 size ceph_mds_reply_inode 0 61235 NULL
+enable_so_max_data_pkt_payload_size_nci_rf_intf_activated_ntf_61238 max_data_pkt_payload_size nci_rf_intf_activated_ntf 0 61238 NULL nohasharray
+enable_so_channels_max_hdmi_spec_61238 channels_max hdmi_spec 0 61238 &enable_so_max_data_pkt_payload_size_nci_rf_intf_activated_ntf_61238
@@ -174685,6 +173878,7 @@ index 0000000..9da833a
+enable_so_b_blocknr_buffer_head_61260 b_blocknr buffer_head 0 61260 NULL
+enable_so_key_create_or_update_fndecl_61266 key_create_or_update fndecl 5 61266 NULL
+enable_so_split_boundary_dm_origin_61269 split_boundary dm_origin 0 61269 NULL
++enable_so___filemap_fdatawait_range_fndecl_61278 __filemap_fdatawait_range fndecl 0 61278 NULL
+enable_so_len_ubifs_zbranch_61279 len ubifs_zbranch 0 61279 NULL
+enable_so_h_minimode_61280 h minimode 0 61280 NULL
+enable_so_i_file_acl_ext4_inode_info_61282 i_file_acl ext4_inode_info 0 61282 NULL
@@ -174697,10 +173891,8 @@ index 0000000..9da833a
+enable_so_efs_nfs_get_inode_fndecl_61302 efs_nfs_get_inode fndecl 2 61302 NULL
+enable_so_fat_length_fat_floppy_defaults_61308 fat_length fat_floppy_defaults 0 61308 NULL
+enable_so_ufx_i2c_configure_fndecl_61311 ufx_i2c_configure fndecl 0 61311 NULL
-+enable_so_wlcore_smart_config_decode_event_fndecl_61313 wlcore_smart_config_decode_event fndecl 2-4 61313 NULL nohasharray
-+enable_so_snic_max_qdepth_vardecl_61313 snic_max_qdepth vardecl 0 61313 &enable_so_wlcore_smart_config_decode_event_fndecl_61313
++enable_so_wlcore_smart_config_decode_event_fndecl_61313 wlcore_smart_config_decode_event fndecl 2-4 61313 NULL
+enable_so_dvb_ca_en50221_init_fndecl_61317 dvb_ca_en50221_init fndecl 4 61317 NULL
-+enable_so_s3c_hsotg_rx_data_fndecl_61321 s3c_hsotg_rx_data fndecl 3 61321 NULL
+enable_so_ufs_iget_fndecl_61332 ufs_iget fndecl 2 61332 NULL
+enable_so_rtl2830_regmap_write_fndecl_61335 rtl2830_regmap_write fndecl 3 61335 NULL
+enable_so_wbuf_len_jffs2_sb_info_61340 wbuf_len jffs2_sb_info 0 61340 NULL
@@ -174725,9 +173917,11 @@ index 0000000..9da833a
+enable_so_npages_nfs_page_array_61390 npages nfs_page_array 0 61390 NULL nohasharray
+enable_so_num_msix_vectors_i40evf_adapter_61390 num_msix_vectors i40evf_adapter 0 61390 &enable_so_npages_nfs_page_array_61390
+enable_so_byte_len_at24_platform_data_61393 byte_len at24_platform_data 0 61393 NULL
++enable_so_fpg_sz_nvm_id_group_61394 fpg_sz nvm_id_group 0 61394 NULL
+enable_so___pci_register_driver_fndecl_61400 __pci_register_driver fndecl 0 61400 NULL
+enable_so_parent_affs_tail_61402 parent affs_tail 0 61402 NULL
+enable_so_alloc_ts_config_fndecl_61404 alloc_ts_config fndecl 1 61404 NULL
++enable_so_h_virtio_gpu_box_61407 h virtio_gpu_box 0 61407 NULL
+enable_so_buf_sz_vardecl_stmmac_main_c_61408 buf_sz vardecl_stmmac_main.c 0 61408 NULL
+enable_so_pcpu_alloc_alloc_info_fndecl_61414 pcpu_alloc_alloc_info fndecl 1-2 61414 NULL nohasharray
+enable_so_keylen_tcp_md5sig_key_61414 keylen tcp_md5sig_key 0 61414 &enable_so_pcpu_alloc_alloc_info_fndecl_61414
@@ -174735,7 +173929,6 @@ index 0000000..9da833a
+enable_so_get_pas_size_fndecl_61417 get_pas_size fndecl 0 61417 &enable_so_size_aper_size_info_lvl2_61417
+enable_so_nservers_mc5_params_61428 nservers mc5_params 0 61428 NULL nohasharray
+enable_so_tst_size_idt77252_dev_61428 tst_size idt77252_dev 0 61428 &enable_so_nservers_mc5_params_61428
-+enable_so_quirk_simultaneous_discovery_read_fndecl_61433 quirk_simultaneous_discovery_read fndecl 3 61433 NULL
+enable_so_raw_setsockopt_fndecl_61435 raw_setsockopt fndecl 5 61435 NULL nohasharray
+enable_so_pkey_index_mlx5_qp_path_61435 pkey_index mlx5_qp_path 0 61435 &enable_so_raw_setsockopt_fndecl_61435 nohasharray
+enable_so_length_drm_mode_create_blob_61435 length drm_mode_create_blob 0 61435 &enable_so_pkey_index_mlx5_qp_path_61435 nohasharray
@@ -174772,15 +173965,16 @@ index 0000000..9da833a
+enable_so_total_sect_fat_boot_sector_61513 total_sect fat_boot_sector 0 61513 NULL
+enable_so_nfs_fscache_get_super_cookie_fndecl_61520 nfs_fscache_get_super_cookie fndecl 3 61520 NULL
+enable_so_sys_write_fndecl_61526 sys_write fndecl 3-0 61526 NULL
++enable_so_scif_register_temp_fndecl_61529 scif_register_temp fndecl 3-2 61529 NULL
+enable_so_irq_base_regmap_irq_chip_data_61532 irq_base regmap_irq_chip_data 0 61532 NULL
+enable_so_strlcpy_fndecl_61539 strlcpy fndecl 0 61539 NULL
+enable_so_tag_be_async_event_grp5_pvid_state_61541 tag be_async_event_grp5_pvid_state 0 61541 NULL
+enable_so_drm_buffer_alloc_fndecl_61542 drm_buffer_alloc fndecl 2 61542 NULL
+enable_so_osst_do_scsi_fndecl_61545 osst_do_scsi fndecl 4 61545 NULL
+enable_so_iterate_dir_item_fndecl_61553 iterate_dir_item fndecl 0 61553 NULL
-+enable_so_rts_threshold_read_fndecl_61555 rts_threshold_read fndecl 3 61555 NULL
+enable_so_datalen_iscsi_tcp_recv_61556 datalen iscsi_tcp_recv 0 61556 NULL
-+enable_so_xdr_init_decode_pages_fndecl_61557 xdr_init_decode_pages fndecl 4 61557 NULL
++enable_so_xdr_init_decode_pages_fndecl_61557 xdr_init_decode_pages fndecl 4 61557 NULL nohasharray
++enable_so_regmap_encx24j600_sfr_update_fndecl_61557 regmap_encx24j600_sfr_update fndecl 4 61557 &enable_so_xdr_init_decode_pages_fndecl_61557
+enable_so_get_gart_ranges_callback_fndecl_61560 get_gart_ranges_callback fndecl 1-2 61560 NULL
+enable_so_aoedev_flush_fndecl_61565 aoedev_flush fndecl 2 61565 NULL
+enable_so_ei_block_ext4_extent_idx_61567 ei_block ext4_extent_idx 0 61567 NULL nohasharray
@@ -174788,7 +173982,6 @@ index 0000000..9da833a
+enable_so__fdt_splice_struct_fndecl_61570 _fdt_splice_struct fndecl 3-4 61570 NULL
+enable_so_smiapp_read_fndecl_61581 smiapp_read fndecl 2 61581 NULL
+enable_so_pos_in_item_tree_balance_61583 pos_in_item tree_balance 0 61583 NULL
-+enable_so_ieee80211_if_read_rc_rateidx_mcs_mask_5ghz_fndecl_61588 ieee80211_if_read_rc_rateidx_mcs_mask_5ghz fndecl 3 61588 NULL
+enable_so_usb_internal_control_msg_fndecl_61589 usb_internal_control_msg fndecl 5-2 61589 NULL
+enable_so_blkdev_issue_write_same_fndecl_61596 blkdev_issue_write_same fndecl 2-3 61596 NULL
+enable_so_hdisplay_moderec_61597 hdisplay moderec 0 61597 NULL
@@ -174808,14 +174001,14 @@ index 0000000..9da833a
+enable_so_nr_slots_b43_dmaring_61631 nr_slots b43_dmaring 0 61631 NULL
+enable_so_bio_advance_fndecl_61635 bio_advance fndecl 2 61635 NULL
+enable_so_btrfsic_process_written_block_fndecl_61638 btrfsic_process_written_block fndecl 2 61638 NULL
-+enable_so_ieee80211_if_read_dropped_frames_ttl_fndecl_61639 ieee80211_if_read_dropped_frames_ttl fndecl 3 61639 NULL
-+enable_so_iwl_dbgfs_sram_read_fndecl_61642 iwl_dbgfs_sram_read fndecl 3 61642 NULL nohasharray
-+enable_so_security_getprocattr_fndecl_61642 security_getprocattr fndecl 0 61642 &enable_so_iwl_dbgfs_sram_read_fndecl_61642
++enable_so_security_getprocattr_fndecl_61642 security_getprocattr fndecl 0 61642 NULL
+enable_so_spidev_write_fndecl_61645 spidev_write fndecl 3 61645 NULL
+enable_so_vc_bottom_vc_data_61647 vc_bottom vc_data 0 61647 NULL nohasharray
+enable_so_sci_req_tx_bytes_fndecl_61647 sci_req_tx_bytes fndecl 0 61647 &enable_so_vc_bottom_vc_data_61647 nohasharray
+enable_so_index_count_applesmc_registers_61647 index_count applesmc_registers 0 61647 &enable_so_sci_req_tx_bytes_fndecl_61647
++enable_so_f2fs_kvmalloc_fndecl_61650 f2fs_kvmalloc fndecl 1 61650 NULL
+enable_so_height_cx23885_dev_61651 height cx23885_dev 0 61651 NULL
++enable_so_mem_start_pci_params_61652 mem_start pci_params 0 61652 NULL
+enable_so_security_socket_sendmsg_fndecl_61654 security_socket_sendmsg fndecl 0 61654 NULL
+enable_so_anode_lookup_fndecl_61656 anode_lookup fndecl 0-3-2 61656 NULL
+enable_so_sdio_align_size_fndecl_61658 sdio_align_size fndecl 0-2 61658 NULL
@@ -174854,6 +174047,7 @@ index 0000000..9da833a
+enable_so_sl_count_ip_sf_socklist_61758 sl_count ip_sf_socklist 0 61758 NULL
+enable_so_rsp_residual_count_sts_entry_24xx_61762 rsp_residual_count sts_entry_24xx 0 61762 NULL
+enable_so_len_s_skfp_ioctl_61764 len s_skfp_ioctl 0 61764 NULL
++enable_so_dvb_net_sec_callback_fndecl_61767 dvb_net_sec_callback fndecl 2 61767 NULL
+enable_so_height_zr364xx_camera_61781 height zr364xx_camera 0 61781 NULL nohasharray
+enable_so_xlog_recover_add_to_cont_trans_fndecl_61781 xlog_recover_add_to_cont_trans fndecl 4 61781 &enable_so_height_zr364xx_camera_61781
+enable_so_pclk_max_ov6650_61784 pclk_max ov6650 0 61784 NULL
@@ -174864,13 +174058,12 @@ index 0000000..9da833a
+enable_so_size_snd_cs46xx_region_61796 size snd_cs46xx_region 0 61796 NULL
+enable_so_vxfs_bmap_typed_fndecl_61801 vxfs_bmap_typed fndecl 0-2 61801 NULL
+enable_so_imm_count_iscsi_task_61804 imm_count iscsi_task 0 61804 NULL
-+enable_so_end_map_range_61813 end map_range 0 61813 NULL nohasharray
-+enable_so_fat_alloc_clusters_fndecl_61813 fat_alloc_clusters fndecl 0 61813 &enable_so_end_map_range_61813
++enable_so_fat_alloc_clusters_fndecl_61813 fat_alloc_clusters fndecl 0 61813 NULL nohasharray
++enable_so_end_map_range_61813 end map_range 0 61813 &enable_so_fat_alloc_clusters_fndecl_61813
+enable_so_len_nfs_createargs_61814 len nfs_createargs 0 61814 NULL
+enable_so_m_rsumsize_xfs_mount_61815 m_rsumsize xfs_mount 0 61815 NULL
+enable_so_ttm_get_pages_fndecl_61821 ttm_get_pages fndecl 2 61821 NULL
+enable_so_bnx2x_init_wr_zp_fndecl_61822 bnx2x_init_wr_zp fndecl 3 61822 NULL
-+enable_so_tracing_resize_saved_cmdlines_fndecl_61823 tracing_resize_saved_cmdlines fndecl 1 61823 NULL
+enable_so_mmc_switch_status_error_fndecl_61826 mmc_switch_status_error fndecl 0 61826 NULL
+enable_so_SYSC_set_mempolicy_fndecl_61827 SYSC_set_mempolicy fndecl 3 61827 NULL
+enable_so_txq_req_tg3_61834 txq_req tg3 0 61834 NULL nohasharray
@@ -174889,7 +174082,6 @@ index 0000000..9da833a
+enable_so_wm5100_set_fll_fndecl_61876 wm5100_set_fll fndecl 4-5 61876 NULL nohasharray
+enable_so_wil_vring_init_tx_fndecl_61876 wil_vring_init_tx fndecl 3 61876 &enable_so_wm5100_set_fll_fndecl_61876
+enable_so_bq_textcnt_max98095_priv_61877 bq_textcnt max98095_priv 0 61877 NULL
-+enable_so_mptscsih_change_queue_depth_fndecl_61879 mptscsih_change_queue_depth fndecl 2 61879 NULL
+enable_so_virtinput_cfg_select_fndecl_61880 virtinput_cfg_select fndecl 0 61880 NULL
+enable_so_ehci_urb_done_fndecl_61889 ehci_urb_done fndecl 3 61889 NULL
+enable_so_vp_find_vqs_fndecl_61892 vp_find_vqs fndecl 2 61892 NULL
@@ -174899,8 +174091,8 @@ index 0000000..9da833a
+enable_so_MaxRecvDataSegmentLength_iscsi_conn_ops_61904 MaxRecvDataSegmentLength iscsi_conn_ops 0 61904 &enable_so_srp_alloc_iu_fndecl_61904
+enable_so_maxframe_size_fc_rport_61909 maxframe_size fc_rport 0 61909 NULL
+enable_so_rxsize_channel_data_61912 rxsize channel_data 0 61912 NULL
-+enable_so_scsi_track_queue_full_fndecl_61916 scsi_track_queue_full fndecl 2 61916 NULL
+enable_so_cxd2820r_wr_regs_i2c_fndecl_61922 cxd2820r_wr_regs_i2c fndecl 5 61922 NULL
++enable_so_raid_disks_mdp_superblock_1_61927 raid_disks mdp_superblock_1 0 61927 NULL
+enable_so_pino_nlink_jffs2_inode_cache_61933 pino_nlink jffs2_inode_cache 0 61933 NULL
+enable_so_net2272_ep_read_fndecl_61935 net2272_ep_read fndecl 0 61935 NULL
+enable_so_alloc_size_ttm_pool_opts_61945 alloc_size ttm_pool_opts 0 61945 NULL
@@ -174908,6 +174100,7 @@ index 0000000..9da833a
+enable_so_pfid_bnx2x_61952 pfid bnx2x 0 61952 NULL
+enable_so_next_ldtentry_61954 next ldtentry 0 61954 NULL
+enable_so_ntrips___thermal_zone_61955 ntrips __thermal_zone 0 61955 NULL
++enable_so_hsu_dma_active_desc_size_fndecl_61956 hsu_dma_active_desc_size fndecl 0 61956 NULL
+enable_so_indirect_size_srp_target_port_61962 indirect_size srp_target_port 0 61962 NULL
+enable_so_s_maxbytes_super_block_61963 s_maxbytes super_block 0 61963 NULL
+enable_so_periods_min_snd_pcm_hardware_61965 periods_min snd_pcm_hardware 0 61965 NULL
@@ -174926,12 +174119,10 @@ index 0000000..9da833a
+enable_so_sisusb_write_fndecl_62001 sisusb_write fndecl 3 62001 NULL
+enable_so_sc_reader_svcxprt_rdma_62004 sc_reader svcxprt_rdma 0 62004 NULL
+enable_so___add_discard_entry_fndecl_62006 __add_discard_entry fndecl 4-5 62006 NULL
-+enable_so_s3c_hsotg_set_ep_maxpacket_fndecl_62008 s3c_hsotg_set_ep_maxpacket fndecl 3 62008 NULL
+enable_so_ext4_ext_convert_to_initialized_fndecl_62009 ext4_ext_convert_to_initialized fndecl 0 62009 NULL
+enable_so_length_snd_efw_transaction_62012 length snd_efw_transaction 0 62012 NULL
+enable_so_memblock_setclr_flag_fndecl_62013 memblock_setclr_flag fndecl 2-1 62013 NULL
+enable_so_bfad_iocmd_diag_dport_enable_fndecl_62020 bfad_iocmd_diag_dport_enable fndecl 0 62020 NULL
-+enable_so_iwl_dbgfs_tof_range_req_ext_read_fndecl_62021 iwl_dbgfs_tof_range_req_ext_read fndecl 3 62021 NULL
+enable_so_size_mtd_blktrans_dev_62024 size mtd_blktrans_dev 0 62024 NULL
+enable_so_nf_bridge_encap_header_len_fndecl_62025 nf_bridge_encap_header_len fndecl 0 62025 NULL
+enable_so_filter_count_rx_used_efx_nic_type_62026 filter_count_rx_used efx_nic_type 0 62026 NULL
@@ -174950,9 +174141,9 @@ index 0000000..9da833a
+enable_so_regmap_spi_read_fndecl_62058 regmap_spi_read fndecl 3-5 62058 NULL
+enable_so_ex_offset_extent_s_62059 ex_offset extent_s 0 62059 NULL
+enable_so_num_attr_vgastate_62064 num_attr vgastate 0 62064 NULL
++enable_so_cfg80211_inform_bss_data_fndecl_62065 cfg80211_inform_bss_data fndecl 9 62065 NULL
+enable_so_do_tty_write_fndecl_62067 do_tty_write fndecl 5 62067 NULL
+enable_so_cb_stripe_unit_exofs_dt_data_map_62068 cb_stripe_unit exofs_dt_data_map 0 62068 NULL
-+enable_so__scsih_change_queue_depth_fndecl_62069 _scsih_change_queue_depth fndecl 2 62069 NULL
+enable_so_ip_vs_send_async_fndecl_62075 ip_vs_send_async fndecl 3 62075 NULL
+enable_so_wBlockSize_ms_bootblock_sysinf_62081 wBlockSize ms_bootblock_sysinf 0 62081 NULL
+enable_so_ieee80211_build_probe_req_fndecl_62084 ieee80211_build_probe_req fndecl 9-7 62084 NULL
@@ -174967,7 +174158,8 @@ index 0000000..9da833a
+enable_so_bulk_out_ep_bfusb_data_62110 bulk_out_ep bfusb_data 0 62110 &enable_so_yoffset_fb_var_screeninfo_62110
+enable_so_tx_queue_status_read_fndecl_62113 tx_queue_status_read fndecl 3 62113 NULL
+enable_so_bo_offset_vmw_surface_offset_62116 bo_offset vmw_surface_offset 0 62116 NULL
-+enable_so_sched_read_attr_fndecl_62123 sched_read_attr fndecl 3 62123 NULL
++enable_so_st_nci_hci_dm_vdc_measurement_value_fndecl_62123 st_nci_hci_dm_vdc_measurement_value fndecl 3 62123 NULL nohasharray
++enable_so_sched_read_attr_fndecl_62123 sched_read_attr fndecl 3 62123 &enable_so_st_nci_hci_dm_vdc_measurement_value_fndecl_62123
+enable_so_vcs_lseek_fndecl_62125 vcs_lseek fndecl 2 62125 NULL
+enable_so___process_deleted_xattr_fndecl_62133 __process_deleted_xattr fndecl 4 62133 NULL
+enable_so_hfs_cat_create_fndecl_62139 hfs_cat_create fndecl 1 62139 NULL
@@ -174980,6 +174172,7 @@ index 0000000..9da833a
+enable_so_user_frag_sctp_association_62167 user_frag sctp_association 0 62167 NULL nohasharray
+enable_so_alloc_huge_page_fndecl_62167 alloc_huge_page fndecl 2 62167 &enable_so_user_frag_sctp_association_62167
+enable_so_len_scrub_copy_nocow_ctx_62170 len scrub_copy_nocow_ctx 0 62170 NULL
++enable_so_clear_record_extent_bits_fndecl_62179 clear_record_extent_bits fndecl 2-3 62179 NULL
+enable_so_igb_change_mtu_fndecl_62189 igb_change_mtu fndecl 2 62189 NULL
+enable_so_agent_send_response_fndecl_62193 agent_send_response fndecl 7-5 62193 NULL nohasharray
+enable_so_eps_count_ffs_data_62193 eps_count ffs_data 0 62193 &enable_so_agent_send_response_fndecl_62193
@@ -174995,6 +174188,7 @@ index 0000000..9da833a
+enable_so_sense_len_request_62229 sense_len request 0 62229 NULL
+enable_so_shmem_getpage_gfp_fndecl_62239 shmem_getpage_gfp fndecl 2 62239 NULL
+enable_so_snd_pcm_alloc_vmalloc_buffer_fndecl_62240 snd_pcm_alloc_vmalloc_buffer fndecl 2 62240 NULL
++enable_so_soc_tplg_dapm_widget_dmixer_create_fndecl_62241 soc_tplg_dapm_widget_dmixer_create fndecl 2 62241 NULL
+enable_so_btrfs_set_extent_delalloc_fndecl_62264 btrfs_set_extent_delalloc fndecl 3-2 62264 NULL
+enable_so_num_rxqs_octeon_nic_if_config_62266 num_rxqs octeon_nic_if_config 0 62266 NULL
+enable_so_usable_leb_size_ubi_volume_62272 usable_leb_size ubi_volume 0 62272 NULL
@@ -175023,13 +174217,12 @@ index 0000000..9da833a
+enable_so_pagf_flcount_xfs_perag_62340 pagf_flcount xfs_perag 0 62340 NULL
+enable_so_reiserfs_update_sd_size_fndecl_62345 reiserfs_update_sd_size fndecl 3 62345 NULL nohasharray
+enable_so_lov_emerg_alloc_fndecl_62345 lov_emerg_alloc fndecl 1 62345 &enable_so_reiserfs_update_sd_size_fndecl_62345
-+enable_so_write_file_spectral_bins_fndecl_62347 write_file_spectral_bins fndecl 3 62347 NULL
++enable_so_switchdev_obj_size_fndecl_62346 switchdev_obj_size fndecl 0 62346 NULL
+enable_so_pcl_status_pcl_62348 pcl_status pcl 0 62348 NULL
+enable_so_C_SYSC_select_fndecl_62350 C_SYSC_select fndecl 1 62350 NULL
+enable_so_mpi_resize_fndecl_62353 mpi_resize fndecl 2 62353 NULL
+enable_so_raid56_parity_write_fndecl_62355 raid56_parity_write fndecl 0-4 62355 NULL
+enable_so_reglen_bfad_s_62360 reglen bfad_s 0 62360 NULL
-+enable_so_fm10k_iov_alloc_data_fndecl_62361 fm10k_iov_alloc_data fndecl 2 62361 NULL
+enable_so_rawv6_sendmsg_fndecl_62363 rawv6_sendmsg fndecl 3 62363 NULL
+enable_so_ts_read_fndecl_62364 ts_read fndecl 3 62364 NULL
+enable_so_drxbsp_i2c_write_read_fndecl_62366 drxbsp_i2c_write_read fndecl 5-2 62366 NULL
@@ -175047,8 +174240,7 @@ index 0000000..9da833a
+enable_so_xfer_to_user_fndecl_62394 xfer_to_user fndecl 3 62394 &enable_so___generic_block_fiemap_fndecl_62394
+enable_so_hwCBP_td_62396 hwCBP td 0 62396 NULL
+enable_so_len_scifioctl_node_ids_62402 len scifioctl_node_ids 0 62402 NULL
-+enable_so_pty_write_fndecl_62406 pty_write fndecl 3 62406 NULL nohasharray
-+enable_so_tnode_new_fndecl_62406 tnode_new fndecl 3 62406 &enable_so_pty_write_fndecl_62406
++enable_so_pty_write_fndecl_62406 pty_write fndecl 3 62406 NULL
+enable_so_segment_acpi_pci_root_62407 segment acpi_pci_root 0 62407 NULL
+enable_so_rtsx_usb_get_rsp_fndecl_62408 rtsx_usb_get_rsp fndecl 2-0 62408 NULL nohasharray
+enable_so_do_huge_pmd_wp_page_fndecl_62408 do_huge_pmd_wp_page fndecl 3 62408 &enable_so_rtsx_usb_get_rsp_fndecl_62408 nohasharray
@@ -175061,10 +174253,10 @@ index 0000000..9da833a
+enable_so_set_brk_fndecl_62430 set_brk fndecl 2 62430 NULL nohasharray
+enable_so_io_size_xfs_ioend_62430 io_size xfs_ioend 0 62430 &enable_so_set_brk_fndecl_62430
+enable_so_sctp_setsockopt_fndecl_62439 sctp_setsockopt fndecl 5 62439 NULL
++enable_so_hns_ae_get_q_num_per_vf_fndecl_62440 hns_ae_get_q_num_per_vf fndecl 0 62440 NULL
+enable_so_rx_urb_size_lan78xx_net_62443 rx_urb_size lan78xx_net 0 62443 NULL nohasharray
+enable_so_sum_link_node_ref_fndecl_62443 sum_link_node_ref fndecl 3-4 62443 &enable_so_rx_urb_size_lan78xx_net_62443
-+enable_so_rx_dropped_read_fndecl_62444 rx_dropped_read fndecl 3 62444 NULL nohasharray
-+enable_so_openings_ahc_linux_device_62444 openings ahc_linux_device 0 62444 &enable_so_rx_dropped_read_fndecl_62444
++enable_so_rx_dropped_read_fndecl_62444 rx_dropped_read fndecl 3 62444 NULL
+enable_so___videobuf_copy_stream_fndecl_62450 __videobuf_copy_stream fndecl 0-4 62450 NULL
+enable_so_lpfc_sli4_diag_fcport_reg_setup_fndecl_62456 lpfc_sli4_diag_fcport_reg_setup fndecl 0 62456 NULL
+enable_so_btrfs_new_inode_fndecl_62463 btrfs_new_inode fndecl 7 62463 NULL
@@ -175108,13 +174300,13 @@ index 0000000..9da833a
+enable_so_outbuf_dma_ati_remote_62567 outbuf_dma ati_remote 0 62567 NULL
+enable_so_svc_pool_map_get_fndecl_62569 svc_pool_map_get fndecl 0 62569 NULL
+enable_so_numscales_vardecl_longhaul_c_62570 numscales vardecl_longhaul.c 0 62570 NULL
-+enable_so_get_active_stripe_fndecl_62581 get_active_stripe fndecl 2 62581 NULL
-+enable_so_btrfs_check_data_free_space_fndecl_62583 btrfs_check_data_free_space fndecl 0 62583 NULL
++enable_so_btrfs_check_data_free_space_fndecl_62583 btrfs_check_data_free_space fndecl 0-3-2 62583 NULL
+enable_so_xenfb_write_fndecl_62599 xenfb_write fndecl 3 62599 NULL
+enable_so_mon_bin_dev0_vardecl_mon_bin_c_62600 mon_bin_dev0 vardecl_mon_bin.c 0 62600 NULL
+enable_so_i2c_rd_fndecl_62601 i2c_rd fndecl 4 62601 NULL
+enable_so___alloc_bootmem_low_fndecl_62604 __alloc_bootmem_low fndecl 2-1-3 62604 NULL nohasharray
-+enable_so_max_header_size_irlan_cb_62604 max_header_size irlan_cb 0 62604 &enable_so___alloc_bootmem_low_fndecl_62604
++enable_so_max_header_size_irlan_cb_62604 max_header_size irlan_cb 0 62604 &enable_so___alloc_bootmem_low_fndecl_62604 nohasharray
++enable_so_msi_capability_init_fndecl_62604 msi_capability_init fndecl 2-0 62604 &enable_so_max_header_size_irlan_cb_62604
+enable_so_ext4_xattr_check_names_fndecl_62605 ext4_xattr_check_names fndecl 0 62605 NULL
+enable_so_agi_root_xfs_agi_62607 agi_root xfs_agi 0 62607 NULL
+enable_so_get_user_pages_unlocked_fndecl_62612 get_user_pages_unlocked fndecl 0-3 62612 NULL
@@ -175153,6 +174345,7 @@ index 0000000..9da833a
+enable_so_tx_tx_data_prepared_read_fndecl_62714 tx_tx_data_prepared_read fndecl 3 62714 NULL
+enable_so_mtu_ring_info_62721 mtu ring_info 0 62721 NULL
+enable_so_isr_rx_mem_overflow_read_fndecl_62722 isr_rx_mem_overflow_read fndecl 3 62722 NULL
++enable_so_srp_map_finish_fr_fndecl_62727 srp_map_finish_fr fndecl 0 62727 NULL
+enable_so_jffs2_write_begin_fndecl_62728 jffs2_write_begin fndecl 3 62728 NULL nohasharray
+enable_so_limit_tc_sfq_qopt_62728 limit tc_sfq_qopt 0 62728 &enable_so_jffs2_write_begin_fndecl_62728 nohasharray
+enable_so_wep_default_key_count_read_fndecl_62728 wep_default_key_count_read fndecl 3 62728 &enable_so_limit_tc_sfq_qopt_62728
@@ -175169,6 +174362,7 @@ index 0000000..9da833a
+enable_so_num_counters_vardecl_op_model_amd_c_62750 num_counters vardecl_op_model_amd.c 0 62750 NULL
+enable_so___bioset_create_fndecl_62752 __bioset_create fndecl 2-1 62752 NULL
+enable_so_min_align_pci_dev_resource_62768 min_align pci_dev_resource 0 62768 NULL
++enable_so_st_nci_hci_dm_fwupd_end_fndecl_62777 st_nci_hci_dm_fwupd_end fndecl 3 62777 NULL
+enable_so_e_value_size_ext4_xattr_entry_62783 e_value_size ext4_xattr_entry 0 62783 NULL
+enable_so_tomoyo_read_fndecl_62786 tomoyo_read fndecl 3 62786 NULL
+enable_so_mt2131_writeregs_fndecl_62788 mt2131_writeregs fndecl 3 62788 NULL
@@ -175197,21 +174391,19 @@ index 0000000..9da833a
+enable_so_nr_vecs_nilfs_write_info_62858 nr_vecs nilfs_write_info 0 62858 NULL
+enable_so_spi_xcomm_txrx_bufs_fndecl_62860 spi_xcomm_txrx_bufs fndecl 0 62860 NULL
+enable_so_bfad_iocmd_lport_get_iostats_fndecl_62861 bfad_iocmd_lport_get_iostats fndecl 0 62861 NULL
-+enable_so_il_dbgfs_power_save_status_read_fndecl_62862 il_dbgfs_power_save_status_read fndecl 3 62862 NULL
+enable_so_height_tm6000_core_62864 height tm6000_core 0 62864 NULL
+enable_so_c67x00_td_to_error_fndecl_62867 c67x00_td_to_error fndecl 0 62867 NULL
+enable_so_ext2_max_size_fndecl_62871 ext2_max_size fndecl 0-1 62871 NULL
+enable_so_wPageSize_ms_bootblock_sysinf_62873 wPageSize ms_bootblock_sysinf 0 62873 NULL
-+enable_so_i2c_hid_get_report_fndecl_62874 i2c_hid_get_report fndecl 5 62874 NULL nohasharray
-+enable_so_read_file_dfs_fndecl_62874 read_file_dfs fndecl 3 62874 &enable_so_i2c_hid_get_report_fndecl_62874
++enable_so_i2c_hid_get_report_fndecl_62874 i2c_hid_get_report fndecl 5 62874 NULL
+enable_so_qp_count_ntb_transport_ctx_62876 qp_count ntb_transport_ctx 0 62876 NULL
+enable_so_xfs_dir3_leaf_read_fndecl_62878 xfs_dir3_leaf_read fndecl 3 62878 NULL
+enable_so_ath6kl_set_assoc_req_ies_fndecl_62882 ath6kl_set_assoc_req_ies fndecl 3 62882 NULL
+enable_so_create_kmalloc_cache_fndecl_62883 create_kmalloc_cache fndecl 2 62883 NULL
+enable_so_valueblk_xfs_attr_inactive_list_62884 valueblk xfs_attr_inactive_list 0 62884 NULL
-+enable_so_phys_start_nvs_page_62885 phys_start nvs_page 0 62885 NULL nohasharray
-+enable_so_data_sge_offset_mpt2_ioctl_command_62885 data_sge_offset mpt2_ioctl_command 0 62885 &enable_so_phys_start_nvs_page_62885
++enable_so_phys_start_nvs_page_62885 phys_start nvs_page 0 62885 NULL
+enable_so_send_cmd_fndecl_62899 send_cmd fndecl 0 62899 NULL
++enable_so_midi_in_ports_snd_efw_62902 midi_in_ports snd_efw 0 62902 NULL
+enable_so_arg2__cdrp_cmd_62906 arg2 _cdrp_cmd 0 62906 NULL
+enable_so_length_uvc_buffer_62907 length uvc_buffer 0 62907 NULL
+enable_so_buflen_xdr_buf_62914 buflen xdr_buf 0 62914 NULL nohasharray
@@ -175223,6 +174415,7 @@ index 0000000..9da833a
+enable_so_teiup_create_fndecl_62930 teiup_create fndecl 3 62930 NULL nohasharray
+enable_so_queue_size_srp_target_port_62930 queue_size srp_target_port 0 62930 &enable_so_teiup_create_fndecl_62930
+enable_so_ext4_xattr_ibody_get_fndecl_62931 ext4_xattr_ibody_get fndecl 0 62931 NULL
++enable_so_regmap_encx24j600_sfr_write_fndecl_62935 regmap_encx24j600_sfr_write fndecl 4 62935 NULL
+enable_so_bfad_send_fcpt_cb_fndecl_62936 bfad_send_fcpt_cb fndecl 5 62936 NULL
+enable_so_f2fs_acl_from_disk_fndecl_62937 f2fs_acl_from_disk fndecl 2 62937 NULL
+enable_so_iso_callback_fndecl_62939 iso_callback fndecl 3 62939 NULL
@@ -175264,6 +174457,7 @@ index 0000000..9da833a
+enable_so_len_ixgbe_tx_buffer_63047 len ixgbe_tx_buffer 0 63047 NULL
+enable_so_sizeimage_deinterlace_q_data_63050 sizeimage deinterlace_q_data 0 63050 NULL
+enable_so_atl1c_change_mtu_fndecl_63051 atl1c_change_mtu fndecl 2 63051 NULL
++enable_so_irq_create_fwspec_mapping_fndecl_63056 irq_create_fwspec_mapping fndecl 0 63056 NULL
+enable_so_p54_download_eeprom_fndecl_63057 p54_download_eeprom fndecl 4 63057 NULL
+enable_so_nr_perf_branch_stack_63058 nr perf_branch_stack 0 63058 NULL nohasharray
+enable_so_q0_num_vecs_bna_rx_config_63058 q0_num_vecs bna_rx_config 0 63058 &enable_so_nr_perf_branch_stack_63058
@@ -175280,7 +174474,6 @@ index 0000000..9da833a
+enable_so_nfc_hci_execute_cmd_fndecl_63097 nfc_hci_execute_cmd fndecl 5 63097 NULL
+enable_so_rd_page_count_rd_dev_63098 rd_page_count rd_dev 0 63098 NULL
+enable_so_get_registry_size_bnx2x_mcast_obj_63102 get_registry_size bnx2x_mcast_obj 0 63102 NULL
-+enable_so_size_devlog_params_63104 size devlog_params 0 63104 NULL
+enable_so_drxdap_fasi_read_block_fndecl_63113 drxdap_fasi_read_block fndecl 3 63113 NULL
+enable_so_ticket_len_rxkad_key_63114 ticket_len rxkad_key 0 63114 NULL
+enable_so_reiserfs_get_dentry_fndecl_63118 reiserfs_get_dentry fndecl 2 63118 NULL nohasharray
@@ -175302,12 +174495,11 @@ index 0000000..9da833a
+enable_so_dst_y_yuv_frame_info_63162 dst_y yuv_frame_info 0 63162 NULL
+enable_so_get_pattern_len_ts_ops_63165 get_pattern_len ts_ops 0 63165 NULL
+enable_so_nports_ahci_host_priv_63166 nports ahci_host_priv 0 63166 NULL
-+enable_so_stats_dot11RTSFailureCount_read_fndecl_63167 stats_dot11RTSFailureCount_read fndecl 3 63167 NULL
+enable_so_word_4_rsq_entry_63169 word_4 rsq_entry 0 63169 NULL
+enable_so_nla_reserve_fndecl_63171 nla_reserve fndecl 3 63171 NULL
+enable_so_vma_hugecache_offset_fndecl_63172 vma_hugecache_offset fndecl 0-3 63172 NULL
+enable_so___clkdev_alloc_fndecl_63173 __clkdev_alloc fndecl 1 63173 NULL
-+enable_so_ulist_add_fndecl_63177 ulist_add fndecl 0-2 63177 NULL nohasharray
++enable_so_ulist_add_fndecl_63177 ulist_add fndecl 0-2-3 63177 NULL nohasharray
+enable_so_mlxsw_cmd_mbox_query_fw_fw_pages_get_fndecl_63177 mlxsw_cmd_mbox_query_fw_fw_pages_get fndecl 0 63177 &enable_so_ulist_add_fndecl_63177
+enable_so_send_repeat_remove_fndecl_63179 send_repeat_remove fndecl 3 63179 NULL nohasharray
+enable_so_kvm_read_guest_virt_fndecl_63179 kvm_read_guest_virt fndecl 4-2 63179 &enable_so_send_repeat_remove_fndecl_63179 nohasharray
@@ -175318,7 +174510,6 @@ index 0000000..9da833a
+enable_so_cache_request_fndecl_63187 cache_request fndecl 0 63187 NULL
+enable_so_csums_alg_len_net_conf_63190 csums_alg_len net_conf 0 63190 NULL nohasharray
+enable_so___sg_page_iter_start_fndecl_63190 __sg_page_iter_start fndecl 4 63190 &enable_so_csums_alg_len_net_conf_63190
-+enable_so_ieee80211_if_read_rc_rateidx_vht_mcs_mask_2ghz_fndecl_63191 ieee80211_if_read_rc_rateidx_vht_mcs_mask_2ghz fndecl 3 63191 NULL
+enable_so_squashfs_xz_uncompress_fndecl_63193 squashfs_xz_uncompress fndecl 6-5 63193 NULL
+enable_so_val_v4l2_ctrl_63196 val v4l2_ctrl 0 63196 NULL
+enable_so___get_required_blob_size_fndecl_63199 __get_required_blob_size fndecl 0-3-2 63199 NULL
@@ -175329,7 +174520,8 @@ index 0000000..9da833a
+enable_so_write_flush_procfs_fndecl_63224 write_flush_procfs fndecl 3 63224 &enable_so_sizeimage_emmaprp_q_data_63224
+enable_so_amdgpu_cgs_alloc_gpu_mem_fndecl_63225 amdgpu_cgs_alloc_gpu_mem fndecl 3 63225 NULL
+enable_so_ufs_alloccg_block_fndecl_63239 ufs_alloccg_block fndecl 0-3 63239 NULL nohasharray
-+enable_so_tx_frag_failed_read_fndecl_63239 tx_frag_failed_read fndecl 3 63239 &enable_so_ufs_alloccg_block_fndecl_63239
++enable_so_tx_frag_failed_read_fndecl_63239 tx_frag_failed_read fndecl 3 63239 &enable_so_ufs_alloccg_block_fndecl_63239 nohasharray
++enable_so_npins_intel_pinctrl_soc_data_63239 npins intel_pinctrl_soc_data 0 63239 &enable_so_tx_frag_failed_read_fndecl_63239
+enable_so_mod_len_start_info_63244 mod_len start_info 0 63244 NULL
+enable_so_acpi_ut_get_resource_length_fndecl_63256 acpi_ut_get_resource_length fndecl 0 63256 NULL
+enable_so_ep_image_mts_desc_63258 ep_image mts_desc 0 63258 NULL
@@ -175340,24 +174532,26 @@ index 0000000..9da833a
+enable_so_sch56xx_device_add_fndecl_63264 sch56xx_device_add fndecl 1 63264 NULL
+enable_so__fc_frame_alloc_fndecl_63267 _fc_frame_alloc fndecl 1 63267 NULL
+enable_so_rpc_malloc_fndecl_63270 rpc_malloc fndecl 2 63270 NULL
++enable_so_btrfs_inc_extent_ref_fndecl_63274 btrfs_inc_extent_ref fndecl 3 63274 NULL
+enable_so_sb_rsumino_xfs_sb_63283 sb_rsumino xfs_sb 0 63283 NULL nohasharray
+enable_so_s_mb_last_start_ext4_sb_info_63283 s_mb_last_start ext4_sb_info 0 63283 &enable_so_sb_rsumino_xfs_sb_63283
+enable_so_length_sctp_errhdr_63285 length sctp_errhdr 0 63285 NULL
+enable_so_num_counters_ebt_replace_63286 num_counters ebt_replace 0 63286 NULL
+enable_so_xprt_rdma_slot_table_entries_vardecl_transport_c_63290 xprt_rdma_slot_table_entries vardecl_transport.c 0 63290 NULL
+enable_so_video_buffer_size_osd_info_63299 video_buffer_size osd_info 0 63299 NULL
-+enable_so_lpfc_idiag_drbacc_read_reg_fndecl_63301 lpfc_idiag_drbacc_read_reg fndecl 0-3 63301 NULL
+enable_so_num_req_tx_rings_bnx2_63306 num_req_tx_rings bnx2 0 63306 NULL
+enable_so_xfs_map_blocks_fndecl_63308 xfs_map_blocks fndecl 2 63308 NULL
+enable_so_valuelen_jfs_ea_63309 valuelen jfs_ea 0 63309 NULL nohasharray
+enable_so_proc_read_fndecl_63309 proc_read fndecl 3 63309 &enable_so_valuelen_jfs_ea_63309
+enable_so_adv7511_rd_fndecl_63313 adv7511_rd fndecl 0 63313 NULL
+enable_so_con_out_kvec_add_fndecl_63316 con_out_kvec_add fndecl 2 63316 NULL
++enable_so_pkt_len_eth_fast_path_rx_reg_cqe_63328 pkt_len eth_fast_path_rx_reg_cqe 0 63328 NULL
+enable_so_doorbell_start_offset_kgd2kfd_shared_resources_63332 doorbell_start_offset kgd2kfd_shared_resources 0 63332 NULL
+enable_so_gf100_vm_create_fndecl_63335 gf100_vm_create fndecl 3-2 63335 NULL
+enable_so_bulk_out_endpointAddress_usb_serial_port_63340 bulk_out_endpointAddress usb_serial_port 0 63340 NULL
+enable_so_clipcount_out_vivid_dev_63343 clipcount_out vivid_dev 0 63343 NULL
+enable_so_len_n_flags_iwl_rx_packet_63345 len_n_flags iwl_rx_packet 0 63345 NULL
++enable_so_src_offset_scif_copy_work_63353 src_offset scif_copy_work 0 63353 NULL
+enable_so_alloc_thread_groups_fndecl_63354 alloc_thread_groups fndecl 2 63354 NULL
+enable_so_x_zoran_overlay_settings_63359 x zoran_overlay_settings 0 63359 NULL
+enable_so_lbq_buf_size_rx_ring_63363 lbq_buf_size rx_ring 0 63363 NULL
@@ -175424,7 +174618,6 @@ index 0000000..9da833a
+enable_so_num_wsm_ether_type_filter_hdr_63536 num wsm_ether_type_filter_hdr 0 63536 NULL
+enable_so_num_clips_drm_mode_fb_dirty_cmd_63540 num_clips drm_mode_fb_dirty_cmd 0 63540 NULL
+enable_so___tty_buffer_request_room_fndecl_63543 __tty_buffer_request_room fndecl 0-2 63543 NULL
-+enable_so_hi_priority_depth_MPT2SAS_ADAPTER_63544 hi_priority_depth MPT2SAS_ADAPTER 0 63544 NULL
+enable_so_snd_pcm_hw_param_value_max_fndecl_63547 snd_pcm_hw_param_value_max fndecl 0 63547 NULL
+enable_so_tlv_data_size_user_element_63549 tlv_data_size user_element 0 63549 NULL
+enable_so_ath10k_htc_process_trailer_fndecl_63552 ath10k_htc_process_trailer fndecl 3 63552 NULL
@@ -175452,7 +174645,6 @@ index 0000000..9da833a
+enable_so_snd_pcm_plug_alloc_fndecl_63600 snd_pcm_plug_alloc fndecl 2 63600 NULL
+enable_so_offset_pci_sriov_63604 offset pci_sriov 0 63604 NULL
+enable_so_zone_start_pfn_zone_63616 zone_start_pfn zone 0 63616 NULL
-+enable_so_il_dbgfs_disable_ht40_read_fndecl_63617 il_dbgfs_disable_ht40_read fndecl 3 63617 NULL
+enable_so_rx_mtu_p54_common_63619 rx_mtu p54_common 0 63619 NULL
+enable_so_w_nr_rds_iw_work_ring_63620 w_nr rds_iw_work_ring 0 63620 NULL
+enable_so_buf_len_mwifiex_sdio_mpa_rx_63636 buf_len mwifiex_sdio_mpa_rx 0 63636 NULL nohasharray
@@ -175467,14 +174659,15 @@ index 0000000..9da833a
+enable_so_nr_map_e820map_63674 nr_map e820map 0 63674 NULL
+enable_so_min_vblank_mt9v032_model_data_63675 min_vblank mt9v032_model_data 0 63675 NULL
+enable_so_nfs_writepage_setup_fndecl_63682 nfs_writepage_setup fndecl 3-4 63682 NULL
-+enable_so_height_ssd1307fb_par_63688 height ssd1307fb_par 0 63688 NULL
++enable_so_height_ssd1307fb_par_63688 height ssd1307fb_par 0 63688 NULL nohasharray
++enable_so_alloc_gen8_temp_bitmaps_fndecl_63688 alloc_gen8_temp_bitmaps fndecl 3 63688 &enable_so_height_ssd1307fb_par_63688
+enable_so_pci_get_device_func_fndecl_63689 pci_get_device_func fndecl 2 63689 NULL nohasharray
+enable_so_fanout_set_data_cbpf_fndecl_63689 fanout_set_data_cbpf fndecl 3 63689 &enable_so_pci_get_device_func_fndecl_63689
++enable_so_nr_pages_msc_63690 nr_pages msc 0 63690 NULL
+enable_so_cell_error_with_code_fndecl_63693 cell_error_with_code fndecl 3 63693 NULL
+enable_so_obj_size_proto_63697 obj_size proto 0 63697 NULL nohasharray
+enable_so___iio_add_chan_devattr_fndecl_63697 __iio_add_chan_devattr fndecl 0 63697 &enable_so_obj_size_proto_63697
+enable_so_gsm_data_alloc_fndecl_63702 gsm_data_alloc fndecl 3 63702 NULL
-+enable_so_key_conf_keyidx_read_fndecl_63704 key_conf_keyidx_read fndecl 3 63704 NULL
+enable_so_spr_wm_latency_write_fndecl_63706 spr_wm_latency_write fndecl 3 63706 NULL
+enable_so_real_trim_memory_fndecl_63709 real_trim_memory fndecl 1-2 63709 NULL
+enable_so_owner_snd_ctl_elem_info_63711 owner snd_ctl_elem_info 0 63711 NULL
@@ -175499,7 +174692,6 @@ index 0000000..9da833a
+enable_so_msix_count_skd_device_63760 msix_count skd_device 0 63760 &enable_so_ath6kl_wmi_remain_on_chnl_cmd_fndecl_63760
+enable_so_xfs_qm_dqalloc_fndecl_63762 xfs_qm_dqalloc fndecl 5 63762 NULL nohasharray
+enable_so_index_isi_board_63762 index isi_board 0 63762 &enable_so_xfs_qm_dqalloc_fndecl_63762
-+enable_so_insn_size_kprobe_insn_cache_63777 insn_size kprobe_insn_cache 0 63777 NULL
+enable_so___hwahc_op_set_gtk_fndecl_63781 __hwahc_op_set_gtk fndecl 4 63781 NULL
+enable_so_items_priv_size_vxge_hw_mempool_63785 items_priv_size vxge_hw_mempool 0 63785 NULL
+enable_so_num_slices_myri10ge_priv_63789 num_slices myri10ge_priv 0 63789 NULL
@@ -175547,10 +174739,9 @@ index 0000000..9da833a
+enable_so_tx_cnt_fritz_bcs_63901 tx_cnt fritz_bcs 0 63901 NULL
+enable_so_mmc_align_data_size_fndecl_63906 mmc_align_data_size fndecl 0-2 63906 NULL nohasharray
+enable_so_fraglen_encryptor_desc_63906 fraglen encryptor_desc 0 63906 &enable_so_mmc_align_data_size_fndecl_63906
-+enable_so_blk_ioctl_zeroout_fndecl_63907 blk_ioctl_zeroout fndecl 3-2 63907 NULL
+enable_so_len_sock_fprog_kern_63914 len sock_fprog_kern 0 63914 NULL
-+enable_so_fw_stats_len_wl1271_stats_63915 fw_stats_len wl1271_stats 0 63915 NULL nohasharray
-+enable_so_read_file_base_eeprom_fndecl_63915 read_file_base_eeprom fndecl 3 63915 &enable_so_fw_stats_len_wl1271_stats_63915
++enable_so_read_file_base_eeprom_fndecl_63915 read_file_base_eeprom fndecl 3 63915 NULL nohasharray
++enable_so_fw_stats_len_wl1271_stats_63915 fw_stats_len wl1271_stats 0 63915 &enable_so_read_file_base_eeprom_fndecl_63915
+enable_so_iwl_mvm_send_cmd_fndecl_63918 iwl_mvm_send_cmd fndecl 0 63918 NULL
+enable_so_new_data_offset_md_rdev_63919 new_data_offset md_rdev 0 63919 NULL nohasharray
+enable_so_align_nft_set_ext_type_63919 align nft_set_ext_type 0 63919 &enable_so_new_data_offset_md_rdev_63919
@@ -175568,8 +174759,8 @@ index 0000000..9da833a
+enable_so_map_szl_cyttsp4_sysinfo_data_63948 map_szl cyttsp4_sysinfo_data 0 63948 NULL
+enable_so_pcfg_ofs_cyttsp4_sysinfo_ofs_63956 pcfg_ofs cyttsp4_sysinfo_ofs 0 63956 NULL
+enable_so_oprofilefs_str_to_user_fndecl_63957 oprofilefs_str_to_user fndecl 3 63957 NULL
-+enable_so_pvr2_send_request_fndecl_63959 pvr2_send_request fndecl 3-5 63959 NULL
-+enable_so_rb_max_requests_rpcrdma_buffer_63960 rb_max_requests rpcrdma_buffer 0 63960 NULL
++enable_so_pvr2_send_request_fndecl_63959 pvr2_send_request fndecl 3-5 63959 NULL nohasharray
++enable_so_add_delayed_ref_head_fndecl_63959 add_delayed_ref_head fndecl 5 63959 &enable_so_pvr2_send_request_fndecl_63959
+enable_so_write_file_beacon_fndecl_63962 write_file_beacon fndecl 3 63962 NULL
+enable_so_psb_gtt_alloc_range_fndecl_63966 psb_gtt_alloc_range fndecl 2-5 63966 NULL
+enable_so_len_wm_coeff_ctl_63967 len wm_coeff_ctl 0 63967 NULL
@@ -175604,7 +174795,6 @@ index 0000000..9da833a
+enable_so_link_duplex_pch_gbe_mac_info_64077 link_duplex pch_gbe_mac_info 0 64077 NULL
+enable_so_dma_size_cx88_audio_dev_64082 dma_size cx88_audio_dev 0 64082 NULL
+enable_so_xfs_iomap_eof_prealloc_initial_size_fndecl_64085 xfs_iomap_eof_prealloc_initial_size fndecl 3 64085 NULL
-+enable_so_iwl_dbgfs_ucode_bt_stats_read_fndecl_64087 iwl_dbgfs_ucode_bt_stats_read fndecl 3 64087 NULL
+enable_so_si476x_radio_read_rsq_blob_fndecl_64088 si476x_radio_read_rsq_blob fndecl 3 64088 NULL
+enable_so_size_mxr_block_64090 size mxr_block 0 64090 NULL
+enable_so_set_arg_fndecl_64091 set_arg fndecl 3 64091 NULL
@@ -175617,9 +174807,9 @@ index 0000000..9da833a
+enable_so_ncells_nvmem_config_64108 ncells nvmem_config 0 64108 NULL nohasharray
+enable_so_nvme_trans_unit_serial_page_fndecl_64108 nvme_trans_unit_serial_page fndecl 4 64108 &enable_so_ncells_nvmem_config_64108
+enable_so_lmac_count_bgx_64109 lmac_count bgx 0 64109 NULL
-+enable_so_btmrvl_fwdump_write_fndecl_64113 btmrvl_fwdump_write fndecl 3 64113 NULL
+enable_so_fc_copy_buffer_to_sglist_fndecl_64115 fc_copy_buffer_to_sglist fndecl 0-2 64115 NULL
+enable_so_compat_write_data_parport_operations_64123 compat_write_data parport_operations 0 64123 NULL
++enable_so_of_property_count_strings_fndecl_64124 of_property_count_strings fndecl 0 64124 NULL
+enable_so_tx_shift_at91_devtype_data_64126 tx_shift at91_devtype_data 0 64126 NULL
+enable_so_gigaset_fill_inbuf_fndecl_64130 gigaset_fill_inbuf fndecl 3 64130 NULL
+enable_so_gru_alloc_locked_gts_fndecl_64132 gru_alloc_locked_gts fndecl 1 64132 NULL nohasharray
@@ -175667,11 +174857,10 @@ index 0000000..9da833a
+enable_so_num_entries_wmi_target_roam_tbl_64263 num_entries wmi_target_roam_tbl 0 64263 NULL
+enable_so_getxattr_cb_ceph_vxattr_64271 getxattr_cb ceph_vxattr 0 64271 NULL nohasharray
+enable_so_dio_bio_complete_fndecl_64271 dio_bio_complete fndecl 0 64271 &enable_so_getxattr_cb_ceph_vxattr_64271
-+enable_so_dm_tm_read_lock_fndecl_64272 dm_tm_read_lock fndecl 2 64272 NULL
++enable_so_dm_tm_read_lock_fndecl_64272 dm_tm_read_lock fndecl 2-0 64272 NULL
+enable_so_denominator_v4l2_fract_64280 denominator v4l2_fract 0 64280 NULL
+enable_so_t_prot_nents_se_cmd_64282 t_prot_nents se_cmd 0 64282 NULL
+enable_so_SyS_mincore_fndecl_64284 SyS_mincore fndecl 2-1 64284 NULL
-+enable_so__dump_buf_data_order_vardecl_64288 _dump_buf_data_order vardecl 0 64288 NULL
+enable_so_dev_minor_cuse_init_out_64292 dev_minor cuse_init_out 0 64292 NULL
+enable_so_ath6kl_wmi_proc_events_vif_fndecl_64294 ath6kl_wmi_proc_events_vif fndecl 5 64294 NULL
+enable_so_fdt_getprop_fndecl_64301 fdt_getprop fndecl 2 64301 NULL
@@ -175680,19 +174869,20 @@ index 0000000..9da833a
+enable_so_sq_size_vardecl_64307 sq_size vardecl 0 64307 &enable_so_vfp_ast_vbios_enhtable_64307
+enable_so_sys_vmsplice_fndecl_64310 sys_vmsplice fndecl 3 64310 NULL nohasharray
+enable_so_snd_emux_create_port_fndecl_64310 snd_emux_create_port fndecl 3 64310 &enable_so_sys_vmsplice_fndecl_64310
-+enable_so_cw_putcs_fndecl_64311 cw_putcs fndecl 4-5-6 64311 NULL
++enable_so_cw_putcs_fndecl_64311 cw_putcs fndecl 5-4-6 64311 NULL
+enable_so___wa_xfer_setup_fndecl_64316 __wa_xfer_setup fndecl 0 64316 NULL
+enable_so_smk_read_unconfined_fndecl_64317 smk_read_unconfined fndecl 3 64317 NULL
++enable_so_st_nci_hci_loopback_fndecl_64326 st_nci_hci_loopback fndecl 3 64326 NULL
+enable_so_hs_descs_count_ffs_data_64332 hs_descs_count ffs_data 0 64332 NULL
+enable_so_cciss_add_disk_fndecl_64338 cciss_add_disk fndecl 3 64338 NULL
+enable_so_tx_padding_usbatm_driver_64341 tx_padding usbatm_driver 0 64341 NULL
+enable_so_vif_data_size_ieee80211_hw_64342 vif_data_size ieee80211_hw 0 64342 NULL
++enable_so_apply_vma_lock_flags_fndecl_64346 apply_vma_lock_flags fndecl 2-1 64346 NULL
+enable_so_part_start_hfsplus_sb_info_64347 part_start hfsplus_sb_info 0 64347 NULL
+enable_so_bytesperline_au0828_dev_64350 bytesperline au0828_dev 0 64350 NULL
+enable_so_r592_test_fifo_empty_fndecl_64351 r592_test_fifo_empty fndecl 0 64351 NULL
+enable_so_opcount_compat_xfs_fsop_attrmulti_handlereq_64355 opcount compat_xfs_fsop_attrmulti_handlereq 0 64355 NULL
+enable_so_logfs_truncate_fndecl_64356 logfs_truncate fndecl 2 64356 NULL
-+enable_so__iwl_dbgfs_tof_range_abort_write_fndecl_64357 _iwl_dbgfs_tof_range_abort_write fndecl 3 64357 NULL
+enable_so_cur_tx_pos_tegra_spi_data_64362 cur_tx_pos tegra_spi_data 0 64362 NULL
+enable_so_isofs_get_blocks_fndecl_64368 isofs_get_blocks fndecl 2 64368 NULL nohasharray
+enable_so_hpi_instream_host_buffer_allocate_fndecl_64368 hpi_instream_host_buffer_allocate fndecl 2 64368 &enable_so_isofs_get_blocks_fndecl_64368
@@ -175733,6 +174923,7 @@ index 0000000..9da833a
+enable_so_acpi_dev_get_irqresource_fndecl_64469 acpi_dev_get_irqresource fndecl 2 64469 NULL
+enable_so_request_key_and_link_fndecl_64470 request_key_and_link fndecl 4 64470 NULL
+enable_so_nilfs_btnode_submit_block_fndecl_64473 nilfs_btnode_submit_block fndecl 3-2 64473 NULL
++enable_so_switchdev_deferred_enqueue_fndecl_64474 switchdev_deferred_enqueue fndecl 3 64474 NULL
+enable_so_vb2_read_fndecl_64476 vb2_read fndecl 3 64476 NULL
+enable_so_nr_dirtied_pause_task_struct_64480 nr_dirtied_pause task_struct 0 64480 NULL nohasharray
+enable_so_pid_vnr_fndecl_64480 pid_vnr fndecl 0 64480 &enable_so_nr_dirtied_pause_task_struct_64480
@@ -175741,12 +174932,13 @@ index 0000000..9da833a
+enable_so_SendReceive2_fndecl_64485 SendReceive2 fndecl 4 64485 NULL
+enable_so_ax25_setsockopt_fndecl_64487 ax25_setsockopt fndecl 5 64487 NULL
+enable_so_vhost_hlen_vhost_net_virtqueue_64488 vhost_hlen vhost_net_virtqueue 0 64488 NULL
++enable_so_scif_fence_signal_fndecl_64490 scif_fence_signal fndecl 2-4 64490 NULL
+enable_so_val_reginit_item_64493 val reginit_item 0 64493 NULL
-+enable_so___FIXADDR_TOP_vardecl_64494 __FIXADDR_TOP vardecl 0 64494 NULL
++enable_so_mrf24j40_long_regmap_write_fndecl_64494 mrf24j40_long_regmap_write fndecl 3 64494 NULL nohasharray
++enable_so___FIXADDR_TOP_vardecl_64494 __FIXADDR_TOP vardecl 0 64494 &enable_so_mrf24j40_long_regmap_write_fndecl_64494
+enable_so_ddr_end_intel_sst_drv_64496 ddr_end intel_sst_drv 0 64496 NULL
+enable_so_read_status_fndecl_64497 read_status fndecl 0 64497 NULL
+enable_so_ext_ramdisk_size_boot_params_64498 ext_ramdisk_size boot_params 0 64498 NULL
-+enable_so_iwl_mvm_coex_dump_mbox_old_fndecl_64500 iwl_mvm_coex_dump_mbox_old fndecl 0-3 64500 NULL
+enable_so_num_def_tx_descs_octeon_config_64501 num_def_tx_descs octeon_config 0 64501 NULL
+enable_so_omap_hsmmc_dma_cleanup_fndecl_64504 omap_hsmmc_dma_cleanup fndecl 2 64504 NULL
+enable_so_dvb_demux_ioctl_fndecl_64510 dvb_demux_ioctl fndecl 2 64510 NULL
@@ -175837,6 +175029,7 @@ index 0000000..9da833a
+enable_so_datasz_memelfnote_64760 datasz memelfnote 0 64760 NULL
+enable_so_raid_disk_mdp_device_descriptor_s_64762 raid_disk mdp_device_descriptor_s 0 64762 NULL
+enable_so_smtcfb_read_fndecl_64764 smtcfb_read fndecl 3 64764 NULL
++enable_so_vid_begin_switchdev_obj_port_vlan_64767 vid_begin switchdev_obj_port_vlan 0 64767 NULL
+enable_so_ima_appraise_measurement_fndecl_64769 ima_appraise_measurement fndecl 6 64769 NULL
+enable_so_jfs_get_block_fndecl_64772 jfs_get_block fndecl 2 64772 NULL
+enable_so_at24_eeprom_write_fndecl_64775 at24_eeprom_write fndecl 3-0-4 64775 NULL nohasharray
@@ -175845,20 +175038,16 @@ index 0000000..9da833a
+enable_so_bfad_iocmd_ethboot_query_fndecl_64786 bfad_iocmd_ethboot_query fndecl 0 64786 &enable_so_ib_qib_max_srq_sges_vardecl_64786
+enable_so_tun_hlen_ip_tunnel_64791 tun_hlen ip_tunnel 0 64791 NULL
+enable_so_fw_size_sst_pdata_64793 fw_size sst_pdata 0 64793 NULL
-+enable_so_mac80211_format_buffer_fndecl_64801 mac80211_format_buffer fndecl 2 64801 NULL
+enable_so__update_journal_header_block_fndecl_64803 _update_journal_header_block fndecl 2 64803 NULL nohasharray
+enable_so_fr_max_payload_fcoe_rcv_info_64803 fr_max_payload fcoe_rcv_info 0 64803 &enable_so__update_journal_header_block_fndecl_64803
+enable_so_pmsg_size_ramoops_context_64804 pmsg_size ramoops_context 0 64804 NULL
+enable_so_tx_headroom_nci_dev_64805 tx_headroom nci_dev 0 64805 NULL
+enable_so_alloc_align_snd_array_64806 alloc_align snd_array 0 64806 NULL
-+enable_so_il_dbgfs_fh_reg_read_fndecl_64818 il_dbgfs_fh_reg_read fndecl 3 64818 NULL
-+enable_so_xen_count_remap_pages_fndecl_64820 xen_count_remap_pages fndecl 0-1 64820 NULL nohasharray
-+enable_so_iwl_dbgfs_scan_ant_rxchain_read_fndecl_64820 iwl_dbgfs_scan_ant_rxchain_read fndecl 3 64820 &enable_so_xen_count_remap_pages_fndecl_64820
++enable_so_xen_count_remap_pages_fndecl_64820 xen_count_remap_pages fndecl 0-1 64820 NULL
+enable_so_reg_list_size_amdgpu_rlc_64826 reg_list_size amdgpu_rlc 0 64826 NULL
+enable_so_atr_csum_cm4000_dev_64828 atr_csum cm4000_dev 0 64828 NULL
+enable_so_ocfs2_xattr_index_block_find_fndecl_64835 ocfs2_xattr_index_block_find fndecl 0 64835 NULL
+enable_so_lprocfs_write_frac_helper_fndecl_64841 lprocfs_write_frac_helper fndecl 2 64841 NULL
-+enable_so_iov_iter_truncate_fndecl_64844 iov_iter_truncate fndecl 2 64844 NULL
+enable_so_smsc75xx_change_mtu_fndecl_64845 smsc75xx_change_mtu fndecl 2 64845 NULL nohasharray
+enable_so_ngpio_gpio_chip_64845 ngpio gpio_chip 0 64845 &enable_so_smsc75xx_change_mtu_fndecl_64845
+enable_so__send_fndecl_64846 _send fndecl 3 64846 NULL nohasharray
@@ -175872,7 +175061,6 @@ index 0000000..9da833a
+enable_so_raw_recvmsg_fndecl_64866 raw_recvmsg fndecl 3 64866 NULL nohasharray
+enable_so_len_discard_entry_64866 len discard_entry 0 64866 &enable_so_raw_recvmsg_fndecl_64866
+enable_so_p_linux_binprm_64868 p linux_binprm 0 64868 NULL
-+enable_so_sc_only_mode_read_fndecl_64871 sc_only_mode_read fndecl 3 64871 NULL
+enable_so_rq_count_enic_64875 rq_count enic 0 64875 NULL
+enable_so_tx_ring_size_fe_priv_64876 tx_ring_size fe_priv 0 64876 NULL
+enable_so_tx_max_frame_ntb_transport_qp_64878 tx_max_frame ntb_transport_qp 0 64878 NULL
@@ -175888,8 +175076,7 @@ index 0000000..9da833a
+enable_so_provide_user_output_fndecl_64898 provide_user_output fndecl 3 64898 &enable_so_mpeglinesize_vardecl_cx23885_417_c_64898
+enable_so_f_audio_buffer_alloc_fndecl_64901 f_audio_buffer_alloc fndecl 1 64901 NULL
+enable_so_unuse_pte_range_fndecl_64903 unuse_pte_range fndecl 3 64903 NULL
-+enable_so_maxctl_brcmf_bus_64907 maxctl brcmf_bus 0 64907 NULL nohasharray
-+enable_so_ath10k_read_wmi_services_fndecl_64907 ath10k_read_wmi_services fndecl 3 64907 &enable_so_maxctl_brcmf_bus_64907
++enable_so_maxctl_brcmf_bus_64907 maxctl brcmf_bus 0 64907 NULL
+enable_so_data_size_event_reader_64909 data_size event_reader 0 64909 NULL
+enable_so_nmsgs_i2c_rdwr_ioctl_data_64911 nmsgs i2c_rdwr_ioctl_data 0 64911 NULL
+enable_so_next_block_for_io_dio_submit_64914 next_block_for_io dio_submit 0 64914 NULL
@@ -175914,7 +175101,8 @@ index 0000000..9da833a
+enable_so_maxTxCredits_edgeport_port_64991 maxTxCredits edgeport_port 0 64991 NULL
+enable_so_UpdateRegs_fndecl_64995 UpdateRegs fndecl 2-3 64995 NULL nohasharray
+enable_so_vt8231_device_add_fndecl_64995 vt8231_device_add fndecl 1 64995 &enable_so_UpdateRegs_fndecl_64995
-+enable_so___mlxsw_item_get32_fndecl_64999 __mlxsw_item_get32 fndecl 0 64999 NULL
++enable_so_get_regs_len_hnae_ae_ops_64999 get_regs_len hnae_ae_ops 0 64999 NULL nohasharray
++enable_so___mlxsw_item_get32_fndecl_64999 __mlxsw_item_get32 fndecl 0 64999 &enable_so_get_regs_len_hnae_ae_ops_64999
+enable_so_access_length_acpi_connection_info_65000 access_length acpi_connection_info 0 65000 NULL nohasharray
+enable_so_shkey_id_sctp_authhdr_65000 shkey_id sctp_authhdr 0 65000 &enable_so_access_length_acpi_connection_info_65000
+enable_so_mask_cbuf_65001 mask cbuf 0 65001 NULL
@@ -175939,6 +175127,7 @@ index 0000000..9da833a
+enable_so_mmc_test_transfer_fndecl_65076 mmc_test_transfer fndecl 6-5-3 65076 NULL
+enable_so_xfs_growfs_rt_alloc_fndecl_65079 xfs_growfs_rt_alloc fndecl 2-3 65079 NULL
+enable_so_SyS_bpf_fndecl_65081 SyS_bpf fndecl 3 65081 NULL
++enable_so_len_scifioctl_reg_65083 len scifioctl_reg 0 65083 NULL
+enable_so_frame_size_pwc_device_65084 frame_size pwc_device 0 65084 NULL
+enable_so_fcoe_len_fcoe_rport_65085 fcoe_len fcoe_rport 0 65085 NULL
+enable_so_width_cx88_core_65086 width cx88_core 0 65086 NULL nohasharray
@@ -175953,8 +175142,7 @@ index 0000000..9da833a
+enable_so_ecryptfs_write_begin_fndecl_65099 ecryptfs_write_begin fndecl 3 65099 NULL
+enable_so_ieee802154_hdr_push_fndecl_65100 ieee802154_hdr_push fndecl 0 65100 NULL nohasharray
+enable_so_max_xri_lpfc_max_cfg_param_65100 max_xri lpfc_max_cfg_param 0 65100 &enable_so_ieee802154_hdr_push_fndecl_65100
-+enable_so_sndsize_sock_xprt_65105 sndsize sock_xprt 0 65105 NULL nohasharray
-+enable_so_iwl_dbgfs_bt_notif_read_fndecl_65105 iwl_dbgfs_bt_notif_read fndecl 3 65105 &enable_so_sndsize_sock_xprt_65105
++enable_so_sndsize_sock_xprt_65105 sndsize sock_xprt 0 65105 NULL
+enable_so_x25_recvmsg_fndecl_65106 x25_recvmsg fndecl 3 65106 NULL nohasharray
+enable_so_ocfs2_dx_dir_rebalance_fndecl_65106 ocfs2_dx_dir_rebalance fndecl 7-0 65106 &enable_so_x25_recvmsg_fndecl_65106
+enable_so_ntb_mw_count_fndecl_65108 ntb_mw_count fndecl 0 65108 NULL
@@ -175970,9 +175158,9 @@ index 0000000..9da833a
+enable_so_do_ip_setsockopt_fndecl_65135 do_ip_setsockopt fndecl 5 65135 NULL
+enable_so_kimage_file_alloc_init_fndecl_65136 kimage_file_alloc_init fndecl 5 65136 NULL
+enable_so_num_pipe_drm_psb_private_65138 num_pipe drm_psb_private 0 65138 NULL
-+enable_so_ixgbe_dbg_netdev_ops_read_fndecl_65148 ixgbe_dbg_netdev_ops_read fndecl 3 65148 NULL
+enable_so_depth_sh_veu_format_65150 depth sh_veu_format 0 65150 NULL
+enable_so___recover_dot_dentries_fndecl_65151 __recover_dot_dentries fndecl 2 65151 NULL
++enable_so_pci_mem_end_qed_dev_info_65160 pci_mem_end qed_dev_info 0 65160 NULL
+enable_so_piocnt_qib_ctxtdata_65161 piocnt qib_ctxtdata 0 65161 NULL nohasharray
+enable_so_nexthdrlen_lowpan_nhc_65161 nexthdrlen lowpan_nhc 0 65161 &enable_so_piocnt_qib_ctxtdata_65161 nohasharray
+enable_so_dma_txsize_vardecl_stmmac_main_c_65161 dma_txsize vardecl_stmmac_main.c 0 65161 &enable_so_nexthdrlen_lowpan_nhc_65161
@@ -175991,15 +175179,18 @@ index 0000000..9da833a
+enable_so_SyS_sched_getattr_fndecl_65202 SyS_sched_getattr fndecl 3 65202 NULL
+enable_so_ackr_win_top_rxrpc_call_65205 ackr_win_top rxrpc_call 0 65205 NULL
+enable_so_height_dt3155_priv_65206 height dt3155_priv 0 65206 NULL nohasharray
-+enable_so_fat_shortname2uni_fndecl_65206 fat_shortname2uni fndecl 0 65206 &enable_so_height_dt3155_priv_65206
++enable_so_nilfs_palloc_entry_blkoff_fndecl_65206 nilfs_palloc_entry_blkoff fndecl 0 65206 &enable_so_height_dt3155_priv_65206 nohasharray
++enable_so_fat_shortname2uni_fndecl_65206 fat_shortname2uni fndecl 0 65206 &enable_so_nilfs_palloc_entry_blkoff_fndecl_65206
+enable_so_aper_size_radeon_mc_65212 aper_size radeon_mc 0 65212 NULL
-+enable_so_get_regs_len_ethtool_ops_65213 get_regs_len ethtool_ops 0 65213 NULL
++enable_so_get_regs_len_ethtool_ops_65213 get_regs_len ethtool_ops 0 65213 NULL nohasharray
++enable_so_rx_agg_ring_mask_bnxt_65213 rx_agg_ring_mask bnxt 0 65213 &enable_so_get_regs_len_ethtool_ops_65213
+enable_so_i40evf_change_mtu_fndecl_65220 i40evf_change_mtu fndecl 2 65220 NULL nohasharray
+enable_so_port_num_ib_qp_attr_65220 port_num ib_qp_attr 0 65220 &enable_so_i40evf_change_mtu_fndecl_65220
+enable_so_maxresp_sz_nfsd4_channel_attrs_65221 maxresp_sz nfsd4_channel_attrs 0 65221 NULL
+enable_so_read_gssp_fndecl_65224 read_gssp fndecl 3 65224 NULL nohasharray
+enable_so_memory_manufacturer_code_ms_boot_attr_info_65224 memory_manufacturer_code ms_boot_attr_info 0 65224 &enable_so_read_gssp_fndecl_65224
+enable_so_sci_rxfill_fndecl_65226 sci_rxfill fndecl 0 65226 NULL
++enable_so_ssid_len_connect_attr_65228 ssid_len connect_attr 0 65228 NULL
+enable_so_ocfs2_xattr_bucket_get_name_value_fndecl_65230 ocfs2_xattr_bucket_get_name_value fndecl 0 65230 NULL
+enable_so_iscsi_iser_recv_fndecl_65231 iscsi_iser_recv fndecl 4 65231 NULL
+enable_so_fb_max_height_vmw_private_65243 fb_max_height vmw_private 0 65243 NULL
@@ -176018,8 +175209,7 @@ index 0000000..9da833a
+enable_so_update_stat_data_fndecl_65289 update_stat_data fndecl 3 65289 NULL
+enable_so_hpfs_translate_name_fndecl_65290 hpfs_translate_name fndecl 3 65290 NULL
+enable_so_wear_eb_count_vardecl_nandsim_c_65291 wear_eb_count vardecl_nandsim.c 0 65291 NULL
-+enable_so_usb_stor_probe2_fndecl_65298 usb_stor_probe2 fndecl 0 65298 NULL nohasharray
-+enable_so_rt2x00debug_write_rfcsr_fndecl_65298 rt2x00debug_write_rfcsr fndecl 3 65298 &enable_so_usb_stor_probe2_fndecl_65298
++enable_so_usb_stor_probe2_fndecl_65298 usb_stor_probe2 fndecl 0 65298 NULL
+enable_so_txfifo_size_lpuart_port_65300 txfifo_size lpuart_port 0 65300 NULL nohasharray
+enable_so_ntfs_bmap_fndecl_65300 ntfs_bmap fndecl 2 65300 &enable_so_txfifo_size_lpuart_port_65300
+enable_so_memory_lseek_fndecl_65306 memory_lseek fndecl 2 65306 NULL
@@ -176048,7 +175238,8 @@ index 0000000..9da833a
+enable_so_nfsd_readv_fndecl_65378 nfsd_readv fndecl 4 65378 NULL
+enable_so_edid_max_blocks_vivid_dev_65383 edid_max_blocks vivid_dev 0 65383 NULL nohasharray
+enable_so_batadv_tvlv_container_ogm_append_fndecl_65383 batadv_tvlv_container_ogm_append fndecl 0-4 65383 &enable_so_edid_max_blocks_vivid_dev_65383
-+enable_so_rpcrdma_tail_pullup_fndecl_65388 rpcrdma_tail_pullup fndecl 0 65388 NULL
++enable_so_rpcrdma_tail_pullup_fndecl_65388 rpcrdma_tail_pullup fndecl 0 65388 NULL nohasharray
++enable_so_dio_get_pagev_size_fndecl_65388 dio_get_pagev_size fndecl 0 65388 &enable_so_rpcrdma_tail_pullup_fndecl_65388
+enable_so_may_expand_vm_fndecl_65389 may_expand_vm fndecl 2 65389 NULL
+enable_so_max_rx_aggregation_subframes_ieee80211_hw_65391 max_rx_aggregation_subframes ieee80211_hw 0 65391 NULL
+enable_so_rcvegrbufsize_qib_devdata_65397 rcvegrbufsize qib_devdata 0 65397 NULL
@@ -176190,10 +175381,10 @@ index 0000000..17bc0d8
+enable_so_zpios_read_fndecl_64734 zpios_read fndecl 3 64734 NULL
diff --git a/tools/gcc/size_overflow_plugin/size_overflow_ipa.c b/tools/gcc/size_overflow_plugin/size_overflow_ipa.c
new file mode 100644
-index 0000000..d972178
+index 0000000..eae4c88
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/size_overflow_ipa.c
-@@ -0,0 +1,1226 @@
+@@ -0,0 +1,1160 @@
+/*
+ * Copyright 2011-2015 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2, or (at your option) v3
@@ -177334,92 +176525,26 @@ index 0000000..d972178
+
+// Omit the IPA/LTO callbacks until https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61311 gets fixed (license concerns)
+#if BUILDING_GCC_VERSION >= 4008
-+void __attribute__((weak)) size_overflow_write_summary_lto(void) {}
++void __attribute__((weak)) size_overflow_write_summary(void) {}
++void __attribute__((weak)) size_overflow_write_optimization_summary(void) {}
+#elif BUILDING_GCC_VERSION >= 4006
-+void __attribute__((weak)) size_overflow_write_summary_lto(cgraph_node_set set __unused, varpool_node_set vset __unused) {}
++void __attribute__((weak)) size_overflow_write_summary(cgraph_node_set set __unused, varpool_node_set vset __unused) {}
++void __attribute__((weak)) size_overflow_write_optimization_summary(cgraph_node_set set __unused, varpool_node_set vset __unused) {}
+#else
-+void __attribute__((weak)) size_overflow_write_summary_lto(cgraph_node_set set __unused) {}
++void __attribute__((weak)) size_overflow_write_summary(cgraph_node_set set __unused) {}
++void __attribute__((weak)) size_overflow_write_optimization_summary(cgraph_node_set set __unused) {}
+#endif
+
-+void __attribute__((weak)) size_overflow_read_summary_lto(void) {}
++void __attribute__((weak)) size_overflow_read_summary(void);
++void __attribute__((weak)) size_overflow_read_optimization_summary(void);
+
-+#if BUILDING_GCC_VERSION >= 4009
-+static const struct pass_data size_overflow_functions_pass_data = {
-+#else
-+static struct ipa_opt_pass_d size_overflow_functions_pass = {
-+ .pass = {
-+#endif
-+ .type = IPA_PASS,
-+ .name = "size_overflow_functions",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION >= 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = size_overflow_execute,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = 0,
-+#if BUILDING_GCC_VERSION < 4009
-+ },
-+ .generate_summary = size_overflow_generate_summary,
-+ .write_summary = size_overflow_write_summary_lto,
-+ .read_summary = size_overflow_read_summary_lto,
-+#if BUILDING_GCC_VERSION >= 4006
-+ .write_optimization_summary = size_overflow_write_summary_lto,
-+ .read_optimization_summary = size_overflow_read_summary_lto,
-+#endif
-+ .stmt_fixup = NULL,
-+ .function_transform_todo_flags_start = 0,
-+ .function_transform = size_overflow_transform,
-+ .variable_transform = NULL,
-+#endif
-+};
++#define PASS_NAME size_overflow
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+class size_overflow_functions_pass : public ipa_opt_pass_d {
-+public:
-+ size_overflow_functions_pass() : ipa_opt_pass_d(size_overflow_functions_pass_data,
-+ g,
-+ size_overflow_generate_summary,
-+ size_overflow_write_summary_lto,
-+ size_overflow_read_summary_lto,
-+ size_overflow_write_summary_lto,
-+ size_overflow_read_summary_lto,
-+ NULL,
-+ 0,
-+ size_overflow_transform,
-+ NULL) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return size_overflow_execute(); }
-+#else
-+ unsigned int execute() { return size_overflow_execute(); }
-+#endif
-+};
-+}
++#define NO_STMT_FIXUP
++#define NO_VARIABLE_TRANSFORM
++#define NO_GATE
+
-+opt_pass *make_size_overflow_functions_pass(void)
-+{
-+ return new size_overflow_functions_pass();
-+}
-+#else
-+struct opt_pass *make_size_overflow_functions_pass(void)
-+{
-+ return &size_overflow_functions_pass.pass;
-+}
-+#endif
++#include "gcc-generate-ipa-pass.h"
diff --git a/tools/gcc/size_overflow_plugin/size_overflow_misc.c b/tools/gcc/size_overflow_plugin/size_overflow_misc.c
new file mode 100644
index 0000000..6075e8f
@@ -177933,7 +177058,7 @@ index 0000000..6075e8f
+
diff --git a/tools/gcc/size_overflow_plugin/size_overflow_plugin.c b/tools/gcc/size_overflow_plugin/size_overflow_plugin.c
new file mode 100644
-index 0000000..f50c635
+index 0000000..f8a24c1
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/size_overflow_plugin.c
@@ -0,0 +1,318 @@
@@ -177968,7 +177093,7 @@ index 0000000..f50c635
+tree size_overflow_type_TI;
+
+static struct plugin_info size_overflow_plugin_info = {
-+ .version = "20160128",
++ .version = "20160217",
+ .help = "no-size-overflow\tturn off size overflow checking\n",
+};
+
@@ -178190,7 +177315,7 @@ index 0000000..f50c635
+ const struct plugin_argument * const argv = plugin_info->argv;
+ bool enable = true;
+ struct register_pass_info insert_size_overflow_asm_pass_info;
-+ struct register_pass_info size_overflow_functions_pass_info;
++ struct register_pass_info size_overflow_pass_info;
+#if BUILDING_GCC_VERSION >= 4009
+ struct register_pass_info disable_ubsan_si_overflow_pass_info;
+#endif
@@ -178211,10 +177336,10 @@ index 0000000..f50c635
+ insert_size_overflow_asm_pass_info.ref_pass_instance_number = 1;
+ insert_size_overflow_asm_pass_info.pos_op = PASS_POS_INSERT_AFTER;
+
-+ size_overflow_functions_pass_info.pass = make_size_overflow_functions_pass();
-+ size_overflow_functions_pass_info.reference_pass_name = "inline";
-+ size_overflow_functions_pass_info.ref_pass_instance_number = 1;
-+ size_overflow_functions_pass_info.pos_op = PASS_POS_INSERT_AFTER;
++ size_overflow_pass_info.pass = make_size_overflow_pass();
++ size_overflow_pass_info.reference_pass_name = "inline";
++ size_overflow_pass_info.ref_pass_instance_number = 1;
++ size_overflow_pass_info.pos_op = PASS_POS_INSERT_AFTER;
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
+ error(G_("incompatible gcc/plugin versions"));
@@ -178249,7 +177374,7 @@ index 0000000..f50c635
+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &disable_ubsan_si_overflow_pass_info);
+#endif
+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &insert_size_overflow_asm_pass_info);
-+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &size_overflow_functions_pass_info);
++ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &size_overflow_pass_info);
+ }
+ register_callback(plugin_name, PLUGIN_ATTRIBUTES, register_attributes, NULL);
+
@@ -178615,7 +177740,7 @@ index 0000000..317cd6c
+
diff --git a/tools/gcc/size_overflow_plugin/size_overflow_transform.c b/tools/gcc/size_overflow_plugin/size_overflow_transform.c
new file mode 100644
-index 0000000..f9de78e
+index 0000000..3e8d46c
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/size_overflow_transform.c
@@ -0,0 +1,745 @@
@@ -179336,7 +178461,7 @@ index 0000000..f9de78e
+ }
+}
+
-+unsigned int size_overflow_transform(struct cgraph_node *node __unused)
++unsigned int size_overflow_function_transform(struct cgraph_node *node __unused)
+{
+ struct visited *visited;
+
@@ -179366,7 +178491,7 @@ index 0000000..f9de78e
+}
diff --git a/tools/gcc/size_overflow_plugin/size_overflow_transform_core.c b/tools/gcc/size_overflow_plugin/size_overflow_transform_core.c
new file mode 100644
-index 0000000..2ab3b9e
+index 0000000..4c231dd
--- /dev/null
+++ b/tools/gcc/size_overflow_plugin/size_overflow_transform_core.c
@@ -0,0 +1,1015 @@
@@ -180288,7 +179413,7 @@ index 0000000..2ab3b9e
+ if (TREE_CODE_CLASS(gimple_assign_rhs_code(def_stmt)) == tcc_comparison)
+ return handle_comparison_code_class(visited, expand_from, def_stmt, new_rhs1, new_rhs2);
+
-+ if (uconst_neg_intentional_overflow(visited, def_stmt)) {
++ if (uconst_neg_intentional_overflow(def_stmt)) {
+ inform(gimple_location(def_stmt), "%s: gcc intentional overflow", __func__);
+ gcc_unreachable();
+ }
@@ -180387,12 +179512,12 @@ index 0000000..2ab3b9e
+}
diff --git a/tools/gcc/stackleak_plugin.c b/tools/gcc/stackleak_plugin.c
new file mode 100644
-index 0000000..dd62d1c
+index 0000000..8b69bd4
--- /dev/null
+++ b/tools/gcc/stackleak_plugin.c
-@@ -0,0 +1,444 @@
+@@ -0,0 +1,350 @@
+/*
-+ * Copyright 2011-2015 by the PaX Team <pageexec@freemail.hu>
++ * Copyright 2011-2016 by the PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Note: the choice of the license means that the compilation process is
@@ -180423,7 +179548,7 @@ index 0000000..dd62d1c
+static bool init_locals;
+
+static struct plugin_info stackleak_plugin_info = {
-+ .version = "201512150205",
++ .version = "201602181345",
+ .help = "track-lowest-sp=nn\ttrack sp in functions whose frame size is at least nn bytes\n"
+// "initialize-locals\t\tforcibly initialize all stack frames\n"
+};
@@ -180488,7 +179613,7 @@ index 0000000..dd62d1c
+ return false;
+}
+
-+static unsigned int execute_stackleak_tree_instrument(void)
++static unsigned int stackleak_tree_instrument_execute(void)
+{
+ basic_block bb, entry_bb;
+ bool prologue_instrumented = false, is_leaf = true;
@@ -180549,7 +179674,7 @@ index 0000000..dd62d1c
+ return 0;
+}
+
-+static unsigned int execute_stackleak_final(void)
++static unsigned int stackleak_final_execute(void)
+{
+ rtx_insn *insn, *next;
+
@@ -180599,7 +179724,7 @@ index 0000000..dd62d1c
+ return 0;
+}
+
-+static bool gate_stackleak_track_stack(void)
++static bool stackleak_track_stack_gate(void)
+{
+ tree section;
+
@@ -180648,119 +179773,25 @@ index 0000000..dd62d1c
+ DECL_PRESERVE_P(check_function_decl) = 1;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data stackleak_tree_instrument_pass_data = {
-+#else
-+static struct gimple_opt_pass stackleak_tree_instrument_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "stackleak_tree_instrument",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = true,
-+ .has_execute = true,
-+#else
-+ .gate = gate_stackleak_track_stack,
-+ .execute = execute_stackleak_tree_instrument,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = PROP_gimple_leh | PROP_cfg,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0, //TODO_verify_ssa | TODO_verify_flow | TODO_verify_stmts,
-+ .todo_flags_finish = TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_update_ssa | TODO_rebuild_cgraph_edges
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+static const struct pass_data stackleak_final_rtl_opt_pass_data = {
-+#else
-+static struct rtl_opt_pass stackleak_final_rtl_opt_pass = {
-+ .pass = {
-+#endif
-+ .type = RTL_PASS,
-+ .name = "stackleak_final",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = true,
-+ .has_execute = true,
-+#else
-+ .gate = gate_stackleak_track_stack,
-+ .execute = execute_stackleak_final,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = 0,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_dump_func
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class stackleak_tree_instrument_pass : public gimple_opt_pass {
-+public:
-+ stackleak_tree_instrument_pass() : gimple_opt_pass(stackleak_tree_instrument_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual bool gate(function *) { return gate_stackleak_track_stack(); }
-+ virtual unsigned int execute(function *) { return execute_stackleak_tree_instrument(); }
-+#else
-+ bool gate() { return gate_stackleak_track_stack(); }
-+ unsigned int execute() { return execute_stackleak_tree_instrument(); }
-+#endif
-+};
-+
-+class stackleak_final_rtl_opt_pass : public rtl_opt_pass {
-+public:
-+ stackleak_final_rtl_opt_pass() : rtl_opt_pass(stackleak_final_rtl_opt_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual bool gate(function *) { return gate_stackleak_track_stack(); }
-+ virtual unsigned int execute(function *) { return execute_stackleak_final(); }
-+#else
-+ bool gate() { return gate_stackleak_track_stack(); }
-+ unsigned int execute() { return execute_stackleak_final(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_stackleak_tree_instrument_pass(void)
++static bool stackleak_tree_instrument_gate(void)
+{
-+ return new stackleak_tree_instrument_pass();
++ return stackleak_track_stack_gate();
+}
+
-+static opt_pass *make_stackleak_final_rtl_opt_pass(void)
-+{
-+ return new stackleak_final_rtl_opt_pass();
-+}
-+#else
-+static struct opt_pass *make_stackleak_tree_instrument_pass(void)
-+{
-+ return &stackleak_tree_instrument_pass.pass;
-+}
++#define PASS_NAME stackleak_tree_instrument
++#define PROPERTIES_REQUIRED PROP_gimple_leh | PROP_cfg
++#define TODO_FLAGS_START TODO_verify_ssa | TODO_verify_flow | TODO_verify_stmts
++#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_update_ssa | TODO_rebuild_cgraph_edges
++#include "gcc-generate-gimple-pass.h"
+
-+static struct opt_pass *make_stackleak_final_rtl_opt_pass(void)
++static bool stackleak_final_gate(void)
+{
-+ return &stackleak_final_rtl_opt_pass.pass;
++ return stackleak_track_stack_gate();
+}
-+#endif
++
++#define PASS_NAME stackleak_final
++#define TODO_FLAGS_FINISH TODO_dump_func
++#include "gcc-generate-rtl-pass.h"
+
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
@@ -180794,7 +179825,7 @@ index 0000000..dd62d1c
+ stackleak_tree_instrument_pass_info.ref_pass_instance_number = 1;
+ stackleak_tree_instrument_pass_info.pos_op = PASS_POS_INSERT_BEFORE;
+
-+ stackleak_final_pass_info.pass = make_stackleak_final_rtl_opt_pass();
++ stackleak_final_pass_info.pass = make_stackleak_final_pass();
+ stackleak_final_pass_info.reference_pass_name = "final";
+ stackleak_final_pass_info.ref_pass_instance_number = 1;
+ stackleak_final_pass_info.pos_op = PASS_POS_INSERT_BEFORE;
@@ -180837,12 +179868,12 @@ index 0000000..dd62d1c
+}
diff --git a/tools/gcc/structleak_plugin.c b/tools/gcc/structleak_plugin.c
new file mode 100644
-index 0000000..c39261d
+index 0000000..d7596e6
--- /dev/null
+++ b/tools/gcc/structleak_plugin.c
-@@ -0,0 +1,290 @@
+@@ -0,0 +1,239 @@
+/*
-+ * Copyright 2013-2015 by PaX Team <pageexec@freemail.hu>
++ * Copyright 2013-2016 by PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Note: the choice of the license means that the compilation process is
@@ -180875,7 +179906,7 @@ index 0000000..c39261d
+int plugin_is_GPL_compatible;
+
+static struct plugin_info structleak_plugin_info = {
-+ .version = "201512150035",
++ .version = "201602181345",
+ .help = "disable\tdo not activate plugin\n",
+};
+
@@ -180997,7 +180028,7 @@ index 0000000..c39261d
+ update_stmt(init_stmt);
+}
+
-+static unsigned int handle_function(void)
++static unsigned int structleak_execute(void)
+{
+ basic_block bb;
+ unsigned int ret = 0;
@@ -181033,62 +180064,11 @@ index 0000000..c39261d
+ return ret;
+}
+
-+#if BUILDING_GCC_VERSION >= 4009
-+namespace {
-+static const struct pass_data structleak_pass_data = {
-+#else
-+static struct gimple_opt_pass structleak_pass = {
-+ .pass = {
-+#endif
-+ .type = GIMPLE_PASS,
-+ .name = "structleak",
-+#if BUILDING_GCC_VERSION >= 4008
-+ .optinfo_flags = OPTGROUP_NONE,
-+#endif
-+#if BUILDING_GCC_VERSION >= 5000
-+#elif BUILDING_GCC_VERSION == 4009
-+ .has_gate = false,
-+ .has_execute = true,
-+#else
-+ .gate = NULL,
-+ .execute = handle_function,
-+ .sub = NULL,
-+ .next = NULL,
-+ .static_pass_number = 0,
-+#endif
-+ .tv_id = TV_NONE,
-+ .properties_required = PROP_cfg,
-+ .properties_provided = 0,
-+ .properties_destroyed = 0,
-+ .todo_flags_start = 0,
-+ .todo_flags_finish = TODO_verify_il | TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_remove_unused_locals | TODO_update_ssa | TODO_ggc_collect | TODO_verify_flow
-+#if BUILDING_GCC_VERSION < 4009
-+ }
-+#endif
-+};
-+
-+#if BUILDING_GCC_VERSION >= 4009
-+class structleak_pass : public gimple_opt_pass {
-+public:
-+ structleak_pass() : gimple_opt_pass(structleak_pass_data, g) {}
-+#if BUILDING_GCC_VERSION >= 5000
-+ virtual unsigned int execute(function *) { return handle_function(); }
-+#else
-+ unsigned int execute() { return handle_function(); }
-+#endif
-+};
-+}
-+
-+static opt_pass *make_structleak_pass(void)
-+{
-+ return new structleak_pass();
-+}
-+#else
-+static struct opt_pass *make_structleak_pass(void)
-+{
-+ return &structleak_pass.pass;
-+}
-+#endif
++#define PASS_NAME structleak
++#define NO_GATE
++#define PROPERTIES_REQUIRED PROP_cfg
++#define TODO_FLAGS_FINISH TODO_verify_il | TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_remove_unused_locals | TODO_update_ssa | TODO_ggc_collect | TODO_verify_flow
++#include "gcc-generate-gimple-pass.h"
+
+int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+{
@@ -181132,7 +180112,7 @@ index 0000000..c39261d
+ return 0;
+}
diff --git a/tools/include/linux/compiler.h b/tools/include/linux/compiler.h
-index 9098083..18f0454 100644
+index fa7208a..d568e71 100644
--- a/tools/include/linux/compiler.h
+++ b/tools/include/linux/compiler.h
@@ -39,6 +39,14 @@
@@ -181176,7 +180156,7 @@ index 0a578fe..b81f62d 100644
})
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
-index 8db1d93..3233dee 100644
+index 484079e..70365d0 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -90,12 +90,17 @@ LIST_HEAD(vm_list);
@@ -181199,7 +180179,7 @@ index 8db1d93..3233dee 100644
struct dentry *kvm_debugfs_dir;
EXPORT_SYMBOL_GPL(kvm_debugfs_dir);
-@@ -839,7 +844,7 @@ int __kvm_set_memory_region(struct kvm *kvm,
+@@ -842,7 +847,7 @@ int __kvm_set_memory_region(struct kvm *kvm,
/* We can read the guest memory with __xxx_user() later on. */
if ((id < KVM_USER_MEM_SLOTS) &&
((mem->userspace_addr & (PAGE_SIZE - 1)) ||
@@ -181208,7 +180188,7 @@ index 8db1d93..3233dee 100644
(void __user *)(unsigned long)mem->userspace_addr,
mem->memory_size)))
goto out;
-@@ -1894,9 +1899,17 @@ EXPORT_SYMBOL_GPL(kvm_read_guest_cached);
+@@ -1897,9 +1902,17 @@ EXPORT_SYMBOL_GPL(kvm_read_guest_cached);
int kvm_clear_guest_page(struct kvm *kvm, gfn_t gfn, int offset, int len)
{
@@ -181228,7 +180208,7 @@ index 8db1d93..3233dee 100644
}
EXPORT_SYMBOL_GPL(kvm_clear_guest_page);
-@@ -2227,7 +2240,7 @@ static int kvm_vcpu_release(struct inode *inode, struct file *filp)
+@@ -2233,7 +2246,7 @@ static int kvm_vcpu_release(struct inode *inode, struct file *filp)
return 0;
}
@@ -181237,7 +180217,7 @@ index 8db1d93..3233dee 100644
.release = kvm_vcpu_release,
.unlocked_ioctl = kvm_vcpu_ioctl,
#ifdef CONFIG_KVM_COMPAT
-@@ -2942,7 +2955,7 @@ out:
+@@ -2949,7 +2962,7 @@ out:
}
#endif
@@ -181246,7 +180226,7 @@ index 8db1d93..3233dee 100644
.release = kvm_vm_release,
.unlocked_ioctl = kvm_vm_ioctl,
#ifdef CONFIG_KVM_COMPAT
-@@ -3013,7 +3026,7 @@ out:
+@@ -3020,7 +3033,7 @@ out:
return r;
}
@@ -181255,7 +180235,7 @@ index 8db1d93..3233dee 100644
.unlocked_ioctl = kvm_dev_ioctl,
.compat_ioctl = kvm_dev_ioctl,
.llseek = noop_llseek,
-@@ -3039,7 +3052,7 @@ static void hardware_enable_nolock(void *junk)
+@@ -3046,7 +3059,7 @@ static void hardware_enable_nolock(void *junk)
if (r) {
cpumask_clear_cpu(cpu, cpus_hardware_enabled);
@@ -181264,7 +180244,7 @@ index 8db1d93..3233dee 100644
pr_info("kvm: enabling virtualization on CPU%d failed\n", cpu);
}
}
-@@ -3094,10 +3107,10 @@ static int hardware_enable_all(void)
+@@ -3101,10 +3114,10 @@ static int hardware_enable_all(void)
kvm_usage_count++;
if (kvm_usage_count == 1) {
@@ -181277,7 +180257,7 @@ index 8db1d93..3233dee 100644
hardware_disable_all_nolock();
r = -EBUSY;
}
-@@ -3561,7 +3574,7 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
+@@ -3568,7 +3581,7 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
if (!vcpu_align)
vcpu_align = __alignof__(struct kvm_vcpu);
kvm_vcpu_cache = kmem_cache_create("kvm_vcpu", vcpu_size, vcpu_align,
@@ -181286,7 +180266,7 @@ index 8db1d93..3233dee 100644
if (!kvm_vcpu_cache) {
r = -ENOMEM;
goto out_free_3;
-@@ -3571,9 +3584,11 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
+@@ -3578,9 +3591,11 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
if (r)
goto out_free;
@@ -181298,7 +180278,7 @@ index 8db1d93..3233dee 100644
r = misc_register(&kvm_dev);
if (r) {
-@@ -3583,9 +3598,6 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
+@@ -3590,9 +3605,6 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
register_syscore_ops(&kvm_syscore_ops);
diff --git a/4.3.5/4425_grsec_remove_EI_PAX.patch b/4.4.2/4425_grsec_remove_EI_PAX.patch
index 2a1aa6c..2a1aa6c 100644
--- a/4.3.5/4425_grsec_remove_EI_PAX.patch
+++ b/4.4.2/4425_grsec_remove_EI_PAX.patch
diff --git a/4.3.5/4427_force_XATTR_PAX_tmpfs.patch b/4.4.2/4427_force_XATTR_PAX_tmpfs.patch
index d03130d..f6aea64 100644
--- a/4.3.5/4427_force_XATTR_PAX_tmpfs.patch
+++ b/4.4.2/4427_force_XATTR_PAX_tmpfs.patch
@@ -6,7 +6,7 @@ namespace supported on tmpfs so that the PaX markings survive emerge.
diff -Naur a/mm/shmem.c b/mm/shmem.c
--- a/mm/shmem.c 2013-06-11 21:00:18.000000000 -0400
+++ b/mm/shmem.c 2013-06-11 21:08:18.000000000 -0400
-@@ -2556,11 +2556,7 @@
+@@ -2564,11 +2564,7 @@
static int shmem_xattr_validate(const char *name)
{
struct { const char *prefix; size_t len; } arr[] = {
@@ -18,7 +18,7 @@ diff -Naur a/mm/shmem.c b/mm/shmem.c
{ XATTR_SECURITY_PREFIX, XATTR_SECURITY_PREFIX_LEN },
{ XATTR_TRUSTED_PREFIX, XATTR_TRUSTED_PREFIX_LEN }
};
-@@ -2616,14 +2612,12 @@
+@@ -2624,14 +2620,12 @@
if (err)
return err;
diff --git a/4.3.5/4430_grsec-remove-localversion-grsec.patch b/4.4.2/4430_grsec-remove-localversion-grsec.patch
index 31cf878..31cf878 100644
--- a/4.3.5/4430_grsec-remove-localversion-grsec.patch
+++ b/4.4.2/4430_grsec-remove-localversion-grsec.patch
diff --git a/4.3.5/4435_grsec-mute-warnings.patch b/4.4.2/4435_grsec-mute-warnings.patch
index b7564e4..b7564e4 100644
--- a/4.3.5/4435_grsec-mute-warnings.patch
+++ b/4.4.2/4435_grsec-mute-warnings.patch
diff --git a/4.3.5/4440_grsec-remove-protected-paths.patch b/4.4.2/4440_grsec-remove-protected-paths.patch
index 741546d..741546d 100644
--- a/4.3.5/4440_grsec-remove-protected-paths.patch
+++ b/4.4.2/4440_grsec-remove-protected-paths.patch
diff --git a/4.3.5/4450_grsec-kconfig-default-gids.patch b/4.4.2/4450_grsec-kconfig-default-gids.patch
index c56ca90..77f9706 100644
--- a/4.3.5/4450_grsec-kconfig-default-gids.patch
+++ b/4.4.2/4450_grsec-kconfig-default-gids.patch
@@ -25,7 +25,7 @@ diff -Naur a/grsecurity/Kconfig b/grsecurity/Kconfig
config GRKERNSEC_EXECLOG
bool "Exec logging"
-@@ -928,7 +928,7 @@
+@@ -946,7 +946,7 @@
config GRKERNSEC_TPE_UNTRUSTED_GID
int "GID for TPE-untrusted users"
depends on GRKERNSEC_TPE && !GRKERNSEC_TPE_INVERT
@@ -34,7 +34,7 @@ diff -Naur a/grsecurity/Kconfig b/grsecurity/Kconfig
help
Setting this GID determines what group TPE restrictions will be
*enabled* for. If the sysctl option is enabled, a sysctl option
-@@ -937,7 +937,7 @@
+@@ -955,7 +955,7 @@
config GRKERNSEC_TPE_TRUSTED_GID
int "GID for TPE-trusted users"
depends on GRKERNSEC_TPE && GRKERNSEC_TPE_INVERT
@@ -43,7 +43,7 @@ diff -Naur a/grsecurity/Kconfig b/grsecurity/Kconfig
help
Setting this GID determines what group TPE restrictions will be
*disabled* for. If the sysctl option is enabled, a sysctl option
-@@ -1022,7 +1022,7 @@
+@@ -1040,7 +1040,7 @@
config GRKERNSEC_SOCKET_ALL_GID
int "GID to deny all sockets for"
depends on GRKERNSEC_SOCKET_ALL
@@ -52,7 +52,7 @@ diff -Naur a/grsecurity/Kconfig b/grsecurity/Kconfig
help
Here you can choose the GID to disable socket access for. Remember to
add the users you want socket access disabled for to the GID
-@@ -1043,7 +1043,7 @@
+@@ -1061,7 +1061,7 @@
config GRKERNSEC_SOCKET_CLIENT_GID
int "GID to deny client sockets for"
depends on GRKERNSEC_SOCKET_CLIENT
@@ -61,7 +61,7 @@ diff -Naur a/grsecurity/Kconfig b/grsecurity/Kconfig
help
Here you can choose the GID to disable client socket access for.
Remember to add the users you want client socket access disabled for to
-@@ -1061,7 +1061,7 @@
+@@ -1079,7 +1079,7 @@
config GRKERNSEC_SOCKET_SERVER_GID
int "GID to deny server sockets for"
depends on GRKERNSEC_SOCKET_SERVER
diff --git a/4.3.5/4465_selinux-avc_audit-log-curr_ip.patch b/4.4.2/4465_selinux-avc_audit-log-curr_ip.patch
index d2e466f..f1c4923 100644
--- a/4.3.5/4465_selinux-avc_audit-log-curr_ip.patch
+++ b/4.4.2/4465_selinux-avc_audit-log-curr_ip.patch
@@ -28,7 +28,7 @@ Signed-off-by: Lorenzo Hernandez Garcia-Hierro <lorenzo@gnu.org>
diff -Naur a/grsecurity/Kconfig b/grsecurity/Kconfig
--- a/grsecurity/Kconfig 2011-04-17 19:25:54.000000000 -0400
+++ b/grsecurity/Kconfig 2011-04-17 19:32:53.000000000 -0400
-@@ -1156,6 +1156,27 @@
+@@ -1174,6 +1174,27 @@
menu "Logging Options"
depends on GRKERNSEC
diff --git a/4.3.5/4470_disable-compat_vdso.patch b/4.4.2/4470_disable-compat_vdso.patch
index 8fd85dc..281aad9 100644
--- a/4.3.5/4470_disable-compat_vdso.patch
+++ b/4.4.2/4470_disable-compat_vdso.patch
@@ -26,7 +26,7 @@ Closes bug: http://bugs.gentoo.org/show_bug.cgi?id=210138
diff -urp a/arch/x86/Kconfig b/arch/x86/Kconfig
--- a/arch/x86/Kconfig 2009-07-31 01:36:57.323857684 +0100
+++ b/arch/x86/Kconfig 2009-07-31 01:51:39.395749681 +0100
-@@ -2025,29 +2025,8 @@
+@@ -2009,29 +2009,8 @@
config COMPAT_VDSO
def_bool n
@@ -54,5 +54,5 @@ diff -urp a/arch/x86/Kconfig b/arch/x86/Kconfig
- If unsure, say N: if you are compiling your own kernel, you
- are unlikely to be using a buggy version of glibc.
- config CMDLINE_BOOL
- bool "Built-in kernel command line"
+ choice
+ prompt "vsyscall table for legacy applications"
diff --git a/4.3.5/4475_emutramp_default_on.patch b/4.4.2/4475_emutramp_default_on.patch
index afd6019..afd6019 100644
--- a/4.3.5/4475_emutramp_default_on.patch
+++ b/4.4.2/4475_emutramp_default_on.patch