From: Lars Ellenberg Date: Mon, 3 Sep 2012 12:08:35 +0000 (+0200) Subject: drbd: differentiate early and later "postponing" of requests X-Git-Tag: v3.8-rc1~78^2~18^2~13 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=70f17b6bd18dfe33f40db7573baa663b866be6ba;p=pandora-kernel.git drbd: differentiate early and later "postponing" of requests 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 Signed-off-by: Lars Ellenberg --- Reading git-diff-tree failed