REVIEW: http://review.gluster.org/5995 (core: block unused signals in created threads) posted (#1) for review on master by Anand Avati (avati)
REVIEW: http://review.gluster.org/5995 (core: block unused signals in created threads) posted (#2) for review on master by Anand Avati (avati)
COMMIT: http://review.gluster.org/5995 committed in master by Vijay Bellur (vbellur) ------ commit 84fa8af38d2eab0f72349abb8136811bd3e96570 Author: Anand Avati <avati> Date: Tue Sep 24 09:45:08 2013 -0700 core: block unused signals in created threads Block all signal except those which are set for explicit handling in glusterfs_signals_setup(). Since thread spawning code in libglusterfs and xlators can get called from application threads when used through libgfapi, it is necessary to do this blocking. Change-Id: Ia320f80521a83d2edcda50b9ad414583a0175281 BUG: 1011662 Signed-off-by: Anand Avati <avati> Reviewed-on: http://review.gluster.org/5995 Tested-by: Gluster Build System <jenkins.com> Reviewed-by: Amar Tumballi <amarts> Reviewed-by: Vijay Bellur <vbellur>
Thanks for fixing this quickly Anand! The patch looks good, but why trap SIGABRT? In general, when using libgfapi the application handler for SIGABRT should be used.
A caller of assert() would need the SIGABRT to be caught in the same thread for things like printing a meaningful backtrace, and hence left it unblocked (in case the application has already setup a handler). It wasn't with the intention that libgfapi would handle SIGABRT with its handler.
That makes sense, thanks!
with 3.4.1 release of glusterfs
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.5.0, please reopen this bug report. glusterfs-3.5.0 has been announced on the Gluster Developers mailinglist [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution. [1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/6137 [2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user