Bug 1661944

Summary: Broadcom wifi compile fails due to "__init_work" declaration being undefined
Product: [Fedora] Fedora Reporter: Paul Lambert <eb30750>
Component: NetworkManagerAssignee: Lubomir Rintel <lkundrak>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: bgalvani, dcbw, fgiudici, john.j5live, lkundrak, mclasen, rhughes, rstrode, sandmann, thaller
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-12-29 10:53:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Paul Lambert 2018-12-24 17:30:47 UTC
Description of problem: Broadcom wifi (wl) module does not compile with latest rawhide


Version-Release number of selected component (if applicable):
4.20.0-0.rc7.git1.1.fc30.x86_64

How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:
  Building modules, stage 2.
CFG80211 API is prefered for this kernel version
Using CFG80211 API
  MODPOST 1 modules
FATAL: modpost: GPL-incompatible module wl.ko uses GPL-only symbol '__init_work'
make[2]: *** [scripts/Makefile.modpost:92: __modpost] Error 1
make[1]: *** [Makefile:1573: modules] Error 2
make[1]: Leaving directory '/usr/src/kernels/4.20.0-0.rc7.git1.1.fc30.x86_64'
make: *** [Makefile:159: all] Error 2

Expected results:
Compiling the Broadcom wl module has successfully compiled for several years.

Additional info:
This bug was reported several years ago against a linux distro.  The solution was not to use the debug version.  Don't know  if this version of rawhide includes debug.  

The last rawhide version to compile is the one I am currently booting from 4.20.0-0.rc6.git1.1.fc30.x86_64.
Regardless of whether dbug or not, the underlying device code should be the same.

Comment 1 Paul Lambert 2018-12-29 03:08:06 UTC
wl kernel module now compiles and works as expected.  Error for symbol __init_work is no longer encountered during module compile.

Wifi works with these errors from dmesg
[root@BRSINC-01Fed wl]# dmesg | grep wl
[  118.274531] wl: loading out-of-tree module taints kernel.
[  118.274536] wl: module license 'MIXED/Proprietary' taints kernel.
[  118.280051] wl: module verification failed: signature and/or required key missing - tainting kernel
[  118.340823] wl 0000:02:00.0 wlo1: renamed from eth0
[  118.362754] IPv6: ADDRCONF(NETDEV_UP): wlo1: link is not ready
[  118.504609] IPv6: ADDRCONF(NETDEV_UP): wlo1: link is not ready
[  119.339546] IPv6: ADDRCONF(NETDEV_UP): wlo1: link is not ready
[  120.290438] IPv6: ADDRCONF(NETDEV_CHANGE): wlo1: link becomes ready

If these wl related errors in dmesg are wont fix then close this bug report.

Comment 2 Thomas Haller 2018-12-29 10:53:05 UTC
The bug is reported against "NetworkManager" component which seems very unrelated to this issue.

If you build an out-of-tree module it's usually your responsibility to get that right. In particular, because kernel's does not have a stable API for modules. Also, it seems there is a licensing issue, and the failure may or may not be intentional.

> wl kernel module now compiles and works as expected.

and what was the solution?



Anyway, closing. Otherwise, please reopen and assign to a suitable component (kernel?). Thank you.