[Bugs] [Bug 1247850] New: Glusterfsd crashes because of thread-unsafe code in gf_authenticate
bugzilla at redhat.com
bugzilla at redhat.com
Wed Jul 29 05:10:31 UTC 2015
https://bugzilla.redhat.com/show_bug.cgi?id=1247850
Bug ID: 1247850
Summary: Glusterfsd crashes because of thread-unsafe code in
gf_authenticate
Product: GlusterFS
Version: 3.7.3
Component: rpc
Severity: high
Assignee: bugs at gluster.org
Reporter: rgowdapp at redhat.com
CC: bugs at gluster.org, gluster-bugs at redhat.com,
jdarcy at redhat.com, rgowdapp at redhat.com
Depends On: 1247765
+++ This bug was initially created as a clone of Bug #1247765 +++
This caused a failure on a regression test for an unrelated patch.
http://build.gluster.org/job/rackspace-regression-2GB-triggered/12889/console
The relevant part of the stack trace looks like this.
#2 0x00007f3f84194d18 in dict_get (this=0x7f3f680023ec
#3 0x00007f3f744a4a45 in gf_auth (input_params=0x7f3f680023ec
#4 0x00007f3f748d9894 in map (this=0x7f3f70031dec
#5 0x00007f3f84196885 in dict_foreach_match (dict=0x7f3f70031dec
#6 0x00007f3f8419675d in dict_foreach (dict=0x7f3f70031dec
#7 0x00007f3f748d99d5 in gf_authenticate
In frame 2, "this" looks like a valid pointer, but the structure it points to
seems to contain garbage. The problem becomes evident when we look at frame 7.
(gdb) p input_params
$3 = (dict_t *) 0x7f3f700665ac
(gdb) p __input_params
$4 = (dict_t *) 0x7f3f680023ec
So the value we're using is from the global __input_params. This should match
the parameter input_params (which looks OK) but that's not the case.
Apparently some other thread came in and stomped the unprotected global
variable while we were still using it. This concurrency issue was actually
reported - and fixed! - on September 13, 2013.
http://review.gluster.org/#/c/5846/
Unfortunately, since most people weren't running multiple network threads, they
never saw the problem, didn't take it seriously, and bikeshedded the patch to
death. Now that we have multi-threaded epoll, it's going to keep biting
everyone until it's fixed.
--- Additional comment from Anand Avati on 2015-07-28 16:27:49 EDT ---
REVIEW: http://review.gluster.org/11780 (rpc: fix concurrency bug in
gf_authenticate) posted (#1) for review on master by Jeff Darcy
(jdarcy at redhat.com)
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1247765
[Bug 1247765] Glusterfsd crashes because of thread-unsafe code in
gf_authenticate
--
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
More information about the Bugs
mailing list