When using svcGetProcessDebugEvent, the kernel fetches the first [[KEventInfo]] instance of the process's [[KDebug]]. The debug event is handled, then the first 0x28 bytes (out of 0x38) of the [[KEventInfo]] instance are copied to the user and the object is destroyed.
{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 855:
Line 856:
| Thread ID (not used in all events)
| Thread ID (not used in all events)
|-
|-
−
| u32[2]
+
| u32
−
| Unknown/padding
+
| Unknown
+
|-
+
| u8[4]
+
| Unknown
|-
|-
| u32[6]
| u32[6]
Line 934:
Line 938:
| Creator thread ID
| Creator thread ID
|-
|-
−
| u32
+
| void *
−
| Base address (?)
+
| Thread local storage
|-
|-
−
| u32
+
| u32 *
−
| Entrypoint
+
| Entrypoint = .text load address
|}
|}
Line 1,057:
Line 1,061:
|}
|}
−
=== SCHEDULER/SYSCALL IN/OUT events ===
+
=== SCHEDULE/SYSCALL IN/OUT events ===
{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 1,067:
Line 1,071:
|-
|-
| u32
| u32
−
| Syscall (only for SYSCALL events)
+
| CPU ID (SCHEDULE events) Syscall (SYSCALL events)