Serial ports too slow?

Discussions related to using VirtualBox on Windows hosts.
Post Reply
stantheman286
Posts: 17
Joined: 25. Aug 2007, 06:01
Location: California
Contact:

Serial ports too slow?

Post by stantheman286 »

Hi,

I have a WinXP host running a CentOS guest. I have my COM1 serial port mapped physically to the guest. The port seems to work okay at first; I can send and receive messages. However, if I try and cat a boot file I need to upload via serial, the serial buffer seems to be too slow and transfers the file incorrectly.

For example, if I run the following 2 commands on 2 consoles

Code: Select all

cat u-boot.srec > /dev/ttyS0
and

Code: Select all

cat /dev/ttyS0 > u-boot.out
The u-boot.out file looks like this:

Code: Select all

S00E0000752D626F6F742E73726563C0


S31527FC00009400C001B00027F4202000002021FFFC2B


S31527FC0010B00027FD20A09AD0B00027FD2080ED2C2C


S31527FC002014C52001BC060014F805000020A5000480016432003BE52002457


S31527FC006010E00000B00027FDE8609AD41644180378


S31527FC0070BC52001010E60000B00027FDF8809AD885


S31527FC0080B60F000810670000B00027FD30A04B000003021FFD010BF000066


S31527FC00C0FA610020F9E10000FAC10024FAE10028D0


S31527FC00D0FB01002CB00027FD32608E18B000000112


S31527FC00E0B9F405B410C00000B00027FDE8608E18EF

9F4C6B4800000000C

etc...
When the actual u-boot.srec file I sent looks like this:

Code: Select all

S00E0000752D626F6F742E73726563C0
S31527FC00009400C001B00027F4202000002021FFFC2B
S31527FC0010B00027FD20A09AD0B00027FD2080ED2C2C
S31527FC002014C52001BC060014F805000020A5000411
S31527FC003014C52001BC26FFF4B00027FCB80800A88D
S31527FC0040B8000000B00027FDE8C09AD8B00027FD0D
S31527FC0050E8609AD01086280016432003BE52002457
S31527FC006010E00000B00027FDE8609AD41644180378
S31527FC0070BC52001010E60000B00027FDF8809AD885
S31527FC0080B60F000810670000B00027FD30A04B0C08
S31527FC00903021FFE4F9E10000B0000000B9F4C730D5
S31527FC00A080000000B8000000B00027F433E0000011
S31527FC00B0B000000230E000003021FFD010BF000066
S31527FC00C0FA610020F9E10000FAC10024FAE10028D0
S31527FC00D0FB01002CB00027FD32608E18B000000112
S31527FC00E0B9F405B410C00000B00027FDE8608E18EF
S31527FC00F0BC03001CE873000099FC1800327300044B
S31527FC0100BC23021CE8730000B800FFE8B00027FDFB
S31527FC011030A04B38B0000000B9F4C6B4800000000C
S31527FC0120B00027FD30A04B44B0000000B9F4C6A0B0
etc...
Does anyone know how to fix this transfer issue? I feel it may be related to this bug, but since I am running this on windows I don't have the binaries for OSE:

http://www.virtualbox.org/ticket/812

Thanks.

Matt
stantheman286
Posts: 17
Joined: 25. Aug 2007, 06:01
Location: California
Contact:

Post by stantheman286 »

After searching through more of the tickets, I found that this ticket is describing my issue:

http://www.virtualbox.de/ticket/2752

I opened up dmesg after trying to output to the serial port and get this:

Code: Select all

serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
serial8250: too much work for irq4
Any ideas? Thanks.

Matt
jerryschwartz
Posts: 3
Joined: 18. Apr 2009, 23:48
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: WinXP

Re: Serial ports too slow?

Post by jerryschwartz »

I tried using a host serial port and also found it too slow to use. I'm running Vista as the host and XP as the guest.

At a fundamental level, the serial port is virtualized as a 16450 chip which is not suitable for faster bit rates. Beyond that, I guess the overhead is just too nasty.

I'm currently trying to get a USB serial port hooked directly to the virtual machine, but that doesn't seem to work at all for me.
Post Reply