aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/drbd/drbd_receiver.c
diff options
context:
space:
mode:
authorPhilipp Reisner <philipp.reisner@linbit.com>2011-03-28 09:40:12 -0400
committerPhilipp Reisner <philipp.reisner@linbit.com>2012-11-08 10:45:03 -0500
commit78bae59b1b7bc06c84e292e9ecf42c013723e057 (patch)
tree1deebbe72eab1b40c6b61f41c369c38e29fa816f /drivers/block/drbd/drbd_receiver.c
parente15766e9c94f7fa3396eff4ffbbf30dea8c0e22a (diff)
drbd: Introduced drbd_read_state()
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block/drbd/drbd_receiver.c')
-rw-r--r--drivers/block/drbd/drbd_receiver.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c
index c456a141eeec..28cb19c8e264 100644
--- a/drivers/block/drbd/drbd_receiver.c
+++ b/drivers/block/drbd/drbd_receiver.c
@@ -3473,7 +3473,7 @@ static int receive_state(struct drbd_tconn *tconn, struct packet_info *pi)
3473 3473
3474 spin_lock_irq(&mdev->tconn->req_lock); 3474 spin_lock_irq(&mdev->tconn->req_lock);
3475 retry: 3475 retry:
3476 os = ns = mdev->state; 3476 os = ns = drbd_read_state(mdev);
3477 spin_unlock_irq(&mdev->tconn->req_lock); 3477 spin_unlock_irq(&mdev->tconn->req_lock);
3478 3478
3479 /* peer says his disk is uptodate, while we think it is inconsistent, 3479 /* peer says his disk is uptodate, while we think it is inconsistent,
@@ -3559,7 +3559,7 @@ static int receive_state(struct drbd_tconn *tconn, struct packet_info *pi)
3559 } 3559 }
3560 3560
3561 spin_lock_irq(&mdev->tconn->req_lock); 3561 spin_lock_irq(&mdev->tconn->req_lock);
3562 if (mdev->state.i != os.i) 3562 if (os.i != drbd_read_state(mdev).i)
3563 goto retry; 3563 goto retry;
3564 clear_bit(CONSIDER_RESYNC, &mdev->flags); 3564 clear_bit(CONSIDER_RESYNC, &mdev->flags);
3565 ns.peer = peer_state.role; 3565 ns.peer = peer_state.role;
@@ -3581,7 +3581,7 @@ static int receive_state(struct drbd_tconn *tconn, struct packet_info *pi)
3581 return -EIO; 3581 return -EIO;
3582 } 3582 }
3583 rv = _drbd_set_state(mdev, ns, cs_flags, NULL); 3583 rv = _drbd_set_state(mdev, ns, cs_flags, NULL);
3584 ns = mdev->state; 3584 ns = drbd_read_state(mdev);
3585 spin_unlock_irq(&mdev->tconn->req_lock); 3585 spin_unlock_irq(&mdev->tconn->req_lock);
3586 3586
3587 if (rv < SS_SUCCESS) { 3587 if (rv < SS_SUCCESS) {