* [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort"
@ 2018-07-02 9:24 He Yi
2018-07-02 9:45 ` [Qemu-devel] [Bug 1779634] " Peter Maydell
` (6 more replies)
0 siblings, 7 replies; 8+ messages in thread
From: He Yi @ 2018-07-02 9:24 UTC (permalink / raw)
To: qemu-devel
Public bug reported:
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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
** Affects: qemu
Importance: Undecided
Status: New
** Description changed:
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
Reproduce:
- 1) build linux-user qemu-x86_64 static from source (tried both version 1.12.0 & 1.11.02)
- ./configure --target-list=x86_64-linux-user --disable-system --static --enable-linux-user
+ 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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
- $ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
- enabled
- interpreter /usr/local/bin/qemu-x86_64
- flags:
- offset 0
- magic 7f454c4602010100000000000000000002003e00
- mask fffffffffffefefcfffffffffffffffffeffffff
+ $ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
+ enabled
+ interpreter /usr/local/bin/qemu-x86_64
+ flags:
+ offset 0
+ magic 7f454c4602010100000000000000000002003e00
+ mask fffffffffffefefcfffffffffffffffffeffffff
3) packaging Intel/Dell upgrade utilities into docker images, I've published two on docker hub:
- REPOSITORY TAG IMAGE ID CREATED SIZE
- heyi/dellupdate latest 8e013f5511cd 6 hours ago 210MB
- heyi/nvmupdate64e latest 9d2de9d0edaa 3 days ago 451MB
+ 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
+ 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
+ # ./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
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
New
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
@ 2018-07-02 9:45 ` Peter Maydell
2018-07-02 10:03 ` Peter Maydell
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Peter Maydell @ 2018-07-02 9:45 UTC (permalink / raw)
To: qemu-devel
qemu-x86_64 is just a userspace program. If the kernel is getting
Synchronous External Aborts then this is not a QEMU problem. Either
there's a bug in the host kernel, or the guest binary is attempting to
mmap /dev/mem and do wrong things to it because it's expecting it to be
an x86 system. I suspect the latter (it's probably trying to do
userspace writes directly to the network controller handware). This sort
of binary is never going to be runnable via QEMU.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
New
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
2018-07-02 9:45 ` [Qemu-devel] [Bug 1779634] " Peter Maydell
@ 2018-07-02 10:03 ` Peter Maydell
2018-07-03 2:44 ` He Yi
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Peter Maydell @ 2018-07-02 10:03 UTC (permalink / raw)
To: qemu-devel
You could confirm this hypothesis by using strace and looking for
whether it's doing mmap() of /dev/mem or /dev/kmem. If it's true, then
the program would not work even if you had the source and recompiled it
for aarch64 -- it would require bugfixes (code changes) to achieve
whatever it's trying to do.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
New
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
2018-07-02 9:45 ` [Qemu-devel] [Bug 1779634] " Peter Maydell
2018-07-02 10:03 ` Peter Maydell
@ 2018-07-03 2:44 ` He Yi
2018-07-03 8:44 ` Peter Maydell
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: He Yi @ 2018-07-03 2:44 UTC (permalink / raw)
To: qemu-devel
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.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
New
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
` (2 preceding siblings ...)
2018-07-03 2:44 ` He Yi
@ 2018-07-03 8:44 ` Peter Maydell
2018-07-03 9:34 ` He Yi
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Peter Maydell @ 2018-07-03 8:44 UTC (permalink / raw)
To: qemu-devel
> /usr/bin/strace: ptrace(PTRACE_TRACEME, ...): Function not implemented
This indicates that you're trying to run an x86 strace under QEMU. That
won't work. You want to either (a) run QEMU + guest binary under the
host strace or (b) run QEMU + guest binary with the QEMU -strace option.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
New
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
` (3 preceding siblings ...)
2018-07-03 8:44 ` Peter Maydell
@ 2018-07-03 9:34 ` He Yi
2018-07-04 7:52 ` He Yi
2021-01-05 19:42 ` Matevz Langus
6 siblings, 0 replies; 8+ messages in thread
From: He Yi @ 2018-07-03 9:34 UTC (permalink / raw)
To: qemu-devel
thanks Peter, yes I tried to run an x86 strace under QEMU.
I'll stop this experiment since you are right this won't work for
utilities with device-level I/O and memory operations, I will raise this
requirement to Intel support website firstly.
Best Regards, Yi
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
New
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Qemu-devel] [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
` (4 preceding siblings ...)
2018-07-03 9:34 ` He Yi
@ 2018-07-04 7:52 ` He Yi
2021-01-05 19:42 ` Matevz Langus
6 siblings, 0 replies; 8+ messages in thread
From: He Yi @ 2018-07-04 7:52 UTC (permalink / raw)
To: qemu-devel
** Changed in: qemu
Status: New => Confirmed
** Changed in: qemu
Status: Confirmed => Invalid
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
Invalid
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug 1779634] Re: qemu-x86_64 on aarch64 reports "Synchronous External Abort"
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
` (5 preceding siblings ...)
2018-07-04 7:52 ` He Yi
@ 2021-01-05 19:42 ` Matevz Langus
6 siblings, 0 replies; 8+ messages in thread
From: Matevz Langus @ 2021-01-05 19:42 UTC (permalink / raw)
To: qemu-devel
Hi,
if of interest to anyone...
we were able to successfully upgrade firmware of Intel XL710 on aarch64 platform.
Two major items were required:
- small qemu change: https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg00553.html
- hack in Linux kernel /dev/mem driver in mmap function to catch wrong addresses nvmupdate64e asked for thru qemu. For some reason only lower 32-bit portion of actual physical address came to linux kernel. /dev/mem driver in kernel was changed to add missing upper 32 bits of address
best regards,
Matevz
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1779634
Title:
qemu-x86_64 on aarch64 reports "Synchronous External Abort"
Status in QEMU:
Invalid
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
Reproduce:
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 --enable-linux-user
2) install the interpreter into binfmt_misc filesystem
$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
enabled
interpreter /usr/local/bin/qemu-x86_64
flags:
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:
https://bugs.launchpad.net/qemu/+bug/1779634/+subscriptions
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2021-01-05 19:52 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-02 9:24 [Qemu-devel] [Bug 1779634] [NEW] qemu-x86_64 on aarch64 reports "Synchronous External Abort" He Yi
2018-07-02 9:45 ` [Qemu-devel] [Bug 1779634] " Peter Maydell
2018-07-02 10:03 ` Peter Maydell
2018-07-03 2:44 ` He Yi
2018-07-03 8:44 ` Peter Maydell
2018-07-03 9:34 ` He Yi
2018-07-04 7:52 ` He Yi
2021-01-05 19:42 ` Matevz Langus
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.