From: Riku Voipio <riku.voipio@iki.fi>
To: Bug 1344320 <1344320@bugs.launchpad.net>
Cc: qemu-devel@nongnu.org, ard.biesheuvel@linaro.org
Subject: Re: [Qemu-devel] [Bug 1344320] Re: qemu-aarch64 cannot execute glibc
Date: Fri, 25 Jul 2014 11:54:49 +0300 [thread overview]
Message-ID: <20140725085449.GA10574@afflict.kos.to> (raw)
In-Reply-To: <CAFEAcA96VX8Zfc-7bi4WiC=PcMJbLvJJDmbeCinm8wRQ59cZAQ@mail.gmail.com>
On Tue, Jul 22, 2014 at 10:22:15PM -0000, Peter Maydell wrote:
> On 22 July 2014 20:46, Richard Henderson <rth@twiddle.net> wrote:
> > On 07/21/2014 10:37 AM, Peter Maydell wrote:
> >>> It's trying to measure clock cycles required to perform the startup
> >>> relocations.
> >>
> >> That's a neat trick, given that the generic timers are not cycle
> >> counters! They're a fixed frequency counter which is generally
> >> unrelated and rather slower than the CPU frequency (and
> >> which doesn't scale up and down with CPU frequency either).
> >
> > Even better.
>
> In any case the kernel guys say you can't guarantee they
> exist unless you get them to define an ELF hwcap for
> "timers exist and have a sane value in the 'what frequency
> are they' register". So this is a glibc bug and I'm
> not fixing QEMU...
It's used by openssl for rdtsc emulation as well:
http://git.openssl.org/gitweb/?p=openssl.git;a=blob;f=crypto/arm64cpuid.S#l17
Riku
> -- PMM
>
> Title:
> qemu-aarch64 cannot execute glibc
>
> Status in QEMU:
> New
>
> Bug description:
> $ aarch64-linux-user/qemu-aarch64 -version
> qemu-aarch64 version 2.0.92, Copyright (c) 2003-2008 Fabrice Bellard
> $ aarch64-linux-user/qemu-aarch64 -d in_asm /daten/build/build-root/home/abuild/rpmbuild/BUILD/glibc-2.19.90/cc-base/elf/ld-linux-aarch64.so.1
> host mmap_min_addr=0x10000
> guest_base 0x0
> start end size prot
> 0000004000000000-000000400001e000 000000000001e000 r-x
> 000000400001e000-000000400002e000 0000000000010000 ---
> 000000400002e000-0000004000031000 0000000000003000 rw-
> 0000004000031000-0000004000032000 0000000000001000 ---
> 0000004000032000-0000004000832000 0000000000800000 rw-
> start_brk 0x0000000000000000
> end_code 0x000000400001dbe0
> start_code 0x0000004000000000
> start_data 0x000000400002eba8
> end_data 0x0000004000030008
> start_stack 0x0000004000830a10
> brk 0x0000004000030170
> entry 0x00000040000012c0
> ----------------
> IN:
> 0x00000040000012c0: 910003e0 mov x0, sp
> 0x00000040000012c4: 94000d4f bl #+0x353c (addr 0x7fffb5bdad68)
>
> ----------------
> IN: _dl_start
> 0x0000004000004800: d11243ff sub sp, sp, #0x490 (1168)
> 0x0000004000004804: a9ba7bfd stp x29, x30, [sp, #-96]!
> 0x0000004000004808: 910003fd mov x29, sp
> 0x000000400000480c: a9046bf9 stp x25, x26, [sp, #64]
> 0x0000004000004810: a90153f3 stp x19, x20, [sp, #16]
> 0x0000004000004814: a9025bf5 stp x21, x22, [sp, #32]
> 0x0000004000004818: a90363f7 stp x23, x24, [sp, #48]
> 0x000000400000481c: a90573fb stp x27, x28, [sp, #80]
> 0x0000004000004820: aa0003fa mov x26, x0
> 0x0000004000004824: d5033fdf isb
> 0x0000004000004828: d53be040 mrs x0, (unknown)
>
> qemu: uncaught target signal 4 (Illegal instruction) - core dumped
> Illegal instruction
> $ objdump -d /daten/build/build-root/home/abuild/rpmbuild/BUILD/glibc-2.19.90/cc-base/elf/ld-linux-aarch64.so.1 | grep ' 4828:'
> 4828: d53be040 mrs x0, cntvct_el0
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1344320/+subscriptions
next prev parent reply other threads:[~2014-07-25 8:54 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-18 20:30 [Qemu-devel] [Bug 1344320] [NEW] qemu-aarch64 cannot execute glibc Andreas Schwab
2014-07-19 10:54 ` Peter Maydell
2014-07-21 18:55 ` Richard Henderson
2014-07-21 10:46 ` [Qemu-devel] [Bug 1344320] " Peter Maydell
2014-07-21 19:00 ` Richard Henderson
2014-07-21 20:37 ` Peter Maydell
2014-07-22 19:46 ` Richard Henderson
2014-07-22 22:22 ` Peter Maydell
2014-07-24 21:45 ` Richard Henderson
2014-07-25 8:54 ` Riku Voipio [this message]
2014-07-25 9:02 ` Ard Biesheuvel
2014-07-21 10:56 ` Peter Maydell
2014-08-29 11:48 ` 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=20140725085449.GA10574@afflict.kos.to \
--to=riku.voipio@iki.fi \
--cc=1344320@bugs.launchpad.net \
--cc=ard.biesheuvel@linaro.org \
--cc=qemu-devel@nongnu.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;
as well as URLs for NNTP newsgroup(s).