Bug 765012 (GLUSTER-3280) - glusterfsd valgind error: Conditional jump or move depends on uninitialised value(s)
Summary: glusterfsd valgind error: Conditional jump or move depends on uninitialised v...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: GLUSTER-3280
Product: GlusterFS
Classification: Community
Component: core
Version: 3.2.2
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Anand Avati
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-07-29 17:45 UTC by Kaleb KEITHLEY
Modified: 2015-09-01 23:05 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:


Attachments (Terms of Use)

Description Kaleb KEITHLEY 2011-07-29 17:45:16 UTC
==412== 1 errors in context 1 of 10:
==412== Thread 2:
==412== Syscall param rt_sigtimedwait(set) points to uninitialised byte(s)
==412==    at 0x389DE0EBF7: do_sigwait (in /lib64/libpthread-2.14.so)
==412==    by 0x389DE0EC78: sigwait (in /lib64/libpthread-2.14.so)
==412==    by 0x40619F: glusterfs_sigwaiter (glusterfsd.c:1241)
==412==    by 0x389DE07AF0: start_thread (in /lib64/libpthread-2.14.so)
==412==    by 0x389DADFB7C: clone (in /lib64/libc-2.14.so)
==412==  Address 0x6422e10 is on thread 2's stack
==412==
==412==
==412== 1 errors in context 2 of 10:
==412== Conditional jump or move depends on uninitialised value(s)
==412==    at 0x389DE0EBCD: do_sigwait (in /lib64/libpthread-2.14.so)
==412==    by 0x389DE0EC78: sigwait (in /lib64/libpthread-2.14.so)
==412==    by 0x40619F: glusterfs_sigwaiter (glusterfsd.c:1241)
==412==    by 0x389DE07AF0: start_thread (in /lib64/libpthread-2.14.so)
==412==    by 0x389DADFB7C: clone (in /lib64/libc-2.14.so)

Found in 3.2.1, still exists in 3.2.2 and head of the master branch.

Trivial to fix, maybe just truth-and-beauty; it'd be nice to eliminate the noise from valgrind output.

diff --git a/glusterfsd/src/glusterfsd.c b/glusterfsd/src/glusterfsd.c
index 35cb286..fb7df3f 100644
--- a/glusterfsd/src/glusterfsd.c
+++ b/glusterfsd/src/glusterfsd.c
@@ -1278,7 +1278,7 @@ glusterfs_sigwaiter (void *arg)
         int       ret = 0;
         int       sig = 0;
 
-
+        sigemptyset (&set);
         sigaddset (&set, SIGINT);   /* cleanup_and_exit */
         sigaddset (&set, SIGTERM);  /* cleanup_and_exit */
         sigaddset (&set, SIGHUP);   /* reincarnate */

Comment 1 Anand Avati 2011-08-01 03:08:51 UTC
CHANGE: http://review.gluster.com/129 (Thanks to kkeithle for pointing out.) merged in master by Anand Avati (avati)

Comment 2 Anand Avati 2011-08-01 03:08:57 UTC
CHANGE: http://review.gluster.com/130 (Thanks to kkeithle for pointing out.) merged in release-3.2 by Anand Avati (avati)

Comment 3 Anand Avati 2011-08-01 03:09:02 UTC
CHANGE: http://review.gluster.com/131 (Thanks to kkeithle for pointing out.) merged in release-3.1 by Anand Avati (avati)

Comment 4 Vijaykumar 2011-08-11 02:21:49 UTC
I ran valgrid for all the glusterfsd processes of the volume in realease 3.2.3, i didn't get any above mentioned errors in the logs. But when i performed same test in release 3.2.1, i got similar error messages in the logs. So it is fixed in release 3.2.3.


Note You need to log in before you can comment on or make changes to this bug.