diff --git a/src/client/msgr_rdma.cpp b/src/client/msgr_rdma.cpp index 5a6682bd..47b79902 100644 --- a/src/client/msgr_rdma.cpp +++ b/src/client/msgr_rdma.cpp @@ -803,6 +803,9 @@ void osd_messenger_t::handle_rdma_events(msgr_rdma_context_t *rdma_context) } if (!is_send) { + // Reset OSD ping state - client is obviously alive + cl->ping_time_remaining = 0; + cl->idle_time_remaining = osd_idle_timeout; rc->cur_recv--; if (!handle_read_buffer(cl, rc->recv_buffers[rc->next_recv_buf].buf, wc[i].byte_len)) { diff --git a/src/client/msgr_receive.cpp b/src/client/msgr_receive.cpp index 45807921..011f4611 100644 --- a/src/client/msgr_receive.cpp +++ b/src/client/msgr_receive.cpp @@ -214,6 +214,7 @@ bool osd_messenger_t::handle_read_buffer(osd_client_t *cl, void *curbuf, int rem bool osd_messenger_t::handle_finished_read(osd_client_t *cl) { + // Reset OSD ping state cl->ping_time_remaining = 0; cl->idle_time_remaining = osd_idle_timeout; cl->recv_list.reset();