drbd: Consider the disk-timeout also for meta-data IO operations
authorPhilipp Reisner <philipp.reisner@linbit.com>
Wed, 14 Dec 2011 17:01:21 +0000 (18:01 +0100)
committerPhilipp Reisner <philipp.reisner@linbit.com>
Wed, 9 May 2012 13:16:30 +0000 (15:16 +0200)
commit7caacb69ac468ea713e8e8ba77be8040d8fe7bbe
treea2cfa89a0b77fe22160ca51767c37269c677b263
parent4afc433cf8066c112bd2bdd949d78ff8e8b4ba3f
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_main.c