v4l2loopback-dkms 0.12.3-1: v4l2loopback kernel module failed to build

Bug #1883721 reported by Daniel Risacher
74
This bug affects 17 people
Affects Status Importance Assigned to Milestone
v4l2loopback (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

won't compile against -proposed kernel 5.6.0-1012-oem"

make[1]: Entering directory '/usr/src/linux-headers-5.6.0-1012-oem'
  CC [M] /var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.o
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:137:47: warning: ‘struct timeval’ declared inside parameter list will not be visible outside of this definition or declaration
  137 | static inline void v4l2l_get_timestamp(struct timeval *tv) {
      | ^~~~~~~
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c: In function ‘v4l2l_get_timestamp’:
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:147:4: error: dereferencing pointer to incomplete type ‘struct timeval’
  147 | tv->tv_sec = (time_t)ts.tv_sec;
      | ^~
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:147:16: error: ‘time_t’ undeclared (first use in this function); did you mean ‘ktime_t’?
  147 | tv->tv_sec = (time_t)ts.tv_sec;
      | ^~~~~~
      | ktime_t
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:147:16: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:147:23: error: expected ‘;’ before ‘ts’
  147 | tv->tv_sec = (time_t)ts.tv_sec;
      | ^~
      | ;
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c: In function ‘vidioc_qbuf’:
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:1523:24: error: passing argument 1 of ‘v4l2l_get_timestamp’ from incompatible pointer type [-Werror=incompatible-pointer-types]
 1523 | v4l2l_get_timestamp(&b->buffer.timestamp);
      | ^~~~~~~~~~~~~~~~~~~~
      | |
      | struct __kernel_v4l2_timeval *
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:137:56: note: expected ‘struct timeval *’ but argument is of type ‘struct __kernel_v4l2_timeval *’
  137 | static inline void v4l2l_get_timestamp(struct timeval *tv) {
      | ~~~~~~~~~~~~~~~~^~
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c: In function ‘v4l2_loopback_write’:
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:1950:22: error: passing argument 1 of ‘v4l2l_get_timestamp’ from incompatible pointer type [-Werror=incompatible-pointer-types]
 1950 | v4l2l_get_timestamp(&b->timestamp);
      | ^~~~~~~~~~~~~
      | |
      | struct __kernel_v4l2_timeval *
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:137:56: note: expected ‘struct timeval *’ but argument is of type ‘struct __kernel_v4l2_timeval *’
  137 | static inline void v4l2l_get_timestamp(struct timeval *tv) {
      | ~~~~~~~~~~~~~~~~^~
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c: In function ‘init_buffers’:
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:2055:23: error: passing argument 1 of ‘v4l2l_get_timestamp’ from incompatible pointer type [-Werror=incompatible-pointer-types]
 2055 | v4l2l_get_timestamp(&b->timestamp);
      | ^~~~~~~~~~~~~
      | |
      | struct __kernel_v4l2_timeval *
/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:137:56: note: expected ‘struct timeval *’ but argument is of type ‘struct __kernel_v4l2_timeval *’
  137 | static inline void v4l2l_get_timestamp(struct timeval *tv) {
      | ~~~~~~~~~~~~~~~~^~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:276: /var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.o] Error 1
make[1]: *** [Makefile:1707: /var/lib/dkms/v4l2loopback/0.12.3/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.6.0-1012-oem'
make: *** [Makefile:43: v4l2loopback.ko] Error 2

ProblemType: Package
DistroRelease: Ubuntu 20.04
Package: v4l2loopback-dkms 0.12.3-1
ProcVersionSignature: Ubuntu 5.6.0-1011.11-oem 5.6.14
Uname: Linux 5.6.0-1011-oem x86_64
ApportVersion: 2.20.11-0ubuntu27.3
Architecture: amd64
CasperMD5CheckResult: skip
DKMSKernelVersion: 5.6.0-1012-oem
Date: Tue Jun 16 09:38:50 2020
DuplicateSignature: dkms:v4l2loopback-dkms:0.12.3-1:/var/lib/dkms/v4l2loopback/0.12.3/build/v4l2loopback.c:147:4: error: dereferencing pointer to incomplete type ‘struct timeval’
InstallationDate: Installed on 2020-05-24 (23 days ago)
InstallationMedia: Ubuntu 20.04 LTS "Focal Fossa" - Release amd64 (20200423)
PackageArchitecture: all
PackageVersion: 0.12.3-1
Python3Details: /usr/bin/python3.8, Python 3.8.2, python3-minimal, 3.8.2-0ubuntu2
PythonDetails: N/A
RelatedPackageVersions:
 dpkg 1.19.7ubuntu3
 apt 2.0.3
SourcePackage: v4l2loopback
Title: v4l2loopback-dkms 0.12.3-1: v4l2loopback kernel module failed to build
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Daniel Risacher (junk-launchpad-risacher) wrote :
tags: removed: need-duplicate-check
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in v4l2loopback (Ubuntu):
status: New → Confirmed
Revision history for this message
Liz Fong-Jones (lizthegrey) wrote :

This issue with 5.6 kernels is fixed upstream in 0.12.4 (0.12.5 has fixes for 5.7+)

Revision history for this message
Liz Fong-Jones (lizthegrey) wrote :

Backported https://launchpad.net/~lizthegrey/+archive/ubuntu/misc/+build/20333280 -- and it does work with a 5.8 kernel.

Revision history for this message
Liz Fong-Jones (lizthegrey) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.