]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
RDMA: Fix compilation warning 12737/head
authorAmir Vadai <amir@vadai.me>
Mon, 2 Jan 2017 08:57:15 +0000 (10:57 +0200)
committerAmir Vadai <amir@vadai.me>
Mon, 2 Jan 2017 10:12:04 +0000 (12:12 +0200)
Infiniband.cc: In member function ‘int Infiniband::recv_msg(CephContext*, int, IBSYNMsg&)’:
Infiniband.cc:883:86: warning: format ‘%x’ expects argument of type ‘unsigned int*’, but argument 3 has type ‘uint16_t* {aka short unsigned int*}’ [-Wformat=]
     sscanf(msg, "%x:%x:%x:%x:%s", &(im.lid), &(im.qpn), &(im.psn),
     &(im.peer_qpn),gid);

Signed-off-by: Amir Vadai <amir@vadai.me>
src/msg/async/rdma/Infiniband.cc

index 657f62158fcdafaf8d58bd4824b72117ced7bd94..e6d9cd297da5d0bb08077507aefbcefb1364b8b4 100644 (file)
@@ -880,7 +880,10 @@ int Infiniband::recv_msg(CephContext *cct, int sd, IBSYNMsg& im)
     ldout(cct, 1) << __func__ << " got bad length (" << r << "): " << cpp_strerror(errno) << dendl;
     r = -EINVAL;
   } else { // valid message
-    sscanf(msg, "%x:%x:%x:%x:%s", &(im.lid), &(im.qpn), &(im.psn), &(im.peer_qpn),gid);
+    int tmp;
+
+    sscanf(msg, "%x:%x:%x:%x:%s", &tmp, &(im.qpn), &(im.psn), &(im.peer_qpn),gid);
+    im.lid = tmp;
     wire_gid_to_gid(gid, &(im.gid));
     ldout(cct, 5) << __func__ << " recevd: " << im.lid << ", " << im.qpn << ", " << im.psn << ", " << im.peer_qpn << ", " << gid  << dendl;
   }