Files
Sylpheed/docs/re/data/waitobj-s02-inducer.txt
Sylpheed RE agent 820519cb0c 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.
2026-08-25 10:10:14 +00:00

86 lines
4.9 KiB
Plaintext

=== 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