Unknown symbol cfg80211_get_station

Sven Eckelmann sven at narfation.org
Sat Jul 6 12:16:21 UTC 2019


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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20190706/06341bdb/attachment.sig>


More information about the kernel-team mailing list