Skip to content

soc: apple: rtkit: print the start of crashlog sections without a decoder - #1788

Open
sithglan wants to merge 1 commit into
aurora-silicon:integration/aurorafrom
sithglan:thomas/rtkit-crashlog-unknown
Open

sithglan wants to merge 1 commit into
aurora-silicon:integration/aurorafrom
sithglan:thomas/rtkit-crashlog-unknown

Conversation

@sithglan

@sithglan sithglan commented Nov 13, 2026 •

Copy link
Copy Markdown
Contributor

Base: integration/aurora (673f618). Branch thomas/rtkit-crashlog-unknown, one commit.

soc: apple: rtkit: print the start of crashlog sections without a decoder.

  • Before: a crashlog section without a decoder was only named, by its fourcc in hex.
  • Why that's not enough: the T6050 PMP's exception logs are mostly such sections (Ccst, CasC, Crtk, Ccdp, Cpct, Csta). They have no Cstr and an empty version, and their register frame comes out as zeroes. So the log said where the firmware faulted, and nothing about how it got there.
  • After: the unchanged "Unknown crashlog section" line is followed by:
    • the section's name as text and its size;
    • up to 256 bytes of its payload, 32 to a line.
  • Use so far: Jens used it to find the PMP s2idle crash fixed in arm64: dts: apple: t6050: keep the PMP's power domains on (PMP crash after s2idle) #1789.
  • Bounds: the dump is limited to 256 bytes. The payload passed in is the section minus its 16-byte header, and apple_rtkit_crashlog_dump() has already checked that the section fits the buffer.

Testing:

  • tools/asahi/rtkit-crashlog-tests.py: the DCP log test now also expects the seven dumped sections (their line count and two name lines). run-host-tests.py --only rtkit-crashlog: 8/8 pass.
  • rtkit-crashlog.o builds with W=1 and no warnings (LLVM 22).

Authorship: Jens Axboe wrote it on his K116s (Mac17,12, stub macOS 27.2 26B8125). It is from his second update of 2026-11-12, and it carries his Signed-off-by and mine.

cc @Acelogic @DjDeveloperr @RyanTheTide @LiamRay10

…oder

A crashlog section this file can't decode was only named, by its fourcc
in hex. The PMP's exception logs on T6050 are mostly such sections (Ccst,
CasC, Crtk, Ccdp, Cpct, Csta), have no Cstr and an empty version, and
their register frame came out as zeroes, so the log said where the
firmware faulted and nothing about how it got there.

Follow the unchanged "Unknown crashlog section" line with the section's
name as text, its size and up to 256 bytes of its payload, 32 to a line.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Thomas Glanzmann <thomas@glanzmann.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants