From owner-freebsd-usb@FreeBSD.ORG Sat Apr 2 13:16:49 2005 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 293E916A4CE for ; Sat, 2 Apr 2005 13:16:49 +0000 (GMT) Received: from salmon.maths.tcd.ie (salmon.maths.tcd.ie [134.226.81.11]) by mx1.FreeBSD.org (Postfix) with SMTP id 1EE7C43D49 for ; Sat, 2 Apr 2005 13:16:48 +0000 (GMT) (envelope-from iedowse@maths.tcd.ie) Received: from walton.maths.tcd.ie by salmon.maths.tcd.ie with SMTP id ; 2 Apr 2005 14:16:41 +0100 (BST) To: Mike Tancsa In-Reply-To: Your message of "Thu, 31 Mar 2005 07:49:58 CDT." <6.2.1.2.0.20050331074641.04f72eb8@64.7.153.2> Date: Sat, 02 Apr 2005 14:16:39 +0100 From: Ian Dowse Message-ID: <200504021416.aa22417@salmon.maths.tcd.ie> cc: ticso@cicely.de cc: freebsd-usb@freebsd.org Subject: Re: panic: uhci_abort_xfer: not in process context (was Re: uplcom / ucom problems on RELENG_5) X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Apr 2005 13:16:49 -0000 In message <6.2.1.2.0.20050331074641.04f72eb8@64.7.153.2>, Mike Tancsa writes: >panic: uhci_abort_xfer: not in process context ... >#6 0xc04d2c1f in usbd_abort_pipe (pipe=0xc19c7e00) >#7 0xc04c3cf5 in ucomstopread (sc=0x0) >#8 0xc04c38ba in ucomstop (tp=0xc171c000, flag=1) >#9 0xc054b393 in ttyflush (tp=0xc171c000, rw=1) >#10 0xc054974d in ttyinput (c=26, tp=0xc171c000) In this case I wonder if the transfer needs to be aborted at all, since it is just restarted immediately afterwards. Mike, maybe you could try the following patch? Sorry, I haven't tested this, so I may be missing something obvious. Ian Index: dev/usb/ucom.c =================================================================== RCS file: /dump/FreeBSD-CVS/src/sys/dev/usb/ucom.c,v retrieving revision 1.51.2.2 diff -u -r1.51.2.2 ucom.c --- dev/usb/ucom.c 30 Jan 2005 01:00:10 -0000 1.51.2.2 +++ dev/usb/ucom.c 2 Apr 2005 13:10:27 -0000 @@ -929,11 +929,13 @@ DPRINTF(("ucomstop: %d\n", flag)); +#if 0 if (flag & FREAD) { DPRINTF(("ucomstop: read\n")); ucomstopread(sc); ucomstartread(sc); } +#endif if (flag & FWRITE) { DPRINTF(("ucomstop: write\n"));