Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 07 Aug 2009 00:54:00 -0600 (MDT)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        hselasky@c2i.net
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
Message-ID:  <20090807.005400.-1749708164.imp@bsdimp.com>
In-Reply-To: <200908070830.47894.hselasky@c2i.net>
References:  <20090804031407.GA8974@hub.freebsd.org> <d04e16b70908061247i7ceccefx37566df937b74eaa@mail.gmail.com> <200908070830.47894.hselasky@c2i.net>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <200908070830.47894.hselasky@c2i.net>
            Hans Petter Selasky <hselasky@c2i.net> 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 <return> 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<return>
: 
: 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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090807.005400.-1749708164.imp>