Fix RDMA-CM broken in 2.2.0

This commit is contained in:
Vitaliy Filippov
2025-07-29 00:14:05 +03:00
parent 78c95c94f6
commit 625552c441
5 changed files with 5 additions and 7 deletions
+1 -1
View File
@@ -74,7 +74,7 @@ Consider `use_rdmacm` for such networks.
## use_rdmacm
- Type: boolean
- Default: true
- Default: false
Use an alternative implementation of RDMA through RDMA-CM (Connection
Manager). Works with all RDMA networks: Infiniband, iWARP and
+1 -1
View File
@@ -74,7 +74,7 @@ RDMA-устройства, но они не имеют соединения с
## use_rdmacm
- Тип: булево (да/нет)
- Значение по умолчанию: true
- Значение по умолчанию: false
Использовать альтернативную реализацию RDMA на основе RDMA-CM (Connection
Manager). Работает со всеми типами RDMA-сетей: Infiniband, iWARP и
+1 -1
View File
@@ -51,7 +51,7 @@
Рассмотрите включение `use_rdmacm` для таких сетей.
- name: use_rdmacm
type: bool
default: true
default: false
info: |
Use an alternative implementation of RDMA through RDMA-CM (Connection
Manager). Works with all RDMA networks: Infiniband, iWARP and
+1 -3
View File
@@ -1186,9 +1186,7 @@ void etcd_state_client_t::parse_state(const etcd_kv_t & kv)
osd_num_t peer_osd = std::stoull(key.substr(etcd_prefix.length()+11));
if (peer_osd > 0)
{
if (value.is_object() && value["state"] == "up" &&
value["addresses"].is_array() &&
value["port"].int64_value() > 0 && value["port"].int64_value() < 65536)
if (value.is_object() && value["state"] == "up")
{
this->peer_states[peer_osd] = value;
this->seen_peers.insert(peer_osd);
+1 -1
View File
@@ -515,7 +515,7 @@ void osd_messenger_t::rdmacm_established(rdma_cm_event *ev)
cl->peer_fd = conn->peer_fd;
cl->peer_state = PEER_RDMA;
cl->connect_timeout_id = -1;
cl->in_osd_num = peer_osd;
cl->osd_num = peer_osd;
cl->in_buf = malloc_or_die(receive_buffer_size);
cl->rdma_conn = rc;
clients[conn->peer_fd] = cl;