aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfsd/filecache.c
AgeCommit message (Expand)AuthorFilesLines
2025-10-06Merge tag 'nfsd-6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linuxLinus Torvalds1-21/+0
2025-10-03Merge tag 'nfs-for-6.18-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-0/+34
2025-09-30NFSD: filecache: add STATX_DIOALIGN and STATX_DIO_READ_ALIGN supportMike Snitzer1-0/+34
2025-09-21nfsd: discard nfsd_file_get_local()NeilBrown1-21/+0
2025-09-19fs: replace use of system_unbound_wq with system_dfl_wqMarco Crivellari1-1/+1
2025-07-14NFSD: Clean up kdoc for nfsd_file_put_local()Chuck Lever1-1/+1
2025-05-28nfs_localio: change nfsd_file_put_local() to take a pointer to __rcu pointerNeilBrown1-3/+8
2025-05-28nfs_localio: always hold nfsd net ref with nfsd_file refNeilBrown1-0/+21
2025-03-10nfsd: filecache: drop the list_lru lock during lock gc scansNeilBrown1-3/+24
2025-03-10nfsd: filecache: don't repeatedly add/remove files on the lru listNeilBrown1-30/+17
2025-03-10nfsd: filecache: introduce NFSD_FILE_RECENTNeilBrown1-2/+20
2025-03-10nfsd: filecache: use list_lru_walk_node() in nfsd_file_gc()NeilBrown1-3/+8
2025-03-10nfsd: filecache: use nfsd_file_dispose_list() in nfsd_file_close_inode_sync()NeilBrown1-6/+1
2025-03-10NFSD: Re-organize nfsd_file_gc_worker()Chuck Lever1-2/+2
2025-03-10nfsd: filecache: remove race handling.NeilBrown1-16/+2
2025-02-10Merge tag 'nfsd-6.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/...Linus Torvalds1-1/+10
2025-02-02nfsd: validate the nfsd_serv pointer before calling svc_wake_upJeff Layton1-1/+10
2025-01-28Merge tag 'nfs-for-6.14-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-6/+14
2025-01-14nfs_common: track all open nfsd_files per LOCALIO nfs_clientMike Snitzer1-0/+9
2025-01-14nfsd: nfsd_file_acquire_local no longer returns GC'd nfsd_fileMike Snitzer1-5/+4
2025-01-14nfsd: rename nfsd_serv_ prefixed methods and variables with nfsd_net_Mike Snitzer1-1/+1
2024-12-02tree-wide: s/revert_creds_light()/revert_creds()/gChristian Brauner1-1/+1
2024-12-02tree-wide: s/revert_creds()/put_cred(revert_creds_light())/gChristian Brauner1-1/+1
2024-11-26Merge tag 'nfsd-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linuxLinus Torvalds1-10/+9
2024-11-18nfs_common: must not hold RCU while calling nfsd_file_put_localMike Snitzer1-7/+7
2024-11-18nfsd: make use of warning provided by refcount_tNeilBrown1-1/+1
2024-11-11mm/list_lru: simplify the list_lru walk callback functionKairui Song1-4/+1
2024-11-11NFSD: Remove unused function parameterChuck Lever1-2/+1
2024-10-11Merge tag 'nfs-for-6.12-2' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-1/+1
2024-10-10Merge tag 'nfsd-6.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/...Linus Torvalds1-1/+3
2024-10-03nfs_common: fix race in NFS calls to nfsd_file_put_local() and nfsd_serv_put()Mike Snitzer1-1/+1
2024-10-02inotify: Fix possible deadlock in fsnotify_destroy_markLizhi Xu1-1/+1
2024-09-23nfsd: add LOCALIO supportWeston Andros Adamson1-1/+1
2024-09-23nfs_common: prepare for the NFS client to use nfsd_file for LOCALIOMike Snitzer1-0/+28
2024-09-23nfsd: add nfsd_file_acquire_local()NeilBrown1-7/+64
2024-09-23NFSD: Mark filecache "down" if init failsChuck Lever1-1/+3
2024-09-20nfsd: remove unused parameter of nfsd_file_mark_find_or_createLi Lingfeng1-2/+2
2024-09-01nfsd: use system_unbound_wq for nfsd_file_gc_worker()Youzhong Yang1-1/+1
2024-09-01nfsd: count nfsd_file allocationsJeff Layton1-2/+7
2024-09-01nfsd: fix refcount leak when file is unhashed after being foundJeff Layton1-0/+1
2024-09-01nfsd: remove unneeded EEXIST error check in nfsd_do_file_acquireJeff Layton1-2/+0
2024-09-01nfsd: add list_head nf_gc to struct nfsd_fileYouzhong Yang1-8/+10
2024-07-12nfsd: nfsd_file_lease_notifier_call gets a file_lease as an argumentJeff Layton1-1/+1
2024-04-04fsnotify: create a wrapper fsnotify_find_inode_mark()Amir Goldstein1-2/+2
2024-03-12Merge tag 'nfsd-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linuxLinus Torvalds1-42/+34
2024-03-01nfsd: Simplify the allocation of slab caches in nfsd_file_cache_initKunwu Chan1-4/+2
2024-03-01nfsd: use __fput_sync() to avoid delayed closing of files.NeilBrown1-2/+1
2024-03-01nfsd: Don't leave work of closing files to a work queueNeilBrown1-36/+31
2024-02-05nfsd: adapt to breakup of struct file_lockJeff Layton1-2/+2
2024-01-10Merge tag 'nfsd-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linuxLinus Torvalds1-1/+1
2024-01-07NFSD: Make the file_delayed_close workqueue UNBOUNDChuck Lever1-1/+1
2023-12-12list_lru: allow explicit memcg and NUMA node selectionNhat Pham1-2/+2
2023-11-02Merge tag 'mm-stable-2023-11-01-14-33' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-10/+13
2023-10-16nfsd: Handle EOPENSTALE correctly in the filecacheTrond Myklebust1-8/+19
2023-10-04nfsd: dynamically allocate the nfsd-filecache shrinkerQi Zheng1-10/+13
2023-04-27NFSD: Fix problem of COMMIT and NFS4ERR_DELAY in infinite loopDai Ngo1-2/+0
2023-04-26nfsd: simplify the delayed disposal list codeJeff Layton1-42/+22
2023-04-26NFSD: Convert filecache to rhltableChuck Lever1-183/+128
2023-04-26nfsd: allow reaping files still under writebackJeff Layton1-1/+11
2023-04-26nfsd: update comment over __nfsd_file_cache_purgeJeff Layton1-1/+2
2023-04-26nfsd: don't take/put an extra reference when putting a fileJeff Layton1-3/+1
2023-04-26nfsd: add some comments to nfsd_file_do_acquireJeff Layton1-0/+5
2023-04-26nfsd: don't kill nfsd_files because of lease break errorJeff Layton1-14/+15
2023-04-26nfsd: simplify test_bit return in NFSD_FILE_KEY_FULL comparatorJeff Layton1-1/+1
2023-04-26nfsd: NFSD_FILE_KEY_INODE only needs to find GC'ed entriesJeff Layton1-0/+4
2023-04-26nfsd: don't open-code clear_and_wake_up_bitJeff Layton1-3/+1
2023-02-20nfsd: don't fsync nfsd_files on last closeJeff Layton1-32/+12
2023-02-20nfsd: allow nfsd_file_get to sanely handle a NULL pointerJeff Layton1-3/+2
2023-01-23nfsd: don't free files unconditionally in __nfsd_file_cache_purgeJeff Layton1-25/+36
2023-01-06nfsd: fix handling of cached open files in nfsd4_open codepathJeff Layton1-18/+22
2022-12-11nfsd: rework refcounting in filecacheJeff Layton1-148/+170
2022-12-10NFSD: Add an nfsd_file_fsync tracepointChuck Lever1-1/+4
2022-12-10nfsd: fix up the filecache laundrette schedulingJeff Layton1-7/+5
2022-11-28nfsd: reorganize filecache.cJeff Layton1-55/+56
2022-11-28nfsd: remove the pages_flushed statistic from filecacheJeff Layton1-6/+1
2022-11-28NFSD: Fix licensing header in filecache.cChuck Lever1-1/+2
2022-11-28NFSD: Flesh out a documenting comment for filecache.cChuck Lever1-0/+24
2022-11-28NFSD: Add an NFSD_FILE_GC flag to enable nfsd_file garbage collectionChuck Lever1-8/+55
2022-11-28NFSD: Revert "NFSD: NFSv4 CLOSE should release an nfsd_file immediately"Chuck Lever1-18/+0
2022-11-05nfsd: fix use-after-free in nfsd_file_do_acquire tracepointJeff Layton1-0/+1
2022-11-01nfsd: fix net-namespace logic in __nfsd_file_cache_purgeJeff Layton1-3/+2
2022-10-05nfsd: rework hashtable handling in nfsd_do_file_acquireJeff Layton1-30/+22
2022-10-05nfsd: fix nfsd_file_unhash_and_disposeJeff Layton1-29/+7
2022-09-26nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_file_cache_stats_fopsChenXiaoSong1-6/+1
2022-08-09Merge tag 'nfsd-6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linuxLinus Torvalds1-291/+458
2022-07-29NFSD: Ensure nf_inode is never dereferencedChuck Lever1-3/+2
2022-07-29NFSD: NFSv4 CLOSE should release an nfsd_file immediatelyChuck Lever1-0/+18
2022-07-29NFSD: Move nfsd_file_trace_alloc() tracepointChuck Lever1-1/+1
2022-07-29NFSD: Separate tracepoints for acquire and createChuck Lever1-4/+5
2022-07-29NFSD: Clean up unused code after rhashtable conversionChuck Lever1-32/+1
2022-07-29NFSD: Convert the filecache to use rhashtableChuck Lever1-148/+117
2022-07-29NFSD: Set up an rhashtable for the filecacheChuck Lever1-21/+139
2022-07-29NFSD: Replace the "init once" mechanismChuck Lever1-16/+26
2022-07-29NFSD: Remove nfsd_file::nf_hashvalChuck Lever1-4/+2
2022-07-29NFSD: nfsd_file_hash_remove can compute hashvalChuck Lever1-5/+14
2022-07-29NFSD: Refactor __nfsd_file_close_inode()Chuck Lever1-19/+21
2022-07-29NFSD: nfsd_file_unhash can compute hashval from nf->nf_inodeChuck Lever1-2/+6
2022-07-29NFSD: Remove lockdep assertion from unhash_and_release_locked()Chuck Lever1-2/+0
2022-07-29NFSD: No longer record nf_hashval in the trace logChuck Lever1-7/+8
2022-07-29NFSD: Never call nfsd_file_gc() in foreground pathsChuck Lever1-9/+1
2022-07-29NFSD: Fix the filecache LRU shrinkerChuck Lever1-2/+3
2022-07-29NFSD: Leave open files out of the filecache LRUChuck Lever1-5/+19
2022-07-29NFSD: Trace filecache LRU activityChuck Lever1-13/+31
2022-07-29NFSD: WARN when freeing an item still linked via nf_lruChuck Lever1-2/+10
2022-07-29NFSD: Zero counters when the filecache is re-initializedChuck Lever1-0/+11
2022-07-29NFSD: Record number of flush callsChuck Lever1-2/+11
2022-07-29NFSD: Report the number of items evicted by the LRU walkChuck Lever1-3/+10
2022-07-29NFSD: Refactor nfsd_file_lru_scan()Chuck Lever1-18/+7
2022-07-29NFSD: Refactor nfsd_file_gc()Chuck Lever1-1/+5
2022-07-29NFSD: Add nfsd_file_lru_dispose_list() helperChuck Lever1-7/+22
2022-07-29NFSD: Report average age of filecache itemsChuck Lever1-1/+10
2022-07-29NFSD: Report count of freed filecache itemsChuck Lever1-1/+6
2022-07-29NFSD: Report count of calls to nfsd_file_acquire()Chuck Lever1-2/+9
2022-07-29NFSD: Report filecache LRU sizeChuck Lever1-1/+3
2022-07-29nfsd: eliminate the NFSD_FILE_BREAK_* flagsJeff Layton1-21/+1
2022-07-03mm: shrinkers: provide shrinkers with namesRoman Gushchin1-1/+1
2022-06-10Merge tag 'nfsd-5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/...Linus Torvalds1-4/+5
2022-06-02NFSD: Fix potential use-after-free in nfsd_file_put()Chuck Lever1-4/+5
2022-05-26Merge tag 'nfsd-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linuxLinus Torvalds1-7/+47
2022-05-26NFSD: nfsd_file_put() can sleepChuck Lever1-0/+2
2022-05-23NFSD: Trace filecache opensChuck Lever1-2/+3
2022-05-23NFSD: Instantiate a struct file when creating a regular NFSv4 fileChuck Lever1-7/+44
2022-05-20NFSD: Clean up nfsd_open_verified()Chuck Lever1-2/+2
2022-04-25nfsd: use fsnotify group lock helpersAmir Goldstein1-6/+7
2022-04-25fsnotify: pass flags argument to fsnotify_alloc_group()Amir Goldstein1-1/+2
2022-04-12Merge tag 'nfsd-5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/...Linus Torvalds1-10/+15
2022-03-31nfsd: Clean up nfsd_file_put()Trond Myklebust1-10/+3
2022-03-31nfsd: Fix a write performance regressionTrond Myklebust1-3/+15
2022-03-22Merge tag 'folio-5.18c' of git://git.infradead.org/users/willy/pagecacheLinus Torvalds1-0/+1
2022-03-21fs: Move many prototypes to pagemap.hMatthew Wilcox (Oracle)1-0/+1
2022-02-28nfsd: more robust allocation failure handling in nfsd_file_cache_initAmir Goldstein1-3/+3
2022-01-08NFSD: Rename boot verifier functionsChuck Lever1-1/+1
2022-01-08nfsd: Replace use of rwsem with errseq_tTrond Myklebust1-1/+0
2021-12-13NFSD: simplify per-net file cache managementNeilBrown1-61/+15
2021-10-27fsnotify: Protect fsnotify_handle_inode_event from no-inode eventsGabriel Krisman Bertazi1-0/+3
2021-10-01nfsd: Fix a warning for nfsd_file_close_inodeTrond Myklebust1-1/+1
2021-03-06nfsd: Don't keep looking up unhashed files in the nfsd file cacheTrond Myklebust1-0/+2
2020-12-17Merge tag 'fsnotify_for_v5.11-rc1' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-1/+1
2020-12-03fsnotify: generalize handle_inode_event()Amir Goldstein1-1/+1
2020-11-30nfsd: Fix error return code in nfsd_file_cache_init()Huang Guobin1-0/+1
2020-09-25nfsd: Cache R, RW, and W opens separatelyJ. Bruce Fields1-1/+1
2020-07-27fsnotify: create method handle_inode_event() in fsnotify_operationsAmir Goldstein1-8/+4
2020-07-27fsnotify: pass dir argument to handle_event() callbackAmir Goldstein1-3/+3
2020-07-15nfsd: use fsnotify_data_inode() to get the unlinked inodeAmir Goldstein1-1/+3
2020-03-16fs: nfsd: fileache.c: Use built-in RCU list checkingMadhuparna Bhowmik1-1/+1
2020-02-07nfsd: make nfsd_filecache_wq variable staticChen Zhou1-1/+1
2020-02-06nfsd: convert file cache to use over/underflow safe refcountTrond Myklebust1-12/+11
2020-01-22nfsd: Fix stable writesTrond Myklebust1-0/+1
2020-01-22nfsd: Fix a soft lockup race in nfsd_file_mark_find_or_create()Trond Myklebust1-2/+6
2020-01-22nfsd: Reduce the number of calls to nfsd_file_gc()Trond Myklebust1-7/+12
2020-01-22nfsd: Schedule the laundrette regularly irrespective of file errorsTrond Myklebust1-9/+1
2020-01-22nfsd: Remove unused constant NFSD_FILE_LRU_RESCANTrond Myklebust1-4/+1
2020-01-22nfsd: Containerise filecache laundretteTrond Myklebust1-40/+198
2020-01-22nfsd: cleanup nfsd_file_lru_dispose()Trond Myklebust1-7/+6
2020-01-22nfsd: fix filecache lookupTrond Myklebust1-0/+6
2019-11-08nfsd: Drop LIST_HEAD where the variable it declares is never used.Mao Wenan1-2/+0
2019-09-10nfsd: Don't garbage collect files that might contain write errorsTrond Myklebust1-1/+42
2019-09-10nfsd: nfsd_file cache entries should be per net namespaceTrond Myklebust1-12/+21
2019-08-20nfsd: remove duplicated include from filecache.cYueHaibing1-1/+0
2019-08-19nfsd: add a new struct file caching facility to nfsdJeff Layton1-0/+885