Replies: 1 comment 2 replies
-
|
|
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Environment
verbs;rxmFI_EP_RDMDescription
I am encountering intermittent crashes during the teardown phase of a library built on Libfabric. The error typically manifests as a
segmentation faultor acorrupted double-linked listerror.Reproducer Scenario
The test involves$N$ nodes communicating over RDM verbs endpoints:
fi_sendto all other nodes but never posts receives (fi_recv).As I implemented timeout for communication, after the specified time it stops retrying and starts "closing" the communication. It calls fi_shutdown, then destroys memory region and deletes the data buffer. After that, the endpoint gets closed with fi_close.
When closing the endpoints, the application intermittently crashes.
Analysis & Debugging
I have traced the issue to the function
rxm_flush_msg_cq, which is called internally byrxm_close_conn.fi_recvis being posted to the underlying MSG provider.fi_closecall, this internal receive triggers memory corruption or a crash.rxm_flush_msg_cqinrxm_conn.c(or relevant source) resolves all crashes in my test suite.Questions for Maintainers
rxm_flush_msg_cqstrictly intended to clean the CQ to allow for object reuse, or does it handle critical resource deallocation in theverbslayer?rxmis finished with all internal operations beforefi_closeis called?Beta Was this translation helpful? Give feedback.
All reactions