D807 - the locks held at the end are named in the report

Status: decided Date: 2026-10-12

When a run ends, the report lists every guest lock still held. Each entry gives what the lock was made as, its handle, the guest thread that holds it by name, and the depth where it is held more than once. Read beside the threads reported inside a lock call (D806), it names who a blocked thread waits for.

Why: PPSA03416's loading screen never ends. With D806 the report showed its GC finaliser inside pthread_mutex_lock and its main thread inside sceKernelWaitSema, but not who held the lock. This list shows the main thread holding two statically initialised locks while it waits: the shape of a collection that waits for the other threads to stop while holding the collector's lock.

Rejected: