diff --git a/mooncake-transfer-engine/src/transport/rdma_transport/rdma_context.cpp b/mooncake-transfer-engine/src/transport/rdma_transport/rdma_context.cpp index 2a1d37e..9ed3d07 100644 --- a/mooncake-transfer-engine/src/transport/rdma_transport/rdma_context.cpp +++ b/mooncake-transfer-engine/src/transport/rdma_transport/rdma_context.cpp @@ -193,28 +193,6 @@ int RdmaContext::deconstruct() { } int RdmaContext::registerMemoryRegion(void *addr, size_t length, int access) { - // Currently if the memory region overlaps with existing one, return - // negative value Or Merge it with existing mr? - { - RWSpinlock::ReadGuard guard(memory_regions_lock_); - for (const auto &entry : memory_region_list_) { - bool start_overlapped = entry->addr <= addr && - addr < (char *)entry->addr + entry->length; - bool end_overlapped = - entry->addr < (char *)addr + length && - (char *)addr + length <= (char *)entry->addr + entry->length; - bool covered = - addr <= entry->addr && - (char *)entry->addr + entry->length <= (char *)addr + length; - if (start_overlapped || end_overlapped || covered) { - LOG(ERROR) << "Failed to register memory " << addr - << ": overlap existing memory regions"; - return ERR_ADDRESS_OVERLAPPED; - } - } - } - - // No overlap, continue ibv_mr *mr = ibv_reg_mr(pd_, addr, length, access); if (!mr) { PLOG(ERROR) << "Failed to register memory " << addr; diff --git a/mooncake-transfer-engine/src/transport/rdma_transport/worker_pool.cpp b/mooncake-transfer-engine/src/transport/rdma_transport/worker_pool.cpp index f48d7f9..12fe3bc 100644 --- a/mooncake-transfer-engine/src/transport/rdma_transport/worker_pool.cpp +++ b/mooncake-transfer-engine/src/transport/rdma_transport/worker_pool.cpp @@ -147,7 +147,7 @@ int WorkerPool::submitPostSend( slice_queue_lock_[shard_id].lock(); for (auto &slice : slice_list_map[shard_id]) slice_queue_[shard_id][slice->peer_nic_path].push_back(slice); - slice_queue_count_[shard_id].fetch_add(submitted_slice_count, + slice_queue_count_[shard_id].fetch_add(slice_list_map[shard_id].size(), std::memory_order_relaxed); slice_queue_lock_[shard_id].unlock(); }