From owner-freebsd-hackers Thu Dec 18 19:53:18 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id TAA17943 for hackers-outgoing; Thu, 18 Dec 1997 19:53:18 -0800 (PST) (envelope-from owner-freebsd-hackers) Received: from smtp02.primenet.com (smtp02.primenet.com [206.165.6.132]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id TAA17930 for ; Thu, 18 Dec 1997 19:53:07 -0800 (PST) (envelope-from tlambert@usr01.primenet.com) Received: (from daemon@localhost) by smtp02.primenet.com (8.8.8/8.8.8) id UAA04848; Thu, 18 Dec 1997 20:53:06 -0700 (MST) Received: from usr01.primenet.com(206.165.6.201) via SMTP by smtp02.primenet.com, id smtpd004836; Thu Dec 18 20:53:02 1997 Received: (from tlambert@localhost) by usr01.primenet.com (8.8.5/8.8.5) id UAA02805; Thu, 18 Dec 1997 20:53:02 -0700 (MST) From: Terry Lambert Message-Id: <199712190353.UAA02805@usr01.primenet.com> Subject: Re: close() on a modem taking a long time? To: rantapaa@uswest.net (Erik E Rantapaa) Date: Fri, 19 Dec 1997 03:53:01 +0000 (GMT) Cc: freebsd-hackers@FreeBSD.ORG In-Reply-To: from "Erik E Rantapaa" at Dec 18, 97 08:39:55 pm X-Mailer: ELM [version 2.4 PL23] Content-Type: text Sender: owner-freebsd-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > I've been tracking down a problem we've been having with sendpage > and it appears that close() on a serial line attached to a modem > can sometimes take a long time (like 20 minutes or more). > Can anyone think of a reason why this might be happening > (and more importantly, how to get around it)? > > (btw, this is with 2.2.5) Close attemptsd to flush output, I believe. This delay could occur if the modem has dropped RTS, if the DCD is still active. I believe the flush occursbefore the DTR drop to reset the modem. If the modem is internal, well, then you get what you deserve (internal modems suck). If it's external, try power cycling the modem and see if that fixes it; if it does, it points the way toward a fix... probably modem configuration, since a modem in command mode should not be asserting DCD and the driver should ignore RTS if DCD is not asserted. Alternately, it should assert RTS if it's not asserting DCD. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.