Re: Bug? 100% load on core after physically removing USB storage from host

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

 



On Sat, Jun 16, 2012 at 6:16 AM, Emmanuel Noobadmin
<centos.admin@xxxxxxxxx> wrote:
> On 6/13/12, Stefan Hajnoczi <stefanha@xxxxxxxxx> wrote:
>>Since system time is a large chunk you could use strace -f -p $(pgrep
>>qemu-kvm) or other system call tracing tools to see what the qemu-kvm
>>process is doing.
>
> The command you gave didn't work so I replace $(pgrep) with PID of the
> process running the VM after checking that -p was the PID option.
>
> strace -f -p 19424 produces the following repeating lines
>
> [pid 19424] ioctl(0, USBDEVFS_REAPURBNDELAY, 0x7fff8fc43d48) = -1
> ENOTTY (Inappropriate ioctl for device)

This looks suspicious: QEMU is calling ioctl() on standard input (fd
0) with a USB operation code.  The USB layer probably set the
USBHostDevice->fd field to 0 or freed USBHostDevice but left the
async_complete() select(2) handler registered on file descriptor 16.

I believe the call is coming from hw/usb/host-linux.c:async_complete()
but am not using the same source tree as your qemu-kvm so I could be
off.  The code suggests that QEMU also logs an error message
("USBDEVFS_REAPURBNDELAY: Inappropriate ioctl for device") when this
happens.  If you want, check the libvirt log file for this guest - it
probably has tons of these messages in it.

Gerd: Does this give you enough information to recognize whether this
has already been fixed in qemu.git or how to fix it?

Emmanuel: You mentioned that upgrading to a newer version might not be
worth it, but if you're willing to test qemu.git/master just to see if
the problem has already been fixed then that would be helpful.
http://wiki.qemu.org/Download

Stefan
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux