]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
ceph: periodically flush the cap releases
authorXiubo Li <xiubli@redhat.com>
Wed, 10 Jul 2024 12:16:54 +0000 (20:16 +0800)
committerIlya Dryomov <idryomov@gmail.com>
Tue, 23 Jul 2024 08:01:57 +0000 (10:01 +0200)
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>
fs/ceph/mds_client.c

index 62238f3e6e19521a5573e6dcbdc985c1be5207c8..276e34ab3e2ccaa40903196c9d1507fc49ed0bcb 100644 (file)
@@ -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);