From owner-svn-src-head@FreeBSD.ORG Fri Aug 7 06:57:29 2009 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 176D4106566C; Fri, 7 Aug 2009 06:57:29 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id C7B858FC1C; Fri, 7 Aug 2009 06:57:28 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id n776rBgQ006298; Fri, 7 Aug 2009 00:53:11 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Fri, 07 Aug 2009 00:54:00 -0600 (MDT) Message-Id: <20090807.005400.-1749708164.imp@bsdimp.com> To: hselasky@c2i.net From: "M. Warner Losh" In-Reply-To: <200908070830.47894.hselasky@c2i.net> References: <20090804031407.GA8974@hub.freebsd.org> <200908070830.47894.hselasky@c2i.net> X-Mailer: Mew version 5.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: src-committers@freebsd.org, nparhar@gmail.com, svn-src-all@freebsd.org, alfred@freebsd.org, rwatson@freebsd.org, brde@optusnet.com.au, svn-src-head@freebsd.org Subject: Re: svn commit: r195960 - in head/sys/dev/usb: . controller input X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Aug 2009 06:57:30 -0000 In message: <200908070830.47894.hselasky@c2i.net> Hans Petter Selasky writes: : On Thursday 06 August 2009 21:47:16 Navdeep Parhar wrote: : > >> See attached patch. Please test and report back. : > > : > > This patch fixes my problem. The machine is remote and I'm unable : > > to test whether the USB keyboard and keystroke repetition works, but : > > core dumps to a SATA disk are now as fast as they were before : > > r195960. Thanks. : > : > I finally got a chance to try a USB keyboard with ddb, and things did : > not go too well overall. While inside ddb, keystrokes were recognized : > properly and repetition worked too. But after exiting ddb, the : > keyboard wouldn't work - there wasn't any visible response to : > keystrokes. Also, I kept seeing the login prompt continually scroll : > up, as if someone was pressing repeatedly. It certainly : > wasn't me :-) : > : > Are you assuming that a user will not resume normal operation after : > entering the debugger? A panic/reboot isn't the only exit route from : > ddb..... : > : > Simple sequence of steps to reproduce problem: : > ctrl-alt-esc on the USB keyboard : > db> c : : This is like expected. : : Once paniced, USB operation is blocked on the USB controller which the : keyboard belongs to, because USB does not receive any polling-complete call, : so that it can clean up the state in the USB controller! This mainly has to do : with avoid calling wakeup() during polling. : : To avoid wakeup() calls, USB sets some bits, which must be cleared when : polling is complete, which is currently not done, because USB doesn't know : when polling is complete ... Polling isn't supposed to work like this... The rest of the system effects a poll without these side effects. Warner