diff options
author | David Howells <dhowells@redhat.com> | 2021-10-21 21:58:29 +0100 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2022-01-07 13:43:13 +0000 |
commit | 3929eca769b5a231010b4978acc61c0735da198f (patch) | |
tree | 9f3c81aa6f3e67ad688587db70b17a1e3e4a215b /fs/cachefiles/internal.h | |
parent | ecd1a5f62eed35d812de8fe20703e21b551c6560 (diff) | |
download | linux-stable-3929eca769b5a231010b4978acc61c0735da198f.tar.gz linux-stable-3929eca769b5a231010b4978acc61c0735da198f.tar.bz2 linux-stable-3929eca769b5a231010b4978acc61c0735da198f.zip |
fscache, cachefiles: Display stats of no-space events
Add stat counters of no-space events that caused caching not to happen and
display in /proc/fs/fscache/stats.
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
cc: linux-cachefs@redhat.com
Link: https://lore.kernel.org/r/163819653216.215744.17210522251617386509.stgit@warthog.procyon.org.uk/ # v1
Link: https://lore.kernel.org/r/163906958369.143852.7257100711818401748.stgit@warthog.procyon.org.uk/ # v2
Link: https://lore.kernel.org/r/163967166917.1823006.14842444049198947892.stgit@warthog.procyon.org.uk/ # v3
Link: https://lore.kernel.org/r/164021566184.640689.4417328329632709265.stgit@warthog.procyon.org.uk/ # v4
Diffstat (limited to 'fs/cachefiles/internal.h')
-rw-r--r-- | fs/cachefiles/internal.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/fs/cachefiles/internal.h b/fs/cachefiles/internal.h index abdd1b66f6b9..8dd54d9375b6 100644 --- a/fs/cachefiles/internal.h +++ b/fs/cachefiles/internal.h @@ -130,10 +130,17 @@ static inline void cachefiles_state_changed(struct cachefiles_cache *cache) * cache.c */ extern int cachefiles_add_cache(struct cachefiles_cache *cache); -extern int cachefiles_has_space(struct cachefiles_cache *cache, - unsigned fnr, unsigned bnr); extern void cachefiles_withdraw_cache(struct cachefiles_cache *cache); +enum cachefiles_has_space_for { + cachefiles_has_space_check, + cachefiles_has_space_for_write, + cachefiles_has_space_for_create, +}; +extern int cachefiles_has_space(struct cachefiles_cache *cache, + unsigned fnr, unsigned bnr, + enum cachefiles_has_space_for reason); + /* * daemon.c */ |