]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
msg/async/rdma: fixup memory free
authorgongchuang <gong.chuang@zte.com.cn>
Wed, 30 Nov 2016 08:06:56 +0000 (16:06 +0800)
committergongchuang <gong.chuang@zte.com.cn>
Wed, 30 Nov 2016 08:06:56 +0000 (16:06 +0800)
Signed-off-by: gongchuang <gong.chuang@zte.com.cn>
src/msg/async/rdma/Infiniband.h

index aeb22ce7b04d6d812130469c029a2a229b928216..3640853886024b366f63998c2e51857d339bc244 100644 (file)
@@ -260,17 +260,17 @@ class Infiniband {
           ++c;\r
         }\r
         if (manager.enabled_huge_page)\r
-          delete base;\r
-        else\r
           manager.free_huge_pages(base);\r
+        else\r
+          delete base;\r
       }\r
       int add(uint32_t num) {\r
         uint32_t bytes = chunk_size * num;\r
         //cihar* base = (char*)malloc(bytes);\r
-        if (!manager.enabled_huge_page) {\r
-          base = (char*)memalign(CEPH_PAGE_SIZE, bytes);\r
-        } else {\r
+        if (manager.enabled_huge_page) {\r
           base = (char*)manager.malloc_huge_pages(bytes);\r
+        } else {\r
+          base = (char*)memalign(CEPH_PAGE_SIZE, bytes);\r
         }\r
         assert(base);\r
         for (uint32_t offset = 0; offset < bytes; offset += chunk_size){\r