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