Commit 8a22cccc authored by Philipp Reisner's avatar Philipp Reisner

drbd: Converted drbd_send_handshake() from mdev to tconn

Signed-off-by: default avatarPhilipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: default avatarLars Ellenberg <lars.ellenberg@linbit.com>
parent a25b63f1
...@@ -378,7 +378,7 @@ struct p_block_req { ...@@ -378,7 +378,7 @@ struct p_block_req {
*/ */
struct p_handshake { struct p_handshake {
struct p_header head; /* Note: You must always use a h80 here */ struct p_header head; /* Note: vnr will be ignored */
u32 protocol_min; u32 protocol_min;
u32 feature_flags; u32 feature_flags;
u32 protocol_max; u32 protocol_max;
......
...@@ -3952,28 +3952,28 @@ static void drbd_disconnect(struct drbd_conf *mdev) ...@@ -3952,28 +3952,28 @@ static void drbd_disconnect(struct drbd_conf *mdev)
* *
* for now, they are expected to be zero, but ignored. * for now, they are expected to be zero, but ignored.
*/ */
static int drbd_send_handshake(struct drbd_conf *mdev) static int drbd_send_handshake(struct drbd_tconn *tconn)
{ {
/* ASSERT current == mdev->tconn->receiver ... */ /* ASSERT current == mdev->tconn->receiver ... */
struct p_handshake *p = &mdev->tconn->data.sbuf.handshake; struct p_handshake *p = &tconn->data.sbuf.handshake;
int ok; int ok;
if (mutex_lock_interruptible(&mdev->tconn->data.mutex)) { if (mutex_lock_interruptible(&tconn->data.mutex)) {
dev_err(DEV, "interrupted during initial handshake\n"); conn_err(tconn, "interrupted during initial handshake\n");
return 0; /* interrupted. not ok. */ return 0; /* interrupted. not ok. */
} }
if (mdev->tconn->data.socket == NULL) { if (tconn->data.socket == NULL) {
mutex_unlock(&mdev->tconn->data.mutex); mutex_unlock(&tconn->data.mutex);
return 0; return 0;
} }
memset(p, 0, sizeof(*p)); memset(p, 0, sizeof(*p));
p->protocol_min = cpu_to_be32(PRO_VERSION_MIN); p->protocol_min = cpu_to_be32(PRO_VERSION_MIN);
p->protocol_max = cpu_to_be32(PRO_VERSION_MAX); p->protocol_max = cpu_to_be32(PRO_VERSION_MAX);
ok = _drbd_send_cmd(mdev, mdev->tconn->data.socket, P_HAND_SHAKE, ok = _conn_send_cmd(tconn, 0, tconn->data.socket, P_HAND_SHAKE,
&p->head, sizeof(*p), 0 ); &p->head, sizeof(*p), 0);
mutex_unlock(&mdev->tconn->data.mutex); mutex_unlock(&tconn->data.mutex);
return ok; return ok;
} }
...@@ -3993,7 +3993,7 @@ static int drbd_do_handshake(struct drbd_conf *mdev) ...@@ -3993,7 +3993,7 @@ static int drbd_do_handshake(struct drbd_conf *mdev)
enum drbd_packet cmd; enum drbd_packet cmd;
int rv; int rv;
rv = drbd_send_handshake(mdev); rv = drbd_send_handshake(mdev->tconn);
if (!rv) if (!rv)
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment