NFSv4.2: Fix missing removal of SLAB_ACCOUNT on kmem_cache allocation
authorMuchun Song <songmuchun@bytedance.com>
Fri, 1 Apr 2022 02:59:05 +0000 (10:59 +0800)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Thu, 7 Apr 2022 20:20:00 +0000 (16:20 -0400)
commitdcc7977c7fdd0b59809cf7420ae1d5f5b5bd16ad
tree1e5778cd7b275e1408195311d46f71d22eb82513
parentf00432063db1a0db484e85193eccc6845435b80e
NFSv4.2: Fix missing removal of SLAB_ACCOUNT on kmem_cache allocation

The commit 5c60e89e71f8 ("NFSv4.2: Fix up an invalid combination of memory
allocation flags") has stripped GFP_KERNEL_ACCOUNT down to GFP_KERNEL,
however, it forgot to remove SLAB_ACCOUNT from kmem_cache allocation.
It means that memory is still limited by kmemcg.  This patch also fix a
NULL pointer reference issue [1] reported by NeilBrown.

Link: https://lore.kernel.org/all/164870069595.25542.17292003658915487357@noble.neil.brown.name/
Fixes: 5c60e89e71f8 ("NFSv4.2: Fix up an invalid combination of memory allocation flags")
Fixes: 5abc1e37afa0 ("mm: list_lru: allocate list_lru_one only when needed")
Reported-by: NeilBrown <neilb@suse.de>
Signed-off-by: Muchun Song <songmuchun@bytedance.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/nfs42xattr.c