• Alexander Sverdlin's avatar
    tools/lib/lockdep: Don't mix fd-based and stream IO · 20fb654a
    Alexander Sverdlin authored
    Mixing fd-based and stream-base IO results in interleaved output like
    following:
    
    =====================================
    liblockdep 4.7.6
    -------------------------------------
    conopal/372 is trying to release lock (0x3a45c) at:
    /lib/libpt.so.2.17-alpha2(_ZN11PTimedMutex6SignalEv+0x3c) [0xb613c688]
    but there are no more locks to release!
    other info that might help us debug this:
    no locks held by conopal/372.
    stack backtrace:
    =====================================
    liblockdep 4.7.6
    ---------------------------------/usr/lib/liblockdep.so.4.7.6(+0x1e3c)[0xb67c2e3c]
    /usr/lib/liblockdep.so.4.7.6(+0x5fe0)[0xb67c6fe0]
    /usr/lib/liblockdep.so.4.7.6(+0x6450)[0xb67c7450]
    /usr/lib/liblockdep.so.4.7.6(lock_release+0x5c)[0xb67c7c40]
    /usr/lib/liblockdep.so.4.7.6(pthread_mutex_unlock+0x38)[0xb67c91d4]
    /lib/libpt.so.2.17-alpha2(_ZN11PTimedMutex6SignalEv+0x3c)[0xb613c688]
    /lib/libpt.so.2.17-alpha2(_ZN10PContainer14AssignContentsERKS_+0xe4)[0xb6160730]
    /lib/libopal.so.3.17-alpha2(_ZN15OpalMediaFormat14AssignContentsERK10PContainer+0x90)[0xb6435edc]
    /lib/libopal.so.3.17-alpha2(_ZN15OpalMediaFormataSERK7PString+0x68)[0xb643b610]
    /lib/libopal.so.3.17-alpha2(_ZN15OpalMediaFormatC2EPKc+0x68)[0xb643b6cc]
    /lib/libopal.so.3.17-alpha2(_ZN11OpalWAVFile14AddMediaFormatERK15OpalMediaFormat+0x330)[0xb66b2224]
    /lib/libopal.so.3.17-alpha2(+0x2526f8)[0xb640c6f8]
    /lib/ld-linux-armhf.so.3(+0x102f0)[0xb6f852f0]
    /lib/ld-linux-armhf.so.3(+0x1044c)[0xb6f8544c]
    /lib/ld-linux-armhf.so.3(+0xac4)[0xb6f75ac4]
    /usr/lib/liblockdep.so.4.7.6(+0x1e3c)[0xb67c2e3c]
    /usr/lib/liblockdep.so.4.7.6(+0x5fe0)[0xb67c6fe0]
    /usr/lib/liblockdep.so.4.7.6(+0x6450)[0xb67c7450]
    /usr/lib/liblockdep.so.4.7.6(lock_release+0x5c)[0xb67c7c40]
    /usr/lib/liblockdep.so.4.7.6(pthread_mutex_unlock+0x38)[0xb67c91d4]
    /lib/libpt.so.2.17-alpha2(_ZN11PTimedMutex6SignalEv+0x3c)[0xb613c688]
    /lib/libopal.so.3.17-alpha2(_ZN15OpalMediaFormat14AssignContentsERK10PContainer+0x78)[0xb6435ec4]
    /lib/libopal.so.3.17-alpha2(_ZN15OpalMediaFormataSERK7PString+0x68)[0xb643b610]
    /lib/libopal.so.3.17-alpha2(_ZN15OpalMediaFormatC2EPKc+0x68)[0xb643b6cc]
    /lib/libopal.so.3.17-alpha2(_ZN11OpalWAVFile14AddMediaFormatERK15OpalMediaFormat+0x330)[0xb66b2224]
    /lib/libopal.so.3.17-alpha2(+0x2526f8)[0xb640c6f8]
    /lib/ld-linux-armhf.so.3(+0x102f0)[0xb6f852f0]
    /lib/ld-linux-armhf.so.3(+0x1044c)[0xb6f8544c]
    /lib/ld-linux-armhf.so.3(+0xac4)[0xb6f75ac4]
    
    Therefore change all bare printf(...) to dprintf(STDOUT_FILENO, ...) to
    sychronize with backtrace_symbols_fd().
    
    [ BUG: bad unlock balance detected! ]
    Signed-off-by: default avatarAlexander Sverdlin <alexander.sverdlin@gmail.com>
    Signed-off-by: default avatarSasha Levin <alexander.levin@verizon.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Sasha Levin <sasha.levin@oracle.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: a.p.zijlstra@chello.nl
    Cc: ben@decadent.org.uk
    Link: http://lkml.kernel.org/r/20170525130005.5947-12-alexander.levin@verizon.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
    20fb654a
preload.c 12.7 KB