* [PATCH 0/1] systemd: ignore qemu output, and check its return code @ 2013-07-24 5:24 rongqing.li 2013-07-24 5:24 ` [PATCH 1/1] " rongqing.li 0 siblings, 1 reply; 12+ messages in thread From: rongqing.li @ 2013-07-24 5:24 UTC (permalink / raw) To: openembedded-core From: "Roy.Li" <rongqing.li@windriver.com> The following changes since commit 8fc6904fe97438478119db6cd23b7b4eb33b50aa: curl: add upstream status to patch (2013-07-18 12:21:13 -0700) are available in the git repository at: git://git.pokylinux.org/poky-contrib roy/systemd http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=roy/systemd Roy.Li (1): systemd: ignore qemu output, and check its return code meta/recipes-core/systemd/systemd_204.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) -- 1.7.10.4 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-07-24 5:24 [PATCH 0/1] systemd: ignore qemu output, and check its return code rongqing.li @ 2013-07-24 5:24 ` rongqing.li 2013-07-24 5:34 ` Khem Raj 2013-08-07 7:30 ` Rongqing Li 0 siblings, 2 replies; 12+ messages in thread From: rongqing.li @ 2013-07-24 5:24 UTC (permalink / raw) To: openembedded-core From: "Roy.Li" <rongqing.li@windriver.com> qemu prints errors sometime, but it works well, the error information can be captured by rpm, and lead to rpm failure. like: $export D=/tmp/rootfs;.../usr/bin/qemu-i386 -L $D \ -E LD_LIBRARY_PATH=$D/usr/lib:$D/lib $D/bin/udevadm hwdb --update --root $D qemu: Unsupported syscall: 240 $echo $? $ 0 Signed-off-by: Roy.Li <rongqing.li@windriver.com> --- meta/recipes-core/systemd/systemd_204.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/meta/recipes-core/systemd/systemd_204.bb b/meta/recipes-core/systemd/systemd_204.bb index b8b1290..10bde33 100644 --- a/meta/recipes-core/systemd/systemd_204.bb +++ b/meta/recipes-core/systemd/systemd_204.bb @@ -277,7 +277,9 @@ ALTERNATIVE_PRIORITY[poweroff] ?= "300" pkg_postinst_udev-hwdb () { if test -n "$D"; then ${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} hwdb --update \ - --root $D + --root $D 2>/dev/null + + [ $? -ne 0 ] && exit 1 else udevadm hwdb --update fi -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-07-24 5:24 ` [PATCH 1/1] " rongqing.li @ 2013-07-24 5:34 ` Khem Raj 2013-07-24 6:15 ` Rongqing Li 2013-08-07 7:30 ` Rongqing Li 1 sibling, 1 reply; 12+ messages in thread From: Khem Raj @ 2013-07-24 5:34 UTC (permalink / raw) To: rongqing.li; +Cc: openembedded-core On Jul 23, 2013, at 10:24 PM, <rongqing.li@windriver.com> wrote: > From: "Roy.Li" <rongqing.li@windriver.com> > > qemu prints errors sometime, but it works well, the error information > can be captured by rpm, and lead to rpm failure. like: > > $export D=/tmp/rootfs;.../usr/bin/qemu-i386 -L $D \ > -E LD_LIBRARY_PATH=$D/usr/lib:$D/lib $D/bin/udevadm hwdb --update --root $D > qemu: Unsupported syscall: 240 hmm this is a qemu issue and I bet qemu is segfaulting This should be fixed. Can you try porting http://lists.gnu.org/archive/html/qemu-devel/2010-02/msg00870.html To qemu please ? Then you won't need this patch. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-07-24 5:34 ` Khem Raj @ 2013-07-24 6:15 ` Rongqing Li 2013-07-26 11:53 ` Burton, Ross 0 siblings, 1 reply; 12+ messages in thread From: Rongqing Li @ 2013-07-24 6:15 UTC (permalink / raw) To: Khem Raj; +Cc: openembedded-core On 07/24/2013 01:34 PM, Khem Raj wrote: > > On Jul 23, 2013, at 10:24 PM, <rongqing.li@windriver.com> wrote: > >> From: "Roy.Li" <rongqing.li@windriver.com> >> >> qemu prints errors sometime, but it works well, the error information >> can be captured by rpm, and lead to rpm failure. like: >> >> $export D=/tmp/rootfs;.../usr/bin/qemu-i386 -L $D \ >> -E LD_LIBRARY_PATH=$D/usr/lib:$D/lib $D/bin/udevadm hwdb --update --root $D >> qemu: Unsupported syscall: 240 > > > hmm this is a qemu issue and I bet qemu is segfaulting > This should be fixed. Can you try porting > qemu is not segfaulting, except error message, it returns 0, and udevadm hwdb finished its task. > http://lists.gnu.org/archive/html/qemu-devel/2010-02/msg00870.html > why was this patch be not merged, it was submitted on 02/2010 -Roy > To qemu please ? > > Then you won't need this patch. > > > -- Best Reagrds, Roy | RongQing Li ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-07-24 6:15 ` Rongqing Li @ 2013-07-26 11:53 ` Burton, Ross 2013-08-05 5:21 ` Rongqing Li 0 siblings, 1 reply; 12+ messages in thread From: Burton, Ross @ 2013-07-26 11:53 UTC (permalink / raw) To: Rongqing Li; +Cc: openembedded-core On 24 July 2013 07:15, Rongqing Li <rongqing.li@windriver.com> wrote: > qemu is not segfaulting, except error message, it returns 0, > and udevadm hwdb finished its task. A bit of googling takes you to https://bugs.launchpad.net/ubuntu/+source/qemu-linaro/+bug/758424. Key quote: "We only implement the futex syscalls if CONFIG_USE_NPTL. This isn't defined for the i386 target (the necessary support in target-i386 for pushing atomic insns up to the linux-user top level loop isn't implemented). The upshot is that running multithreaded programs in linux-user i386-target isn't supported and this is just one of the symptoms." Not segfaulting != working when multithreaded programs don't have futexs. We'll be seeing this more in the future now that GLib assumes you can thread. Ross ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-07-26 11:53 ` Burton, Ross @ 2013-08-05 5:21 ` Rongqing Li 0 siblings, 0 replies; 12+ messages in thread From: Rongqing Li @ 2013-08-05 5:21 UTC (permalink / raw) To: Burton, Ross; +Cc: openembedded-core On 07/26/2013 07:53 PM, Burton, Ross wrote: > On 24 July 2013 07:15, Rongqing Li <rongqing.li@windriver.com> wrote: >> qemu is not segfaulting, except error message, it returns 0, >> and udevadm hwdb finished its task. > > A bit of googling takes you to > https://bugs.launchpad.net/ubuntu/+source/qemu-linaro/+bug/758424. > Key quote: > > "We only implement the futex syscalls if CONFIG_USE_NPTL. This isn't > defined for the i386 target (the necessary support in target-i386 for > pushing atomic insns up to the linux-user top level loop isn't > implemented). The upshot is that running multithreaded programs in > linux-user i386-target isn't supported and this is just one of the > symptoms." > > Not segfaulting != working when multithreaded programs don't have > futexs. We'll be seeing this more in the future now that GLib assumes > you can thread. > > Ross > I see this bug was not fixed from 2011-11, what should I do? I know my patch works well on my machine. -Roy -- Best Reagrds, Roy | RongQing Li ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-07-24 5:24 ` [PATCH 1/1] " rongqing.li 2013-07-24 5:34 ` Khem Raj @ 2013-08-07 7:30 ` Rongqing Li 2013-08-07 11:55 ` Burton, Ross 2013-08-07 18:26 ` Khem Raj 1 sibling, 2 replies; 12+ messages in thread From: Rongqing Li @ 2013-08-07 7:30 UTC (permalink / raw) To: rongqing.li; +Cc: openembedded-core ping On 07/24/2013 01:24 PM, rongqing.li@windriver.com wrote: > From: "Roy.Li" <rongqing.li@windriver.com> > > qemu prints errors sometime, but it works well, the error information > can be captured by rpm, and lead to rpm failure. like: > > $export D=/tmp/rootfs;.../usr/bin/qemu-i386 -L $D \ > -E LD_LIBRARY_PATH=$D/usr/lib:$D/lib $D/bin/udevadm hwdb --update --root $D > qemu: Unsupported syscall: 240 > $echo $? > $ 0 > > Signed-off-by: Roy.Li <rongqing.li@windriver.com> > --- > meta/recipes-core/systemd/systemd_204.bb | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/meta/recipes-core/systemd/systemd_204.bb b/meta/recipes-core/systemd/systemd_204.bb > index b8b1290..10bde33 100644 > --- a/meta/recipes-core/systemd/systemd_204.bb > +++ b/meta/recipes-core/systemd/systemd_204.bb > @@ -277,7 +277,9 @@ ALTERNATIVE_PRIORITY[poweroff] ?= "300" > pkg_postinst_udev-hwdb () { > if test -n "$D"; then > ${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} hwdb --update \ > - --root $D > + --root $D 2>/dev/null > + > + [ $? -ne 0 ] && exit 1 > else > udevadm hwdb --update > fi > -- Best Reagrds, Roy | RongQing Li ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-08-07 7:30 ` Rongqing Li @ 2013-08-07 11:55 ` Burton, Ross 2013-08-08 8:55 ` Rongqing Li 2013-08-07 18:26 ` Khem Raj 1 sibling, 1 reply; 12+ messages in thread From: Burton, Ross @ 2013-08-07 11:55 UTC (permalink / raw) To: Rongqing Li; +Cc: openembedded-core On 7 August 2013 08:30, Rongqing Li <rongqing.li@windriver.com> wrote: >> ${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} >> hwdb --update \ >> - --root $D >> + --root $D 2>/dev/null >> + >> + [ $? -ne 0 ] && exit 1 The $? check can be removed replaced by set -e, as many postinst scripts do already. Why/where is the output from runqemu considered an error? I wasn't aware that logs were monitored for that error message. I don't think we should be hiding the output of runqemu as any real errors will also be hidden. Ross ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-08-07 11:55 ` Burton, Ross @ 2013-08-08 8:55 ` Rongqing Li 2013-08-08 10:57 ` Burton, Ross 0 siblings, 1 reply; 12+ messages in thread From: Rongqing Li @ 2013-08-08 8:55 UTC (permalink / raw) To: Burton, Ross; +Cc: openembedded-core On 08/07/2013 07:55 PM, Burton, Ross wrote: > On 7 August 2013 08:30, Rongqing Li <rongqing.li@windriver.com> wrote: >>> ${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} >>> hwdb --update \ >>> - --root $D >>> + --root $D 2>/dev/null >>> + >>> + [ $? -ne 0 ] && exit 1 > > The $? check can be removed replaced by set -e, as many postinst > scripts do already. > > Why/where is the output from runqemu considered an error? I wasn't > aware that logs were monitored for that error message. I don't think > we should be hiding the output of runqemu as any real errors will also > be hidden. > > Ross I always get the below on error on my machine(Ubuntu 12.10) when enable systemd: | 102:Installing libnfsidmap0 ######################################## [ 26%] | 103:Installing run-postinsts ######################################## [ 26%] | Output from run-postinsts-1.0-r9@i586: | -- | 257:Installing liberation-fo.. ######################################## [ 65%] | 258:Installing glib-networking ######################################## [ 65%] | 259:Installing wpa-supplicant ######################################## [ 66%] | 260:Installing udev-hwdb ######################################## [ 66%] | Output from udev-hwdb-1:204-r0@i586: | ERROR: ld.so: object 'libpseudo.so' from LD_PRELOAD cannot be preloaded: ignored. | qemu: Unsupported syscall: 240 | 261:Installing udev ######################################## [ 66%] | 262:Installing util-linux-fsck ######################################## [ 67%] | Output from util-linux-fsck-2.23.2-r0@i586: | update-alternatives: Linking /buildarea/build/poky/build/tmp/work/qemux86-poky-linux/core-image-sato/1.0-r0/rootfs//sbin/fsck.minix to /sbin/fsck.minix.util-linux | | ERROR: Function failed: do_rootfs (log file is located at /buildarea/build/poky/build/tmp/work/qemux86-poky-linux/core-image-sato/1.0-r0/temp/log.do_rootfs.26461) ERROR: Task 7 (/buildarea/build/poky/meta/recipes-sato/images/core-image-sato.bb, do_rootfs) failed with exit code '1' NOTE: Tasks Summary: Attempted 5548 tasks of which 924 didn't need to be rerun and 1 failed. No currently running tasks (5547 of 5549) Summary: 1 task failed: /buildarea/build/poky/meta/recipes-sato/images/core-image-sato.bb, do_rootfs Summary: There was 1 ERROR message shown, returning a non-zero exit code. After using the patch, it works well. Other place used the same method to handle the qemu_run_binary result: lirq@lirq-OptiPlex-780:/buildarea/build/poky/meta$ grep qemu_run_binary ./ -r -A2 ./classes/qemu.bbclass:# ${@qemu_run_binary(d, '$D', '/usr/bin/test_app')} [test_app arguments] ./classes/qemu.bbclass-# ./classes/qemu.bbclass:def qemu_run_binary(data, rootfs_path, binary): ./classes/qemu.bbclass- qemu_binary = qemu_target_binary(data) ./classes/qemu.bbclass- if qemu_binary == "qemu-allarch": -- ./classes/gtk-immodules-cache.bbclass: ${@qemu_run_binary(d, '$D', '${bindir}/gtk-query-immodules-$maj_ver.0')} \ ./classes/gtk-immodules-cache.bbclass- $IMFILES > $D/etc/gtk-$maj_ver.0/gtk.immodules 2>/dev/null && ./classes/gtk-immodules-cache.bbclass- sed -i -e "s:$D::" $D/etc/gtk-$maj_ver.0/gtk.immodules -- ./classes/gtk-immodules-cache.bbclass: ${@qemu_run_binary(d, '$D', '${bindir}/gtk-query-immodules-$maj_ver.0')} \ ./classes/gtk-immodules-cache.bbclass- $IMFILES > $D/etc/gtk-$maj_ver.0/gtk.immodules 2>/dev/null && ./classes/gtk-immodules-cache.bbclass- sed -i -e "s:$D::" $D/etc/gtk-$maj_ver.0/gtk.immodules -- ./recipes-graphics/pango/pango.inc: ${@qemu_run_binary(d, '$D','${bindir}/${MLPREFIX}pango-querymodules')} \ ./recipes-graphics/pango/pango.inc- $D${libdir}/pango/${LIBV}/modules/*.so \ ./recipes-graphics/pango/pango.inc- > $D${sysconfdir}/pango/${MLPREFIX}pango.modules 2>/dev/null -Roy > > -- Best Reagrds, Roy | RongQing Li ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-08-08 8:55 ` Rongqing Li @ 2013-08-08 10:57 ` Burton, Ross 0 siblings, 0 replies; 12+ messages in thread From: Burton, Ross @ 2013-08-08 10:57 UTC (permalink / raw) To: Rongqing Li; +Cc: openembedded-core On 8 August 2013 09:55, Rongqing Li <rongqing.li@windriver.com> wrote: > | ERROR: ld.so: object 'libpseudo.so' from LD_PRELOAD cannot be preloaded: > ignored. That's probably what's causing the problem, not the syscall warning. It looks like https://bugzilla.yoctoproject.org/show_bug.cgi?id=4843 which is tricky to replicate, maybe you should speak to Peter about your configuration so we can finally fix it. Ross ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-08-07 7:30 ` Rongqing Li 2013-08-07 11:55 ` Burton, Ross @ 2013-08-07 18:26 ` Khem Raj 2013-08-08 8:53 ` Rongqing Li 1 sibling, 1 reply; 12+ messages in thread From: Khem Raj @ 2013-08-07 18:26 UTC (permalink / raw) To: Rongqing Li; +Cc: openembedded-core On Aug 7, 2013, at 12:30 AM, Rongqing Li <rongqing.li@windriver.com> wrote: > ping > > On 07/24/2013 01:24 PM, rongqing.li@windriver.com wrote: >> From: "Roy.Li" <rongqing.li@windriver.com> >> >> qemu prints errors sometime, but it works well, how do you know ? >> the error information >> can be captured by rpm, and lead to rpm failure. like: >> >> $export D=/tmp/rootfs;.../usr/bin/qemu-i386 -L $D \ >> -E LD_LIBRARY_PATH=$D/usr/lib:$D/lib $D/bin/udevadm hwdb --update --root $D >> qemu: Unsupported syscall: 240 >> $echo $? >> $ 0 >> >> Signed-off-by: Roy.Li <rongqing.li@windriver.com> >> --- >> meta/recipes-core/systemd/systemd_204.bb | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/meta/recipes-core/systemd/systemd_204.bb b/meta/recipes-core/systemd/systemd_204.bb >> index b8b1290..10bde33 100644 >> --- a/meta/recipes-core/systemd/systemd_204.bb >> +++ b/meta/recipes-core/systemd/systemd_204.bb >> @@ -277,7 +277,9 @@ ALTERNATIVE_PRIORITY[poweroff] ?= "300" >> pkg_postinst_udev-hwdb () { >> if test -n "$D"; then >> ${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} hwdb --update \ >> - --root $D >> + --root $D 2>/dev/null >> + >> + [ $? -ne 0 ] && exit 1 >> else >> udevadm hwdb --update >> fi >> > > -- > Best Reagrds, > Roy | RongQing Li > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] systemd: ignore qemu output, and check its return code 2013-08-07 18:26 ` Khem Raj @ 2013-08-08 8:53 ` Rongqing Li 0 siblings, 0 replies; 12+ messages in thread From: Rongqing Li @ 2013-08-08 8:53 UTC (permalink / raw) To: Khem Raj; +Cc: openembedded-core On 08/08/2013 02:26 AM, Khem Raj wrote: > > On Aug 7, 2013, at 12:30 AM, Rongqing Li <rongqing.li@windriver.com> wrote: > >> ping >> >> On 07/24/2013 01:24 PM, rongqing.li@windriver.com wrote: >>> From: "Roy.Li" <rongqing.li@windriver.com> >>> >>> qemu prints errors sometime, but it works well, > > > how do you know ? > echo $? and output of "udevadm hwdb --update --root $D" shows it works well. -Roy >>> the error information >>> can be captured by rpm, and lead to rpm failure. like: >>> >>> $export D=/tmp/rootfs;.../usr/bin/qemu-i386 -L $D \ >>> -E LD_LIBRARY_PATH=$D/usr/lib:$D/lib $D/bin/udevadm hwdb --update --root $D >>> qemu: Unsupported syscall: 240 >>> $echo $? >>> $ 0 >>> >>> Signed-off-by: Roy.Li <rongqing.li@windriver.com> >>> --- >>> meta/recipes-core/systemd/systemd_204.bb | 4 +++- >>> 1 file changed, 3 insertions(+), 1 deletion(-) >>> >>> diff --git a/meta/recipes-core/systemd/systemd_204.bb b/meta/recipes-core/systemd/systemd_204.bb >>> index b8b1290..10bde33 100644 >>> --- a/meta/recipes-core/systemd/systemd_204.bb >>> +++ b/meta/recipes-core/systemd/systemd_204.bb >>> @@ -277,7 +277,9 @@ ALTERNATIVE_PRIORITY[poweroff] ?= "300" >>> pkg_postinst_udev-hwdb () { >>> if test -n "$D"; then >>> ${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} hwdb --update \ >>> - --root $D >>> + --root $D 2>/dev/null >>> + >>> + [ $? -ne 0 ] && exit 1 >>> else >>> udevadm hwdb --update >>> fi >>> >> >> -- >> Best Reagrds, >> Roy | RongQing Li >> _______________________________________________ >> Openembedded-core mailing list >> Openembedded-core@lists.openembedded.org >> http://lists.openembedded.org/mailman/listinfo/openembedded-core > > > -- Best Reagrds, Roy | RongQing Li ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2013-08-08 10:58 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-07-24 5:24 [PATCH 0/1] systemd: ignore qemu output, and check its return code rongqing.li 2013-07-24 5:24 ` [PATCH 1/1] " rongqing.li 2013-07-24 5:34 ` Khem Raj 2013-07-24 6:15 ` Rongqing Li 2013-07-26 11:53 ` Burton, Ross 2013-08-05 5:21 ` Rongqing Li 2013-08-07 7:30 ` Rongqing Li 2013-08-07 11:55 ` Burton, Ross 2013-08-08 8:55 ` Rongqing Li 2013-08-08 10:57 ` Burton, Ross 2013-08-07 18:26 ` Khem Raj 2013-08-08 8:53 ` Rongqing Li
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox