VirtualBox

Opened 4 years ago

Closed 4 years ago

#19603 closed defect (fixed)

Serial communication through host device hangs guest since 6.1.8

Reported by: eomanis Owned by:
Component: uart Version: VirtualBox 6.1.8
Keywords: serial hang freeze 6.1.8 Cc:
Guest type: Windows Host type: Linux

Description

Host: Arch Linux, Kernel 5.6.13-arch1-1 x86_64

Guest: Windows XP SP3

The guest has a virtual serial port that is passed through to the host's physical serial port /dev/ttyS0. In the guest, a legacy application communicates through this virtual serial port. In particular, it retrieves data from an external device; this data transfer usually lasts about 1 minute.

With VirtualBox 6.1.8 installed on the host, and the VirtualBox Guest Additions 6.1.8 installed on the guest, the guest VM freezes a few seconds into the data transfer.

The guest window menu is still responsive, but trying to hard-close the guest using the menu with File -> Close... has no effect (the "Close Virtual Machine" dialog does not show). The hung guest machine can however be closed with SIGTERM.

With VirtualBox 6.1.6 on the host, and the VirtualBox Guest Additions 6.1.6 on the guest, the serial data transfer works as expected.

Change History (5)

comment:1 by mcnab2059, 4 years ago

I would also like to confirm this issue:
Host: Linux Mint 19.3
Guest: SUSE Linux Enterprise Server 11 (i586) \ Version 11 \ PatchLevel3

I do not have guest additions installed on the guest but in 6.1.6 and prior this did not matter. The serial port is enabled and mapped to the host to various serial ports (ttyUSB0, ttyS0, ttyACM0) and have always worked.
With 6.1.8 it does work somewhat, but as the OP said, it eventually freezes the guest VM and the guest window can become unresponsive, requiring a SIGTERM to exit.

comment:2 by ABWSC, 4 years ago

I also confirm this issue:

Host: Windows 10 Pro 1909, with VB 6.1.8 installed

Guest1 (Development machine): Windows 10 Pro 2004

Guest2 (Test machine): Windows 10 Pro 2004

Both guests have VirtualBox Guest Additions 6.1.8 installed.

Using WinDbg to connect from Guest1 to Guest2 over a serial port connection using a pipe causes both Guest1 and and Guest2 to hang. Guest2 can be turned off, but Guest1 can only be aborted.

Restarting the host and reinstalling VirtualBox 6.1.6 resolves this problem, with no changes in settings.

Guest1 serial port settings:

Port number: COM1, Irq: 4, I/O Port: 0x3F8

Port mode: Host pipe

[ ] Connect to existing pipe

Path/Address: \\.\pipe\dbg

Guest2 serial port settings:

Port number: COM1, Irq: 4, I/O Port: 0x3F8

Port mode: Host pipe

[x] Connect to existing pipe

Path/Address: \\.\pipe\dbg

comment:3 by aeichner, 4 years ago

Please try the latest 6.1 test builds from here. We fixed a serial port related regression which didn't make it into 6.1.10 unfortunately. Feedback is greatly appreciated, thanks!

in reply to:  3 comment:4 by eomanis, 4 years ago

Replying to aeichner:

Please try the latest 6.1 test builds from here. We fixed a serial port related regression which didn't make it into 6.1.10 unfortunately. Feedback is greatly appreciated, thanks!

Sorry I did not get around to checking the test builds, but I would like to confirm that the issue is indeed fixed for me with VirtualBox 6.1.12.

Thank you for the fix, much appreciated.

comment:5 by aeichner, 4 years ago

Resolution: fixed
Status: newclosed

Thanks for the feedback!

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use