qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: David Hildenbrand <david@redhat.com>
Cc: Cornelia Huck <cohuck@redhat.com>,
	Riku Voipio <riku.voipio@iki.fi>,
	Richard Henderson <richard.henderson@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	Laurent Vivier <laurent@vivier.eu>,
	qemu-s390x <qemu-s390x@nongnu.org>
Subject: Re: [Qemu-devel] [qemu-s390x] linux-user: s390x issue on Fedora 30 (dynamic library loader?)
Date: Mon, 19 Aug 2019 13:36:12 +0100	[thread overview]
Message-ID: <CAFEAcA_FZrXNgmOFY4c8C=Xw9V-Ei4SNWvprAp_1rEt7P20hCA@mail.gmail.com> (raw)
In-Reply-To: <dff44ac1-10e7-285e-467d-8dfe8c7a469b@redhat.com>

On Mon, 19 Aug 2019 at 13:22, David Hildenbrand <david@redhat.com> wrote:
> Thanks, running
>
> "ldconfig -c etc/ld.so.cache -r ."
>
> Seems to fix the issue for me. So you are sure the bug resides in glic
> and not in the qemu-user pieces of the library loader?

Pretty sure, yes. QEMU doesn't implement any of the dynamic loader:
it just loads the elf interpreter (ld.so) and the binary into
memory, and all dynamic loading is ld.so running as guest code
doing syscall. The problem IIRC is that ld.so just mmap()s
the ld.so.cache file in and wades through it:
https://sourceware.org/git/?p=glibc.git;a=blob;f=elf/dl-cache.c;h=d8d1e2344e612d98689cf7d7ad965822d0ab6ed1;hb=HEAD

and the magic-number checks are memcmp(), so the magic number
is the same for both big and little endian but the data structures
in the file are not endian-independent.

thanks
-- PMM


  reply	other threads:[~2019-08-19 13:18 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <8fb538f3-dfdd-b427-727a-2e7c2120da09@gmail.com>
2019-08-17 16:14 ` [Qemu-devel] [qemu-s390x] linux-user: s390x issue on Fedora 30 (dynamic library loader?) David Hildenbrand
2019-08-17 16:22   ` Laurent Vivier
2019-08-17 16:51     ` David Hildenbrand
2019-08-19 10:32       ` Laurent Vivier
2019-08-19 11:55         ` David Hildenbrand
2019-08-19 12:02           ` Laurent Vivier
2019-08-19 12:03           ` David Hildenbrand
2019-08-19 12:11   ` Peter Maydell
2019-08-19 12:22     ` David Hildenbrand
2019-08-19 12:36       ` Peter Maydell [this message]
2019-08-19 13:34       ` Aleksandar Markovic
2019-08-19 13:43         ` Aleksandar Markovic
2019-08-19 13:43         ` Laurent Vivier
2019-08-19 13:44         ` Peter Maydell

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='CAFEAcA_FZrXNgmOFY4c8C=Xw9V-Ei4SNWvprAp_1rEt7P20hCA@mail.gmail.com' \
    --to=peter.maydell@linaro.org \
    --cc=cohuck@redhat.com \
    --cc=david@redhat.com \
    --cc=laurent@vivier.eu \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=riku.voipio@iki.fi \
    /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).