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 :