From owner-freebsd-commit Sun Jul 2 09:49:43 1995 Return-Path: commit-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA04919 for commit-outgoing; Sun, 2 Jul 1995 09:49:43 -0700 Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA04902 for cvs-sys-outgoing; Sun, 2 Jul 1995 09:49:36 -0700 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id JAA04896 for ; Sun, 2 Jul 1995 09:49:31 -0700 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id CAA18626; Mon, 3 Jul 1995 02:44:21 +1000 Date: Mon, 3 Jul 1995 02:44:21 +1000 From: Bruce Evans Message-Id: <199507021644.CAA18626@godzilla.zeta.org.au> To: ache@astral.msk.su, bde@zeta.org.au, cvs-sys@freefall.cdrom.com Subject: Re: cvs commit: src/sys/i386/isa sio.c Sender: commit-owner@FreeBSD.org Precedence: bulk >>> Fight with hanging modems continued: >>> return EIO after t_timeout expired instead infinite looping in "siotx" >>> in comparam, consuming CPU time. >>Why does this loop occur? It can't happen with working 8250..16550 >>... >Bruce, I don't know, *why* it occurs, I am not hardware expert. This means that your fix is probably sub-optimal. What makes the problem go away? close() doesn't do anything to unwedge the transmitter bits, and open() fails early when it calls comparam(). >I only know that it *occurs* sometimes and my goal is to make >modem pool which can work without human eye when possible. >This thing cures by dropping DTR, EIO here usualy cause close >and DTR drop. I am not think, that it is CTS hang, symptom >are: modem TX light is on forever (sio waits, when TX done >forever too). Joerg f.e. send me "thanx" for this fix, he >have this situation too (it means that it isn't only my hardware). Please submit a full bug report before hiding the problem. For this bug I would like to know at least: 1) state of all UART registers. 2) what happens when interrupts are disabled so the driver can't possibly keep feeding the transmitter. Bruce