VirtualBox

Ticket #1947 (closed defect: fixed)

Opened 6 years ago

Last modified 5 years ago

Virtualbox.exe use 100% CPU when debug VM with WinDBG. -> fixed in SVN

Reported by: aaronwang Owned by:
Priority: major Component: host support
Version: VirtualBox 2.1.4 Keywords: 100% CPU
Cc: Guest type: Windows
Host type: Windows

Description

I have a kernel debug on Guest OS with WinDBG. When debugger has been connected. Process VirtualBox.exe in Host OS use 100% CPU.When I break Guest OS by debugger. It still use 100% CPU.

Change History

comment:1 Changed 6 years ago by sandervl73

That's to be expected due to the polling nature with which the serial port is controlled. Once you've booted up and there's no more communication (new executables/modules being loaded) cpu usage should go down.

comment:2 Changed 6 years ago by aaronwang

But, my debugger can't work. I resovle this by set priority of virtualbox.exe that running the Guest OS to "Below normal". Everything is working fine.

comment:3 Changed 6 years ago by sandervl73

  • Status changed from new to closed
  • Resolution set to worksforme

That works or if you have more than one core/cpu. I'll close the defect then.

comment:4 Changed 5 years ago by nixxcode

  • Status changed from closed to reopened
  • Resolution worksforme deleted

VMware has a nice option (on by default) which prevents 100% CPU usage when the guest is polling the serial port. It would be great it VirtualBox could implement similar functionality.
 http://www.vmware.com/support/ws5/doc/ws_devices_serial_advanced.html

As it stands, VirtualBox is not very useful for doing kernel mode debugging with WinDBG because of this problem. There's been some discussion of this over on the forum:
 http://forums.virtualbox.org/viewtopic.php?p=59612

comment:5 follow-up: ↓ 6 Changed 5 years ago by sandervl73

  • Summary changed from Virtualbox.exe use 100% CPU when debug VM with WinDBG. to Virtualbox.exe use 100% CPU when debug VM with WinDBG. -> fixed in SVN

That's already fixed in SVN: vboxmanage setextradata VMNAME "VBoxInternal/Devices/serial/0/Config/YieldOnLSRRead" 1

And again this is not an issue if you have more than one core/cpu. It's been working well with such hardware for years.

comment:6 in reply to: ↑ 5 Changed 5 years ago by nixxcode

Great to know it's been addressed in SVN :-)

I take it that this change isn't in the 2.1.4 release?

FWIW, my machine is a dual-core, but I couldn't get kernel debugging working. Maybe I was doing something wrong, but had no trouble doing so with VMware.

comment:7 Changed 5 years ago by sunlover

  • Version changed from VirtualBox 1.6.4 to VirtualBox 2.1.4

Right, this change was not included in 2.1.4. It will be available in the 2.2.x version of VBox.

And you are right, the problem can be noticed on a dual core too (that is why I've implemented the workaround :) ).

comment:8 Changed 5 years ago by nixxcode

I look forward to trying it out in the 2.2.x series :-)

Not sure if we should close this case for now...? I can always re-open if things are still iffy ;)

comment:9 Changed 5 years ago by sunlover

We close tickets when the VirtualBox version, that fixes the problem, is actually released. So this ticket should stay open for now.

comment:10 Changed 5 years ago by aaronwang

Terrible thing!!!!!! In Virutalbox 2.1.4 When debug VM with WinDBG. When I press 'CTRL+Break' In WinDBG, Process 'Virtualbox.exe'( guest vm ) deadlock. The VM I'm debugging doesn't response. WinDBG doesn't show any infomation. After five minutes. I kill 'virtualbox.exe'. It's seem I can't debug VM with WinDBG now.

I have two pc. AMD Althlon 3500+, 1GB DDR Intel Dual Core E2200 2.20GHz, 4GB DDR2 The same thing happenes. I hope this problem will be fixed soon.

comment:11 Changed 5 years ago by sandervl73

  • Status changed from reopened to closed
  • Resolution set to fixed

comment:12 Changed 5 years ago by nixxcode

I've re-tested this with 2.0.0 r45846

After enabling YieldOnLSRRead with VBoxManage, WinDBG debugging is working nicely :-)

May I suggest exposing this option in the configuration GUI?

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use