Date: Sat, 26 Aug 1995 17:50:58 +0300 From: Heikki Suonsivu <hsu@cs.hut.fi> To: Michael Smith <msmith@atrad.adelaide.edu.au> Cc: freebsd-hackers@freefall.FreeBSD.org Subject: Changes in sio driver since 2.0.5? Message-ID: <199508261450.RAA22725@shadows.cs.hut.fi> In-Reply-To: Michael Smith's message of 25 Aug 1995 10:18:27 %2B0300
next in thread | raw e-mail | index | archive | help
In particular, I have a system here with an AST 4-port clone that is crashing regularly, usually when modem status changes. I upped RS_IBUFSIZE to 1024 and TTYHOG to 4096. Increasing TTYHOG alone seems to cure loosing characters, but I needed RS_IBUFSIZE tuneup to get rid of the crashes. TTYHOG can be given as option already. Both are lazily kept -current (upgrade approximately once a month). These problems seem to be motherboard or other hardware related and have been there since 1.1.5.1 (but increased somewhat when we upgraded to 2.*). I have got a 386-40 (AMD) with ast4 + 5 ethernets and 486-40 (AMD) with ast4 + 5 ethernets, and they both lost characters and paniced, but 386-40 did it considerably less frequently. Without patches the 486-40 was unusable, lost too much stuff to get through PPP initial handshakes. It could be that the cheap taiwanese NE2000 ethernet boards are the source of the problems, as there more of them in the 486-40 than in a 386-40. Serial ports carry modems and leased lines up to 115.2kbps, but we have more problems with the slow links (leased 38.4) than the fast ones. I can't explain this. Maybe sio has been developed with too fast machines & devices around :-) I still have problems with serial ports not correctly probed after a panic. I'm trying duplicating the AST4 sio config lines now, seemed to help after one reboot, but it is too early to say its the workaround. *** sys/i386/isa/cy.c.orig Thu Aug 24 21:57:50 1995 --- sys/i386/isa/cy.c Thu Aug 24 21:58:17 1995 *************** *** 153,159 **** --- 153,161 ---- #define LOTS_OF_EVENTS 64 /* helps separate urgent events from input */ #define RB_I_HIGH_WATER (TTYHOG - 2 * RS_IBUFSIZE) + #ifndef RS_IBUFSIZE #define RS_IBUFSIZE 256 + #endif #define CALLOUT_MASK 0x80 #define CONTROL_MASK 0x60 *** sys/i386/isa/sio.c.orig Thu Aug 24 21:56:48 1995 --- sys/i386/isa/sio.c Thu Aug 24 21:57:13 1995 *************** *** 71,77 **** --- 71,79 ---- #define LOTS_OF_EVENTS 64 /* helps separate urgent events from input */ #define RB_I_HIGH_WATER (TTYHOG - 2 * RS_IBUFSIZE) + #ifndef RS_IBUFSIZE #define RS_IBUFSIZE 256 + #endif #define CALLOUT_MASK 0x80 #define CONTROL_MASK 0x60 I don't know if cy.c really needs the patch, but I changed it anyway (avoids burning some cpu, anyway). -- Heikki Suonsivu, T{ysikuu 10 C 83/02210 Espoo/FINLAND, hsu@cs.hut.fi home +358-0-8031121 work -4513377 fax -4555276 riippu SN
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199508261450.RAA22725>