-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LDMS Rail fixes #1430
LDMS Rail fixes #1430
Conversation
The application should only interacts with the rail object. However, the legacy connection from the remote peer slipped through and got exposed to the application. This patch wraps the legacy connection xprt inside a rail object.
@nick-enoent I tested this but could you please include this in your test? |
Sure thing, I'll give it a go today. |
@narategithub I haven't found any issue with the rails fixes you implemented. |
ldms/src/core/ldms_rail.c
Outdated
* Tell the peer that have an RBD for this set that it is being | ||
* deleted. When they all reply, we can delete the set. | ||
*/ | ||
void __rail_set_delete(ldms_t _r, struct ldms_set *s, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be great if the function name format differs from the rails
operation interfaces, e.g., __rail_listen()
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
any suggestion? the '__' was just meant to mark private, in a sense that application should not call it (it is not exported in ldms.h ...).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with you that __rail_on_set_delete
helps at least to me to know that it's that an operation.
8200bcc
to
5bfc435
Compare
ldms/src/core/ldms_rail.c
Outdated
} else { | ||
/* | ||
* This condition is only for `x` with legacy LDMS remote peer. | ||
* I this case, we shall wrap `x` with a new rail before |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A typo: 'I' should read 'In'.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oops. thanks.
ldms/src/core/ldms_rail.c
Outdated
* Tell the peer that have an RBD for this set that it is being | ||
* deleted. When they all reply, we can delete the set. | ||
*/ | ||
void __rail_set_delete(ldms_t _r, struct ldms_set *s, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with you that __rail_on_set_delete
helps at least to me to know that it's that an operation.
This pull request addresses the following issues:
set_by_name()
xprt operation.set_delete
notification code path to support rail.