Hi. Is this lock supposed to be locked/unlocked before initialization?
rpm-5.4.15/rpmio/rpmsq.c.org 2017-10-15 01:00:30.963509460 +0200 rpm-5.4.15/rpmio/rpmsq.c 2017-10-15 09:34:23.705224635 +0200 @@ -210,10 +210,11 @@ #endif /*@-macromatchname@*/ -#define DO_LOCK() /*@- retvalint@*/pthread_mutex_lock(&rpmsigTbl_lock)/*@=retvalint@*/; -#define DO_UNLOCK() pthread_mutex_unlock(&rpmsigTbl_lock); +#define DO_LOCK() /*@-retvalint@*/printf("LOCKING\n"); pthread_mutex_lock(&rpmsigTbl_lock)/*@=retvalint@*/; +#define DO_UNLOCK() printf("UNLOCKING\n"); pthread_mutex_unlock(&rpmsigTbl_lock); #define INIT_LOCK() \ - { pthread_mutexattr_t attr; \ + { printf("INITIALIZING\n"); \ + pthread_mutexattr_t attr; \ (void) pthread_mutexattr_init(&attr); \ (void) pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); \ (void) pthread_mutex_init (&rpmsigTbl_lock, &attr); \ and (notice no initialization before locking/unlocking): $ ./rpmbuild -bb ~/rpm/packages/alien/alien.spec LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING LOCKING UNLOCKING Executing(%prep): /bin/sh -e /home/users/arekm/tmp/tmp-x32/rpm-tmp.26404 LOCKING LOCKING UNLOCKING LOCKING UNLOCKING UNLOCKING INITIALIZING + umask 022 + cd /home/users/arekm/rpm/BUILD-x32 + cd /home/users/arekm/rpm/BUILD-noarch + rm -rf alien-8.95 + /usr/bin/xz -dc /home/users/arekm/rpm/packages/alien/alien_8.95.tar.xz + /bin/tar -xf - + STATUS=0 + '[' 0 -ne 0 ']' + cd alien-8.95 + /bin/id -u + '[' 1000 '=' 0 ']' + /bin/id -u + '[' 1000 '=' 0 ']' + /bin/chmod -Rf a+rX,u+w,g-w,o-w . + exit 0 LOCKING LOCKING UNLOCKING LOCKING UNLOCKING UNLOCKING Executing(%build): /bin/sh -e /home/users/arekm/tmp/tmp-x32/rpm-tmp.26404 LOCKING LOCKING UNLOCKING LOCKING UNLOCKING UNLOCKING INITIALIZING TMP=/home/users/arekm/tmp -- Arkadiusz Miśkiewicz, arekm / ( maven.pl | pld-linux.org ) ______________________________________________________________________ RPM Package Manager http://rpm5.org Developer Communication List rpm-devel@rpm5.org