digimend-dkms fails to build when CONFIG_USB is not enabled
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
digimend-dkms (Ubuntu) |
New
|
Undecided
|
Unassigned | ||
Jammy |
New
|
Undecided
|
Unassigned |
Bug Description
SRU justification:
[Impact]
This is encountered on linux kernel derivatives with fewer configuration options enabled.
First time saw on jammy:linux-
During build, it fails with the following error:
DKMS make.log for digimend-10 for kernel 5.15.0-1029-kvm (x86_64)
Tue Mar 14 09:00:31 UTC 2023
make -C /lib/modules/
make[1]: Entering directory '/usr/src/
CC [M] /var/lib/
CC [M] /var/lib/
CC [M] /var/lib/
CC [M] /var/lib/
/var/lib/
/var/lib/
1147 | if (bNumInterfaces != 3) {
| ^
/var/lib/
1165 | case VID_PID(
| ^~~~
LD [M] /var/lib/
CC [M] /var/lib/
CC [M] /var/lib/
MODPOST /var/lib/
ERROR: modpost: "usb_string" [/var/lib/
ERROR: modpost: "usb_control_msg" [/var/lib/
ERROR: modpost: "usb_hid_driver" [/var/lib/
make[2]: *** [scripts/
make[2]: *** Deleting file '/var/lib/
make[1]: *** [Makefile:1821: modules] Error 2
make[1]: Leaving directory '/usr/src/
make: *** [Makefile:25: modules] Error 2
because CONFIG_USB=n.
[Fix]
Add a rule to build digimend-dkms when CONFIG_USB=y/m
[Test Plan]
Install a new version of jammy:linux-kvm (1029 for example).
apt install digimend-dkms will fail as described above.
After the fix, it will not built at all.
Once the package is in proposed, a new adt is triggered against proposed for jammy:linux-kvm.
[Where problems could occur]
Low possibility of new issues.
[Note]
This fix is not scalable in the sense that if configuration name changes, the module has to be changed as well.
tags: | added: sru-20230227 |
Attached the debdiff. Not sure about the version, I am happy to adjust it accordingly.
Test results: dkms_10- 4ubuntu1_ all.deb
dpkg -i digimend-
Building initial module for 5.15.0-1029-kvm dkms/digimend/ 10/5.15. 0-1029- kvm/x86_ 64/dkms. conf for module digimend includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch.
Error! The /var/lib/
This indicates that it should not be built.
Skipped.