|
@@ -1128,7 +1128,7 @@ static int bm_rw(struct drbd_conf *mdev, int rw, unsigned flags, unsigned lazy_w
|
|
|
* "in_flight reached zero, all done" event.
|
|
|
*/
|
|
|
if (!atomic_dec_and_test(&ctx->in_flight))
|
|
|
- wait_until_done_or_disk_failure(mdev, mdev->ldev, &ctx->done);
|
|
|
+ wait_until_done_or_force_detached(mdev, mdev->ldev, &ctx->done);
|
|
|
else
|
|
|
kref_put(&ctx->kref, &bm_aio_ctx_destroy);
|
|
|
|
|
@@ -1145,7 +1145,7 @@ static int bm_rw(struct drbd_conf *mdev, int rw, unsigned flags, unsigned lazy_w
|
|
|
}
|
|
|
|
|
|
if (atomic_read(&ctx->in_flight))
|
|
|
- err = -EIO; /* Disk failed during IO... */
|
|
|
+ err = -EIO; /* Disk timeout/force-detach during IO... */
|
|
|
|
|
|
now = jiffies;
|
|
|
if (rw == WRITE) {
|
|
@@ -1273,11 +1273,11 @@ int drbd_bm_write_page(struct drbd_conf *mdev, unsigned int idx) __must_hold(loc
|
|
|
}
|
|
|
|
|
|
bm_page_io_async(ctx, idx, WRITE_SYNC);
|
|
|
- wait_until_done_or_disk_failure(mdev, mdev->ldev, &ctx->done);
|
|
|
+ wait_until_done_or_force_detached(mdev, mdev->ldev, &ctx->done);
|
|
|
|
|
|
if (ctx->error)
|
|
|
drbd_chk_io_error(mdev, 1, DRBD_META_IO_ERROR);
|
|
|
- /* that should force detach, so the in memory bitmap will be
|
|
|
+ /* that causes us to detach, so the in memory bitmap will be
|
|
|
* gone in a moment as well. */
|
|
|
|
|
|
mdev->bm_writ_cnt++;
|