Hi,

if you compile a trivial program and link it to libpthread from current
CVS, it hangs.

I bisected it mostly to the following change:

2008-06-22  Neal H. Walfield  <[EMAIL PROTECTED]>

        * sysdeps/generic/pt-mutex-timedlock.c
        (__pthread_mutex_timedlock_internal) [! NDEBUG]: Set MUTEX->OWNER
        appropriately and assert that it is consistent.
        * sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock) [!
        NDEBUG]: Set MUTEX->OWNER appropriately and assert that it is
        consistent.
        * sysdeps/generic/pt-mutex-trylock.c (__pthread_mutex_trylock) [!
        NDEBUG]: Set MUTEX->OWNER.

(http://cvs.savannah.gnu.org/viewvc/hurd/libpthread/sysdeps/generic/pt-mutex-unlock.c?root=hurd&r1=1.2&r2=1.3&view=patch)

However, Samuel had removed the assertx() from that change later on:

2008-06-29  Samuel Thibault  <[EMAIL PROTECTED]>

        * sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock):
        Do not use assertx and threadid.

(http://cvs.savannah.gnu.org/viewvc/hurd/libpthread/sysdeps/generic/pt-mutex-unlock.c?root=hurd&r1=1.3&r2=1.4&view=patch)

If I compile with -DNDEBUG, or revert pt-mutex-timedlock.c to the state
before 2008-06-22, I get a good libpthread.  


Michael


Reply via email to