[DRBD-user] Possible bug in drbd after an IO error

Philipp Reisner philipp.reisner at linbit.com
Thu Sep 22 11:40:51 CEST 2005

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


> so, we seem to have at least one code path within the
> local io error => detach code that "forgets" to notify the peer,
> and equally does not "remember" this event itself.
>
> that is bad.
> will be fixed asap.

This is the patch; as Lars pointed out, this is missing in case
a local read fails.
It seems that we only tested failing local writes.


--- drbd/drbd_worker.c  (revision 1946)
+++ drbd/drbd_worker.c  (working copy)
@@ -374,6 +374,10 @@

        // FIXME: what if partner was SyncTarget, and is out of sync for
        // this area ?? ... should be handled in the receiver.
+
+       ok = drbd_io_error(mdev);
+       if(unlikely(!ok)) ERR("Sending in w_read_retry_remote() failed\n");
+
        inc_ap_pending(mdev);
        ok = drbd_read_remote(mdev,req);
        if(unlikely(!ok)) {


-Phil
-- 
: Dipl-Ing Philipp Reisner                      Tel +43-1-8178292-50 :
: LINBIT Information Technologies GmbH          Fax +43-1-8178292-82 :
: Schönbrunnerstr 244, 1120 Vienna, Austria    http://www.linbit.com :



More information about the drbd-user mailing list