All iter17/20-31 diagnostic pr_info printks removed from v4l2-ctrls-request.c + rkvdec-hevc.c. 6 base patches retained. 3-codec anchor regression on 7.0-11 post-reboot: - H.264 10F: PASS (sha dd4f5f2d552c) - HEVC 10F: PASS (sha 108f925bb6cb) - VP9 10F: PASS (sha cf35908ae0f9) Hashes identical to 7.0-10 — confirms no kernel-side regression from removing printks. dmesg clean of iter* entries. Memory entry reference_fresnel_kernel_substrate.md updated: substrate now at 7.0-11; Bug 4/Bug 5 marked RESOLVED as libva-side fixes (NOT kernel-side as originally hypothesised).
3.2 KiB
Iteration 32 — Phase 8 (close): Kernel substrate cleanup → 7.0-11 SHIPPING
Closes 2026-05-14, third campaign-day milestone after iter31 α-29 fix. Mechanical cleanup — no behavior change.
Goal
Strip the diagnostic pr_info printks added during iter17–iter31 root-cause investigation, ship a clean kernel for ongoing fresnel-fourier work.
Printks removed
In drivers/media/v4l2-core/v4l2-ctrls-request.c:
- iter21_setup, iter21_setup_ref
- iter22_clone_*
- iter23_loop
- iter24_req_to_new, iter24_try_or_set, iter24_loop_break, iter24_loop_done
In drivers/media/platform/rockchip/rkvdec/rkvdec-hevc.c:
- iter17 (
rkvdec_hevc_run:printk) - iter20 (ctrl_hdl + sps/dp byte dump)
- iter27_dpb01, iter31_dpb23 (dpb dumps)
- iter27_sl0, iter31_sl1 (slice_params dumps)
Substrate state
linux-fresnel-fourier 7.0-11built on boltzmann, installed on fresnel.- 6 load-bearing base patches retained:
0001-arm64-dts-rk3399-pinebook-pro-add-OC-OPP-tables-1704-2184.patch0002-arm64-dts-rk3399-pinebook-pro-enable-hdmi-sound.patch0003-arm64-dts-rk3399-pinebook-pro-spi1-max-freq-10MHz.patch0004-media-videobuf2-add-opt-in-dma_resv-producer-fence-h.patch(RFC v2 #1)0005-media-hantro-attach-dma_resv-release-fence-at-device.patch(RFC v2 #2)0006-media-rockchip-rga-attach-dma_resv-release-fence-at-.patch(RFC v2 #3)
Verification (post-reboot on 7.0-11)
3-codec anchor regression:
| Codec | Status | SHA-12 |
|---|---|---|
| H.264 10F | PASS | dd4f5f2d552c |
| HEVC 10F | PASS | 108f925bb6cb |
| VP9 10F | PASS | cf35908ae0f9 |
Hashes IDENTICAL to those captured on diagnostic 7.0-10 build — confirms no kernel-side regression from removing the printks (they were pure logging, no behavior touch).
dmesg grep -E "rkvdec_iter|iter2[0-7]|iter3[01]|rkvdec_hevc_run:" post-decode: empty (as expected).
Substrate-memory updated
reference_fresnel_kernel_substrate.md bumped to 7.0-11, with a new "RESOLVED 2026-05-14" footnote noting that Bug 4 + Bug 5 turned out to be libva-side (not kernel-side) — the libva-vaapi cached-mmap readback path actually works correctly on this kernel; α-25 + α-29 fixes are in libva backend, not kernel.
Remaining campaign open items (post iter32)
- MPEG-2 / VP8 multi-device probe — libva backend's
find_codec_devicepicks ONE device for the entire session. Forcing hantro disables H264/HEVC/VP9. Architectural change required; design decision belongs to user. - Backend env-gated diagnostics (iter29
LIBVA_HEVC_DUMP_SLICE_TAIL, iter30LIBVA_TS_SCALE) — no behavior change without env set, retained for future regression debugging. Low priority cleanup. - α-26 cosmetic revert —
decode_params->short_term_ref_pic_set_size = picture->st_rps_bitswas mis-routed (right value to wrong V4L2 field; rkvdec doesn't use that field). Could revert to 0. Cosmetic.
Campaign final state
After today's arc: Bug 4 fixed (iter25 α-25), Bug 5 fully fixed (iter25 α-25 + iter31 α-29), kernel substrate shipping (iter32 7.0-11). The 5-codec target reduced to 3/5 strict-PASS + 2/5 untestable through libva's single-device probe — pre-existing limitation orthogonal to Bug 4/5.