intel-ipu6-dkms FTBS with linux 6.5 on jammy

Bug #2041671 reported by Andrea Righi
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ipu6-drivers (Ubuntu)
Confirmed
Undecided
Unassigned
Jammy
Confirmed
Undecided
Unassigned

Bug Description

[Impact]

/var/lib/dkms/ipu6-drivers/0~git202211220708.278b7e3d-0ubuntu0.22.04.1/build/drivers/media/pci/intel/ipu6/../ipu-isys-bridge.c:280:17: error: implicit declaration of function ‘software_node_unregister_nodes’; did you mean ‘software_node_unregister’? [-Werror=implicit-function-declaration]
  280 | software_node_unregister_nodes(sensor->swnodes);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      | software_node_unregister

[Test case]

 $ sudo apt install intel-ipu6-dkms

[Fix]

Backport the changes from mantic to properly support the new 6.5 kernel ABI.

[Regression potential]

We may experience regressions in systems with IPU6 camera devices (Intel Tiger Lake and Alder Lake platforms) that are using this driver, especially with the newer 6.5 kernels.

ProblemType: Bug
DistroRelease: Ubuntu 22.04
Package: intel-ipu6-dkms 0~git202211220708.278b7e3d-0ubuntu0.22.04.1
ProcVersionSignature: User Name 6.5.0-9.9~22.04.2-generic 6.5.3
Uname: Linux 6.5.0-9-generic x86_64
ApportVersion: 2.20.11-0ubuntu82.5
Architecture: amd64
CasperMD5CheckResult: unknown
CloudArchitecture: x86_64
CloudID: nocloud
CloudName: unknown
CloudPlatform: nocloud
CloudSubPlatform: config-disk (/dev/vdb)
Date: Fri Oct 27 14:36:30 2023
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=C.UTF-8
 SHELL=/bin/bash
SourcePackage: ipu6-drivers
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Andrea Righi (arighi) wrote :
Revision history for this message
Andrea Righi (arighi) wrote :

After looking at the code it seems much safer to backport the entire package from Mantic and rebuild it in Jammy. The changes required to support 6.5 are already implemented in the module in Mantic, but cherry-picking them individually would bring a chain of dependent changes that would make the process very bug prone.

Considering that the new driver does not break user-space (it is fully backward compatible) we can simply backport the whole driver from Mantic.

Revision history for this message
Andrea Righi (arighi) wrote :

debdiff (on top of the package from mantic) that allows to recompile and use ipu6 driver in jammy with the 6.5 kernel (requires a backport of the package from mantic).

Revision history for this message
Andrea Righi (arighi) wrote :
Download full text (5.2 KiB)

== Test build with the new 6.5 kernel ==

$ sudo dpkg -i intel-ipu6-dkms_0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1_amd64.deb
Selecting previously unselected package intel-ipu6-dkms.
(Reading database ... 318473 files and directories currently installed.)
Preparing to unpack intel-ipu6-dkms_0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1_amd64.deb ...
Unpacking intel-ipu6-dkms (0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1) ...
Setting up intel-ipu6-dkms (0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1) ...
Loading new ipu6-drivers-0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1 DKMS files...
Building for 6.5.0-14-generic
Building initial module for 6.5.0-14-generic
EFI variables are not supported on this system
/sys/firmware/efi/efivars not found, aborting.
Done.

intel-ipu6.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

intel-ipu6-isys.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

intel-ipu6-psys.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

hm11b1.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

ov01a1s.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

ov01a10.ko:
Running module version sanity check.
 - Original module
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

ov02c10.ko:
Running module version sanity check.
 - Original module
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

ov2740.ko:
Running module version sanity check.
 - Original module
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

hm2170.ko:
Running module version sanity check.
 - Original module
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

hi556.ko:
Running module version sanity check.
 - Original module
 - Installation
   - Installing to /lib/modules/6.5.0-14-generic/updates/dkms/

== Test build with the GA kernel 5.15 ==

$ sudo dpkg -i intel-ipu6-dkms_0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1_amd64.deb
Selecting previously unselected package intel-ipu6-dkms.
(Reading database ... 300928 files and directories currently installed.)
Preparing to unpack intel-ipu6-dkms_0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1_amd64.deb ...
Unpacking intel-ipu6-dkms (0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1) ...
Setting up intel-ipu6-dkms (0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1) ...
Loading new ipu6-drivers-0~git202302081010.7fdfb5eb-0ubuntu0.22.04.1 DKMS files...
Building for 5.15.0-91-generic
Building initial module for 5.15.0-91-generic
EFI variables are not supp...

Read more...

tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in ipu6-drivers (Ubuntu Jammy):
status: New → Confirmed
Changed in ipu6-drivers (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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