Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rtl8821ce-dkms doesn't build on kernel 5.18.10 #166

Open
dominix opened this issue Jul 26, 2022 · 0 comments
Open

rtl8821ce-dkms doesn't build on kernel 5.18.10 #166

dominix opened this issue Jul 26, 2022 · 0 comments
Labels
DKMS Issues with DKMS module compatibility.

Comments

@dominix
Copy link

dominix commented Jul 26, 2022

Distribution (run cat /etc/os-release):

NAME="Pop!_OS"
VERSION="22.04 LTS"
ID=pop
ID_LIKE="ubuntu debian"
PRETTY_NAME="Pop!_OS 22.04 LTS"
VERSION_ID="22.04"
HOME_URL="https://pop.system76.com"
SUPPORT_URL="https://support.system76.com"
BUG_REPORT_URL="https://github.com/pop-os/pop/issues"
PRIVACY_POLICY_URL="https://system76.com/privacy"
VERSION_CODENAME=jammy
UBUNTU_CODENAME=jammy
LOGO=distributor-logo-pop-os

Related Application and/or Package Version (run apt policy $PACKAGE NAME):

LANG=C sudo apt policy rtl8821ce-dkms
rtl8821ce-dkms:
Installed: 5.5.2.1-0ubuntu10
Candidate: 5.5.2.1-0ubuntu10
Version table:
*** 5.5.2.1-0ubuntu10 500
500 http://apt.pop-os.org/ubuntu jammy/universe amd64 Packages
500 http://apt.pop-os.org/ubuntu jammy/universe i386 Packages
100 /var/lib/dpkg/status

Issue/Bug Description:
kernel drivers rtl8821ce doesn't compile for kernel 5.18.10-76051810-generic

Steps to reproduce (if you know):

sudo apt install rtl8821ce-dkms
[sudo] password for dominix:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
rtl8821ce-dkms
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/2295 kB of archives.
After this operation, 25.2 MB of additional disk space will be used.
Selecting previously unselected package rtl8821ce-dkms.
(Reading database ... 257366 files and directories currently installed.)
Preparing to unpack .../rtl8821ce-dkms_5.5.2.1-0ubuntu10_all.deb ...
Unpacking rtl8821ce-dkms (5.5.2.1-0ubuntu10) ...
Setting up rtl8821ce-dkms (5.5.2.1-0ubuntu10) ...
Loading new rtl8821ce-5.5.2.1 DKMS files...
Building for 5.18.10-76051810-generic
Building initial module for 5.18.10-76051810-generic
ERROR (dkms apport): kernel package linux-headers-5.18.10-76051810-generic is not supported
Error! Bad return status for module build on kernel: 5.18.10-76051810-generic (x86_64)
Consult /var/lib/dkms/rtl8821ce/5.5.2.1/build/make.log for more information.
dpkg: error processing package rtl8821ce-dkms (--configure):
installed rtl8821ce-dkms package post-installation script subprocess returned error exit status 10
Errors were encountered while processing:
rtl8821ce-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)

Expected behavior:
should produce a kernel module that can enable wifi on laptop using kernel 5.18.10, but fail to compile.

Other Notes:
for personnal use, I succeeded in cloning github source for realtek 8821ce drivers and installing manually. but I sippose I should reproduce this step at each kernel update.

informations in the compile log: cat /var/lib/dkms/rtl8821ce/5.5.2.1/build/make.log

DKMS make.log for rtl8821ce-5.5.2.1 for kernel 5.18.10-76051810-generic (x86_64)
Tue Jul 26 14:58:49 CEST 2022
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/5.18.10-76051810-generic/build M=/var/lib/dkms/rtl8821ce/5.5.2.1/build modules
make[1]: Entering directory '/usr/src/linux-headers-5.18.10-76051810-generic'
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_cmd.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_security.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_debug.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_io.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_ioctl_query.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_ioctl_set.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_ieee80211.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme_ext.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mi.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_wlan_util.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_vht.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_pwrctrl.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rf.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_chplan.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_recv.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_sta_mgt.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme.c: In function 'rtw_drv_scan_by_self':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme.c:3161:17: warning: this 'else' clause does not guard... [-Wmisleading-indentation]
3161 | else
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme.c:3164:25: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'else'
3164 | goto exit;
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rf.c: In function 'dump_txpwr_lmt':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rf.c:765:9: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
765 | if (IS_HARDWARE_TYPE_JAGUAR_AND_JAGUAR2(adapter))
| ^~
In file included from /var/lib/dkms/rtl8821ce/5.5.2.1/build/include/drv_types.h:60,
from /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rf.c:17:
/var/lib/dkms/rtl8821ce/5.5.2.1/build/include/rtw_debug.h:220:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
220 | do {
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rf.c:767:17: note: in expansion of macro 'RTW_PRINT_SEL'
767 | RTW_PRINT_SEL(sel, "txpwr_lmt_5g_20_40_ref:0x%02x\n", rfctl->txpwr_lmt_5g_20_40_ref);
| ^~~~~~~~~~~~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_ap.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/mesh/rtw_mesh.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme_ext.c: In function 'rtw_txpwr_init_regd':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme_ext.c:259:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
259 | if (rfctl->regd_name)
| ^
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme_ext.c:261:9: note: here
261 | default:
| ^~~~~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme_ext.c: In function 'mgt_dispatcher':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme_ext.c:1329:38: warning: this statement may fall through [-Wimplicit-fallthrough=]
1329 | ptable->func = &OnAuthClient;
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_mlme_ext.c:1331:9: note: here
1331 | case WIFI_ASSOCREQ:
| ^~~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/mesh/rtw_mesh_pathtbl.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/mesh/rtw_mesh_hwmp.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_xmit.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_p2p.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rson.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_tdls.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_br_ext.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_iol.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_sreset.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_btcoex_wifionly.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_btcoex.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_beamforming.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_odm.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rm.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/rtw_rm_fsm.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/efuse/rtw_efuse.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/osdep_service.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/os_intfs.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/pci_intf.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/pci_ops_linux.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_linux.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/xmit_linux.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/mlme_linux.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/recv_linux.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_cfg80211.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/osdep_service.c: In function 'rtw_change_ifname':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/osdep_service.c:2462:28: warning: passing argument 1 of '_rtw_memcpy' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
2462 | _rtw_memcpy(pnetdev->dev_addr, adapter_mac_addr(padapter), ETH_ALEN);
| ~~~~~~~^~~~~~~~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/osdep_service.c:925:24: note: expected 'void *' but argument is of type 'const unsigned char *'
925 | void _rtw_memcpy(void *dst, const void src, u32 sz)
| ~~~~~~^~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/rtw_cfgvendor.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/efuse/rtw_efuse.c: In function 'rtw_efuse_analyze':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/efuse/rtw_efuse.c:781:17: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
781 | if (i % 16 == 0)
| ^~
In file included from /var/lib/dkms/rtl8821ce/5.5.2.1/build/include/drv_types.h:60,
from /var/lib/dkms/rtl8821ce/5.5.2.1/build/core/efuse/rtw_efuse.c:17:
/var/lib/dkms/rtl8821ce/5.5.2.1/build/include/rtw_debug.h:231:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
231 | do {
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/core/efuse/rtw_efuse.c:783:25: note: in expansion of macro '_RTW_PRINT_SEL'
783 | _RTW_PRINT_SEL(RTW_DBGDUMP, "%02X%s"
| ^~~~~~~~~~~~~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/wifi_regd.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/rtw_android.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/rtw_proc.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/rtw_rhashtable.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/os_intfs.c: In function 'rtw_net_set_mac_address':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/os_intfs.c:1239:28: warning: passing argument 1 of '_rtw_memcpy' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
1239 | _rtw_memcpy(pnetdev->dev_addr, sa->sa_data, ETH_ALEN); /
set mac addr to net_device */
| ~~~~~~~^~~~~~~~~~
In file included from /var/lib/dkms/rtl8821ce/5.5.2.1/build/include/drv_types.h:27,
from /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/os_intfs.c:17:
/var/lib/dkms/rtl8821ce/5.5.2.1/build/include/osdep_service.h:296:35: note: expected 'void *' but argument is of type 'const unsigned char *'
296 | extern void _rtw_memcpy(void *dec, const void *sour, u32 sz);
| ~~~~~~^~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/os_intfs.c: In function 'rtw_os_ndev_register':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/os_intfs.c:1687:25: warning: passing argument 1 of '_rtw_memcpy' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
1687 | _rtw_memcpy(ndev->dev_addr, adapter_mac_addr(adapter), ETH_ALEN);
| ~~~~^~~~~~~~~~
In file included from /var/lib/dkms/rtl8821ce/5.5.2.1/build/include/drv_types.h:27,
from /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/os_intfs.c:17:
/var/lib/dkms/rtl8821ce/5.5.2.1/build/include/osdep_service.h:296:35: note: expected 'void *' but argument is of type 'const unsigned char *'
296 | extern void _rtw_memcpy(void *dec, const void sour, u32 sz);
| ~~~~~~^~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_intf.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/pci_intf.c: In function 'pci_dvobj_init':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/pci_intf.c:1209:22: error: implicit declaration of function 'pci_set_dma_mask' [-Werror=implicit-function-declaration]
1209 | if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) {
| ^~~~~~~~~~~~~~~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_com.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_com_phycfg.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/pci_intf.c:1210:31: error: implicit declaration of function 'pci_set_consistent_dma_mask' [-Werror=implicit-function-declaration]
1210 | err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_phy.o
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_linux.c: In function 'rtw_mp_efuse_set':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_linux.c:9789:46: warning: passing argument 1 of '_rtw_memcpy' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
9789 | _rtw_memcpy(padapter->pnetdev->dev_addr, get_hal_mac_addr(padapter), ETH_ALEN); /
set mac addr to net_device */
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~
In file included from /var/lib/dkms/rtl8821ce/5.5.2.1/build/include/drv_types.h:27,
from /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_linux.c:17:
/var/lib/dkms/rtl8821ce/5.5.2.1/build/include/osdep_service.h:296:35: note: expected 'void *' but argument is of type 'const unsigned char *'
296 | extern void _rtw_memcpy(void *dec, const void *sour, u32 sz);
| ~~~~~~^~~
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_dm.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_dm_acs.o
CC [M] /var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_btcoex_wifionly.o
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:288: /var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/pci_intf.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_cfg80211.c: In function 'cfg80211_rtw_change_iface':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_cfg80211.c:2362:24: warning: this statement may fall through [-Wimplicit-fallthrough=]
2362 | is_p2p = _TRUE;
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_cfg80211.c:2364:9: note: here
2364 | case NL80211_IFTYPE_STATION:
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_cfg80211.c:2386:24: warning: this statement may fall through [-Wimplicit-fallthrough=]
2386 | is_p2p = _TRUE;
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_cfg80211.c:2388:9: note: here
2388 | case NL80211_IFTYPE_AP:
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_write_reg':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:46:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
46 | char input[wrqu->length + 1];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_read_reg':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:132:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
132 | char input[wrqu->length + 1];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_write_rf':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:266:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
266 | char input[wrqu->length];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_read_rf':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:308:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
308 | char input[wrqu->length];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_rate':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:413:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
413 | u8 input[wrqu->length + 1];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_channel':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:463:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
463 | u8 input[wrqu->length + 1];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_ch_offset':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:490:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
490 | u8 input[wrqu->length + 1];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_bandwidth':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:517:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
517 | u8 input[wrqu->length];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_txpower_index':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_intf.c: In function 'c2h_handler':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:550:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
550 | char input[wrqu->length + 1];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_intf.c:1072:24: warning: this statement may fall through [-Wimplicit-fallthrough=]
1072 | sub_id = payload[0];
| ~~~~~~~^~~~~~~~~~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/hal/hal_intf.c:1075:9: note: here
1075 | default:
| ^~~~~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_txpower':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:596:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
596 | u8 input[wrqu->length];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_ant_tx':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:634:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
634 | u8 input[wrqu->length + 1];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_ant_rx':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:682:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
682 | u8 input[wrqu->length + 1];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_disable_bt_coexist':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:862:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
862 | u8 input[wrqu->data.length + 1];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_arx':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:900:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
900 | u8 input[wrqu->length];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_pwrtrk':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1085:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1085 | u8 input[wrqu->length];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_psd':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1123:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1123 | u8 input[wrqu->length + 1];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_dump':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1244:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1244 | u8 input[wrqu->length];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_phypara':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1268:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1268 | char input[wrqu->length];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_SetRFPath':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1294:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1294 | char input[wrqu->length];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_switch_rf_path':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1345:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1345 | char input[wrqu->length];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_QueryDrv':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1394:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1394 | char input[wrqu->data.length];
| ^~~~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_PwrCtlDM':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:1423:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
1423 | u8 input[wrqu->length];
| ^~
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c: In function 'rtw_mp_hwtx':
/var/lib/dkms/rtl8821ce/5.5.2.1/build/os_dep/linux/ioctl_mp.c:2073:9: warning: ISO C90 forbids variable length array 'input' [-Wvla]
2073 | u8 input[wrqu->data.length];
| ^~
make[1]: *** [Makefile:1844: /var/lib/dkms/rtl8821ce/5.5.2.1/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.18.10-76051810-generic'
make: *** [Makefile:2262: modules] Error 2

@jacobgkau jacobgkau transferred this issue from pop-os/pop Jul 27, 2022
@jacobgkau jacobgkau added the DKMS Issues with DKMS module compatibility. label Jul 27, 2022
13r0ck pushed a commit that referenced this issue Dec 14, 2022
[ Upstream commit 2f37249 ]

The IPA BCM resource ("IP0") on sc7180 was moved to the clk-rpmh driver
in commit bcd63d2 ("clk: qcom: rpmh: Add IPA clock for SC7180") and
modeled as a clk, but this interconnect driver still had it modeled as
an interconnect. This was mostly OK because nobody used the interconnect
definition, until the interconnect framework started dropping bandwidth
requests on interconnects that aren't used via the sync_state callback
in commit 7d3b0b0 ("interconnect: qcom: Use icc_sync_state"). Once
that patch was applied the IP0 resource was going to be controlled from
two places, the clk framework and the interconnect framework.

Even then, things were probably going to be OK, because commit
b95b668 ("interconnect: qcom: icc-rpmh: Add BCMs to commit list in
pre_aggregate") was needed to actually drop bandwidth requests on unused
interconnects, of which the IPA was one of the interconnect that wasn't
getting dropped to zero. Combining the three commits together leads to
bad behavior where the interconnect framework is disabling the IP0
resource because it has no users while the clk framework thinks the IP0
resource is on because the only user, the IPA driver, has turned it on
via clk_prepare_enable(). Depending on when sync_state is called, we can
get into a situation like below:

  IPA driver probes
  IPA driver gets notified modem started
   runtime PM get()
    IPA clk enabled -> IP0 resource is ON
  sync_state runs
   interconnect zeroes out the IP0 resource -> IP0 resource is off
  IPA driver tries to access a register and blows up

The crash is an unclocked access that manifest as an SError.

 SError Interrupt on CPU0, code 0xbe000011 -- SError
 CPU: 0 PID: 3595 Comm: mmdata_mgr Not tainted 5.17.1+ #166
 Hardware name: Google Lazor (rev1 - 2) with LTE (DT)
 pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
 pc : mutex_lock+0x4c/0x80
 lr : mutex_lock+0x30/0x80
 sp : ffffffc00da9b9c0
 x29: ffffffc00da9b9c0 x28: 0000000000000000 x27: 0000000000000000
 x26: ffffffc00da9bc90 x25: ffffff80c2024010 x24: ffffff80c2024000
 x23: ffffff8083100000 x22: ffffff80831000d0 x21: ffffff80831000a8
 x20: ffffff80831000a8 x19: ffffff8083100070 x18: 00000000ffff0a00
 x17: 000000002f7254f1 x16: 0000000000000100 x15: 0000000000000000
 x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
 x11: 000000000001f0b8 x10: ffffffc00931f0b8 x9 : 0000000000000000
 x8 : 0000000000000000 x7 : fefefefefeff2f60 x6 : 0000808080808080
 x5 : 0000000000000000 x4 : 8080808080800000 x3 : ffffff80d2d4ee28
 x2 : ffffff808c1d6e40 x1 : 0000000000000000 x0 : ffffff8083100070
 Kernel panic - not syncing: Asynchronous SError Interrupt
 CPU: 0 PID: 3595 Comm: mmdata_mgr Not tainted 5.17.1+ #166
 Hardware name: Google Lazor (rev1 - 2) with LTE (DT)
 Call trace:
  dump_backtrace+0xf4/0x114
  show_stack+0x24/0x30
  dump_stack_lvl+0x64/0x7c
  dump_stack+0x18/0x38
  panic+0x150/0x38c
  nmi_panic+0x88/0xa0
  arm64_serror_panic+0x74/0x80
  do_serror+0x0/0x80
  do_serror+0x58/0x80
  el1h_64_error_handler+0x34/0x4c
  el1h_64_error+0x78/0x7c
  mutex_lock+0x4c/0x80
  __gsi_channel_start+0x50/0x17c
  gsi_channel_start+0x54/0x90
  ipa_endpoint_enable_one+0x34/0xc0
  ipa_open+0x4c/0x120

Remove all IP0 resource management from the interconnect driver so that
clk-rpmh is the sole owner. This fixes the issue by preventing the
interconnect driver from overwriting the IP0 resource data that the
clk-rpmh driver wrote.

Cc: Alex Elder <[email protected]>
Cc: Bjorn Andersson <[email protected]>
Cc: Taniya Das <[email protected]>
Cc: Mike Tipton <[email protected]>
Fixes: b95b668 ("interconnect: qcom: icc-rpmh: Add BCMs to commit list in pre_aggregate")
Fixes: bcd63d2 ("clk: qcom: rpmh: Add IPA clock for SC7180")
Fixes: 7d3b0b0 ("interconnect: qcom: Use icc_sync_state")
Signed-off-by: Stephen Boyd <[email protected]>
Tested-by: Alex Elder <[email protected]>
Reviewed-by: Alex Elder <[email protected]>
Reviewed-by: Bjorn Andersson <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Georgi Djakov <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
13r0ck pushed a commit that referenced this issue Dec 14, 2022
[ Upstream commit cee409b ]

gpio_keys module can either accept gpios or interrupts. The module
initializes delayed work in case of gpios only and is only used if
debounce timer is not used, so make sure cancel_delayed_work_sync()
is called only when its gpio-backed and debounce_use_hrtimer is false.

This fixes the issue seen below when the gpio_keys module is unloaded and
an interrupt pin is used instead of GPIO:

[  360.297569] ------------[ cut here ]------------
[  360.302303] WARNING: CPU: 0 PID: 237 at kernel/workqueue.c:3066 __flush_work+0x414/0x470
[  360.310531] Modules linked in: gpio_keys(-)
[  360.314797] CPU: 0 PID: 237 Comm: rmmod Not tainted 5.18.0-rc5-arm64-renesas-00116-g73636105874d-dirty #166
[  360.324662] Hardware name: Renesas SMARC EVK based on r9a07g054l2 (DT)
[  360.331270] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  360.338318] pc : __flush_work+0x414/0x470
[  360.342385] lr : __cancel_work_timer+0x140/0x1b0
[  360.347065] sp : ffff80000a7fba00
[  360.350423] x29: ffff80000a7fba00 x28: ffff000012b9c5c0 x27: 0000000000000000
[  360.357664] x26: ffff80000a7fbb80 x25: ffff80000954d0a8 x24: 0000000000000001
[  360.364904] x23: ffff800009757000 x22: 0000000000000000 x21: ffff80000919b000
[  360.372143] x20: ffff00000f5974e0 x19: ffff00000f5974e0 x18: ffff8000097fcf48
[  360.379382] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000053f40
[  360.386622] x14: ffff800009850e88 x13: 0000000000000002 x12: 000000000000a60c
[  360.393861] x11: 000000000000a610 x10: 0000000000000000 x9 : 0000000000000008
[  360.401100] x8 : 0101010101010101 x7 : 00000000a473c394 x6 : 0080808080808080
[  360.408339] x5 : 0000000000000001 x4 : 0000000000000000 x3 : ffff80000919b458
[  360.415578] x2 : ffff8000097577f0 x1 : 0000000000000001 x0 : 0000000000000000
[  360.422818] Call trace:
[  360.425299]  __flush_work+0x414/0x470
[  360.429012]  __cancel_work_timer+0x140/0x1b0
[  360.433340]  cancel_delayed_work_sync+0x10/0x18
[  360.437931]  gpio_keys_quiesce_key+0x28/0x58 [gpio_keys]
[  360.443327]  devm_action_release+0x10/0x18
[  360.447481]  release_nodes+0x8c/0x1a0
[  360.451194]  devres_release_all+0x90/0x100
[  360.455346]  device_unbind_cleanup+0x14/0x60
[  360.459677]  device_release_driver_internal+0xe8/0x168
[  360.464883]  driver_detach+0x4c/0x90
[  360.468509]  bus_remove_driver+0x54/0xb0
[  360.472485]  driver_unregister+0x2c/0x58
[  360.476462]  platform_driver_unregister+0x10/0x18
[  360.481230]  gpio_keys_exit+0x14/0x828 [gpio_keys]
[  360.486088]  __arm64_sys_delete_module+0x1e0/0x270
[  360.490945]  invoke_syscall+0x40/0xf8
[  360.494661]  el0_svc_common.constprop.3+0xf0/0x110
[  360.499515]  do_el0_svc+0x20/0x78
[  360.502877]  el0_svc+0x48/0xf8
[  360.505977]  el0t_64_sync_handler+0x88/0xb0
[  360.510216]  el0t_64_sync+0x148/0x14c
[  360.513930] irq event stamp: 4306
[  360.517288] hardirqs last  enabled at (4305): [<ffff8000080b0300>] __cancel_work_timer+0x130/0x1b0
[  360.526359] hardirqs last disabled at (4306): [<ffff800008d194fc>] el1_dbg+0x24/0x88
[  360.534204] softirqs last  enabled at (4278): [<ffff8000080104a0>] _stext+0x4a0/0x5e0
[  360.542133] softirqs last disabled at (4267): [<ffff8000080932ac>] irq_exit_rcu+0x18c/0x1b0
[  360.550591] ---[ end trace 0000000000000000 ]---

Signed-off-by: Lad Prabhakar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Dmitry Torokhov <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
13r0ck pushed a commit that referenced this issue Feb 9, 2023
commit 98d0219 upstream.

If a relocatable kernel is loaded at an address that is not 2MB aligned
and told not to relocate to zero, the kernel can crash due to
mark_rodata_ro() incorrectly changing some read-write data to read-only.

Scenarios where the misalignment can occur are when the kernel is
loaded by kdump or using the RELOCATABLE_TEST config option.

Example crash with the kernel loaded at 5MB:

  Run /sbin/init as init process
  BUG: Unable to handle kernel data access on write at 0xc000000000452000
  Faulting instruction address: 0xc0000000005b6730
  Oops: Kernel access of bad area, sig: 11 [#1]
  LE PAGE_SIZE=64K MMU=Radix SMP NR_CPUS=2048 NUMA pSeries
  CPU: 1 PID: 1 Comm: init Not tainted 6.2.0-rc1-00011-g349188be4841 #166
  Hardware name: IBM pSeries (emulated by qemu) POWER9 (raw) 0x4e1202 0xf000005 of:SLOF,git-5b4c5a hv:linux,kvm pSeries
  NIP:  c0000000005b6730 LR: c000000000ae9ab8 CTR: 0000000000000380
  REGS: c000000004503250 TRAP: 0300   Not tainted  (6.2.0-rc1-00011-g349188be4841)
  MSR:  8000000000009033 <SF,EE,ME,IR,DR,RI,LE>  CR: 44288480  XER: 00000000
  CFAR: c0000000005b66ec DAR: c000000000452000 DSISR: 0a000000 IRQMASK: 0
  ...
  NIP memset+0x68/0x104
  LR  zero_user_segments.constprop.0+0xa8/0xf0
  Call Trace:
    ext4_mpage_readpages+0x7f8/0x830
    ext4_readahead+0x48/0x60
    read_pages+0xb8/0x380
    page_cache_ra_unbounded+0x19c/0x250
    filemap_fault+0x58c/0xae0
    __do_fault+0x60/0x100
    __handle_mm_fault+0x1230/0x1a40
    handle_mm_fault+0x120/0x300
    ___do_page_fault+0x20c/0xa80
    do_page_fault+0x30/0xc0
    data_access_common_virt+0x210/0x220

This happens because mark_rodata_ro() tries to change permissions on the
range _stext..__end_rodata, but _stext sits in the middle of the 2MB
page from 4MB to 6MB:

  radix-mmu: Mapped 0x0000000000000000-0x0000000000200000 with 2.00 MiB pages (exec)
  radix-mmu: Mapped 0x0000000000200000-0x0000000000400000 with 2.00 MiB pages
  radix-mmu: Mapped 0x0000000000400000-0x0000000002400000 with 2.00 MiB pages (exec)

The logic that changes the permissions assumes the linear mapping was
split correctly at boot, so it marks the entire 2MB page read-only. That
leads to the write fault above.

To fix it, the boot time mapping logic needs to consider that if the
kernel is running at a non-zero address then _stext is a boundary where
it must split the mapping.

That leads to the mapping being split correctly, allowing the rodata
permission change to take happen correctly, with no spillover:

  radix-mmu: Mapped 0x0000000000000000-0x0000000000200000 with 2.00 MiB pages (exec)
  radix-mmu: Mapped 0x0000000000200000-0x0000000000400000 with 2.00 MiB pages
  radix-mmu: Mapped 0x0000000000400000-0x0000000000500000 with 64.0 KiB pages
  radix-mmu: Mapped 0x0000000000500000-0x0000000000600000 with 64.0 KiB pages (exec)
  radix-mmu: Mapped 0x0000000000600000-0x0000000002400000 with 2.00 MiB pages (exec)

If the kernel is loaded at a 2MB aligned address, the mapping continues
to use 2MB pages as before:

  radix-mmu: Mapped 0x0000000000000000-0x0000000000200000 with 2.00 MiB pages (exec)
  radix-mmu: Mapped 0x0000000000200000-0x0000000000400000 with 2.00 MiB pages
  radix-mmu: Mapped 0x0000000000400000-0x0000000002c00000 with 2.00 MiB pages (exec)
  radix-mmu: Mapped 0x0000000002c00000-0x0000000100000000 with 2.00 MiB pages

Fixes: c55d7b5 ("powerpc: Remove STRICT_KERNEL_RWX incompatibility with RELOCATABLE")
Signed-off-by: Michael Ellerman <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
mmstick pushed a commit that referenced this issue Jul 6, 2024
[ Upstream commit 8ecf3c1 ]

Recent additions in BPF like cpu v4 instructions, test_bpf module
exhibits the following failures:

  test_bpf: #82 ALU_MOVSX | BPF_B jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #83 ALU_MOVSX | BPF_H jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #84 ALU64_MOVSX | BPF_B jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #85 ALU64_MOVSX | BPF_H jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #86 ALU64_MOVSX | BPF_W jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)

  test_bpf: #165 ALU_SDIV_X: -6 / 2 = -3 jited:1 ret 2147483645 != -3 (0x7ffffffd != 0xfffffffd)FAIL (1 times)
  test_bpf: #166 ALU_SDIV_K: -6 / 2 = -3 jited:1 ret 2147483645 != -3 (0x7ffffffd != 0xfffffffd)FAIL (1 times)

  test_bpf: #169 ALU_SMOD_X: -7 % 2 = -1 jited:1 ret 1 != -1 (0x1 != 0xffffffff)FAIL (1 times)
  test_bpf: #170 ALU_SMOD_K: -7 % 2 = -1 jited:1 ret 1 != -1 (0x1 != 0xffffffff)FAIL (1 times)

  test_bpf: #172 ALU64_SMOD_K: -7 % 2 = -1 jited:1 ret 1 != -1 (0x1 != 0xffffffff)FAIL (1 times)

  test_bpf: #313 BSWAP 16: 0x0123456789abcdef -> 0xefcd
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 301 PASS
  test_bpf: #314 BSWAP 32: 0x0123456789abcdef -> 0xefcdab89
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 555 PASS
  test_bpf: #315 BSWAP 64: 0x0123456789abcdef -> 0x67452301
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 268 PASS
  test_bpf: #316 BSWAP 64: 0x0123456789abcdef >> 32 -> 0xefcdab89
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 269 PASS
  test_bpf: #317 BSWAP 16: 0xfedcba9876543210 -> 0x1032
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 460 PASS
  test_bpf: #318 BSWAP 32: 0xfedcba9876543210 -> 0x10325476
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 320 PASS
  test_bpf: #319 BSWAP 64: 0xfedcba9876543210 -> 0x98badcfe
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 222 PASS
  test_bpf: #320 BSWAP 64: 0xfedcba9876543210 >> 32 -> 0x10325476
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 273 PASS

  test_bpf: torvalds#344 BPF_LDX_MEMSX | BPF_B
  eBPF filter opcode 0091 (@5) unsupported
  jited:0 432 PASS
  test_bpf: torvalds#345 BPF_LDX_MEMSX | BPF_H
  eBPF filter opcode 0089 (@5) unsupported
  jited:0 381 PASS
  test_bpf: torvalds#346 BPF_LDX_MEMSX | BPF_W
  eBPF filter opcode 0081 (@5) unsupported
  jited:0 505 PASS

  test_bpf: torvalds#490 JMP32_JA: Unconditional jump: if (true) return 1
  eBPF filter opcode 0006 (@1) unsupported
  jited:0 261 PASS

  test_bpf: Summary: 1040 PASSED, 10 FAILED, [924/1038 JIT'ed]

Fix them by adding missing processing.

Fixes: daabb2b ("bpf/tests: add tests for cpuv4 instructions")
Signed-off-by: Christophe Leroy <[email protected]>
Signed-off-by: Michael Ellerman <[email protected]>
Link: https://msgid.link/91de862dda99d170697eb79ffb478678af7e0b27.1709652689.git.christophe.leroy@csgroup.eu
Signed-off-by: Sasha Levin <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DKMS Issues with DKMS module compatibility.
Projects
None yet
Development

No branches or pull requests

2 participants