diff options
author | Jeff Darcy <jdarcy@redhat.com> | 2013-07-18 09:55:22 -0400 |
---|---|---|
committer | Vijay Bellur <vbellur@redhat.com> | 2013-07-18 23:12:11 -0700 |
commit | a1ebee3b0a8cf4526ab396ae8cad55634fad17fc (patch) | |
tree | 69a8f02f21d72d6add5ae64d2bad49014acde650 | |
parent | 70e5090326f029e6bcebd398572b39d3705d0bf3 (diff) |
core: avoid infinite mutual recursion between THIS and gf_log
This caused a stack overflow when (for some unknown reason) pthread_setspecific
was failing. Therefore __glusterfs_this_location called gf_log which used THIS
which wraps __glusterfs_this_location which . . . you get the idea. We have to
break the loop somewhere, and we can't reasonably make _gf_log stop using THIS,
so we make __glusterfs_this_location stop using _gf_log.
Change-Id: I79c3ea40dd7980bb8ac76a52cdbf5c057b2e1c3c
Signed-off-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-on: http://review.gluster.org/5341
Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com>
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
-rw-r--r-- | libglusterfs/src/globals.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/libglusterfs/src/globals.c b/libglusterfs/src/globals.c index 072b1d523f9..459291b3309 100644 --- a/libglusterfs/src/globals.c +++ b/libglusterfs/src/globals.c @@ -123,8 +123,6 @@ __glusterfs_this_location () ret = pthread_setspecific (this_xlator_key, this_location); if (ret != 0) { - gf_log ("", GF_LOG_WARNING, "pthread setspecific failed"); - FREE (this_location); this_location = NULL; goto out; |