From 05598a0907cad1350962e89b781215209a785d92 Mon Sep 17 00:00:00 2001 From: Patsy Franklin Date: Tue, 26 Jun 2018 10:35:03 -0400 Subject: [PATCH] In sem_open.c, pad was not initialized when __HAVE_64B_ATOMICS was true. On some arches this caused valgrind to warn about uninitialized bytes when the struct was written to the file system. This patch moves the initialization of pad outside of the conditional. Reviewed-by: Carlos O'Donell --- ChangeLog | 5 +++++ nptl/sem_open.c | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2eeeabf2ad..9cc8d65ca8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-06-26 Patsy Franklin + + * nptl/sem_open.c [!__HAVE_64B_ATOMICS] (sem_open): Don't update pad. + (sem_open): Set sem.newsem.pad to zero for valgrind. + 2018-06-26 Adhemerval Zanella [BZ #20251] diff --git a/nptl/sem_open.c b/nptl/sem_open.c index 1d7f142134..c5389f6873 100644 --- a/nptl/sem_open.c +++ b/nptl/sem_open.c @@ -215,10 +215,11 @@ sem_open (const char *name, int oflag, ...) sem.newsem.data = value; #else sem.newsem.value = value << SEM_VALUE_SHIFT; - /* pad is used as a mutex on pre-v9 sparc and ignored otherwise. */ - sem.newsem.pad = 0; sem.newsem.nwaiters = 0; #endif + /* pad is used as a mutex on pre-v9 sparc and ignored otherwise. */ + sem.newsem.pad = 0; + /* This always is a shared semaphore. */ sem.newsem.private = FUTEX_SHARED;