Ilya Dryomov e6e2843230 libceph: fix potential hang in ceph_osdc_notify()
If the cluster becomes unavailable, ceph_osdc_notify() may hang even
with osd_request_timeout option set because linger_notify_finish_wait()
waits for MWatchNotify NOTIFY_COMPLETE message with no associated OSD
request in flight -- it's completely asynchronous.

Introduce an additional timeout, derived from the specified notify
timeout.  While at it, switch both waits to killable which is more
correct.

Cc: stable@vger.kernel.org
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
2023-08-02 09:07:34 +02:00
..
2023-05-31 13:06:57 +02:00
2023-07-12 18:13:57 -07:00
2023-03-16 17:34:40 -07:00
2023-07-03 11:26:05 -07:00
2023-06-24 15:41:46 -07:00
2023-06-28 16:43:10 -07:00
2023-06-28 16:43:10 -07:00
2023-07-01 14:38:25 -07:00
2023-06-24 15:50:13 -07:00
2023-07-04 10:19:48 +02:00
2023-06-28 16:43:10 -07:00