aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block
diff options
context:
space:
mode:
authorLars Ellenberg <lars.ellenberg@linbit.com>2012-08-01 06:46:20 -0400
committerPhilipp Reisner <philipp.reisner@linbit.com>2012-11-09 08:05:50 -0500
commiteb12010e9af119c84e6b2214064a98681027e0e3 (patch)
tree47fba4ebbf2a2a54137362b9d1e489a8cfcd3086 /drivers/block
parent427c0434fc52f15bd762ddc6611e874df6cc5b8d (diff)
drbd: disambiguation, s/ERR_DISCARD/ERR_DISCARD_IMPOSSIBLE/
If for some reason (typically "split-brained" cluster manager) drbd replica data has diverged, we can chose a victim, and reconnect using "--discard-my-data", causing the victim to become sync-target, fetching all changed blocks from the peer. If we are Primary, we are potentially in use, and we refuse to "roll back" changes to the data below the page cache and other users. Rename the error symbol for this to ERR_DISCARD_IMPOSSIBLE. 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_nl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/block/drbd/drbd_nl.c b/drivers/block/drbd/drbd_nl.c
index 35bb572a2076..d1073705bf1f 100644
--- a/drivers/block/drbd/drbd_nl.c
+++ b/drivers/block/drbd/drbd_nl.c
@@ -1829,7 +1829,7 @@ _check_net_options(struct drbd_tconn *tconn, struct net_conf *old_conf, struct n
1829 return ERR_STONITH_AND_PROT_A; 1829 return ERR_STONITH_AND_PROT_A;
1830 } 1830 }
1831 if (mdev->state.role == R_PRIMARY && new_conf->discard_my_data) 1831 if (mdev->state.role == R_PRIMARY && new_conf->discard_my_data)
1832 return ERR_DISCARD; 1832 return ERR_DISCARD_IMPOSSIBLE;
1833 } 1833 }
1834 1834
1835 if (new_conf->on_congestion != OC_BLOCK && new_conf->wire_protocol != DRBD_PROT_A) 1835 if (new_conf->on_congestion != OC_BLOCK && new_conf->wire_protocol != DRBD_PROT_A)