Opened 8 years ago
Last modified 7 years ago
#16076 new defect
Ubuntu 16.04.1 VM slow after copying data to external USB drive (irq 20: nobody cared)
Reported by: | John Bokma | Owned by: | |
---|---|---|---|
Component: | USB | Version: | VirtualBox 5.1.6 |
Keywords: | usb, irq20, vboxguest, vgdrvLinuxISR, call trace | Cc: | |
Guest type: | Linux | Host type: | Mac OS X |
Description
When I copy a lot of data to an external Western Digital passport drive (USB3) either using rsync or just drag and drop in a Ubuntu 16.04.1 Desktop VM now and then the desktop slows down to a crawl and stays like this even if I cancel the rsync. The dataset is a lot of 30-40MB files (rsync), or ~8 of 4-5G files (drag and drop). It does not always occur, but when I check dmesg -w I do see "irq 20: nobody cared" followed by a call trace. Reboot of the VM fixes this, until it happens again.
Attachments (2)
Change History (6)
by , 8 years ago
Attachment: | slow-vm.txt added |
---|
comment:1 by , 8 years ago
I have run into this problem multiple times randomly when VM is running in the background. Guest system (64-bit Fedora 25 in this case) freezes and becomes non responsible. After reading this bug report, I see that the system is still alive, however really really slow..
VirtualBox 5.1.12, Windows 7 Pro Host, Fedora 25 (64-bit) guest with USB3 xHCI support installed. At the time of problem, only FTDI TTL232R-3V3 adapter was attached to guest.
I'm able to continue working by restarting the guest, until it runs into this problem again..
by , 8 years ago
Attachment: | vm-freeze.txt added |
---|
Manually written kernel log from guest window after freeze
comment:2 by , 7 years ago
Same here with VirtualBox 5.1.22 at MacOS with Ubuntu 16.04 as guest.
Quite annoying.
Tried adding 'irqpoll', won't help.
I forward USB devices (phones) to the VM and get such a stack trace quite often:
[ 2975.163808] irq 20: nobody cared (try booting with the "irqpoll" option) [ 2975.309644] CPU: 0 PID: 4950 Comm: java Not tainted 4.4.0-78-generic #99-Ubuntu [ 2975.309646] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006 [ 2975.309648] 0000000000000086 00000000e2715510 ffff88007fc03d18 ffffffff813f8dd3 [ 2975.309650] ffff880079a95200 ffff880079a952d4 ffff88007fc03d40 ffffffff810ddd33 [ 2975.309651] ffff880079a95200 0000000000000000 0000000000000014 ffff88007fc03d78 [ 2975.309653] Call Trace: [ 2975.309655] <IRQ> [<ffffffff813f8dd3>] dump_stack+0x63/0x90 [ 2975.309662] [<ffffffff810ddd33>] __report_bad_irq+0x33/0xc0 [ 2975.309664] [<ffffffff810de0c7>] note_interrupt+0x247/0x290 [ 2975.309665] [<ffffffff810db277>] handle_irq_event_percpu+0x167/0x1d0 [ 2975.309667] [<ffffffff810db31e>] handle_irq_event+0x3e/0x60 [ 2975.309669] [<ffffffff810de639>] handle_fasteoi_irq+0x99/0x150 [ 2975.309671] [<ffffffff8103119d>] handle_irq+0x1d/0x30 [ 2975.309678] [<ffffffff8184341b>] do_IRQ+0x4b/0xd0 [ 2975.309681] [<ffffffff81841502>] common_interrupt+0x82/0x82 [ 2975.309683] [<ffffffff81085d61>] ? __do_softirq+0x81/0x290 [ 2975.309685] [<ffffffff810860e3>] irq_exit+0xa3/0xb0 [ 2975.309687] [<ffffffff818434e2>] smp_apic_timer_interrupt+0x42/0x50 [ 2975.309688] [<ffffffff818417a2>] apic_timer_interrupt+0x82/0x90 [ 2975.309689] <EOI> [<ffffffffc03ab71b>] ? VbglGRPerform+0x3b/0x50 [vboxguest] [ 2975.309704] [<ffffffffc03abf77>] VbglR0HGCMInternalCall+0x607/0xe90 [vboxguest] [ 2975.309709] [<ffffffffc03a8550>] ? vgdrvHgcmAsyncWaitCallbackWorker+0x220/0x220 [vboxguest] [ 2975.309711] [<ffffffff810b543c>] ? update_cfs_shares+0xbc/0x100 [ 2975.309713] [<ffffffff810b2bdc>] ? __enqueue_entity+0x6c/0x70 [ 2975.309714] [<ffffffff810b5279>] ? update_curr+0x79/0x160 [ 2975.309716] [<ffffffff810b543c>] ? update_cfs_shares+0xbc/0x100 [ 2975.309717] [<ffffffff810b2bdc>] ? __enqueue_entity+0x6c/0x70 [ 2975.309719] [<ffffffff810caf21>] ? __raw_callee_save___pv_queued_spin_unlock+0x11/0x20 [ 2975.309724] [<ffffffffc03a7bba>] vgdrvIoCtl_HGCMCall+0x22a/0x2d0 [vboxguest] [ 2975.309725] [<ffffffff810b5823>] ? check_preempt_wakeup+0x193/0x220 [ 2975.309730] [<ffffffffc03a99e3>] VGDrvCommonIoCtl+0x263/0x1bf0 [vboxguest] [ 2975.309734] [<ffffffffc03a6284>] VBoxGuestIDCCall+0x64/0x70 [vboxguest] [ 2975.309737] [<ffffffffc0385856>] vbglDriverIOCtl+0x16/0x20 [vboxsf] [ 2975.309739] [<ffffffffc03865a3>] VbglHGCMCall+0x43/0x90 [vboxsf] [ 2975.309741] [<ffffffffc0386f23>] VbglR0SfRead+0xa3/0xd0 [vboxsf] [ 2975.309743] [<ffffffffc038425c>] sf_reg_read+0x12c/0x190 [vboxsf] [ 2975.309749] [<ffffffff8120ea48>] __vfs_read+0x18/0x40 [ 2975.309750] [<ffffffff8120f016>] vfs_read+0x86/0x130 [ 2975.309752] [<ffffffff8120fd65>] SyS_read+0x55/0xc0 [ 2975.309754] [<ffffffff81840a32>] entry_SYSCALL_64_fastpath+0x16/0x71 [ 2975.309755] handlers: [ 2975.373606] [<ffffffff81622370>] usb_hcd_irq [ 2975.440444] [<ffffffffc0061b20>] mpt_interrupt [mptbase] [ 2975.607860] [<ffffffffc03a6a30>] vgdrvLinuxISR [vboxguest] [ 2975.753998] Disabling IRQ #20
comment:3 by , 7 years ago
One more example of a bactrace
May 18 15:19:55 appium-ubuntu1604-vm kernel: irq 20: nobody cared (try booting with the "irqpoll" option) May 18 15:19:55 appium-ubuntu1604-vm kernel: CPU: 0 PID: 2948 Comm: node Not tainted 4.4.0-78-generic #99-Ubuntu May 18 15:19:55 appium-ubuntu1604-vm kernel: Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006 May 18 15:19:55 appium-ubuntu1604-vm kernel: 0000000000000086 0000000066df900e ffff88007fc03d18 ffffffff813f8dd3 May 18 15:19:55 appium-ubuntu1604-vm kernel: ffff880079a96200 ffff880079a962d4 ffff88007fc03d40 ffffffff810ddd33 May 18 15:19:55 appium-ubuntu1604-vm kernel: ffff880079a96200 0000000000000000 0000000000000014 ffff88007fc03d78 May 18 15:19:55 appium-ubuntu1604-vm kernel: Call Trace: May 18 15:19:55 appium-ubuntu1604-vm kernel: <IRQ> [<ffffffff813f8dd3>] dump_stack+0x63/0x90 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff810ddd33>] __report_bad_irq+0x33/0xc0 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff810de0c7>] note_interrupt+0x247/0x290 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff810db277>] handle_irq_event_percpu+0x167/0x1d0 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff810db31e>] handle_irq_event+0x3e/0x60 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff810de639>] handle_fasteoi_irq+0x99/0x150 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff8103119d>] handle_irq+0x1d/0x30 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff8184341b>] do_IRQ+0x4b/0xd0 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff81841502>] common_interrupt+0x82/0x82 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff81085d61>] ? __do_softirq+0x81/0x290 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff810860e3>] irq_exit+0xa3/0xb0 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff818434e2>] smp_apic_timer_interrupt+0x42/0x50 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff818417a2>] apic_timer_interrupt+0x82/0x90 May 18 15:19:55 appium-ubuntu1604-vm kernel: <EOI> [<ffffffff810031e8>] ? exit_to_usermode_loop+0x68/0xd0 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff81003c16>] prepare_exit_to_usermode+0x26/0x30 May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff81841525>] retint_user+0x8/0x10 May 18 15:19:55 appium-ubuntu1604-vm kernel: handlers: May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffff81622370>] usb_hcd_irq May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffffc002bb20>] mpt_interrupt [mptbase] May 18 15:19:55 appium-ubuntu1604-vm kernel: [<ffffffffc0398a30>] vgdrvLinuxISR [vboxguest] May 18 15:19:55 appium-ubuntu1604-vm kernel: Disabling IRQ #20 May 18 15:20:31 appium-ubuntu1604-vm kernel: xhci_hcd 0000:00:0c.0: xHCI host not responding to stop endpoint command. May 18 15:20:31 appium-ubuntu1604-vm kernel: xhci_hcd 0000:00:0c.0: Assuming host is dying, halting host. May 18 15:20:31 appium-ubuntu1604-vm kernel: xhci_hcd 0000:00:0c.0: HC died; cleaning up May 18 15:20:31 appium-ubuntu1604-vm kernel: usb 1-1: USB disconnect, device number 2 May 18 15:20:31 appium-ubuntu1604-vm kernel: usb 1-2: USB disconnect, device number 3 May 18 15:20:31 appium-ubuntu1604-vm kernel: xhci_hcd 0000:00:0c.0: Slot 2 endpoint 4 not removed from BW list! May 18 15:20:31 appium-ubuntu1604-vm kernel: xhci_hcd 0000:00:0c.0: Slot 2 endpoint 8 not removed from BW list! May 18 15:20:31 appium-ubuntu1604-vm kernel: usb 1-3: USB disconnect, device number 4 May 18 15:20:31 appium-ubuntu1604-vm kernel: xhci_hcd 0000:00:0c.0: Slot 3 endpoint 4 not removed from BW list! May 18 15:20:31 appium-ubuntu1604-vm kernel: xhci_hcd 0000:00:0c.0: Slot 3 endpoint 8 not removed from BW list!
comment:4 by , 7 years ago
This looks very much like a bug in Linux 4.8 and some later versions which was fixed upstream. Perhaps Ubuntu back-ported the bug to their 4.4 kernel. I can't immediately find the bug reference unfortunately.
captured dmesg -w output (Ubuntu guest)