From: Martin Jansa <martin.jansa@gmail.com>
To: laurentiu.palcu@intel.com
Cc: openembedded-core@lists.openembedded.org,
openembedded-commits@lists.openembedded.org
Subject: Re: [oe-commits] Laurentiu Palcu : qemu: add wrapper for qemu-mips binary
Date: Sat, 6 Oct 2012 18:21:36 +0200 [thread overview]
Message-ID: <20121006162136.GA24453@jama.jama.net> (raw)
In-Reply-To: <20121003114821.8D16410375@opal>
[-- Attachment #1: Type: text/plain, Size: 2907 bytes --]
On Wed, Oct 03, 2012 at 11:48:21AM +0000, git@git.openembedded.org wrote:
> Module: openembedded-core.git
> Branch: master
> Commit: 53b3103abdf21123b1c7be49b05cfe97a7cd9ed7
> URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=53b3103abdf21123b1c7be49b05cfe97a7cd9ed7
>
> Author: Laurentiu Palcu <laurentiu.palcu@intel.com>
> Date: Wed Oct 3 14:23:26 2012 +0300
>
> qemu: add wrapper for qemu-mips binary
>
> qemu-mips user emulation binary segfaults when running any kind of
> binary. This is due to a MMU access fault in the virtual CPU. This
> problem has been introduced in qemu when 4GB of vmem were reserved for
> 32-on-64 bit.
>
> This workaround will need to be reverted once the proper fix is found.
>
> [YOCTO #3143]
>
> Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
>
> ---
>
> meta/recipes-devtools/qemu/qemu_1.2.0.bb | 15 ++++++++++++++-
> 1 files changed, 14 insertions(+), 1 deletions(-)
>
> diff --git a/meta/recipes-devtools/qemu/qemu_1.2.0.bb b/meta/recipes-devtools/qemu/qemu_1.2.0.bb
> index 191ee48..cbdb4d4 100644
> --- a/meta/recipes-devtools/qemu/qemu_1.2.0.bb
> +++ b/meta/recipes-devtools/qemu/qemu_1.2.0.bb
> @@ -17,7 +17,7 @@ SRC_URI = "\
> SRC_URI[md5sum] = "78eb1e984f4532aa9f2bdd3c127b5b61"
> SRC_URI[sha256sum] = "c8b84420d9f4869397f84cad2dabd9a475b7723d619a924a873740353e9df936"
>
> -PR = "r2"
> +PR = "r3"
>
> SRC_URI_append_virtclass-nativesdk = "\
> file://relocatable_sdk.patch \
> @@ -29,6 +29,19 @@ do_configure_prepend_virtclass-nativesdk() {
> sed -i 's/-lX11//g' Makefile.target
> fi
> }
> +
> +# The following fragment will create a wrapper for qemu-mips user emulation
> +# binary in order to work around a segmentation fault issue. Basically, by
> +# default, the reserved virtual address space for 32-on-64 bit is set to 4GB.
> +# This will trigger a MMU access fault in the virtual CPU. With this change,
> +# the qemu-mips works fine.
> +# IMPORTANT: This piece needs to be removed once the root cause is fixed!
> +do_install_append() {
> + create_wrapper ${D}/${bindir}/qemu-mips \
> + QEMU_RESERVED_VA=0x0
> +}
> +# END of qemu-mips workaround
What about checking if mips is in QEMU_TARGETS before doing this?
Right now this breaks all distros without mips in QEMU_TARGETS.
Cheers,
> +
> do_configure_prepend_virtclass-native() {
> # Undo the -lX11 added by linker-flags.patch, don't assume that host has libX11 installed
> sed -i 's/-lX11//g' Makefile.target
>
>
> _______________________________________________
> Openembedded-commits mailing list
> Openembedded-commits@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-commits
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
next parent reply other threads:[~2012-10-06 16:34 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20121003114821.8D16410375@opal>
2012-10-06 16:21 ` Martin Jansa [this message]
2012-10-06 18:13 ` [oe-commits] Laurentiu Palcu : qemu: add wrapper for qemu-mips binary Khem Raj
2012-10-08 8:26 ` Richard Purdie
2012-10-08 8:35 ` Laurentiu Palcu
2012-10-08 9:14 ` Richard Purdie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20121006162136.GA24453@jama.jama.net \
--to=martin.jansa@gmail.com \
--cc=laurentiu.palcu@intel.com \
--cc=openembedded-commits@lists.openembedded.org \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox