Date: Thu, 20 Jan 2005 17:33:58 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: Roberto Pereyra <netbsd@contenidosonline.com.ar> Cc: freebsd-hardware@FreeBSD.org Subject: Re: kernel: sioxx: silo overflow with 8 ports pci MOXA cards Message-ID: <20050120171850.Q33587@delplex.bde.org> In-Reply-To: <200501191449.13646.netbsd@contenidosonline.com.ar> References: <200501191449.13646.netbsd@contenidosonline.com.ar>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 19 Jan 2005, Roberto Pereyra wrote: > I have a 8 port pci Moxa C168U/PCI and use it like ppp server (with mgetty and > radius support). > > The server not works well because I have many "sio overflow" errors. The modem > drop the link or when the link is active (some minutes later) the link don't > send packets and drop. Large numbers of ports might cause this problem under versions of FreeBSD newer than FreeBSD-4, due to poor interrupt latency in these versions. However, "large" is hopefully more than 8. > Many times the modems not answer the call. > > Can anybody help me ? (excuse my english) > > My system is Freebsd 5.2 RELEASE > > My kernel is GENERIC plus this: > > # Serial (COM) ports > device sio # 8250, 16[45]50 based serial ports > options COM_MULTIPORT > device puc COM_MULTIPORT is not needed for puc devices. Using it when it is not needed (for other devices) just increases interrupt latency and reduces efficiency. (The driver doesn't handle mixtures of devices (with only some devices needing it) very well.) > My dmesg show: > > ioapic0 <Version 2.0> irqs 0-23 on motherboard > pcibios: BIOS version 2.10 > usb0: USB revision 1.0 > usb1: USB revision 1.0 > usb2: USB revision 1.0 > sio4: <Moxa Technologies, C168H/PCI> on puc0 > sio4: type 16550A > sio4: unable to activate interrupt in fast mode - using normal mode > sio5: <Moxa Technologies, C168H/PCI> on puc0 > sio5: type 16550A > sio5: unable to activate interrupt in fast mode - using normal mode > sio6: <Moxa Technologies, C168H/PCI> on puc0 > sio6: type 16550A > sio6: unable to activate interrupt in fast mode - using normal mode > sio7: <Moxa Technologies, C168H/PCI> on puc0 > sio7: type 16550A > sio7: unable to activate interrupt in fast mode - using normal mode > sio8: <Moxa Technologies, C168H/PCI> on puc0 > sio8: type 16550A > sio8: unable to activate interrupt in fast mode - using normal mode > sio9: <Moxa Technologies, C168H/PCI> on puc0 > sio9: type 16550A > sio9: unable to activate interrupt in fast mode - using normal mode > sio10: <Moxa Technologies, C168H/PCI> on puc0 > sio10: type 16550A > sio10: unable to activate interrupt in fast mode - using normal mode > sio11: <Moxa Technologies, C168H/PCI> on puc0 > sio11: type 16550A > sio11: unable to activate interrupt in fast mode - using normal mode > sio0 port 0x3f8-0x3ff irq 4 on acpi0 > sio0: type 16550A > sio1 port 0x2f8-0x2ff irq 3 on acpi0 > sio1: type 16550A Try using PUC_FASTINTR to reduce interrupt latency. This may require juggling irqs so that the puc interrupt is not shared (hopefully not since apic mode is used). This is not the default because if the interrupt ends up shared then it may do more than just fail to activate the interrupt in fast mode as above -- it may break other devices that want the interrupt in normal mode, depending on whether it is activated in fast mode first. Bryce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050120171850.Q33587>