Re: 2.5.x and 8250 UART problems

jbradford@dial.pipex.com
Sat, 5 Oct 2002 22:12:02 +0100 (BST)


> > The 486 SX-20 with 4 MB RAM, running 2.2.21 reliably achieves about 650
> > BPS download from another machine, with the port runnnig at 9600 bps.
> > With 2.5.40, many characters are lost at 9600, making, e.g. a ZModem
> > transfer retry for almost every block.

OK, first of all, I was wrong about it being an 8250 UART, I checked, and it is infact a 16540, not that it should make much difference, anyway :-)

> Ok, we need to find out where stuff is getting dropped. Dumping
> /proc/tty/driver/serial is always a good idea when reporting anything
> like this.
>
> The important thing is the change in the counters. Can you supply the
> port in question both before and after the zmodem run please?

OK, here goes, I used RZ on the command line instead of Minicom on the laptop, to maximize available memory.

---

Using 2.2.21 on the 486 laptop:

Laptop, (just booted):

0: uart:16450 port:3F8 irq:4 tx:0 rx:0 CTS|DTR|DSR

Desktop:

1: uart:16550A port:000002F8 irq:3 tx:946840 rx:5516126 RTS|CTS|DTR|DSR

Now transfer a 64K file using Z-modem.

Laptop:

0: uart:16450 port:3F8 irq:4 baud:9600 tx:104 rx:66050 CTS|DSR

Desktop:

1: uart:16550A port:000002F8 irq:3 tx:1012890 rx:5516209 RTS|DTR

---

Using 2.5.40 on the laptop:

Laptop, (just booted):

0: uart:16450 port:000003F8 irq:4 tx:0 rx:0 CTS|DSR

Desktop:

1: uart:16550A port:000002F8 irq:3 tx:1012890 rx:5516209 RTS|DTR

Now transfer a 64K file using Z-modem.

Contrary to what I originally thought, it did drop characters during disk access, but then it seemed to continue, only to drop characters again a second later.

Laptop:

0: uart:16450 port:000003F8 irq:4 tx:230 rx:73291 oe:45 CTS|DSR

Desktop:

1: uart:16550A port:000002F8 irq:3 tx:1086246 rx:5516439 RTS|DTR

---

I am begining to wonder whether it is something straightforward, like the newer kernel being more bloated, and therefore not being cached so well, causing the machine to run generally slower.

I remember seeing dropped characters with a bloated 2.2.13 kernel on that machine.

However, when I upgraded the other laptop from 2.2.x to 2.4.x, I saw an improvement in serial port performance, from an average of ~650 cps to ~950 cps. Although I also upgraded glibc at the same time. Seems like there are a lot of variables, sorry about that! :-)

Hope the above info is helpful. If you need me to do any more tests, or some with the other machine, let me know.

Cheers,

John. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/