Home | History | Annotate | Download | only in tests
      1 
      2 Establish order 1 -> 2
      3 Try order 2 -> 1.  This gives an error.
      4 ---Thread-Announcement------------------------------------------
      5 
      6 Thread #x is the program's root thread
      7 
      8 ----------------------------------------------------------------
      9 
     10 Thread #x: lock order "0x........ before 0x........" violated
     11 
     12 Observed (incorrect) order is: acquisition of lock at 0x........
     13    at 0x........: mutex_lock_WRK (hg_intercepts.c:...)
     14    by 0x........: pthread_mutex_lock (hg_intercepts.c:...)
     15    by 0x........: main (tc15_laog_lockdel.c:35)
     16 
     17  followed by a later acquisition of lock at 0x........
     18    at 0x........: mutex_lock_WRK (hg_intercepts.c:...)
     19    by 0x........: pthread_mutex_lock (hg_intercepts.c:...)
     20    by 0x........: main (tc15_laog_lockdel.c:36)
     21 
     22 Required order was established by acquisition of lock at 0x........
     23    at 0x........: mutex_lock_WRK (hg_intercepts.c:...)
     24    by 0x........: pthread_mutex_lock (hg_intercepts.c:...)
     25    by 0x........: main (tc15_laog_lockdel.c:27)
     26 
     27  followed by a later acquisition of lock at 0x........
     28    at 0x........: mutex_lock_WRK (hg_intercepts.c:...)
     29    by 0x........: pthread_mutex_lock (hg_intercepts.c:...)
     30    by 0x........: main (tc15_laog_lockdel.c:28)
     31 
     32  Lock at 0x........ was first observed
     33    at 0x........: pthread_mutex_init (hg_intercepts.c:...)
     34    by 0x........: main (tc15_laog_lockdel.c:22)
     35  Address 0x........ is 0 bytes inside a block of size 120 alloc'd
     36    at 0x........: malloc (vg_replace_malloc.c:...)
     37    by 0x........: main (tc15_laog_lockdel.c:16)
     38  Block was alloc'd by thread #x
     39 
     40  Lock at 0x........ was first observed
     41    at 0x........: pthread_mutex_init (hg_intercepts.c:...)
     42    by 0x........: main (tc15_laog_lockdel.c:23)
     43  Address 0x........ is 0 bytes inside a block of size 120 alloc'd
     44    at 0x........: malloc (vg_replace_malloc.c:...)
     45    by 0x........: main (tc15_laog_lockdel.c:17)
     46  Block was alloc'd by thread #x
     47 
     48 
     49 Free 2 and re-allocate it.  This gives it a new identity,
     50 so a second locking sequence 2 -> 1 should now be OK.
     51 done
     52 
     53 ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
     54