linux-stable/fs/ceph
NeilBrown 503d4fa6ee ceph: remove reliance on bdi congestion
The bdi congestion tracking in not widely used and will be removed.

CEPHfs is one of a small number of filesystems that uses it, setting just
the async (write) congestion flags at what it determines are appropriate
times.

The only remaining effect of the async flag is to cause (some)
WB_SYNC_NONE writes to be skipped.

So instead of setting the flag, set an internal flag and change:

 - .writepages to do nothing if WB_SYNC_NONE and the flag is set

 - .writepage to return AOP_WRITEPAGE_ACTIVATE if WB_SYNC_NONE and the
   flag is set.

The writepages change causes a behavioural change in that pageout() can
now return PAGE_ACTIVATE instead of PAGE_KEEP, so SetPageActive() will
be called on the page which (I think) wil further delay the next attempt
at writeout.  This might be a good thing.

Link: https://lkml.kernel.org/r/164549983739.9187.14895675781408171186.stgit@noble.brown
Signed-off-by: NeilBrown <neilb@suse.de>
Cc: Anna Schumaker <Anna.Schumaker@Netapp.com>
Cc: Chao Yu <chao@kernel.org>
Cc: Darrick J. Wong <djwong@kernel.org>
Cc: Ilya Dryomov <idryomov@gmail.com>
Cc: Jaegeuk Kim <jaegeuk@kernel.org>
Cc: Jan Kara <jack@suse.cz>
Cc: Jeff Layton <jlayton@kernel.org>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Lars Ellenberg <lars.ellenberg@linbit.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>
Cc: Paolo Valente <paolo.valente@linaro.org>
Cc: Philipp Reisner <philipp.reisner@linbit.com>
Cc: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Cc: Trond Myklebust <trond.myklebust@hammerspace.com>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2022-03-22 15:57:00 -07:00
..
acl.c vfs: add rcu argument to ->get_acl() callback 2021-08-18 22:08:24 +02:00
addr.c ceph: remove reliance on bdi congestion 2022-03-22 15:57:00 -07:00
cache.c ceph: conversion to new fscache API 2022-01-11 22:13:01 +00:00
cache.h ceph: conversion to new fscache API 2022-01-11 22:13:01 +00:00
caps.c ceph: put the requests/sessions when it fails to alloc memory 2022-01-26 20:17:50 +01:00
ceph_frag.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
debugfs.c ceph: add a new metric to keep track of remote object copies 2021-11-08 03:29:52 +01:00
dir.c ceph: take reference to req->r_parent at point of assignment 2021-06-29 00:15:52 +02:00
export.c ceph: shut down access to inode when async create fails 2021-11-08 03:29:51 +01:00
file.c ceph: set pool_ns in new inode layout for async creates 2022-01-26 20:17:50 +01:00
inode.c ceph: conversion to new fscache API 2022-01-11 22:13:01 +00:00
io.c ceph: fix kerneldoc copypasta over ceph_start_io_direct 2021-04-27 23:52:23 +02:00
io.h ceph: add buffered/direct exclusionary locking for reads and writes 2019-09-16 12:06:25 +02:00
ioctl.c ceph: consider inode's last read/write when calculating wanted caps 2020-03-30 12:42:42 +02:00
ioctl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Kconfig ceph: conversion to new fscache API 2022-01-11 22:13:01 +00:00
locks.c One notable change here is that async creates and unlinks introduced 2021-11-13 11:31:07 -08:00
Makefile ceph: add dentry lease metric support 2020-06-01 13:22:51 +02:00
mds_client.c ceph: initialize pathlen variable in reconnect_caps_cb 2021-12-01 17:08:26 +01:00
mds_client.h ceph: flush mdlog before umounting 2021-09-02 22:49:16 +02:00
mdsmap.c ceph: fix mdsmap decode when there are MDS's beyond max_mds 2021-11-08 03:29:52 +01:00
metric.c ceph: drop send metrics debug message 2022-01-13 13:40:06 +01:00
metric.h ceph: add a new metric to keep track of remote object copies 2021-11-08 03:29:52 +01:00
quota.c ceph: don't check for quotas on MDS stray dirs 2022-01-13 13:40:07 +01:00
snap.c ceph: add ceph_change_snap_realm() helper 2021-09-02 22:49:17 +02:00
strings.c ceph: flush mdlog before umounting 2021-09-02 22:49:16 +02:00
super.c ceph: remove reliance on bdi congestion 2022-03-22 15:57:00 -07:00
super.h ceph: remove reliance on bdi congestion 2022-03-22 15:57:00 -07:00
util.c ceph: move net/ceph/ceph_fs.c to fs/ceph/util.c 2020-01-27 16:53:40 +01:00
xattr.c security: Return xattr name from security_dentry_init_security() 2021-10-20 08:17:08 -04:00