Re: [patch 0/3] Re: tty contention resulting from tty_open_by_device export
From: Greg Kroah-Hartman
Date: Mon Jul 17 2017 - 08:31:56 EST
On Thu, Jul 13, 2017 at 12:29:54PM +0100, Okash Khawaja wrote:
> On Wed, Jul 12, 2017 at 07:20:28PM +0100, Alan Cox wrote:
> >
> > > When opening from kernel, we don't use file pointer. The count mismatch
> > > is between tty->count and #fd's. So opening from kernel leads to #fd's
> > > being less than tty->count. I thought this difference is relevant to
> > > user-space opening of tty, and not to kernel opening of tty. Can you
> > > suggest how to address this mismatch?
> >
> > Your kernel reference is the same as having a file open reference so I
> > think this actually needs addressing in the maths. In other words count
> > the number of kernel references and also add that into the test for
> > check_tty_count (kernel references + #fds == count).
> >
> > I'd really like to keep this right because that check has a long history
> > of catching really nasty race conditions in the tty code. The
> > open/close/hangup code is really fragile so worth the debugability.
>
> I see. Okay based this, check_tty_count can be easily updated to take
> into account kernel references.
Ok, I'll drop this series from my "to-apply" queue and wait for you to
redo it.
thanks,
greg k-h