drbd: Consider the disk-timeout also for meta-data IO operations
authorPhilipp Reisner <philipp.reisner@linbit.com>
Wed, 22 Feb 2012 10:51:57 +0000 (11:51 +0100)
committerPhilipp Reisner <philipp.reisner@linbit.com>
Thu, 8 Nov 2012 15:58:15 +0000 (16:58 +0100)
commit32db80f6f6326617ed40b2d157709226af4f062b
tree1dd2b7bc012dd4cde1721e3689c9051b0efaad22
parent25b0d6c8c16b2bf6a0430ec9cf137297db4e85e5
drbd: Consider the disk-timeout also for meta-data IO operations

If the backing device is already frozen during attach, we failed
to recognize that. The current disk-timeout code works on top
of the drbd_request objects. During attach we do not allow IO
and therefore never generate a drbd_request object but block
before that in drbd_make_request().

This patch adds the timeout to all drbd_md_sync_page_io().

Before this patch we used to go from D_ATTACHING directly
to D_DISKLESS if IO failed during attach. We can no longer
do this since we have to stay in D_FAILED until all IO
ops issued to the backing device returned.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
drivers/block/drbd/drbd_actlog.c
drivers/block/drbd/drbd_bitmap.c
drivers/block/drbd/drbd_int.h
drivers/block/drbd/drbd_state.c