1
0
Fork 0
alistair23-linux/drivers/block/drbd
Andreas Gruenbacher 6024fece73 drbd: Defer new writes when detecting conflicting writes
Before submitting a new local write request, wait for any conflicting
local or remote requests to complete.

We could assume that the new request occurred first and that the
conflicting requests overwrote it (and therefore discard the new
reques), but we know for sure that the new request occurred after the
conflicting requests and so this behavior would we weird.  We would also
end up with the wrong result if the new request is not fully contained
within the conflicting requests.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
2011-09-28 10:26:34 +02:00
..
Kconfig drbd: Kconfig fix 2009-12-29 17:38:28 +01:00
Makefile drbd: Add interval tree data structure 2011-08-25 14:58:04 +02:00
drbd_actlog.c drbd: moved data and meta from mdev to tconn 2011-08-29 11:27:05 +02:00
drbd_bitmap.c drbd: moved receiver, worker and asender from mdev to tconn 2011-08-29 11:27:06 +02:00
drbd_int.h drbd: _req_conflicts(): Get rid of the epoch_entries tree 2011-09-28 10:26:32 +02:00
drbd_interval.c drbd: Remove redundant check from drbd_contains_interval() 2011-09-28 10:26:30 +02:00
drbd_interval.h drbd: _req_conflicts(): Get rid of the epoch_entries tree 2011-09-28 10:26:32 +02:00
drbd_main.c drbd: _req_conflicts(): Get rid of the epoch_entries tree 2011-09-28 10:26:32 +02:00
drbd_nl.c drbd: Made drbd_flush_workqueue() to take a tconn instead of an mdev 2011-08-29 11:30:24 +02:00
drbd_proc.c drbd: moved net_conf from mdev to tconn 2011-08-29 11:27:03 +02:00
drbd_receiver.c drbd: _req_conflicts(): Get rid of the epoch_entries tree 2011-09-28 10:26:32 +02:00
drbd_req.c drbd: Defer new writes when detecting conflicting writes 2011-09-28 10:26:34 +02:00
drbd_req.h drbd: Allow to wait for the completion of an epoch entry as well 2011-09-28 10:26:31 +02:00
drbd_strings.c drbd: Rename enum drbd_state_ret_codes to enum drbd_state_rv 2011-03-10 11:36:18 +01:00
drbd_vli.h Fix common misspellings 2011-03-31 11:26:23 -03:00
drbd_worker.c drbd: _req_conflicts(): Get rid of the epoch_entries tree 2011-09-28 10:26:32 +02:00
drbd_wrappers.h drbd: Get rid of unnecessary macros (2) 2011-03-10 11:36:15 +01:00