Skip to content

test-initramfs: --kernel rt, the 32-bit QEMU leg for the RT series' exFAT symlink patch - #170

Merged
mcfbytes merged 1 commit into
feat/vanilla-buildroot-releasefrom
fix/qemu-rt-exfat-symlink-leg
Sep 12, 2026
Merged

mcfbytes merged 1 commit into
feat/vanilla-buildroot-releasefrom
fix/qemu-rt-exfat-symlink-leg

Conversation

@mcfbytes

Copy link
Copy Markdown
Owner

Why

The rig, still on an RT 7.2.3 kernel built 2026-09-05 (before #152's 7.x re-anchor of board patch 0031 shipped there), panicked during update_all.sh: the Arcade Organizer's first .mra symlink on /media/fat hit page_symlink() → NULL write_begin (netconsole: PC is at 0x0, LR is at page_symlink+0x90, from exfat_symlink), and CONFIG_PANIC_ON_OOPS=y + panic=15 rebooted the board 17 s later.

Nothing had ever executed the 7.x rewrite of 0031 as 32-bit ARM: the DE10 QEMU leg builds at the shipped 6.18 pin with the shared patch, and the only runs of the rewrite were the DE25's aarch64 leg.

What

  • scripts/test-initramfs.sh --kernel rt (de10nano only): the same multi_v7 test kernel, built at BR2_PACKAGE_LINUX_RT_VERSION with linux-patches-beta/0031, in its own work/test-initramfs-rt* caches.
  • scripts/ci-tests.sh runs its three exfat-driver cases (exfat, fsck-request, symlink) after the DE10 leg, gated like it (and on BR2_PACKAGE_LINUX_RT=y).
  • ADR 0002 §8b, docs/rt-beta-kernel.md, docs/de25-nano-tasks.md: the 32-bit gap is closed; a hardware boot of the fixed RT kernel is what remains.

Verified

leg kernel 0031 form result
--kernel rt symlink exfat fsck-request 7.2.4, 32-bit linux-patches-beta/ (rewrite) 3/3 pass
negative control: default leg forced to 7.2.4 7.2.4, 32-bit shared 6.18 form symlink FAILS with the rig's exact Oops (PC is at 0x0, LR is at page_symlink)
symlink (default leg) 6.18.50, 32-bit shared pass

Stacked on #169.

🤖 Generated with Claude Code

https://claude.ai/code/session_01V21CRKVv5f66XFNbcrteMD

…s' patch 0031

The rig, still on an RT 7.2.3 kernel built 2026-09-05 (before PR #152's
7.x re-anchor of the exFAT symlink patch shipped there), Oopsed on the
first symlink update_all.sh's Arcade Organizer created on /media/fat:
PC 0x0 from page_symlink() via exfat_symlink() -- the NULL write_begin
that the DE25's aarch64 QEMU leg had found on 2026-09-06. With
CONFIG_PANIC_ON_OOPS=y and panic=15 the board rebooted 17 s later.

Nothing executed that patch as 32-bit ARM: the DE10 QEMU leg builds at
the shipped 6.18 pin with the shared (page_symlink) form, and the only
runs of the 7.x rewrite were aarch64. `--kernel rt` (de10nano only)
builds the same multi_v7 test kernel at BR2_PACKAGE_LINUX_RT_VERSION with
linux-patches-beta/0031 and its own work/test-initramfs-rt* caches.
ci-tests.sh runs its three exfat-driver cases after the DE10 leg.

Verified locally at 7.2.4: symlink, exfat, fsck-request pass; the 6.18
form of the patch applied to the same 7.2.4 source reproduces the rig's
Oops in QEMU (PC is at 0x0, LR is at page_symlink), so the leg catches
the bug it exists for. The shipped 6.18.50 leg still passes symlink.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V21CRKVv5f66XFNbcrteMD
@mcfbytes
mcfbytes merged commit d6a2689 into feat/vanilla-buildroot-release Sep 12, 2026
4 checks passed
@mcfbytes
mcfbytes deleted the fix/qemu-rt-exfat-symlink-leg branch September 12, 2026 00:38
mcfbytes added a commit that referenced this pull request Sep 16, 2026
test-initramfs: --kernel rt, the 32-bit QEMU leg for the RT series' exFAT symlink patch
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.

1 participant