On Wed, Jan 11, 2006 at 09:06:32PM +0000, Robert Watson wrote:
> 
> On Thu, 5 Jan 2006, Daniel O'Connor wrote:
> 
> >I just installed the latest mgetty and ran it, then found it wasn't 
> >talking to my modem so I disabled it in /etc/ttys and killed the process.
> >
> >I ran fstat /dev/cuad0 to check it was dead and fstat got stuck in the 
> >devfs state. It seems that everything else was stuck too and now the 
> >machine is alive but not very functional.
> >
> >What can I do to try and debug it?
> 
> Do you use devfs rule sets?  I fixed a bug a week or so ago in devfs_rule.c 
> in HEAD, and MFC'd the fix today.  The symptoms are much what you describe, 
> and occur when an invalid rule is proposed -- the right error is returned, 
> but a lock is not released resulting in it being unavailable when processes 
> try to access device nodes, resulting in eventual deadlock.  It's 
> devfs_rule.c:1.21 in HEAD, and devfs_rule.c:1.14.2.3 in RELENG_6.  I belive 
> the bug does not exist in RELENG_5, as there were significant changes in 
> devfs locking for 6.0, and those haven't been merged to RELENG_5.
> 
> If this doesn't fix it, the normal debugging steps apply -- compile in DDB, 
> BREAK_TO_DEBUGGER, and WITNESS.  When the wedge occurs, dump the lock state 
> (show alllocks), and we'll see if we can track down the problem.

I don't use rulesets, and I encountered the same problem when using
minicom to talk to serial ports.  I didn't yet have time to debug it,
but I can provide instructions for repeating it.

Kris

Attachment: pgpTgAGnr4nfj.pgp
Description: PGP signature

Reply via email to