提交 0e76abf2 编写于 作者: Y Yan, Zheng 提交者: Ilya Dryomov

libceph: make ceph_osdc_wait_request() uninterruptible

Ceph_osdc_wait_request() is used when cephfs issues sync IO. In most
cases, the sync IO should be uninterruptible. The fix is use killale
wait function in ceph_osdc_wait_request().
Signed-off-by: NYan, Zheng <zyan@redhat.com>
上级 f0b33df5
...@@ -3454,7 +3454,7 @@ static int wait_request_timeout(struct ceph_osd_request *req, ...@@ -3454,7 +3454,7 @@ static int wait_request_timeout(struct ceph_osd_request *req,
long left; long left;
dout("%s req %p tid %llu\n", __func__, req, req->r_tid); dout("%s req %p tid %llu\n", __func__, req, req->r_tid);
left = wait_for_completion_interruptible_timeout(&req->r_completion, left = wait_for_completion_killable_timeout(&req->r_completion,
ceph_timeout_jiffies(timeout)); ceph_timeout_jiffies(timeout));
if (left <= 0) { if (left <= 0) {
left = left ?: -ETIMEDOUT; left = left ?: -ETIMEDOUT;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册