[yocto] udev-hwdb - post installation error (PPC target)

Gaurang Shastri gmshastri at gmail.com
Thu Nov 27 01:48:14 PST 2014


Hi

I have added systemd as my DISTRO_FEATURES for one of my ppc target.

But in my log.do_rootfs, I can see that for "udev-hwdb" RPM, generated from
"systemd", post-installation script failed with core dump:
{{{

419:Installing udev-hwdb       ######################################## [
43%]

Output from
udev-hwdb-1:208+git0+4372855b7871dd4f639d0e5fca86eff0d38aeb18-r0.2 at ppce500v2
:

Invalid instruction

NIP f67d2f6c   LR f67d3130 CTR 00000000 XER 20000000

MSR 00006040 HID0 00000000  HF 00006000 idx 0 TB 00000000 00000000

GPR00 00000000f67d3130 00000000f6ffcc78 0000000000000000 0000000000000000

GPR04 0000000000000014 0000000000000010 00000000f67fe080 0000000000000215

GPR08 00000000f67cd6c4 000000000000021c 0000000000001950 000000006ffffdff

GPR12 0000000000000000 0000000000000000 0000000000000000 0000000000000000

GPR16 0000000000000000 0000000000000000 0000000000000000 0000000000000000

GPR20 0000000000000000 0000000000000000 0000000000000000 0000000000000000

GPR24 0000000000000000 0000000000000000 0000000000000000 00000000f67cf014

GPR28 00000000f6ffcf38 00000000f67cd000 00000000f67fd81c 000000006ffffeff

CR 28000084  [ E  L  -  -  -  -  L  G  ]             RES ffffffff

FPR00 0000000000000000 0000000000000000 0000000000000000 0000000000000000

FPR04 0000000000000000 0000000000000000 0000000000000000 0000000000000000

FPR08 0000000000000000 0000000000000000 0000000000000000 0000000000000000

FPR12 0000000000000000 0000000000000000 0000000000000000 0000000000000000

FPR16 0000000000000000 0000000000000000 0000000000000000 0000000000000000

FPR20 0000000000000000 0000000000000000 0000000000000000 0000000000000000

FPR24 0000000000000000 0000000000000000 0000000000000000 0000000000000000

FPR28 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPSCR 00000000

qemu: uncaught target signal 4 (Illegal instruction) - core dumped

/tmp/rpm-tmp.36340: line 7:  8426 Illegal instruction     (core dumped)
PSEUDO_UNLOAD=1 qemu-ppc -L $D -E LD_LIBRARY_PATH=$D/usr/lib:$D/lib
$D/bin/udevadm hwdb --update --root $D

}}}
>From the above, it is clear that we are missing correct "QEMU_OPTIONS"
while passing through "qemu-ppc" binary in qemu.bbclass. I am able to make
it working with following patch:

{{{

$ git diff meta/classes/qemu.bbclass diff --git a/meta/classes/qemu.bbclass
b/meta/classes/qemu.bbclass index 3d437b0..8353839 100644

--- a/meta/classes/qemu.bbclass

+++ b/meta/classes/qemu.bbclass

@@ -29,7 +29,8 @@ def qemu_run_binary(data, rootfs_path, binary):



     libdir = rootfs_path + data.getVar("libdir", False)

     base_libdir = rootfs_path + data.getVar("base_libdir", False)

+    qemu_option = data.getVar("QEMU_OPTIONS",True)



-    return "PSEUDO_UNLOAD=1 " + qemu_binary + " -L " + rootfs_path\

+    return "PSEUDO_UNLOAD=1 " + qemu_binary + " " + qemu_option + " -L

+ " + rootfs_path\

             + " -E LD_LIBRARY_PATH=" + libdir + ":" + base_libdir + " "\

             + rootfs_path + binary

}}}
Please check the above and let me know so that I can send the patch in
correct format (via filing a bug and attaching as regular patch format)

Regards,
Gaurang Shastri
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141127/ccf9bf93/attachment.html>


More information about the yocto mailing list