drbd: decode_header(): Return 0 upon success and an error code otherwise
authorAndreas Gruenbacher <agruen@linbit.com>
Wed, 16 Mar 2011 16:22:39 +0000 (17:22 +0100)
committerPhilipp Reisner <philipp.reisner@linbit.com>
Thu, 8 Nov 2012 15:44:44 +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_receiver.c

index 03c21e5946301bedf94b6f79e5f61065c8d047fa..5902d242dca563061539bf24a743c5233e62d9e8 100644 (file)
@@ -948,7 +948,7 @@ out_release_sockets:
        return -1;
 }
 
-static bool decode_header(struct drbd_tconn *tconn, struct p_header *h, struct packet_info *pi)
+static int decode_header(struct drbd_tconn *tconn, struct p_header *h, struct packet_info *pi)
 {
        if (h->h80.magic == cpu_to_be32(DRBD_MAGIC)) {
                pi->cmd = be16_to_cpu(h->h80.command);
@@ -963,9 +963,9 @@ static bool decode_header(struct drbd_tconn *tconn, struct p_header *h, struct p
                    be32_to_cpu(h->h80.magic),
                    be16_to_cpu(h->h80.command),
                    be16_to_cpu(h->h80.length));
-               return false;
+               return -EINVAL;
        }
-       return true;
+       return 0;
 }
 
 static int drbd_recv_header(struct drbd_tconn *tconn, struct packet_info *pi)
@@ -980,7 +980,7 @@ static int drbd_recv_header(struct drbd_tconn *tconn, struct packet_info *pi)
                return false;
        }
 
-       r = decode_header(tconn, h, pi);
+       r = !decode_header(tconn, h, pi);
        tconn->last_received = jiffies;
 
        return r;
@@ -4845,7 +4845,7 @@ int drbd_asender(struct drbd_thread *thi)
                }
 
                if (received == expect && cmd == NULL) {
-                       if (!decode_header(tconn, h, &pi))
+                       if (decode_header(tconn, h, &pi))
                                goto reconnect;
                        cmd = &asender_tbl[pi.cmd];
                        if (pi.cmd >= ARRAY_SIZE(asender_tbl) || !cmd) {