[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchrono

From: He Yi
Subject: [Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Date: Tue, 03 Jul 2018 02:44:07 -0000

Thanks very much @Peter Maydell, when invoking these tools through
docker/qemu-user I really saw syscall disorders, even strace fails. You
are right these tools have x86_64 syscall numbers & perhaps mmaps of
/dev/mem to allocate contiguous memory region for DMA transactions.

Then the goal cannot be achieved by docker/qemu-user method (although it
is quite convenient :)

strace ./Network_Firmware_T6VN9_LN_18.5.17_A00.BIN
qemu: Unsupported syscall: 101
qemu: Unsupported syscall: 101
/usr/bin/strace: ptrace(PTRACE_TRACEME, ...): Function not implemented
+++ exited with 1 +++

I'll downgrade this bug to a question, and try full qemu-system
emulation with PCI device passthrough assignment to achieve the goal of
running Intel/Dell firmware upgrading tools on aarch64 servers.

You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.

  qemu-x86_64 on aarch64 reports "Synchronous External Abort"

Status in QEMU:

Bug description:
  Purpose: to run x86_64 utilities on aarch64 platform (Intel/Dell network 
adapters' firmware upgrade tools)
  System: aarch64 server platform, with ubuntu 16.04 (xenial) Linux 
4.13.0-45-generic #50~16.04.1-Ubuntu SMP Wed May 30 11:14:25 UTC 2018 aarch64 
aarch64 aarch64 GNU/Linux

  1) build linux-user qemu-x86_64 static from source (tried both version 2.12.0 
& 2.11.2)
     ./configure --target-list=x86_64-linux-user --disable-system --static 

  2) install the interpreter into binfmt_misc filesystem
     $ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
       interpreter /usr/local/bin/qemu-x86_64
       offset 0
       magic 7f454c4602010100000000000000000002003e00
       mask fffffffffffefefcfffffffffffffffffeffffff

  3) packaging Intel/Dell upgrade utilities into docker images, I've published 
two on docker hub:
     REPOSITORY          TAG
     heyi/dellupdate     latest
     heyi/nvmupdate64e   latest

  4) run the docker container on aarch64 server platform:
     docker run -it --privileged --network host --volume 
/usr/local/bin/qemu-x86_64:/usr/local/bin/qemu-x86_64 heyi/dellupdate:latest

  5) finally, within docker container run the upgrade tool:
     # ./Network_Firmware_T6VN9_LN_18.5.17_A00.BIN

  Errors: in dmesg it reports excessive 'Synchronous External Abort':

  kernel: [242850.159893] Synchronous External Abort: synchronous external 
abort (0x92000610) at 0x0000000000429958
  kernel: [242850.169199] Unhandled fault: synchronous external abort 
(0x92000610) at 0x0000000000429958

  thanks and best regards, Yi

To manage notifications about this bug go to:

reply via email to

[Prev in Thread] Current Thread [Next in Thread]