From: Marcel Apfelbaum <marcel.a@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
"Alexey Kardashevskiy" <aik@ozlabs.ru>,
"Michael Tokarev" <mjt@tls.msk.ru>,
"QEMU Developers" <qemu-devel@nongnu.org>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Laszlo Ersek" <lersek@redhat.com>,
"Andreas Färber" <afaerber@suse.de>,
"Richard Henderson" <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH for-2.0 V3] tests/acpi-test: do not run iasl on big endian machines
Date: Sun, 23 Mar 2014 15:00:51 +0200 [thread overview]
Message-ID: <1395579651.5673.23.camel@localhost.localdomain> (raw)
In-Reply-To: <CAFEAcA8KAKA-wnsbrddBYGR9qotGoUHUpV2Dk4axcZNJEQ1rDg@mail.gmail.com>
On Sun, 2014-03-23 at 12:48 +0000, Peter Maydell wrote:
> On 23 March 2014 12:32, Marcel Apfelbaum <marcel.a@redhat.com> wrote:
> > On Sun, 2014-03-23 at 12:14 +0000, Peter Maydell wrote:
> >> On 23 March 2014 09:49, Michael S. Tsirkin <mst@redhat.com> wrote:
> >> > At this point I'm confused.
> >> > If iasl compiler is broken, we should detect and fix that.
> >> > It might be ok to just detect endian-ness as a quick work-around.
> >> > BTW configure already has code to detect endian-ness:
> >> > if test "$bigendian" = "yes" ; then
> >> > echo "HOST_WORDS_BIGENDIAN=y" >> $config_host_mak
> >> > fi
> >>
> >> That's the endianness of the machine we're compiling QEMU
> >> for, not the endianness of the machine we're compiling QEMU
> >> on. If for instance you're on x86_64 cross-compiling for PPC
> >> then HOST_WORDS_BIGENDIAN is true, but the iasl you use
> >> in the build process will be running on a little endian machine.
> >
> > Hi Peter, are you sure about this?
> > I saw the 'target_bigendian' that does what you described above.
> > $bigendian is the result of a little C program that checks *host's* endian-ness.
> > Of course I might have missed something.
>
> "host" for QEMU means "the machine QEMU will run on"
> (as opposed to "target" meaning "the machine QEMU is emulating").
> Those can both be different from the machine you're building on.
> Example: you can be on an x86_64 machine cross-compiling a
> qemu-system-mips intended to run on PPC hosts:
> build system: x86_64 (we don't currently try to identify its endianness)
> host system: PPC ("$bigendian" is set to endianness)
> target system: mips ("$target_bigendian" is set to endianness)
>
> bigendian is set by cross-compiling a test object, which produces
> a PPC object file that we then examine to see which endianness
> the PPC system we're building for is.
> target_bigendian is set for the target machine by just hard-coding it --
> in this case it would be set because 'mips' is a bigendian target.
> The iasl we use in the build process is the x86_64 native binary,
> so neither $bigendian nor $target_bigendian are correct.
Thanks for the detailed answer! It really helped!
I missed the build machine != host machine != target machine :(
Marcel
>
> thanks
> -- PMM
next prev parent reply other threads:[~2014-03-23 13:00 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-20 21:14 [Qemu-devel] [PATCH for-2.0 V3] tests/acpi-test: do not run iasl on big endian machines Marcel Apfelbaum
2014-03-20 21:57 ` Paolo Bonzini
2014-03-20 22:00 ` Marcel Apfelbaum
2014-03-20 22:06 ` Marcel Apfelbaum
2014-03-20 22:17 ` Peter Maydell
2014-03-20 22:41 ` Marcel Apfelbaum
2014-03-20 23:03 ` Peter Maydell
2014-03-23 9:52 ` Michael S. Tsirkin
2014-03-23 12:31 ` Peter Maydell
2014-03-23 9:51 ` Michael S. Tsirkin
2014-03-20 22:26 ` Laszlo Ersek
2014-03-20 22:33 ` Marcel Apfelbaum
2014-03-20 22:50 ` Laszlo Ersek
2014-03-20 23:16 ` Paolo Bonzini
2014-03-23 9:49 ` Michael S. Tsirkin
2014-03-23 12:14 ` Peter Maydell
2014-03-23 12:32 ` Marcel Apfelbaum
2014-03-23 12:48 ` Peter Maydell
2014-03-23 13:00 ` Marcel Apfelbaum [this message]
2014-03-23 12:51 ` Paolo Bonzini
2014-03-23 13:17 ` Marcel Apfelbaum
2014-03-23 13:58 ` Michael S. Tsirkin
2014-03-24 11:02 ` Andreas Färber
2014-03-25 3:48 ` Alexey Kardashevskiy
2014-03-23 12:32 ` Marcel Apfelbaum
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=1395579651.5673.23.camel@localhost.localdomain \
--to=marcel.a@redhat.com \
--cc=afaerber@suse.de \
--cc=aik@ozlabs.ru \
--cc=lersek@redhat.com \
--cc=mjt@tls.msk.ru \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
--cc=stefanha@redhat.com \
/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;
as well as URLs for NNTP newsgroup(s).