This fixes a crash seen by matthieu@ when unplugging a ucom(4) which
cu(1) is running.


On Wed, Apr 24, 2013 at 03:52:54AM -0600, Nicholas Marriott wrote:
> CVSROOT:      /cvs
> Module name:  src
> Changes by:   n...@cvs.openbsd.org    2013/04/24 03:52:54
> 
> Modified files:
>       sys/kern       : kern_event.c tty.c 
>       sys/sys        : event.h 
> 
> Log message:
> When a ucom(4) is removed, it frees the tty with ttyfree(). However if
> anyone is waiting with kqueue their knotes may still have a reference to
> the tty and later try to use it in the filt_tty* functions.
> 
> To avoid this, walk the knotes in ttyfree(), remove them from the tty's
> list and invalidate them by setting kn_hook to NODEV. The filter
> functions can then check for this and safely ignore the knotes.
> 
> ok tedu matthieu

Reply via email to