]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
msg/async/rdma: initialize some variables in-class 29947/head
authorChangcheng Liu <changcheng.liu@aliyun.com>
Tue, 10 Sep 2019 10:54:10 +0000 (18:54 +0800)
committerChangcheng Liu <changcheng.liu@aliyun.com>
Mon, 16 Sep 2019 07:25:19 +0000 (15:25 +0800)
1. initialize RDMAServerSocketImpl member

2. initialize RDMAConnectedSocketImpl member

3. pollfd::revents
   Though it won't result in any error here, it's better to
   initialize the pollfd structure obj's revents to be 0.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
src/msg/async/rdma/RDMAIWARPServerSocketImpl.cc
src/msg/async/rdma/RDMAStack.h

index 0d03219fd5a9f32dae1b177fccb9217baff73b49..35ab239c8613f1e2405513e1400542bfa16387ce 100644 (file)
@@ -60,6 +60,7 @@ int RDMAIWARPServerSocketImpl::accept(ConnectedSocket *sock, const SocketOptions
   struct pollfd pfd = {
     .fd = cm_channel->fd,
     .events = POLLIN,
+    .revents = 0,
   };
   int ret = poll(&pfd, 1, 0);
   ceph_assert(ret >= 0);
index 5424b337a43fab0d3beb4281db51a54d9798847b..72b9042256d75c84feb02025a97b902870d4a2eb 100644 (file)
@@ -274,13 +274,13 @@ class RDMAIWARPConnectedSocketImpl : public RDMAConnectedSocketImpl {
     void close_notify();
 
   private:
-    rdma_cm_id *cm_id;
-    rdma_event_channel *cm_channel;
+    rdma_cm_id *cm_id = nullptr;
+    rdma_event_channel *cm_channel = nullptr;
     EventCallbackRef cm_con_handler;
     std::mutex close_mtx;
     std::condition_variable close_condition;
-    bool closed;
-    RDMA_CM_STATUS status;
+    bool closed = false;
+    RDMA_CM_STATUS status = IDLE;
 
 
   class C_handle_cm_connection : public EventCallback {
@@ -324,8 +324,8 @@ class RDMAIWARPServerSocketImpl : public RDMAServerSocketImpl {
     virtual int accept(ConnectedSocket *s, const SocketOptions &opts, entity_addr_t *out, Worker *w) override;
     virtual void abort_accept() override;
   private:
-    rdma_cm_id *cm_id;
-    rdma_event_channel *cm_channel;
+    rdma_cm_id *cm_id = nullptr;
+    rdma_event_channel *cm_channel = nullptr;
 };
 
 class RDMAStack : public NetworkStack {