daedalus-v4l2{,-dkms}: f55b2cd -> f0cd29a — Linux 6.18 compat

DKMS build for daedalus_v4l2 fails against kernel 6.18+ with:

  daedalus_v4l2_main.c:1049: error: too few arguments to function
                            'v4l2_fh_add'
  v4l2-fh.h:97: void v4l2_fh_add(struct v4l2_fh *fh, struct file *filp);

(same for v4l2_fh_del).  Signature changed exactly at v6.18 — verified
v6.13–v6.17 still use the one-arg form via raw.githubusercontent.com
tag walk.

Upstream commit f0cd29a wraps the calls with LINUX_VERSION_CODE so the
module keeps building against:
  * 6.12 LTS / RPi 6.12.75 (one-arg)        — hertz
  * 6.12.88+deb13-arm64 (one-arg)
  * 6.18.29+rpt-rpi-2712 (file* arg)        — higgs running kernel

Higgs (Pi CM5) was hitting this: daedalus-v4l2-dkms 0.1.0+r16+gf55b2cd
showed 'installed' in dpkg but DKMS autoinstall failed for the running
6.18.29 kernel.  Re-running 'dkms autoinstall' after this bump succeeds
+ /dev/daedalus-v4l2 appears.

Also widens debian/daedalus-v4l2-dkms Recommends from
  linux-headers-generic | linux-headers
to
  linux-headers-rpi-2712 | linux-headers-rpi | linux-headers-generic | linux-headers
so apt pulls the right metapackage on Raspberry Pi OS / RPi-2712
kernels by default.

Userspace pkgver bumps in lockstep (no userspace change in f0cd29a, but
keeps daedalus-v4l2 + daedalus-v4l2-dkms versions matching for
LIBVA_DRIVER_NAME selection sanity).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-20 10:21:13 +02:00
parent 108a3dabe6
commit ff9db4e273
7 changed files with 40 additions and 14 deletions
+3 -3
View File
@@ -14,8 +14,8 @@
# Sibling userspace package: ../daedalus-v4l2/build-deb.sh
set -euo pipefail
UPSTREAM_COMMIT=f55b2cd002afdfd08f3c093627317f92e4929074
PKGVER=0.1.0+r16+gf55b2cd
UPSTREAM_COMMIT=f0cd29a3400cb9af192842c3e2bcc90cc08c68ca
PKGVER=0.1.0+r17+gf0cd29a
PKGREL=2 # pkgrel=2 — corrected upstream commit SHA
MODULE_NAME=daedalus_v4l2
@@ -153,7 +153,7 @@ Section: kernel
Priority: optional
Architecture: all
Depends: dkms (>= 2.1.0.0)
Recommends: daedalus-v4l2, linux-headers-generic | linux-headers
Recommends: daedalus-v4l2, linux-headers-rpi-2712 | linux-headers-rpi | linux-headers-generic | linux-headers
Maintainer: Markus Fritsche <mfritsche@reauktion.de>
Homepage: https://git.reauktion.de/reauktion/daedalus-v4l2
Description: V4L2 stateless decoder shim kernel module (DKMS) — Pi 5 / CM5
+15
View File
@@ -1,3 +1,18 @@
daedalus-v4l2-dkms (0.1.0+r17+gf0cd29a-1) bookworm trixie; urgency=medium
* Bump to f0cd29a — Linux 6.18 compatibility fix. v4l2_fh_add /
v4l2_fh_del gained a `struct file *filp` second argument at
v6.18; module source now uses LINUX_VERSION_CODE conditional so
it builds against 6.12 (Pi 5 stock RPi-2712 kernel) AND 6.18+
(RPi-2712 / arm64). Verified DKMS rebuild on higgs
(6.18.29+rpt-rpi-2712) succeeds + /dev/daedalus-v4l2 appears.
* Recommends widened so apt pulls the right kernel-headers
metapackage on RPi OS: linux-headers-rpi-2712 first, then
linux-headers-rpi, then linux-headers-generic, then
linux-headers.
-- Markus Fritsche <mfritsche@reauktion.de> Tue, 20 May 2026 10:30:00 +0000
daedalus-v4l2-dkms (0.1.0+r16+gf55b2cd-1) bookworm trixie; urgency=medium
* Initial Debian DKMS packaging for the daedalus_v4l2 kernel module.
+1 -1
View File
@@ -10,7 +10,7 @@ Package: daedalus-v4l2-dkms
Architecture: all
Depends: ${misc:Depends}, dkms (>= 2.1.0.0)
Recommends: daedalus-v4l2,
linux-headers-generic | linux-headers
linux-headers-rpi-2712 | linux-headers-rpi | linux-headers-generic | linux-headers
Description: V4L2 stateless decoder shim kernel module (DKMS) — Pi 5 / CM5
Out-of-tree V4L2 m2m kernel module for the daedalus-v4l2 stack on
Raspberry Pi 5 / CM5. Registers /dev/videoNN (V4L2 stateless m2m
+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. f55b2cd = "Phase 8.13: byte-exact
# Same pin as the Arch PKGBUILD. f0cd29a = "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=f55b2cd002afdfd08f3c093627317f92e4929074
PKGVER=0.1.0+r16+gf55b2cd
UPSTREAM_COMMIT=f0cd29a3400cb9af192842c3e2bcc90cc08c68ca
PKGVER=0.1.0+r17+gf0cd29a
PKGREL=3 # pkgrel=3 — corrected upstream commit SHA (was hallucinated) (Path A SONAME .so.62)
HERE=$(dirname "$(readlink -f "$0")")
+11
View File
@@ -1,3 +1,14 @@
daedalus-v4l2 (0.1.0+r17+gf0cd29a-1) bookworm trixie; urgency=medium
* Bump to f0cd29a alongside daedalus-v4l2-dkms. No userspace
change — the daemon binary in this release is bit-identical to
the f55b2cd one (the f0cd29a commit only touches kernel/). Bump
keeps the userspace + DKMS pkgver lockstep so depmod /
LIBVA_DRIVER_NAME selection stays correct on hosts that
upgrade.
-- Markus Fritsche <mfritsche@reauktion.de> Tue, 20 May 2026 10:30:00 +0000
daedalus-v4l2 (0.1.0+r16+gf55b2cd-1) bookworm trixie; urgency=medium
* Initial Debian packaging for the daedalus-v4l2 userspace daemon.