daedalus-v4l2{,-dkms}: f04d700 -> f55b2cd (UAF lifetime fix)

Bumps all 4 daedalus packages (arch + debian × userspace + dkms)
to pick up daedalus-v4l2 f55b2cd: "kernel: media_request_get/put
around inf->req (UAF safety)".

Closes the SHIP-WITH-EYES-OPEN concern Sonnet flagged in the
pre-deployment review — without explicit media_request_get on
capture + media_request_put on completion, a concurrent
MEDIA_IOC_REQUEST_REINIT or process-kill triggering
buf_request_complete from the cancel path could drop vb2's
reference before our completion handler ran, leaving inf->req
dangling through v4l2_ctrl_request_complete + buf_done.

Matches the cedrus / rkvdec refcount pattern.  No protocol
change, no API change, no consumer-side adjustment required.
Same byte-exact output verified on hertz post-fix (libva path:
match; standalone test_m2m_stream: 30/30 frames).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-18 18:39:40 +00:00
parent 4776dc01d2
commit 1bd11eaf27
6 changed files with 14 additions and 14 deletions
+2 -2
View File
@@ -18,9 +18,9 @@ _module=daedalus_v4l2
# Same pin as arch/daedalus-v4l2 — keep kernel module + daemon
# bit-versioned together so the chardev wire protocol stays in sync.
_commit=f04d7000f858fe51d867aba14a529d3aef4fbd54
_commit=f55b2cdab8a8c0bc04e8c1bb1d0b6ca85e7d96d2
pkgver=0.1.0.r15.f04d700
pkgver=0.1.0.r16.f55b2cd
pkgrel=1
pkgdesc="V4L2 stateless decoder shim kernel module (DKMS) — Pi 5 / CM5"
arch=('any')
+3 -3
View File
@@ -16,16 +16,16 @@
pkgname=daedalus-v4l2
_upstreampkg=daedalus-v4l2
# Pin the daedalus-v4l2 tip. f04d700 = "Phase 8.13: byte-exact end-to-
# Pin the daedalus-v4l2 tip. f55b2cd = "Phase 8.13: byte-exact end-to-
# end via libva (consumer target hit)" — first commit where the full
# ffmpeg -hwaccel vaapi → libva → /dev/video0 → daemon path lands a
# pixel-correct decoded frame back in ffmpeg. Promote to a later pin
# only after a future phase closes cleanly.
_commit=f04d7000f858fe51d867aba14a529d3aef4fbd54
_commit=f55b2cdab8a8c0bc04e8c1bb1d0b6ca85e7d96d2
# 0.1.0 (pre-1.0) + commit count + short sha. Bump the .Y on each
# Phase 8.x close. pkgver() recomputes at build time.
pkgver=0.1.0.r15.f04d700
pkgver=0.1.0.r16.f55b2cd
pkgrel=1
pkgdesc="Userspace daemon for the daedalus-v4l2 V4L2 stateless decoder shim (VP9/AV1/H.264 on Pi 5 / CM5)"
arch=('aarch64')
+2 -2
View File
@@ -14,8 +14,8 @@
# Sibling userspace package: ../daedalus-v4l2/build-deb.sh
set -euo pipefail
UPSTREAM_COMMIT=f04d7000f858fe51d867aba14a529d3aef4fbd54
PKGVER=0.1.0+r15+gf04d700
UPSTREAM_COMMIT=f55b2cdab8a8c0bc04e8c1bb1d0b6ca85e7d96d2
PKGVER=0.1.0+r16+gf55b2cd
PKGREL=1
MODULE_NAME=daedalus_v4l2
+2 -2
View File
@@ -1,7 +1,7 @@
daedalus-v4l2-dkms (0.1.0+r15+gf04d700-1) bookworm trixie; urgency=medium
daedalus-v4l2-dkms (0.1.0+r16+gf55b2cd-1) bookworm trixie; urgency=medium
* Initial Debian DKMS packaging for the daedalus_v4l2 kernel module.
* Pinned to f04d700 (Phase 8.13 close): kernel-side framework
* Pinned to f55b2cd (Phase 8.13 close): kernel-side framework
integration (V4L2 m2m, dmabuf-export, media controller, request
API, NV12 single-plane + NV12M + P010 CAPTURE) that closes the
libva→/dev/video0→daemon round-trip with byte-exact pixels.
+3 -3
View File
@@ -11,12 +11,12 @@
# Upstream repo: https://git.reauktion.de/reauktion/daedalus-v4l2
set -euo pipefail
# Same pin as the Arch PKGBUILD. f04d700 = "Phase 8.13: byte-exact
# Same pin as the Arch PKGBUILD. f55b2cd = "Phase 8.13: byte-exact
# end-to-end via libva (consumer target hit)" — first commit where the
# full ffmpeg -hwaccel vaapi → libva → /dev/video0 → daemon path lands
# a pixel-correct decoded frame back in ffmpeg.
UPSTREAM_COMMIT=f04d7000f858fe51d867aba14a529d3aef4fbd54
PKGVER=0.1.0+r15+gf04d700
UPSTREAM_COMMIT=f55b2cdab8a8c0bc04e8c1bb1d0b6ca85e7d96d2
PKGVER=0.1.0+r16+gf55b2cd
PKGREL=1
HERE=$(dirname "$(readlink -f "$0")")
+2 -2
View File
@@ -1,7 +1,7 @@
daedalus-v4l2 (0.1.0+r15+gf04d700-1) bookworm trixie; urgency=medium
daedalus-v4l2 (0.1.0+r16+gf55b2cd-1) bookworm trixie; urgency=medium
* Initial Debian packaging for the daedalus-v4l2 userspace daemon.
* Pinned to f04d700 (Phase 8.13 close): first commit where the full
* Pinned to f55b2cd (Phase 8.13 close): first commit where the full
ffmpeg -hwaccel vaapi → libva-v4l2-request-fourier → /dev/video0
→ daemon path lands a pixel-correct decoded NV12 frame back in
ffmpeg.