Files
fresnel-fourier/phase8_iteration32_close.md
T
marfrit acacf3d7eb iter32 close: kernel substrate cleanup landed → 7.0-11 SHIPPING
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).
2026-05-14 15:41:05 +00:00

3.2 KiB
Raw Blame History

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 iter17iter31 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-11 built on boltzmann, installed on fresnel.
  • 6 load-bearing base patches retained:
    • 0001-arm64-dts-rk3399-pinebook-pro-add-OC-OPP-tables-1704-2184.patch
    • 0002-arm64-dts-rk3399-pinebook-pro-enable-hdmi-sound.patch
    • 0003-arm64-dts-rk3399-pinebook-pro-spi1-max-freq-10MHz.patch
    • 0004-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)

  1. MPEG-2 / VP8 multi-device probe — libva backend's find_codec_device picks ONE device for the entire session. Forcing hantro disables H264/HEVC/VP9. Architectural change required; design decision belongs to user.
  2. Backend env-gated diagnostics (iter29 LIBVA_HEVC_DUMP_SLICE_TAIL, iter30 LIBVA_TS_SCALE) — no behavior change without env set, retained for future regression debugging. Low priority cleanup.
  3. α-26 cosmetic revertdecode_params->short_term_ref_pic_set_size = picture->st_rps_bits was 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.