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
msg: reimplement sigpipe blocking #18105
Conversation
I tested this on my box using the #define swap you see in the last two commits there. |
@gregsfortytwo |
Looks nice and clean to me! @wjwithagen if you can test that would be very helpful! |
…_NOSIGNAL" This reverts commit 131deb3. It added code that shouldn't have entered the project repo. Conflicts: src/msg/async/AsyncConnection.cc src/msg/async/AsyncConnection.h src/msg/simple/Pipe.cc src/msg/simple/Pipe.h Signed-off-by: Greg Farnum <gfarnum@redhat.com>
This is fairly clean: we define an RAII object in the Messenger.h on Solaris, and "declare" it with a macro in the implementations. There's no code duplication and on Linux it's just entirely compiled out. Signed-off-by: Greg Farnum <gfarnum@redhat.com>
Note that since this sets MSG_NOSIGNAL to 0 it won't take effect on the ::send[msg] invocations Signed-off-by: Greg Farnum <gfarnum@redhat.com>
This reverts commit a76181d. Signed-off-by: Greg Farnum <gfarnum@redhat.com>
0afc7b4
to
0e15cab
Compare
Rebased on latest master because "make check" had a weird white space error in it. |
@liewegas @gregsfortytwo |
@liewegas @gregsfortytwo Which is probably due to me messing about with tools and other tests:
|
Excellent. (There's no way an rbd mirroring test would expose problems if nothing else did.) |
luminous backport: #18126 |
No description provided.