VirtualBox

Opened 14 years ago

Closed 14 years ago

#7401 closed defect (duplicate)

Serial port long TX data broken

Reported by: a99 Owned by:
Component: uart Version: VirtualBox 3.2.8
Keywords: serial port Cc:
Guest type: Windows Host type: Windows

Description

Data broken for long TX packets (>127 bytes):

Original data:

 FF FF 00 10 3F FF 00 00 8A 03 00 00 40 04 00 04   ÿÿ..?ÿ..Š...@...
 00 00 40 04 00 05 00 00 40 04 00 06 00 00 40 04   ..@.....@.....@.
 00 07 00 00 40 04 00 08 00 00 40 04 00 0B 00 00   ....@.....@.....
 40 04 00 0C 00 00 40 04 00 0D 00 00 40 04 00 19   @.....@.....@...
 00 00 40 04 00 1A 00 00 40 04 00 1B 00 00 40 04   ..@.....@.....@.
 00 1C 00 00 40 04 00 1D 00 00 40 04 00 1E 00 00   ....@.....@.....
 40 04 00 21 00 00 40 04 00 22 00 00 40 04 00 23   @..!..@.."..@..#
 00 00 40 04 00 51 00 00 40 04 00 11 00 00 40 04   ..@..Q..@.....@.
 00 12 00 00 40 04 00 27 00 00 40 04 00 28 00 00   ....@..'..@..(..
 40 04 00 1D 74                                    @...t           

Broken data (received by listener):

 FF FF 00 00 40 04 00 11 00 00 40 04 00 12 00 00   ÿÿ..@.....@.....
 40 04 00 27 00 00 40 04 00 28 00 00 40 04 00 86   @..'..@..(..@..†
 30                                                0               

This issue occurs on two different computers.

Attachments (1)

VBox.log (61.8 KB ) - added by a99 14 years ago.
Log file

Download all attachments as: .zip

Change History (9)

comment:1 by Frank Mehnert, 14 years ago

Who is listening, the host or another computer? Please attach a VBox.log file for such a VM session (mainly to check the VM configuration).

comment:2 by Frank Mehnert, 14 years ago

Oh, and which Windows program did you use for transmitting the data?

in reply to:  1 comment:3 by a99, 14 years ago

Replying to frank:

Who is listening, the host or another computer?

Listener is the other computer directly connected to the host using an RS-232 full modem serial cable.

in reply to:  2 comment:4 by a99, 14 years ago

Replying to frank:

Oh, and which Windows program did you use for transmitting the data?

We are using closed-source Delphi-based software.

by a99, 14 years ago

Attachment: VBox.log added

Log file

comment:5 by Marcello Desantis, 14 years ago

Same problem here. It can be easily reproduced TYPEing a file longer than 128 chars (if you choose it much longer, say 150 bytes, you lose a lot of characters every time) to COM1 (or /dev/ttyS0 on linux guests).

There's no need to really listen to the port. If you monitor the host port using HHD's "Free Serial Port Monitor" you see that the bytes get lost before reaching the physical port.

I'm going to try to compile rev. 28101 which should contain the patch discussed in bug #1548. I know that it causes some regressions, but we don't need the impacted features, while we do need a robust serial port implementation for a big migration project.

comment:6 by Marcello Desantis, 14 years ago

Some updates.

After trying VirtualBox-3.1.6-OSE.tar.gz2 + uart_buffer.patch and a SVN checkout for revision 28101 without any luck (same behaviour of the binary 3.2.8 release), I discovered that the problems only arises on Windows hosts.

I tried Windows 7 x86, Windows 7 x86_64 and Windows XP x86 with 3.2.8 binary dist and all of them exhibit the same behaviour: character loss with buffer lengths over 130 bytes.

Repeating the same tests with the same virtual disk images on a Ubuntu 10.04 x86_64 host, I've been able to repeatedly send 500+ chars at once without any loss.

Note that the behaviour does not depend on the guest OS, only on the host one.

comment:7 by lazyest, 14 years ago

Basing on this conversation i've decreasing block size to 128b in last quotes of http://www.virtualbox.org/ticket/812 and got one uart working more or less. Host Debian 32bit, guest OS/2 Warp 4.5.

comment:8 by Frank Mehnert, 14 years ago

Resolution: duplicate
Status: newclosed

Actually a duplicate of #1548, please continue discussion there.

Note: See TracTickets for help on using tickets.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette