diff options
author | Philipp Reisner <philipp.reisner@linbit.com> | 2011-06-27 11:51:46 +0200 |
---|---|---|
committer | Philipp Reisner <philipp.reisner@linbit.com> | 2012-05-09 10:22:31 +0200 |
commit | e17117310b73ce6d2340ad46a539d3896a2d6de8 (patch) | |
tree | 66fed6cc939a402f70a51fdebb3b27f1f629b0ea /drivers/block/drbd/drbd_worker.c | |
parent | cc94c65015022e7329e80e057e20848581d3f2a5 (diff) | |
download | linux-e17117310b73ce6d2340ad46a539d3896a2d6de8.tar.gz linux-e17117310b73ce6d2340ad46a539d3896a2d6de8.tar.bz2 linux-e17117310b73ce6d2340ad46a539d3896a2d6de8.zip |
drbd: Replaced md_io_mutex by an atomic: md_io_in_use
The new function drbd_md_get_buffer() aborts waiting for the buffer
in case the disk failes in the meantime.
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block/drbd/drbd_worker.c')
-rw-r--r-- | drivers/block/drbd/drbd_worker.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/block/drbd/drbd_worker.c b/drivers/block/drbd/drbd_worker.c index eedfe311c403..94a128b49f4f 100644 --- a/drivers/block/drbd/drbd_worker.c +++ b/drivers/block/drbd/drbd_worker.c @@ -78,6 +78,7 @@ void drbd_md_io_complete(struct bio *bio, int error) md_io->error = error; complete(&md_io->event); + drbd_md_put_buffer(mdev); } /* reads on behalf of the partner, |