Do binaries have to be page size aware? I thought it was a runtime thing.
However if the aarch64-linux-user is hardwired to 4k it might explain it's
confusion on a 64k machine.

On Thu, 28 Nov 2019, 16:33 Peter Maydell, <peter.mayd...@linaro.org> wrote:

> If you objdump the binary and the offending library what do they seem to
> have been built for ?
>
> Certainly this:
>
> 0000004000000000-0000004000001000 0000000000001000 ---
>
> looks like a 4K page when we're trying to load things, so either we got
> the loading wrong or the binary is 4K.
>
> --
> You received this bug notification because you are a member of qemu-
> devel-ml, which is subscribed to QEMU.
> https://bugs.launchpad.net/bugs/1853826
>
> Title:
>   ELF loader fails to load shared object on ThunderX2 running RHEL7
>
> Status in QEMU:
>   Incomplete
>
> Bug description:
>   Simple test:
>   hello.c
>
>   include <stdio.h>
>
>   int main(int argc, char* argv[])
>   {
>     {
>       printf("Hello World... \n");
>     }
>     return 0;
>   }
>
>   when compiled with :
>   *Compiler
>
> https://developer.arm.com/tools-and-software/server-and-hpc/arm-architecture-tools/arm-allinea-studio/download
>   Arm-Compiler-for-HPC_19.3_RHEL_7_aarch64.tar
>
>   *Running:
>   1) with -armpl
>        armclang -armpl hello.c
>        ./qemu/build/aarch64-linux-user/qemu-aarch64 a.out
>   2) without flag
>       armclang hello.c
>        ./qemu/build/aarch64-linux-user/qemu-aarch64 a.out
>
>   •With Docker image:
>          CentOS Linux release 7.7.1908 (AltArch)
>
>   *Two different machines:
>          AArch64, Taishan. tsv110, Kunpeng 920, ARMv8.2-A
>          AArch64, Taishan 2280, Cortex-A72, ARMv8-A
>
>   *QEMU 4.0
>        qemu-aarch64 version 4.1.91 (v4.2.0-rc1)
>
>
>   Results:
>
>
>    ****Taishan 2280 Cortex-A72
>         Running
>   1)with -armpl flag with and without the docker
>             WORKS-> Hello World...
>                  -> ldd a.out
>   ldd a.out
>   linux-vdso.so.1 =>  (0x0000ffffbc6a2000)
>   libamath_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libamath_generic.so
> (0x0000ffffbc544000)
>   libm.so.6 => /lib64/libm.so.6 (0x0000ffffbc493000)
>   libastring_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libastring_generic.so
> (0x0000ffffbc472000) libarmflang.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/libarmflang.so
> (0x0000ffffbbfd3000)
>   libomp.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/libomp.so
> (0x0000ffffbbef5000)
>   librt.so.1 => /lib64/librt.so.1 (0x0000ffffbbed4000)
>   libpthread.so.0 => /lib64/libpthread.so.0 (0x0000ffffbbe9f000)
>   libarmpl_lp64_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libarmpl_lp64_generic.so
> (0x0000ffffb3306000)
>   libc.so.6 => /lib64/libc.so.6 (0x0000ffffb3180000)
>   libstdc++.so.6 =>
> /scratch/gcc-9.2.0_Generic-AArch64_RHEL-8_aarch64-linux/lib64/libstdc++.so.6
> (0x0000ffffb2f30000)
>   libgcc_s.so.1 =>
> /scratch/gcc-9.2.0_Generic-AArch64_RHEL-8_aarch64-linux/lib64/libgcc_s.so.1
> (0x0000ffffb2eff000)
>   libdl.so.2 => /lib64/libdl.so.2 (0x0000ffffb2ede000)
>   /lib/ld-linux-aarch64.so.1 (0x0000ffffbc674000)
>
>
>   Running
>   2) without -armpl flag with and without the docker
>              WORKS -> Hello World...
>                    -> ldd a.out
>   ldd a.out
>    linux-vdso.so.1 =>  (0x0000ffffa6895000)
>   libastring_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libastring_generic.so
> (0x0000ffffa6846000)
>   libc.so.6 => /lib64/libc.so.6 (0x0000ffffa66c0000)
>   /lib/ld-linux-aarch64.so.1 (0x0000ffffa6867000)
>
>
>   ****Taishan - tsv110  Kunpeng 920
>          For Running
>
>   1)with -armpl flag with and without the docker
>              DOES NOT WORK -> with and without Docker
>                            -> It shows : qemu:handle_cpu_signal received
> signal outside vCPU
>    context @ pc=0xffffaaa8844a
>                            -> ldd a.out
>   ldd a.out
>   linux-vdso.so.1 =>  (0x0000ffffad4b0000)
>   libamath_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libamath_generic.so
> (0x0000ffffad370000)
>   libm.so.6 => /lib64/libm.so.6 (0x0000ffffad2a0000)
>   libastring_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libastring_generic.so
> (0x0000ffffad270000) libarmflang.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/libarmflang.so
> (0x0000ffffacdd0000)
>   libomp.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/libomp.so
> (0x0000ffffaccf0000)
>   librt.so.1 => /lib64/librt.so.1 (0x0000ffffaccc0000)
>   libpthread.so.0 => /lib64/libpthread.so.0 (0x0000ffffacc80000)
>   libarmpl_lp64_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libarmpl_lp64_generic.so
> (0x0000ffffa40e0000)
>   libc.so.6 => /lib64/libc.so.6 (0x0000ffffa3f50000)
>   libstdc++.so.6 =>
> /scratch/gcc-9.2.0_Generic-AArch64_RHEL-8_aarch64-linux/lib64/libstdc++.so.6
> (0x0000ffffa3d00000)
>   libgcc_s.so.1 =>
> /scratch/gcc-9.2.0_Generic-AArch64_RHEL-8_aarch64-linux/lib64/libgcc_s.so.1
> (0x0000ffffa3cc0000)
>   libdl.so.2 => /lib64/libdl.so.2 (0x0000ffffa3c90000)
>   /lib/ld-linux-aarch64.so.1 (0x0000ffffad4c0000)
>
>
>   Running
>   2) without -armpl flag with and without the docker
>                  WORKS -> Hello World..
>                        -> ldd a.out
>   ldd a.out
>   linux-vdso.so.1 =>  (0x0000ffff880c0000)
>   libastring_generic.so =>
> /scratch/arm-linux-compiler-19.3_Generic-AArch64_RHEL-8_aarch64-linux/lib/clang/9.0.1/armpl_links/lib/libastring_generic.so
> (0x0000ffff88080000)
>   libc.so.6 => /lib64/libc.so.6 (0x0000ffff87ee0000)
>   /lib/ld-linux-aarch64.so.1 (0x0000ffff880d0000)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1853826/+subscriptions
>
>

Reply via email to