OpenCloudOS-Kernel/fs/gfs2
Matthew Wilcox (Oracle) 7716506ada mm: introduce and use mapping_empty()
Patch series "Remove nrexceptional tracking", v2.

We actually use nrexceptional for very little these days.  It's a minor
pain to keep in sync with nrpages, but the pain becomes much bigger with
the THP patches because we don't know how many indices a shadow entry
occupies.  It's easier to just remove it than keep it accurate.

Also, we save 8 bytes per inode which is nothing to sneeze at; on my
laptop, it would improve shmem_inode_cache from 22 to 23 objects per
16kB, and inode_cache from 26 to 27 objects.  Combined, that saves
a megabyte of memory from a combined usage of 25MB for both caches.
Unfortunately, ext4 doesn't cross a magic boundary, so it doesn't save
any memory for ext4.

This patch (of 4):

Instead of checking the two counters (nrpages and nrexceptional), we can
just check whether i_pages is empty.

Link: https://lkml.kernel.org/r/20201026151849.24232-1-willy@infradead.org
Link: https://lkml.kernel.org/r/20201026151849.24232-2-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Tested-by: Vishal Verma <vishal.l.verma@intel.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-05-05 11:27:19 -07:00
..
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
acl.c fs: make helpers idmap mount aware 2021-01-24 14:27:20 +01:00
acl.h fs: make helpers idmap mount aware 2021-01-24 14:27:20 +01:00
aops.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
aops.h gfs2: mark stuffed_readpage static 2019-07-03 14:45:18 +02:00
bmap.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
bmap.h gfs2: Replace gfs2_lblk_to_dblk with gfs2_get_extent 2021-04-03 21:38:12 +02:00
dentry.c gfs2: untangle the logic in gfs2_drevalidate 2019-09-03 09:42:41 +02:00
dir.c gfs2: Turn gfs2_extent_map into gfs2_{get,alloc}_extent 2021-04-03 21:38:11 +02:00
dir.h gfs2: Delete an unnecessary check before brelse() 2019-09-04 20:22:17 +02:00
export.c gfs2: Minor gfs2_lookup_by_inum cleanup 2020-06-05 20:19:21 +02:00
file.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
gfs2.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 398 2019-06-05 17:37:12 +02:00
glock.c mm: introduce and use mapping_empty() 2021-05-05 11:27:19 -07:00
glock.h gfs2: Allow node-wide exclusive glock sharing 2021-02-17 19:30:28 +01:00
glops.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
glops.h gfs2: Split up gfs2_meta_sync into inode and rgrp versions 2020-10-29 22:16:46 +01:00
incore.h gfs2: Remove unused variable sb_format 2021-04-03 21:38:11 +02:00
inode.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
inode.h Changes in gfs2: 2021-04-29 10:33:35 -07:00
lock_dlm.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
log.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
log.h gfs2: Per-revoke accounting in transactions 2021-02-22 21:16:23 +01:00
lops.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
lops.h Merge branches 'rgrp-glock-sharing' and 'gfs2-revoke' from https://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git 2021-02-23 18:54:22 +01:00
main.c gfs2: amend SLAB_RECLAIM_ACCOUNT on gfs2 related slab cache 2021-01-22 12:19:17 -05:00
meta_io.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
meta_io.h gfs2: Turn gfs2_meta_indirect_buffer into gfs2_meta_buffer 2021-04-03 21:38:12 +02:00
ops_fstype.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
quota.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
quota.h gfs2: move privileged user check to gfs2_quota_lock_check 2020-05-08 18:47:58 +02:00
recovery.c gfs2: Fix fall-through warnings for Clang 2021-04-20 22:38:21 +02:00
recovery.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 398 2019-06-05 17:37:12 +02:00
rgrp.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
rgrp.h gfs2: Add local resource group locking 2021-02-17 19:30:28 +01:00
super.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
super.h gfs2: make function gfs2_make_fs_ro() to void type 2021-03-07 17:04:55 +01:00
sys.c gfs2: Add new sysfs file for gfs2 status 2021-04-08 15:07:21 +02:00
sys.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 398 2019-06-05 17:37:12 +02:00
trace_gfs2.h gfs2: Add per-reservation reserved block accounting 2021-02-17 19:30:26 +01:00
trans.c gfs2: fix use-after-free in trans_drain 2021-03-07 17:04:55 +01:00
trans.h Merge branches 'rgrp-glock-sharing' and 'gfs2-revoke' from https://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git 2021-02-23 18:54:22 +01:00
util.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
util.h gfs2: Add common helper for holding and releasing the freeze glock 2020-12-23 00:54:13 +01:00
xattr.c gfs2: Fix a number of kernel-doc warnings 2021-04-09 22:14:13 +02:00
xattr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 398 2019-06-05 17:37:12 +02:00