1
0
Fork 0
mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-01-25 17:53:34 -05:00
linux/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
..
acl.c
acl.h
aops.c
aops.h
bmap.c
bmap.h
dentry.c
dir.c
dir.h
export.c
file.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
gfs2.h
glock.c mm: introduce and use mapping_empty() 2021-05-05 11:27:19 -07:00
glock.h
glops.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
glops.h
incore.h
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
Kconfig
lock_dlm.c
log.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
log.h
lops.c Changes in gfs2: 2021-04-29 10:33:35 -07:00
lops.h
main.c
Makefile
meta_io.c
meta_io.h
ops_fstype.c
quota.c
quota.h
recovery.c
recovery.h
rgrp.c
rgrp.h
super.c
super.h
sys.c
sys.h
trace_gfs2.h
trans.c
trans.h
util.c
util.h
xattr.c
xattr.h