ioctl SIOCGIFCONF causes qemu-aarch64-static to crash with "received signal outside vCPU context"

Bug #1796754 reported by Kan Li
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

To reproduce it, compile the attached crash.c under aarch64 to a.out and execute on x86_64
qemu-aarch64-static ./a.out

It will print the following and crash:

socket=3
qemu:handle_cpu_signal received signal outside vCPU context @ pc=0x60038cd6
qemu:handle_cpu_signal received signal outside vCPU context @ pc=0x6000157a

The version of qemu-aarch64-static is

qemu-aarch64 version 3.0.0 (qemu-3.0.0-1.fc29)
Copyright (c) 2003-2017 Fabrice Bellard and the QEMU Project developers

But it did also happen in previous versions so it is not a regression but a bug existed ever since.

Revision history for this message
Kan Li (likan) wrote :
tags: added: aarch64
tags: added: linux-user qemu
Kan Li (likan)
tags: added: arm
Revision history for this message
Kan Li (likan) wrote :

I was hit by this issue when I tried to run some Java program. And it turns out jdk sets the buf to NULL: http://hg.openjdk.java.net/jdk7/jdk7/jdk/file/887e525597f8/src/solaris/native/java/net/NetworkInterface.c#l1042

Setting to NULL is valid according to http://man7.org/linux/man-pages/man7/netdevice.7.html

But qemu doesn’t handle the case: https://github.com/qemu/qemu/blob/aa8e26de9617756febcbf794dda965df307fdaaa/linux-user/syscall.c#L4105

I guess qemu developers didn’t handle the case because the Linux kernel changed and they were based on behavior of old version: https://linux.die.net/man/7/netdevice

Please add the support for it otherwise a wide range of network related Java programs won’t run.

Revision history for this message
Kan Li (likan) wrote :

I sent out a patch: http://lists.nongnu.org/archive/html/qemu-devel/2018-10/msg01657.html
(Please ignore the other 2 identical patches. It was my first time sending out patches and I didn't know it was moderated so I sent it out multiple times).

Alex Bennée (ajbennee)
Changed in qemu:
status: New → In Progress
Revision history for this message
Kan Li (likan) wrote :

I have patch at http://lists.nongnu.org/archive/html/qemu-devel/2018-10/msg05401.html, please let me know when it can be merged, thanks.

Revision history for this message
Peter Maydell (pmaydell) wrote :

Kan Li's patch was applied to master as commit 22e4a267a6627e5b5b, so this will be fixed in the upcoming QEMU 4.0 release.

Changed in qemu:
status: In Progress → Fix Committed
Thomas Huth (th-huth)
Changed in qemu:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.