Skip to contentSkip to conversation

Fix for kernel depmod postinstall

PATCH New Paul Eggleton 1 participant 3 messages Mar 21, 2014

lore
Share & tools
lore
#0 lore raw

v3 cover Fix for kernel depmod postinstall

The other fixes from "Misc fixes" branch were merged; this one needed an additional fix for the multilib changed file detection, which has been added in v3.

The following changes since commit ef2ba0a17a4fbd0e0c43c144f43d1d40de23697e:

gtk-engines: removed gnome inheritance (2014-03-21 17:14:53 +0000)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib paule/fixes5
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/fixes5

Paul Eggleton (2):
classes/kernel: move module postinst commands to kernel-base classes/image: ignore modules.dep changing during multilib image
construction

 meta/classes/image.bbclass  | 2 +-
 meta/classes/kernel.bbclass | 7 +++++--
 2 files changed, 6 insertions(+), 3 deletions(-)
Signature · 1 line
1.8.5.3
#1 lore raw

PATCH v3 1/2 classes/kernel: move module postinst commands to kernel-base

Since kernel-base is the package that contains the files that depmod needs to run, we should be running depmod from the kernel-base postinstall rather than kernel-image.

Fixes [YOCTO #5392].

---
 meta/classes/kernel.bbclass | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
meta/classes/kernel.bbclass +5 -2
index 6953109..19b159b 100644
@@ -362,8 +362,7 @@ ALLOW_EMPTY_kernel-image = "1"
 ALLOW_EMPTY_kernel-modules = "1"
 DESCRIPTION_kernel-modules = "Kernel modules meta package"
 
-pkg_postinst_kernel-image () {
-	update-alternatives --install /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ${KERNEL_PRIORITY} || true
+pkg_postinst_kernel-base () {
 	if [ ! -e "$D/lib/modules/${KERNEL_VERSION}" ]; then
 		mkdir -p $D/lib/modules/${KERNEL_VERSION}
 	fi
@@ -374,6 +373,10 @@ pkg_postinst_kernel-image () {
 	fi
 }
 
+pkg_postinst_kernel-image () {
+	update-alternatives --install /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ${KERNEL_PRIORITY} || true
+}
+
 pkg_postrm_kernel-image () {
 	update-alternatives --remove ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} || true
 }
Signature · 1 line
1.8.5.3
#2 lore raw

PATCH v3 2/2 classes/image: ignore modules.dep changing during multilib image construction

In reply to Paul Eggleton

Since we now run depmod when building images (as the postinst that does this is now on kernel-base instead of kernel-image) it is possible to have this file different between the two halves of the multilib image, and the code that checks for such differences detects this and fails. Whitelist this file to avoid the failure.

Related to fix for [YOCTO #5392].

---
 meta/classes/image.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/classes/image.bbclass +1 -1
index 3436624..9fe2786 100644
@@ -269,7 +269,7 @@ insert_feed_uris () {
 	done
 }
 
-MULTILIBRE_ALLOW_REP =. "${base_bindir}|${base_sbindir}|${bindir}|${sbindir}|${libexecdir}|${sysconfdir}|${nonarch_base_libdir}/udev|"
+MULTILIBRE_ALLOW_REP =. "${base_bindir}|${base_sbindir}|${bindir}|${sbindir}|${libexecdir}|${sysconfdir}|${nonarch_base_libdir}/udev|/lib/modules/[^/]*/modules.dep|"
 MULTILIB_CHECK_FILE = "${WORKDIR}/multilib_check.py"
 MULTILIB_TEMP_ROOTFS = "${WORKDIR}/multilib"
 
Signature · 1 line
1.8.5.3