Unknown symbol cfg80211_get_station
Moritz Warning
moritzwarning at web.de
Sat Jul 6 15:22:01 UTC 2019
Thanks Sven for having a good look.
There is no cfg80211 module present on the system (find /lib/modules/4.15.0-1032-aws/ -name *80211*).
Package linux-modules-4.15.0-1032-aws is installed.
The module linux-modules-extra-4.15.0-1032 installs the following files:
/lib/modules/4.15.0-1032-gcp/kernel/net/wireless/cfg80211.ko
/lib/modules/4.15.0-1032-gke/kernel/net/wireless/cfg80211.ko
/lib/modules/4.15.0-1032-azure/kernel/net/wireless/cfg80211.ko
But this is not in the *-aws path.
On 7/6/19 2:16 PM, Sven Eckelmann wrote:
> On Friday, 5 July 2019 16:51:56 CEST Moritz Warning wrote:
>> on an AWS server I get this error:
>>
>> $ modprobe batman-adv
>> $ dmesg
>> ...
>> [ 1310.125438] batman_adv: Unknown symbol cfg80211_get_station (err 0)
>>
>> $ uname -a
>> Linux ip-172-31-47-217 4.15.0-1032-aws #34-Ubuntu SMP Thu Jan 17 15:18:09 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
>>
>
> I have downloaded the headers [1] and they have following defined in
> include/config/cfg80211.h:
>
> #if IS_ENABLED(CONFIG_CFG80211)
> /**
> * cfg80211_get_station - retrieve information about a given station
> * @dev: the device where the station is supposed to be connected to
> * @mac_addr: the mac address of the station of interest
> * @sinfo: pointer to the structure to fill with the information
> *
> * Returns 0 on success and sinfo is filled with the available information
> * otherwise returns a negative error code and the content of sinfo has to be
> * considered undefined.
> */
> int cfg80211_get_station(struct net_device *dev, const u8 *mac_addr,
> struct station_info *sinfo);
> #else
> static inline int cfg80211_get_station(struct net_device *dev,
> const u8 *mac_addr,
> struct station_info *sinfo)
> {
> return -ENOENT;
> }
> #endif
>
> So this function should be always defined by the kernel. Either through this
> header or through the cfg80211 module (which can be part of the kernel binary
> itself).
>
> I have then downloaded the config deb [2]. It has the .config file included
>
> $ grep CONFIG_CFG80211 usr/src/linux-headers-4.15.0-1032-aws/.config
> CONFIG_CFG80211=m
> # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
> # CONFIG_CFG80211_CERTIFICATION_ONUS is not set
> CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
> CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
> CONFIG_CFG80211_DEFAULT_PS=y
> CONFIG_CFG80211_DEBUGFS=y
> CONFIG_CFG80211_CRDA_SUPPORT=y
> CONFIG_CFG80211_WEXT=y
>
> So it is enabled as a module. So please load this module. And if it is not
> included in any package (what I am currently suspecting), please contact the
> maintainers [3]. They either have to ship the modules or disable any modules
> in their build. But building them and not shipping is breaking the
> dependencies of other modules (as shown by you).
>
> Kind regards,
> Sven
>
> [1] http://mirrors.kernel.org/ubuntu/pool/main/l/linux-aws/linux-aws-headers-4.15.0-1032_4.15.0-1032.34_all.deb
> [2] http://mirrors.kernel.org/ubuntu/pool/main/l/linux-aws/linux-headers-4.15.0-1032-aws_4.15.0-1032.34_amd64.deb
> [3] https://bugs.launchpad.net/ubuntu/+source/linux-aws/+filebug
>
More information about the kernel-team
mailing list