Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 345924
b: refs/heads/master
c: 69bc7bc
h: refs/heads/master
v: v3
  • Loading branch information
Andreas Gruenbacher authored and Philipp Reisner committed Nov 8, 2012
1 parent 1416df7 commit d29a3ad
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 17 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 8172f3e9bf9bc239caec96382573b8d9b01baa09
refs/heads/master: 69bc7bc351967319bb3db2ecc38e60f9ca198b29
38 changes: 22 additions & 16 deletions trunk/drivers/block/drbd/drbd_receiver.c
Original file line number Diff line number Diff line change
Expand Up @@ -971,19 +971,21 @@ static int decode_header(struct drbd_tconn *tconn, struct p_header *h, struct pa
static int drbd_recv_header(struct drbd_tconn *tconn, struct packet_info *pi)
{
struct p_header *h = &tconn->data.rbuf.header;
int r;
int err;

r = drbd_recv(tconn, h, sizeof(*h));
if (unlikely(r != sizeof(*h))) {
err = drbd_recv(tconn, h, sizeof(*h));
if (unlikely(err != sizeof(*h))) {
if (!signal_pending(current))
conn_warn(tconn, "short read expecting header on sock: r=%d\n", r);
return false;
conn_warn(tconn, "short read expecting header on sock: r=%d\n", err);
if (err >= 0)
err = -EIO;
return err;
}

r = !decode_header(tconn, h, pi);
err = decode_header(tconn, h, pi);
tconn->last_received = jiffies;

return r;
return err;
}

static void drbd_flush(struct drbd_conf *mdev)
Expand Down Expand Up @@ -3790,7 +3792,7 @@ static int receive_bitmap(struct drbd_conf *mdev, enum drbd_packet cmd,
goto out;
break;
}
if (!drbd_recv_header(mdev->tconn, &pi))
if (drbd_recv_header(mdev->tconn, &pi))
goto out;
cmd = pi.cmd;
data_size = pi.size;
Expand Down Expand Up @@ -3941,7 +3943,7 @@ static void drbdd(struct drbd_tconn *tconn)

while (get_t_state(&tconn->receiver) == RUNNING) {
drbd_thread_current_set_cpu(&tconn->receiver);
if (!drbd_recv_header(tconn, &pi))
if (drbd_recv_header(tconn, &pi))
goto err_out;

if (unlikely(pi.cmd >= ARRAY_SIZE(drbd_cmd_handler) ||
Expand Down Expand Up @@ -4179,8 +4181,8 @@ static int drbd_do_handshake(struct drbd_tconn *tconn)
if (err)
return 0;

rv = drbd_recv_header(tconn, &pi);
if (!rv)
err = drbd_recv_header(tconn, &pi);
if (err)
return 0;

if (pi.cmd != P_HAND_SHAKE) {
Expand Down Expand Up @@ -4254,7 +4256,7 @@ static int drbd_do_auth(struct drbd_tconn *tconn)
unsigned int resp_size;
struct hash_desc desc;
struct packet_info pi;
int rv;
int err, rv;

desc.tfm = tconn->cram_hmac_tfm;
desc.flags = 0;
Expand All @@ -4273,9 +4275,11 @@ static int drbd_do_auth(struct drbd_tconn *tconn)
if (!rv)
goto fail;

rv = drbd_recv_header(tconn, &pi);
if (!rv)
err = drbd_recv_header(tconn, &pi);
if (err) {
rv = 0;
goto fail;
}

if (pi.cmd != P_AUTH_CHALLENGE) {
conn_err(tconn, "expected AuthChallenge packet, received: %s (0x%04x)\n",
Expand Down Expand Up @@ -4328,9 +4332,11 @@ static int drbd_do_auth(struct drbd_tconn *tconn)
if (!rv)
goto fail;

rv = drbd_recv_header(tconn, &pi);
if (!rv)
err = drbd_recv_header(tconn, &pi);
if (err) {
rv = 0;
goto fail;
}

if (pi.cmd != P_AUTH_RESPONSE) {
conn_err(tconn, "expected AuthResponse packet, received: %s (0x%04x)\n",
Expand Down

0 comments on commit d29a3ad

Please sign in to comment.