Broken ep0

M. Warner Losh imp at bsdimp.com
Wed Jul 9 11:08:13 PDT 2003


In message: <200307091711.h69HBHbN083840 at grimreaper.grondar.org>
            Mark Murray <mark at grondar.org> writes:
: If I were to start instrumenting ep(4) with debug printf's, where is
: the best place to start?

I'm not sure that printf is the right way to track this down.  You are
seeing, iirc, that ep0 "works" for a period of time, typically very
short, it hangs up.  These sorts of things are hard to find with a
printf.  My first suggestion would be to enable WITNESS to see if it
tells you about any LoR which might be a clue.  The MPSAFE changes I
made to pccbb just move up the tree one level where the Giant lock is
taken out in this case.

If the failure is early enough in the process, you might want to put
printfs into pccbb_intr to see if they will show you what they tell
you the order of the first few interrupts for the card are.  maybe
we're having a race with some interrupt before ep is really ready to
field interrupts or something that the giant lock being held before
protected against...

Warner


More information about the freebsd-current mailing list