lkml.org 
[lkml]   [2011]   [Sep]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 03/54] drbd: conn_send_cmd2(): Return 0 upon success and an error code otherwise
    Date
    From: Andreas Gruenbacher <agruen@linbit.com>

    Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
    Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
    ---
    drivers/block/drbd/drbd_main.c | 24 ++++++++++--------------
    drivers/block/drbd/drbd_receiver.c | 4 ++--
    2 files changed, 12 insertions(+), 16 deletions(-)

    diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c
    index 1381d01..79389bf 100644
    --- a/drivers/block/drbd/drbd_main.c
    +++ b/drivers/block/drbd/drbd_main.c
    @@ -769,21 +769,17 @@ int conn_send_cmd2(struct drbd_tconn *tconn, enum drbd_packet cmd, char *data,
    size_t size)
    {
    struct p_header80 h;
    - int ok;
    + int err;

    prepare_header80(&h, cmd, size);
    -
    - if (drbd_get_data_sock(tconn))
    - return 0;
    -
    - ok = (sizeof(h) ==
    - drbd_send(tconn, tconn->data.socket, &h, sizeof(h), 0));
    - ok = ok && (size ==
    - drbd_send(tconn, tconn->data.socket, data, size, 0));
    -
    - drbd_put_data_sock(tconn);
    -
    - return ok;
    + err = drbd_get_data_sock(tconn);
    + if (!err) {
    + err = drbd_send_all(tconn, tconn->data.socket, &h, sizeof(h), 0);
    + if (!err)
    + err = drbd_send_all(tconn, tconn->data.socket, data, size, 0);
    + drbd_put_data_sock(tconn);
    + }
    + return err;
    }

    int drbd_send_sync_param(struct drbd_conf *mdev)
    @@ -882,7 +878,7 @@ int drbd_send_protocol(struct drbd_tconn *tconn)
    if (tconn->agreed_pro_version >= 87)
    strcpy(p->integrity_alg, tconn->net_conf->integrity_alg);

    - rv = conn_send_cmd2(tconn, P_PROTOCOL, p->head.payload, size);
    + rv = !conn_send_cmd2(tconn, P_PROTOCOL, p->head.payload, size);
    kfree(p);
    return rv;
    }
    diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c
    index 6949f07..e7e6ed6 100644
    --- a/drivers/block/drbd/drbd_receiver.c
    +++ b/drivers/block/drbd/drbd_receiver.c
    @@ -4263,7 +4263,7 @@ static int drbd_do_auth(struct drbd_tconn *tconn)

    get_random_bytes(my_challenge, CHALLENGE_LEN);

    - rv = conn_send_cmd2(tconn, P_AUTH_CHALLENGE, my_challenge, CHALLENGE_LEN);
    + rv = !conn_send_cmd2(tconn, P_AUTH_CHALLENGE, my_challenge, CHALLENGE_LEN);
    if (!rv)
    goto fail;

    @@ -4318,7 +4318,7 @@ static int drbd_do_auth(struct drbd_tconn *tconn)
    goto fail;
    }

    - rv = conn_send_cmd2(tconn, P_AUTH_RESPONSE, response, resp_size);
    + rv = !conn_send_cmd2(tconn, P_AUTH_RESPONSE, response, resp_size);
    if (!rv)
    goto fail;

    --
    1.7.4.1


    \
     
     \ /
      Last update: 2011-09-05 13:55    [W:0.028 / U:1.744 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site