mirror of
https://git.yoctoproject.org/poky
synced 2026-06-01 13:09:50 +00:00
kernel: fix race condition between compile_kernelmodules and shared_workdir
Fixes https://bugzilla.yoctoproject.org/show_bug.cgi?id=8127 which causes [ 1225.089323] 8189es: Unknown symbol cfg80211_scan_done (err -22) [ 1225.095916] 8189es: no symbol version for cfg80211_remain_on_channel_expired when loading external compiled 8189es module. (From OE-Core rev: afcea61e8eb39234d336c706fdfd4680dea7c060) Signed-off-by: Jens Rehsack <sno@netbsd.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
fecb07755c
commit
a9cc27e691
@@ -217,6 +217,14 @@ do_compile_kernelmodules() {
|
|||||||
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
|
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
|
||||||
if (grep -q -i -e '^CONFIG_MODULES=y$' ${B}/.config); then
|
if (grep -q -i -e '^CONFIG_MODULES=y$' ${B}/.config); then
|
||||||
oe_runmake -C ${B} ${PARALLEL_MAKE} modules CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS}
|
oe_runmake -C ${B} ${PARALLEL_MAKE} modules CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS}
|
||||||
|
|
||||||
|
# Module.symvers gets updated during the
|
||||||
|
# building of the kernel modules. We need to
|
||||||
|
# update this in the shared workdir since some
|
||||||
|
# external kernel modules has a dependency on
|
||||||
|
# other kernel modules and will look at this
|
||||||
|
# file to do symbol lookups
|
||||||
|
cp Module.symvers ${STAGING_KERNEL_BUILDDIR}/
|
||||||
else
|
else
|
||||||
bbnote "no modules to compile"
|
bbnote "no modules to compile"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
inherit kernel-arch
|
inherit kernel-arch
|
||||||
|
|
||||||
# This is instead of DEPENDS = "virtual/kernel"
|
# This is instead of DEPENDS = "virtual/kernel"
|
||||||
do_configure[depends] += "virtual/kernel:do_shared_workdir"
|
do_configure[depends] += "virtual/kernel:do_compile_kernelmodules"
|
||||||
|
|
||||||
export OS = "${TARGET_OS}"
|
export OS = "${TARGET_OS}"
|
||||||
export CROSS_COMPILE = "${TARGET_PREFIX}"
|
export CROSS_COMPILE = "${TARGET_PREFIX}"
|
||||||
|
|||||||
Reference in New Issue
Block a user