summaryrefslogtreecommitdiffstats
path: root/drivers/block/drbd/drbd_main.c
diff options
context:
space:
mode:
authorPhilipp Reisner2011-01-19 13:48:44 +0100
committerPhilipp Reisner2011-08-29 11:27:04 +0200
commitb2fb6dbe52dafa3cd18e0665937a0ebcc0892b92 (patch)
treed229888ded18fcbb506882c6010132dc0a018c91 /drivers/block/drbd/drbd_main.c
parentdrbd: moved net_conf from mdev to tconn (diff)
downloadkernel-qcow2-linux-b2fb6dbe52dafa3cd18e0665937a0ebcc0892b92.tar.gz
kernel-qcow2-linux-b2fb6dbe52dafa3cd18e0665937a0ebcc0892b92.tar.xz
kernel-qcow2-linux-b2fb6dbe52dafa3cd18e0665937a0ebcc0892b92.zip
drbd: moved net_cont and net_cnt_wait from mdev to tconn
Patch partly generated by: sed -i -e 's/get_net_conf(mdev)/get_net_conf(mdev->tconn)/g' \ -e 's/put_net_conf(mdev)/put_net_conf(mdev->tconn)/g' \ -e 's/get_net_conf(odev)/get_net_conf(odev->tconn)/g' \ -e 's/put_net_conf(odev)/put_net_conf(odev->tconn)/g' \ *.[ch] 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_main.c')
-rw-r--r--drivers/block/drbd/drbd_main.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c
index 7e88a49d3448..9a77a9b950d3 100644
--- a/drivers/block/drbd/drbd_main.c
+++ b/drivers/block/drbd/drbd_main.c
@@ -692,11 +692,11 @@ is_valid_state(struct drbd_conf *mdev, union drbd_state ns)
put_ldev(mdev);
}
- if (get_net_conf(mdev)) {
+ if (get_net_conf(mdev->tconn)) {
if (!mdev->tconn->net_conf->two_primaries &&
ns.role == R_PRIMARY && ns.peer == R_PRIMARY)
rv = SS_TWO_PRIMARIES;
- put_net_conf(mdev);
+ put_net_conf(mdev->tconn);
}
if (rv <= 0)
@@ -2972,7 +2972,6 @@ void drbd_init_set_defaults(struct drbd_conf *mdev)
atomic_set(&mdev->rs_pending_cnt, 0);
atomic_set(&mdev->unacked_cnt, 0);
atomic_set(&mdev->local_cnt, 0);
- atomic_set(&mdev->net_cnt, 0);
atomic_set(&mdev->packet_seq, 0);
atomic_set(&mdev->pp_in_use, 0);
atomic_set(&mdev->pp_in_use_by_net, 0);
@@ -3031,7 +3030,6 @@ void drbd_init_set_defaults(struct drbd_conf *mdev)
init_waitqueue_head(&mdev->misc_wait);
init_waitqueue_head(&mdev->state_wait);
- init_waitqueue_head(&mdev->net_cnt_wait);
init_waitqueue_head(&mdev->ee_wait);
init_waitqueue_head(&mdev->al_wait);
init_waitqueue_head(&mdev->seq_wait);
@@ -3372,6 +3370,9 @@ struct drbd_tconn *drbd_new_tconn(char *name)
if (!tconn->name)
goto fail;
+ atomic_set(&tconn->net_cnt, 0);
+ init_waitqueue_head(&tconn->net_cnt_wait);
+
write_lock_irq(&global_state_lock);
list_add(&tconn->all_tconn, &drbd_tconns);
write_unlock_irq(&global_state_lock);