Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 346261
b: refs/heads/master
c: 70f17b6
h: refs/heads/master
i:
  346259: fdb9361
v: v3
  • Loading branch information
Lars Ellenberg authored and Philipp Reisner committed Nov 9, 2012
1 parent 43669dd commit e89949f
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 76590cd1fc338fd1c50f7121636db421deb8b881
refs/heads/master: 70f17b6bd18dfe33f40db7573baa663b866be6ba
9 changes: 8 additions & 1 deletion trunk/drivers/block/drbd/drbd_req.c
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,14 @@ void drbd_req_destroy(struct kref *kref)
* (local only or remote failed).
* Other places where we set out-of-sync:
* READ with local io-error */
if (!(s & RQ_POSTPONED)) {

/* There is a special case:
* we may notice late that IO was suspended,
* and postpone, or schedule for retry, a write,
* before it even was submitted or sent.
* In that case we do not want to touch the bitmap at all.
*/
if ((s & (RQ_POSTPONED|RQ_LOCAL_MASK|RQ_NET_MASK)) != RQ_POSTPONED) {
if (!(s & RQ_NET_OK) || !(s & RQ_LOCAL_OK))
drbd_set_out_of_sync(mdev, req->i.sector, req->i.size);

Expand Down

0 comments on commit e89949f

Please sign in to comment.