Re: cvs commit: src/sys/kern tty_pty.c

From: Martin Blapp <mb_at_imp.ch>
Date: Fri, 29 Sep 2006 23:09:22 +0200 (CEST)
Hi,

> I think I found the bug while looking for problems near vgonel().  We're
> nowhere near ready to free devices in in last-close, since vgonel() doesn't
> do anything to evict processes from device functions before it forces the
> device closed.  Drivers must be aware of the problem.  The tty driver
> already is.  See the comments about t_gen near tty_close() and ttysleep().
> t_gen must live across close so that any processes in device functions can
> check it after they wake up, and the tty and device data structures must
> live across last- close to hold t_gen and anything else needed for the
> device functions to return.  Sleeping device functions normally wake up
> after last-close returns.

So what can we do to destroy devices after last close ? Mark them with some
flag and handle this during device operations ?

Martin
Received on Fri Sep 29 2006 - 21:09:55 UTC