Article 5BABY Problem building ath10k drivers from source (modpost errors)

Problem building ath10k drivers from source (modpost errors)

by
AndyWas
from LinuxQuestions.org on (#5BABY)
Hello everyone :)

I am having trouble building the ath10k drivers from source. The original motivation for this is that my new Compex WLE1216VX 802.11ac wireless module (PCI ID 168c:0046) isn't currently supported. There is a patch available to add support which is reported to work (at least on OpenWrt) but that requires building from source. See this post for more background: .

I'm working on Fedora 33 x86_64 although ultimately the module will go in my Clearos 7 fairwall / router, which is based on Centos. I'm looking in the first instance to recompile the current Linux Wireless source from Github before applying the patch. As well as Git clone of the official Linux Wireless source I've also installed separately the Fedora kernel-devel and kernel-headers packages, although the kernel source tree there doesn't contain the full ath10k source so I've symlinked from the source tree root to ./drivers in the Git source tree (as well as ./include, ./arch and ./tools in order to avoid dependency errors - there seem to be a lot of commits in other areas still to make it into the release kernel).

In either case (kernel-devel or Git source tree) I can run make olddefconfig, make prepare and make modules_prepare successfully. As I only want to build the one module rather than the whole kernel my make command from kernel tree root is
Code:make M=drivers/net/wireless/ath/ath10k modulesMy Makefile in the bottom-level ath10k directory has entries for:
Code:obj-m := ath10k_pci.o
obj-m := ath10k_core.oIf I run make from the kernel-devel I get the following modpost error:
Code:[root@localhost 5.9.11-200.fc33.x86_64]# make M=drivers/net/wireless/ath/ath10k modules
CC [M] drivers/net/wireless/ath/ath10k/mac.o
CC [M] drivers/net/wireless/ath/ath10k/debug.o
CC [M] drivers/net/wireless/ath/ath10k/core.o
CC [M] drivers/net/wireless/ath/ath10k/htc.o
CC [M] drivers/net/wireless/ath/ath10k/htt.o
CC [M] drivers/net/wireless/ath/ath10k/htt_rx.o
CC [M] drivers/net/wireless/ath/ath10k/htt_tx.o
CC [M] drivers/net/wireless/ath/ath10k/txrx.o
CC [M] drivers/net/wireless/ath/ath10k/wmi.o
CC [M] drivers/net/wireless/ath/ath10k/wmi-tlv.o
CC [M] drivers/net/wireless/ath/ath10k/bmi.o
CC [M] drivers/net/wireless/ath/ath10k/hw.o
CC [M] drivers/net/wireless/ath/ath10k/p2p.o
CC [M] drivers/net/wireless/ath/ath10k/swap.o
CC [M] drivers/net/wireless/ath/ath10k/thermal.o
CC [M] drivers/net/wireless/ath/ath10k/debugfs_sta.o
CC [M] drivers/net/wireless/ath/ath10k/wow.o
CC [M] drivers/net/wireless/ath/ath10k/coredump.o
CC [M] drivers/net/wireless/ath/ath10k/ce.o
LD [M] drivers/net/wireless/ath/ath10k/ath10k_core.o
MODPOST drivers/net/wireless/ath/ath10k/Module.symvers
ERROR: modpost: "rcu_read_unlock_strict" [drivers/net/wireless/ath/ath10k/ath10k_core.ko] undefined!
ERROR: modpost: "ieee80211_beacon_cntdwn_is_complete" [drivers/net/wireless/ath/ath10k/ath10k_core.ko] undefined!
ERROR: modpost: "ieee80211_beacon_update_cntdwn" [drivers/net/wireless/ath/ath10k/ath10k_core.ko] undefined!
make[1]: *** [scripts/Makefile.modpost:111: drivers/net/wireless/ath/ath10k/Module.symvers] Error 1
make[1]: *** Deleting file 'drivers/net/wireless/ath/ath10k/Module.symvers'
make: *** [Makefile:1697: modules] Error 2If I do the same in the Git source tree (unmodified) I get these errors at the end:
Code:WARNING: Symbol version dump "Module.symvers" is missing.
Modules may not have dependencies or modversions.
MODPOST drivers/net/wireless/ath/ath10k/Module.symvers
WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
CC [M] drivers/net/wireless/ath/ath10k/ath10k_core.mod.o
make[2]: *** No rule to make target 'vmlinux', needed by 'drivers/net/wireless/ath/ath10k/ath10k_core.ko'. Stop.
make[1]: *** [scripts/Makefile.modpost:117: __modpost] Error 2
make: *** [Makefile:1703: modules] Error 2If I copy the Module.symvers file from kernel-devel to Git I get the same errors as with kernel-devel.

It looks like the problem is with undefined symbols rather than the module source code itself. Does anyone have any suggestions or ideas to resolve this, short of building the entire kernel from source?

Thanks,
Andrewlatest?d=yIl2AUoC8zA latest?i=vhsLL3zTXuo:Aitz7Ob1UjQ:F7zBnMy latest?i=vhsLL3zTXuo:Aitz7Ob1UjQ:V_sGLiP latest?d=qj6IDK7rITs latest?i=vhsLL3zTXuo:Aitz7Ob1UjQ:gIN9vFwvhsLL3zTXuo
External Content
Source RSS or Atom Feed
Feed Location https://feeds.feedburner.com/linuxquestions/latest
Feed Title LinuxQuestions.org
Feed Link https://www.linuxquestions.org/questions/
Reply 0 comments