re: second freeze at ~96s with the inducer on; T74/T75 signature withdrawn
Run 2 put the inducer on from flight start and froze ~96s in, against 670s clean with it off -- n=2, contrast sharp, confounder (elapsed mission time) still untouched. Withdraws last iteration's 'T74/T75 move off a semaphore onto an event' as the signature to chase: it does not reproduce. In run 2 they are on XEvent while HEALTHY and stay there. The healthy state varies between instants, so a one-sample-per-state diff cannot separate a freeze transition from ordinary variation -- I read a difference of samples as a difference of states. Reproduces across both: T68 and T69 go from not-waiting to waiting, T69 on a semaphore and T68 on an event both times. And 21 of 24 threads unchanged in run 2 (17 of 24 in run 1), so 'not a whole-emulator stall' now has two independent captures behind it. Next: repeat the capture several times within one healthy run to establish which thread states are stable before reading any frozen diff.
This commit is contained in:
85
docs/re/data/waitobj-s02-inducer.txt
Normal file
85
docs/re/data/waitobj-s02-inducer.txt
Normal file
@@ -0,0 +1,85 @@
|
||||
=== healthy: 22 wait frames ===
|
||||
T106 Wait n=1 xe::kernel::XEvent
|
||||
T105 Wait n=1 xe::kernel::XEvent
|
||||
T104 Wait n=1 xe::kernel::XEvent
|
||||
T97 Wait n=1 xe::kernel::XEvent
|
||||
T96 Wait n=1 xe::kernel::XEvent
|
||||
T80 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T79 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T78 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T77 Wait n=1 xe::kernel::XEvent
|
||||
T76 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XTimer
|
||||
T75 Wait n=1 xe::kernel::XEvent
|
||||
T74 Wait n=1 xe::kernel::XEvent
|
||||
T71 Wait n=1 xe::kernel::XEvent
|
||||
T67 Wait n=1 xe::kernel::XEvent
|
||||
T66 Wait n=1 xe::kernel::XEvent
|
||||
T65 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T64 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T63 Wait n=1 xe::kernel::XSemaphore
|
||||
T62 Wait n=1 xe::kernel::XEvent
|
||||
T61 Wait n=1 xe::kernel::XEvent
|
||||
T50 Wait n=1 xe::kernel::XEvent
|
||||
T36 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XEvent
|
||||
--- objects waited on:
|
||||
xe::kernel::XEvent 22
|
||||
xe::kernel::XSemaphore 6
|
||||
xe::kernel::XTimer 1
|
||||
=== frozen: 23 wait frames ===
|
||||
T106 Wait n=1 xe::kernel::XEvent
|
||||
T105 Wait n=1 xe::kernel::XEvent
|
||||
T104 Wait n=1 xe::kernel::XEvent
|
||||
T97 Wait n=1 xe::kernel::XEvent
|
||||
T96 Wait n=1 xe::kernel::XEvent
|
||||
T80 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T79 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T78 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T77 Wait n=1 xe::kernel::XEvent
|
||||
T76 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XTimer
|
||||
T75 Wait n=1 xe::kernel::XEvent
|
||||
T74 Wait n=1 xe::kernel::XEvent
|
||||
T71 Wait n=1 xe::kernel::XEvent
|
||||
T69 Wait n=1 xe::kernel::XSemaphore
|
||||
T68 Wait n=1 xe::kernel::XEvent
|
||||
T67 Wait n=1 xe::kernel::XEvent
|
||||
T66 Wait n=1 xe::kernel::XEvent
|
||||
T65 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T64 WaitMultiple n=2 xe::kernel::XEvent, xe::kernel::XSemaphore
|
||||
T63 Wait n=1 xe::kernel::XSemaphore
|
||||
T62 Wait n=1 xe::kernel::XEvent
|
||||
T61 Wait n=1 xe::kernel::XEvent
|
||||
T50 Wait n=1 xe::kernel::XEvent
|
||||
--- objects waited on:
|
||||
xe::kernel::XEvent 21
|
||||
xe::kernel::XSemaphore 7
|
||||
xe::kernel::XTimer 1
|
||||
=== healthy -> frozen ===
|
||||
xe::kernel::XEvent 22 -> 21 CHANGED
|
||||
xe::kernel::XSemaphore 6 -> 7 CHANGED
|
||||
xe::kernel::XTimer 1 -> 1
|
||||
=== per-thread healthy -> frozen ===
|
||||
thread healthy frozen
|
||||
T106 Wait(XEvent) Wait(XEvent)
|
||||
T105 Wait(XEvent) Wait(XEvent)
|
||||
T104 Wait(XEvent) Wait(XEvent)
|
||||
T97 Wait(XEvent) Wait(XEvent)
|
||||
T96 Wait(XEvent) Wait(XEvent)
|
||||
T80 WaitMultiple(XEvent,XSemaphore) WaitMultiple(XEvent,XSemaphore)
|
||||
T79 WaitMultiple(XEvent,XSemaphore) WaitMultiple(XEvent,XSemaphore)
|
||||
T78 WaitMultiple(XEvent,XSemaphore) WaitMultiple(XEvent,XSemaphore)
|
||||
T77 Wait(XEvent) Wait(XEvent)
|
||||
T76 WaitMultiple(XEvent,XTimer) WaitMultiple(XEvent,XTimer)
|
||||
T75 Wait(XEvent) Wait(XEvent)
|
||||
T74 Wait(XEvent) Wait(XEvent)
|
||||
T71 Wait(XEvent) Wait(XEvent)
|
||||
T69 -- Wait(XSemaphore) <-- CHANGED
|
||||
T68 -- Wait(XEvent) <-- CHANGED
|
||||
T67 Wait(XEvent) Wait(XEvent)
|
||||
T66 Wait(XEvent) Wait(XEvent)
|
||||
T65 WaitMultiple(XEvent,XSemaphore) WaitMultiple(XEvent,XSemaphore)
|
||||
T64 WaitMultiple(XEvent,XSemaphore) WaitMultiple(XEvent,XSemaphore)
|
||||
T63 Wait(XSemaphore) Wait(XSemaphore)
|
||||
T62 Wait(XEvent) Wait(XEvent)
|
||||
T61 Wait(XEvent) Wait(XEvent)
|
||||
T50 Wait(XEvent) Wait(XEvent)
|
||||
T36 WaitMultiple(XEvent,XEvent) -- <-- CHANGED
|
||||
Reference in New Issue
Block a user