| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
RdmaAsync::threadBody() rebuilt its poll lists whenever rdmaDevTab.size() differed from lastDevCount, but never updated lastDevCount and never cleared the existing lists before appending. Duplicate nonblocking async FDs could accumulate, so a repeated CLIENT_REREGISTER event could cause a second ibv_get_async_event() call on an already-drained event, returning EAGAIN and terminating nsdperf. Clear the RDMA device and pollfd lists before repopulating them and record the device count after rebuilding. Signed-off-by: Brian-Hwang <brian.hwang@cornelisnetworks.com>
There was a problem hiding this comment.
Looks good to me. Can someone from IBM take a look and approve/merge this if they agree?
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
RdmaAsync::threadBody() rebuilt its poll lists whenever rdmaDevTab.size() differed from lastDevCount, but never updated lastDevCount and never cleared the existing lists before appending. Duplicate nonblocking async FDs could accumulate, so a repeated CLIENT_REREGISTER event could cause a second ibv_get_async_event() call on an already-drained event, returning EAGAIN and terminating nsdperf.
Clear the RDMA device and pollfd lists before repopulating them and record the device count after rebuilding.