v4l2loopback 10.0-1ubuntu1 ADT test failure with linux 5.0.0-14-generic

Bug #1828615 reported by Connor Kuehl on 2019-05-10
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
v4l2loopback (Ubuntu)
Undecided
Connor Kuehl

Bug Description

[ Impact ]

The DKMS package fails to install on kernels based on 5.0; specifically noticed in the Bionic HWE Edge kernel.

[ Test Case ]

Install the v4l2loopback-dkms package with a 5.0 kernel. The package should install without any errors.

[ The Problem ]

"do_gettimeofday" was deprecated and removed in the 5.0 kernels, so the package will not compile since the function it requires does not exist.

[ Proposed Fix ]

Port the following patch from the package developers which replaces calls to the deprecated API with appropriate wrapper functions: https://github.com/umlaeute/v4l2loopback/commit/afe0b233070d7ca5d6df83c5f2723d276dcd287d.patch

[ Testing ]

I tested this install process (using the .debdiff in comment #1) for both 4.15.0-49-generic and 5.0.0-14-generic to test for regressions since the changes introduced by this patch are not conditionally compiled.

- Create a Bionic 18.04 VM
- Install the Bionic Linux HWE Edge kernel from -proposed or install the built .debs located here: https://launchpad.net/~canonical-kernel-team/+archive/ubuntu/ppa/+packages?field.name_filter=linux-hwe-edge&field.status_filter=published&field.series_filter=bionic
- Try installing v4l2loopback-dkms with apt (or you can pull the sources with "pull-lp-source v4l2loopback bionic" and build with "debuild -b -uc -us"
- Confirm that installation fails for the 5.0 kernel (it will succeed for 4.15)
- Pull the sources with "pull-lp-source v4l2loopback bionic"
- Apply the debdiff "debdiff-apply < path-to-diff-in-this-comment.debdiff"
- Build the package "debuild -b -uc -us"
- Install the .deb produced from the previous step "sudo dpkg --install path-to-deb.deb"
- Verify the installation completed successfully. You can also verify the output of "sudo dkms status" is correct.

[ Regression Potential ]

I think regression potential is low if the proposed fix is accepted. The function calls that supplant the deprecated ones have been there since before kernel 4.15 (of which Bionic is based upon).

    amd64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-bionic/bionic/amd64/v/v4l2loopback/20190429_215733_875ac@/log.gz
    arm64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-bionic/bionic/arm64/v/v4l2loopback/20190429_220415_875ac@/log.gz
    i386: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-bionic/bionic/i386/v/v4l2loopback/20190429_215750_875ac@/log.gz
    ppc64el: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-bionic/bionic/ppc64el/v/v4l2loopback/20190429_215314_875ac@/log.gz
    s390x: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-bionic/bionic/s390x/v/v4l2loopback/20190429_214920_875ac@/log.gz

Connor Kuehl (connork) wrote :

.debdiff attached to this comment.

To fix this, I've backported this patch: https://github.com/umlaeute/v4l2loopback/commit/afe0b233070d7ca5d6df83c5f2723d276dcd287d.patch

No context adjustments were required.

[ Testing ]

I tested this install process for both 4.15.0-49-generic and 5.0.0-14-generic to test for regressions since the changes introduced by this patch are not conditionally compiled.

- Create a Bionic 18.04 VM
- Install the Bionic Linux HWE Edge kernel from -proposed or install the built .debs located here: https://launchpad.net/~canonical-kernel-team/+archive/ubuntu/ppa/+packages?field.name_filter=linux-hwe-edge&field.status_filter=published&field.series_filter=bionic
- Try installing v4l2loopback-dkms with apt (or you can pull the sources with "pull-lp-source v4l2loopback bionic" and build with "debuild -b -uc -us"
- Confirm that installation fails for the 5.0 kernel (it will succeed for 4.15)
- Pull the sources with "pull-lp-source v4l2loopback bionic"
- Apply the debdiff "debdiff-apply < path-to-diff-in-this-comment.debdiff"
- Build the package "debuild -b -uc -us"
- Install the .deb produced from the previous step "sudo dpkg --install path-to-deb.deb"
- Verify the installation completed successfully. You can also verify the output of "sudo dkms status" is correct.

Changed in v4l2loopback (Ubuntu):
status: New → In Progress

The attachment "v4l2loopback_0.10.0-1ubuntu1.1.debdiff" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

tags: added: patch
Connor Kuehl (connork) on 2019-05-10
description: updated
description: updated
Simon Quigley (tsimonq2) wrote :

Could you also please file a bug in Debian, so we can pull the change down from there?

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers