70f17b6bd1
We use the RQ_POSTPONED flag to mark a request for several reasons. It may be a conflicting request in a dual-primary setup, where conflict detection and resolution on the peer decided that this request needs to be re-submitted, it needs to re-enter drbd_make_request() to fix the data divergence caused by these conflicting, partially overlapping, quasi-simultaneous requests. In this case we need to mark the corresponding area as out-of-sync, before we call drbd_al_complete_io(). We also use the RQ_POSTPONED flag to just "push back" a request, before even processing it, if IO is suspended for some reason. In this case, as this request was neither submitted nor sent yet, we must not touch the bitmap. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
drbd_actlog.c | ||
drbd_bitmap.c | ||
drbd_int.h | ||
drbd_interval.c | ||
drbd_interval.h | ||
drbd_main.c | ||
drbd_nl.c | ||
drbd_nla.c | ||
drbd_nla.h | ||
drbd_proc.c | ||
drbd_receiver.c | ||
drbd_req.c | ||
drbd_req.h | ||
drbd_state.c | ||
drbd_state.h | ||
drbd_strings.c | ||
drbd_vli.h | ||
drbd_worker.c | ||
drbd_wrappers.h |