Page 1 of 1

Adding COM port to XP guest crashes the guest

Posted: 25. Feb 2019, 04:33
by SCR128294
I'm trying to attach a serial port device to the host to interact with software within the guest. When I enable a serial port on the guest it crashes. Even if the port is set to disconnected it will crash. I've gotten all the way into the desktop and other times it doesn't even finish booting. Disabling the port makes it work without issue.
Guest: Windows XP
Host: Windows 10
I've attached the log. Any help would be greatly appreciated.

Re: Adding COM port to XP guest crashes the guest

Posted: 25. Feb 2019, 11:09
by mpack
Please clarify: does "attach a serial port device" mean mapping a host port to the VM using the VM settings | Serial, or does it mean assigning a USB device to the VM?

I ask because the guru meditation seems to occur immediately after the USB interface is initialized. Plus I notice that it's only OHCI (no USB2 support), because you have not installed the extension pack for USB2 support.
00:00:19.263291 OHCI: Software reset
00:00:19.263530 OHCI: USB Reset
00:00:19.263648 OHCI: USB Operational
00:00:19.333171 Changing the VM state from 'RUNNING' to 'GURU_MEDITATION'
00:00:19.333223 Console: Machine state changed to 'GuruMeditation'
00:00:19.333509 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
00:00:19.333511 !!
00:00:19.333511 !! VCPU0: Guru Meditation -2403 (VERR_TRPM_DONT_PANIC)
00:00:19.333564 !!
00:00:19.333575 !! TRAP=0e ERRCD=0000000000000010 CR2=00000000a08b9680 EIP=a08b9680 Type=0 cbInstr=ff
00:00:19.333590 !! EIP is not in any code known to VMM!
00:00:19.333611 !!
00:00:19.333612 !!
The crash btw is a driver crash inside the guest: did you install a driver for a USB device? VirtualBox can only be sure of catching kernel crashes if you enable VT-x in your host BIOS, and in the VM settings, and make sure that Hyper-v is disabled in the host OS.
00:00:05.312771 CPUM: No hardware-virtualization capability detected
00:00:05.313253 CPUM: fXStateHostMask=0x3; initial: 0x0; host XCR0=0x3
00:00:05.314668 CPUM: Matched host CPU INTEL 0x6/0x3a/0x9 Intel_Core7_IvyBridge with CPU DB entry 'Intel Core i5-3570' (INTEL 0x6/0x3a/0x9 Intel_Core7_IvyBridge)

Re: Adding COM port to XP guest crashes the guest

Posted: 25. Feb 2019, 11:25
by socratis
00:00:06.033425 Full Name: "Intel(R) Celeron(R) CPU 1007U @ 1.50GHz"
The Celeron 1007U CPU may be an old one, but it does support VT-x.

Re: Adding COM port to XP guest crashes the guest

Posted: 25. Feb 2019, 21:44
by SCR128294
does "attach a serial port device" mean mapping a host port to the VM using the VM settings | Serial, or does it mean assigning a USB device to the VM?
Trying to map a host port to the VM using VM settings. And Serial as in a com port on the host device. Without the serial port enabled, the guest accesses usb's I've connected to the host and mapped via VM settings and runs without crashing.

And thanks for the tip on enabling the hardware acceleration.

Re: Adding COM port to XP guest crashes the guest

Posted: 26. Feb 2019, 10:56
by mpack
SCR128294 wrote:Without the serial port enabled, the guest accesses usb's I've connected to the host and mapped via VM settings and runs without crashing.
Are they however USB serial ports on the host? Because another possible error is to assign them as a host port AND assign ownership of the USB interface to the VM. That could certainly cause strange things to happen with the USB interface is initialized.

Re: Adding COM port to XP guest crashes the guest

Posted: 26. Feb 2019, 22:23
by SCR128294
Are they however USB serial ports on the host?
I'm not entirely sure what you mean on this one, they are usb 2.0 ports on the host, currently they are mapped in the VM settings to the guest. Whenever I shutdown the guest they reappear on the host. Not sure if that clarifies the ownership of the USB interface issue or not.

The crashing error only occurred when I attempted to enable a COM port on the guest that I was trying to map to the physical RS232 serial port on the host. Even with the port set to disconnected the machine would still crash.

Re: Adding COM port to XP guest crashes the guest

Posted: 27. Feb 2019, 12:45
by mpack
SCR128294 wrote:
Are they however USB serial ports on the host?
I'm not entirely sure what you mean on this one, they are usb 2.0 ports on the host
Now you have me wondering what you mean!

Back in the day there used to be COM ports (UARTs) on the motherboard of every PC, directly connected to the IO ports of the CPU. In recent years the tendency has been to remove them, especially in smaller PCs such as notebooks, and rely on users who need them to buy USB-RS232 adapters.

There has been a parallel tendency to move all legacy hardware with specialist interfacing onto the USB bus, for neatness and to free up interrupt and I/O ports. You'd have a traditional USB serial connector on the outside of the case, but inside the case there's a USB-RS232 adapter.

So my question was: is your host serial port native, legacy, a discrete UART on the motherboard, or is it one of the USB options? Because either one of the latter would be upset by misconfiguring the USB options inside the VM.

I guess there's another way to find out: disable USB support entirely in your VM.

Re: Adding COM port to XP guest crashes the guest

Posted: 9. Mar 2019, 02:36
by SCR128294
Sorry I never posted back, we were using vm's as a way to run some old software on a new computer and ended up going another route to do the same thing without using vm's. Thanks for all your help!

Re: Adding COM port to XP guest crashes the guest

Posted: 9. Mar 2019, 11:02
by mpack
Thanks for reporting back. I agree: If you need to talk to physical hardware, and have a way to do it that doesn't involve a virtual machine, then that's almost always the way to go.

Re: Adding COM port to XP guest crashes the guest

Posted: 9. May 2019, 21:32
by abizjak
Hi,
I've been experiencing what I believe is the same bug with VirtualBox 6.0.6 and Linux guests. It seems to happen whenever SW virtualization is enabled and a serial port is configured. With a Linux guest it crashes during boot already (no need for a program to open the serial port). It seems to be a regression from VBox 5. I've filed VirtualBox ticket #18632.

Re: Adding COM port to XP guest crashes the guest

Posted: 10. May 2019, 09:59
by mpack
Well, you can't be discussing the same bug as above because no VirtualBox bug has been discussed above. The discussion above is about a bad driver causing a guest crash because the OP hasn't enabled VT-x. That isn't a VirtualBox bug, it's just a fact of life. Some guest crashes (especially in driver code) can't be prevented by software only virtualization.

You ought to raise issues in the forums before creating a ticket, otherwise the ticket is likely to be ignored, or closed as invalid.

Re: Adding COM port to XP guest crashes the guest

Posted: 22. May 2019, 19:28
by abizjak
For what it's worth, the bug I reported has been confirmed by VirtualBox developers and will be fixed in the next maintenance release. Of course I cannot reliably say whether the issue the poster was experiencing is a manifestation of this bug, but it seems very similar: in both cases it was with VBox using SW virtualization, happened when a serial port was opened/initialized, and produced the same guru meditation error.