diff options
author | Niels de Vos <ndevos@redhat.com> | 2017-07-26 16:16:11 +0200 |
---|---|---|
committer | Jeff Darcy <jeff@pl.atyp.us> | 2017-07-28 11:27:10 +0000 |
commit | b5fa5ae05f73e03023db37e43fb203267b719160 (patch) | |
tree | 56875f954b6c8fa51a33d2e0e5793ff212fc554b /tools/setgfid2path/src | |
parent | d685e4238fafba8f58bf01174c79cb5ca35203e5 (diff) |
mem-pool: track and verify initialization state
It is possible that pthread_getspecific() returns a non-NULL value in
case the pthread_key_t is not initialized. The behaviour for
pthread_getspecific() is not defined in this case. This can happen when
applications use mem-pools from libglusterfs.so, but did not call
mem_pools_init_early().
By tracking the status of the mem-pools initialization, it is now
possible to prevent calling pthread_getspecific() in case the
pthread_key_t is not initialized. In future, we might want to exend this
more to faciliate debugging.
Reported-by: Kotresh HR <khiremat@redhat.com>
Tested-by: Jiffin Tony Thottan <jthottan@redhat.com>
Change-Id: I6255419fe05792dc78b1eaff55bc008fc5ff3933
Fixes: 1e8e62640 ("mem-pool: initialize pthread_key_t pool_key in mem_pool_init_early()")
BUG: 1475255
Signed-off-by: Niels de Vos <ndevos@redhat.com>
Reviewed-on: https://review.gluster.org/17899
Smoke: Gluster Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: jiffin tony Thottan <jthottan@redhat.com>
Reviewed-by: Jeff Darcy <jeff@pl.atyp.us>
Diffstat (limited to 'tools/setgfid2path/src')
0 files changed, 0 insertions, 0 deletions