Re: [PATCH] ceph: add timeout protection to ceph_mdsc_sync() path
From: Ionut Nechita (Wind River)
Date: Wed Feb 18 2026 - 14:59:13 EST
Hi Slava,
Thanks for testing and reproducing this with generic/013.
Looking at the stack trace you shared:
ceph_mdsc_sync+0x4b4 -> wait_for_completion(&req->r_safe_completion)
ceph_sync_fs
sync_filesystem
__x64_sys_syncfs
This is the same pattern we see in the original report - the sync path
blocks indefinitely on wait_for_completion() with no timeout. In your
case it's ceph_mdsc_sync() hanging on r_safe_completion, which is
exactly what patch 2/3 ("ceph: add timeout protection to
ceph_mdsc_sync() path") addresses.
The root cause may differ from the original IPv6/EADDRNOTAVAIL scenario,
but the symptom and the fix are the same - these wait_for_completion()
calls in the sync path need timeout protection regardless of what causes
the underlying delay.
All three patches are now also on LKML:
1/3 - libceph: handle EADDRNOTAVAIL more gracefully (v2)
2/3 - ceph: add timeout protection to ceph_mdsc_sync() path
3/3 - ceph: add timeout protection to ceph_osdc_sync() path
I've also added more details and debug information to the Ceph tracker
issue at https://tracker.ceph.com/issues/74897 - it might help with
your investigation.
Thanks,
Ionut