From 7153e26724872205306901f4e2b942a9058dbd32 Mon Sep 17 00:00:00 2001 From: Mingli Yu Date: Fri, 30 Oct 2020 17:02:04 +0800 Subject: update_udev_hwdb: clean hwdb.bin Steps to reproduce: echo "IMAGE_INSTALL_append = \" udev-hwdb lib32-udev-hwdb\"" >> conf/local.conf When install both udev-hwdb and lib32-udev-hwdb as above, there comes below do_populate_sdk error: $ bitbake core-image-sato -c populate_sdk ERROR: Task (/path/core-image-sato.bb:do_populate_sdk) failed with exit code '134' NOTE: Tasks Summary: Attempted 5554 tasks of which 0 didn't need to be rerun and 1 failed. $ cat /path/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0-r5/pseudo/pseudo.log [snip] inode mismatch: '/path/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0-r5/sdk/image/usr/local/oecore-x86_64/sysroots/core2-64-poky-linux/lib/udev/hwdb.bin' ino 427383040 in db, 427383042 in request. [snip] It is because both udev-hwdb and lib32-udev-hwdb will generate ${SDK_OUTPUT}/${SDKTARGETSYSROOT}/lib/udev/hwdb.bin during do_populate_sdk and it triggers pseudo error. So clean hwdb.bin before generate hwdb.bin to avoid conflict to fix the above do_populate_sdk error. (From OE-Core rev: 10413cf013ae5a92ef12f33dab8e67f0bfb0ae25) Signed-off-by: Mingli Yu Signed-off-by: Richard Purdie (cherry picked from commit c7472925feb53ce92c1799feba2b7a9104e3f38f) Signed-off-by: Steve Sakoman Signed-off-by: Richard Purdie --- scripts/postinst-intercepts/update_udev_hwdb | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/postinst-intercepts/update_udev_hwdb b/scripts/postinst-intercepts/update_udev_hwdb index 102e99b947..8076b8ae6f 100644 --- a/scripts/postinst-intercepts/update_udev_hwdb +++ b/scripts/postinst-intercepts/update_udev_hwdb @@ -17,5 +17,6 @@ case "${PREFERRED_PROVIDER_udev}" in ;; esac +rm -f $D${UDEVLIBDIR}/udev/hwdb.bin PSEUDO_UNLOAD=1 ${binprefix}qemuwrapper -L $D $D${libexecdir}/${binprefix}udevadm hwdb --update --root $D ${UDEV_EXTRA_ARGS} chown root:root $D${UDEVLIBDIR}/udev/hwdb.bin -- cgit v1.2.3-54-g00ecf