diff options
author | Xiubo Li <xiubli@redhat.com> | 2024-07-10 14:16:54 +0200 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2024-07-23 10:01:57 +0200 |
commit | 578eb54c4a16713d99eed736660e30ae6eb1877f (patch) | |
tree | fabcbfc32eec99c60028f7dbd5263eb11f2aa2df /fs | |
parent | ceph: convert comma to semicolon in __ceph_dentry_dir_lease_touch() (diff) | |
download | linux-578eb54c4a16713d99eed736660e30ae6eb1877f.tar.xz linux-578eb54c4a16713d99eed736660e30ae6eb1877f.zip |
ceph: periodically flush the cap releases
The MDS could be waiting the caps releases infinitely in some corner
case and then reporting the caps revoke stuck warning. To fix this
we should periodically flush the cap releases.
Link: https://tracker.ceph.com/issues/57244
Signed-off-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ceph/mds_client.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c index 62238f3e6e19..276e34ab3e2c 100644 --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c @@ -5446,6 +5446,8 @@ static void delayed_work(struct work_struct *work) } mutex_unlock(&mdsc->mutex); + ceph_flush_cap_releases(mdsc, s); + mutex_lock(&s->s_mutex); if (renew_caps) send_renew_caps(mdsc, s); |