]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
drbd: drbd_send_ack(): Return 0 upon success and an error code otherwise
authorAndreas Gruenbacher <agruen@linbit.com>
Wed, 16 Mar 2011 14:39:08 +0000 (15:39 +0100)
committerPhilipp Reisner <philipp.reisner@linbit.com>
Thu, 8 Nov 2012 15:44:38 +0000 (16:44 +0100)
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
drivers/block/drbd/drbd_main.c
drivers/block/drbd/drbd_receiver.c
drivers/block/drbd/drbd_worker.c

index c80ba373bcd22f20f209244bdce09b83793e69b7..bedfc1f62c76fa9b65c7f1385689d03de2f1d92d 100644 (file)
@@ -1288,10 +1288,10 @@ int drbd_send_ack_rp(struct drbd_conf *mdev, enum drbd_packet cmd,
 int drbd_send_ack(struct drbd_conf *mdev, enum drbd_packet cmd,
                  struct drbd_peer_request *peer_req)
 {
-       return !_drbd_send_ack(mdev, cmd,
-                              cpu_to_be64(peer_req->i.sector),
-                              cpu_to_be32(peer_req->i.size),
-                              peer_req->block_id);
+       return _drbd_send_ack(mdev, cmd,
+                             cpu_to_be64(peer_req->i.sector),
+                             cpu_to_be32(peer_req->i.size),
+                             peer_req->block_id);
 }
 
 /* This function misuses the block_id field to signal if the blocks
index 30a9559918a0071eb9bcbab673d76f1879b794a9..9cd3d0d3ae45c01a975b0c03955296cefb5031b5 100644 (file)
@@ -1473,12 +1473,12 @@ static int e_end_resync_block(struct drbd_work *w, int unused)
 
        if (likely((peer_req->flags & EE_WAS_ERROR) == 0)) {
                drbd_set_in_sync(mdev, sector, peer_req->i.size);
-               ok = drbd_send_ack(mdev, P_RS_WRITE_ACK, peer_req);
+               ok = !drbd_send_ack(mdev, P_RS_WRITE_ACK, peer_req);
        } else {
                /* Record failure to sync */
                drbd_rs_failed_io(mdev, sector, peer_req->i.size);
 
-               ok  = drbd_send_ack(mdev, P_NEG_ACK, peer_req);
+               ok  = !drbd_send_ack(mdev, P_NEG_ACK, peer_req);
        }
        dec_unacked(mdev);
 
@@ -1659,11 +1659,11 @@ static int e_end_block(struct drbd_work *w, int cancel)
                                mdev->state.conn <= C_PAUSED_SYNC_T &&
                                peer_req->flags & EE_MAY_SET_IN_SYNC) ?
                                P_RS_WRITE_ACK : P_WRITE_ACK;
-                       ok &= drbd_send_ack(mdev, pcmd, peer_req);
+                       ok &= !drbd_send_ack(mdev, pcmd, peer_req);
                        if (pcmd == P_RS_WRITE_ACK)
                                drbd_set_in_sync(mdev, sector, peer_req->i.size);
                } else {
-                       ok  = drbd_send_ack(mdev, P_NEG_ACK, peer_req);
+                       ok  = !drbd_send_ack(mdev, P_NEG_ACK, peer_req);
                        /* we expect it to be marked out of sync anyways...
                         * maybe assert this?  */
                }
@@ -1693,7 +1693,7 @@ static int e_send_ack(struct drbd_work *w, enum drbd_packet ack)
                container_of(w, struct drbd_peer_request, w);
        int ok;
 
-       ok = drbd_send_ack(mdev, ack, peer_req);
+       ok = !drbd_send_ack(mdev, ack, peer_req);
        dec_unacked(mdev);
 
        return ok;
index d7263095cc19d1820320ee05f241688d7572533b..69db6de984c0aea2ef461b50d96574256ce50341 100644 (file)
@@ -926,7 +926,7 @@ int w_e_end_data_req(struct drbd_work *w, int cancel)
                        dev_err(DEV, "Sending NegDReply. sector=%llus.\n",
                            (unsigned long long)peer_req->i.sector);
 
-               ok = drbd_send_ack(mdev, P_NEG_DREPLY, peer_req);
+               ok = !drbd_send_ack(mdev, P_NEG_DREPLY, peer_req);
        }
 
        dec_unacked(mdev);
@@ -962,7 +962,7 @@ int w_e_end_rsdata_req(struct drbd_work *w, int cancel)
        }
 
        if (mdev->state.conn == C_AHEAD) {
-               ok = drbd_send_ack(mdev, P_RS_CANCEL, peer_req);
+               ok = !drbd_send_ack(mdev, P_RS_CANCEL, peer_req);
        } else if (likely((peer_req->flags & EE_WAS_ERROR) == 0)) {
                if (likely(mdev->state.pdsk >= D_INCONSISTENT)) {
                        inc_rs_pending(mdev);
@@ -978,7 +978,7 @@ int w_e_end_rsdata_req(struct drbd_work *w, int cancel)
                        dev_err(DEV, "Sending NegRSDReply. sector %llus.\n",
                            (unsigned long long)peer_req->i.sector);
 
-               ok = drbd_send_ack(mdev, P_NEG_RS_DREPLY, peer_req);
+               ok = !drbd_send_ack(mdev, P_NEG_RS_DREPLY, peer_req);
 
                /* update resync data with failure */
                drbd_rs_failed_io(mdev, peer_req->i.sector, peer_req->i.size);
@@ -1034,7 +1034,7 @@ int w_e_end_csum_rs_req(struct drbd_work *w, int cancel)
                        drbd_set_in_sync(mdev, peer_req->i.sector, peer_req->i.size);
                        /* rs_same_csums unit is BM_BLOCK_SIZE */
                        mdev->rs_same_csum += peer_req->i.size >> BM_BLOCK_SHIFT;
-                       ok = drbd_send_ack(mdev, P_RS_IS_IN_SYNC, peer_req);
+                       ok = !drbd_send_ack(mdev, P_RS_IS_IN_SYNC, peer_req);
                } else {
                        inc_rs_pending(mdev);
                        peer_req->block_id = ID_SYNCER; /* By setting block_id, digest pointer becomes invalid! */
@@ -1043,7 +1043,7 @@ int w_e_end_csum_rs_req(struct drbd_work *w, int cancel)
                        ok = drbd_send_block(mdev, P_RS_DATA_REPLY, peer_req);
                }
        } else {
-               ok = drbd_send_ack(mdev, P_NEG_RS_DREPLY, peer_req);
+               ok = !drbd_send_ack(mdev, P_NEG_RS_DREPLY, peer_req);
                if (__ratelimit(&drbd_ratelimit_state))
                        dev_err(DEV, "Sending NegDReply. I guess it gets messy.\n");
        }