summaryrefslogtreecommitdiffstats
path: root/drivers/block/drbd/drbd_main.c
diff options
context:
space:
mode:
authorPhilipp Reisner2011-02-09 14:10:32 +0100
committerPhilipp Reisner2011-09-28 10:33:16 +0200
commit2a67d8b93b3363d4a5608d16d510a4bf6b3863fb (patch)
tree1df36bd453029bf29dc5d4dbb97b6212f00736bb /drivers/block/drbd/drbd_main.c
parentdrbd: Generalized the work callbacks (diff)
downloadkernel-qcow2-linux-2a67d8b93b3363d4a5608d16d510a4bf6b3863fb.tar.gz
kernel-qcow2-linux-2a67d8b93b3363d4a5608d16d510a4bf6b3863fb.tar.xz
kernel-qcow2-linux-2a67d8b93b3363d4a5608d16d510a4bf6b3863fb.zip
drbd: Converted drbd_send_ping() and related functions from mdev to tconn
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.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c
index d418bca2bb14..b43ad87a536a 100644
--- a/drivers/block/drbd/drbd_main.c
+++ b/drivers/block/drbd/drbd_main.c
@@ -707,29 +707,29 @@ int _conn_send_cmd(struct drbd_tconn *tconn, int vnr, struct socket *sock,
/* don't pass the socket. we may only look at it
* when we hold the appropriate socket mutex.
*/
-int drbd_send_cmd(struct drbd_conf *mdev, int use_data_socket,
+int conn_send_cmd(struct drbd_tconn *tconn, int vnr, int use_data_socket,
enum drbd_packet cmd, struct p_header *h, size_t size)
{
int ok = 0;
struct socket *sock;
if (use_data_socket) {
- mutex_lock(&mdev->tconn->data.mutex);
- sock = mdev->tconn->data.socket;
+ mutex_lock(&tconn->data.mutex);
+ sock = tconn->data.socket;
} else {
- mutex_lock(&mdev->tconn->meta.mutex);
- sock = mdev->tconn->meta.socket;
+ mutex_lock(&tconn->meta.mutex);
+ sock = tconn->meta.socket;
}
/* drbd_disconnect() could have called drbd_free_sock()
* while we were waiting in down()... */
if (likely(sock != NULL))
- ok = _drbd_send_cmd(mdev, sock, cmd, h, size, 0);
+ ok = _conn_send_cmd(tconn, vnr, sock, cmd, h, size, 0);
if (use_data_socket)
- mutex_unlock(&mdev->tconn->data.mutex);
+ mutex_unlock(&tconn->data.mutex);
else
- mutex_unlock(&mdev->tconn->meta.mutex);
+ mutex_unlock(&tconn->meta.mutex);
return ok;
}
@@ -2191,6 +2191,7 @@ struct drbd_tconn *drbd_new_tconn(char *name)
spin_lock_init(&tconn->req_lock);
atomic_set(&tconn->net_cnt, 0);
init_waitqueue_head(&tconn->net_cnt_wait);
+ init_waitqueue_head(&tconn->ping_wait);
idr_init(&tconn->volumes);
drbd_init_workqueue(&tconn->data.work);