kernel-hacking-2024-linux-s.../fs/ceph
Yan, Zheng 37c4efc1dd ceph: periodically trim stale dentries
Previous commit make VFS delete stale dentry when last reference is
dropped. Lease also can become invalid when corresponding dentry has
no reference. This patch make cephfs periodically scan lease list,
delete corresponding dentry if lease is invalid.

There are two types of lease, dentry lease and dir lease. dentry lease
has life time and applies to singe dentry. Dentry lease is added to tail
of a list when it's updated, leases at front of the list will expire
first. Dir lease is CEPH_CAP_FILE_SHARED on directory inode, it applies
to all dentries in the directory. Dentries have dir leases are added to
another list. Dentries in the list are periodically checked in a round
robin manner.

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2019-03-05 18:55:17 +01:00
..
acl.c libceph: introduce ceph_pagelist_alloc() 2018-10-22 10:28:21 +02:00
addr.c ceph: use vmf_error() in ceph_filemap_fault() 2019-01-07 22:48:48 +01:00
cache.c
cache.h
caps.c ceph: touch existing cap when handling reply 2019-03-05 18:55:17 +01:00
ceph_frag.c
debugfs.c ceph: remove dentry_lru file from debugfs 2019-03-05 18:55:17 +01:00
dir.c ceph: periodically trim stale dentries 2019-03-05 18:55:17 +01:00
export.c
file.c ceph: pass inclusive lend parameter to filemap_write_and_wait_range() 2019-03-05 18:55:17 +01:00
inode.c ceph: periodically trim stale dentries 2019-03-05 18:55:17 +01:00
ioctl.c
ioctl.h
Kconfig
locks.c
Makefile
mds_client.c ceph: periodically trim stale dentries 2019-03-05 18:55:17 +01:00
mds_client.h ceph: periodically trim stale dentries 2019-03-05 18:55:17 +01:00
mdsmap.c ceph: remove redundant assignment 2018-12-26 15:56:04 +01:00
quota.c ceph: quota: cleanup license mess 2019-01-21 14:53:23 +01:00
snap.c ceph: map snapid to anonymous bdev ID 2019-03-05 18:55:16 +01:00
strings.c
super.c ceph: send cap releases more aggressively 2019-03-05 18:55:16 +01:00
super.h ceph: periodically trim stale dentries 2019-03-05 18:55:17 +01:00
xattr.c ceph: support getting ceph.dir.pin vxattr 2019-03-05 18:55:16 +01:00