diff options
author | Philipp Reisner <philipp.reisner@linbit.com> | 2009-11-18 09:52:51 -0500 |
---|---|---|
committer | Philipp Reisner <philipp.reisner@linbit.com> | 2009-11-24 12:13:28 -0500 |
commit | d8c2a36b774defd4e230353d91f0f609c128bd78 (patch) | |
tree | f9e3f64b763945db7bc0a007c03b28833177e0b4 /drivers/block | |
parent | 0b33a9164aca6332bf4a117af5528dea9675d782 (diff) |
Fixed a regression in resync decission code drbd_uuid_compare() [Bugz 260]
Since 8.3.3 we fail to do the resync when a partial resynch is not
possible, but a full synch is necessary.
This regression was introduced with 7101539930c0a89146959e7a39c09ad9c3516434
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/drbd/drbd_receiver.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c index fb29a75053ef..c548f24f54a1 100644 --- a/drivers/block/drbd/drbd_receiver.c +++ b/drivers/block/drbd/drbd_receiver.c | |||
@@ -2400,6 +2400,7 @@ static int drbd_uuid_compare(struct drbd_conf *mdev, int *rule_nr) __must_hold(l | |||
2400 | 2400 | ||
2401 | 2401 | ||
2402 | *rule_nr = 80; | 2402 | *rule_nr = 80; |
2403 | peer = mdev->p_uuid[UI_CURRENT] & ~((u64)1); | ||
2403 | for (i = UI_HISTORY_START; i <= UI_HISTORY_END; i++) { | 2404 | for (i = UI_HISTORY_START; i <= UI_HISTORY_END; i++) { |
2404 | self = mdev->ldev->md.uuid[i] & ~((u64)1); | 2405 | self = mdev->ldev->md.uuid[i] & ~((u64)1); |
2405 | if (self == peer) | 2406 | if (self == peer) |