[Devel] [RFC rh7 v6] ve/tty: vt -- Implement per VE support for console and terminals
Vladimir Davydov
vdavydov at parallels.com
Tue Sep 1 02:34:08 PDT 2015
On Mon, Aug 31, 2015 at 10:51:02PM +0300, Cyrill Gorcunov wrote:
> On Mon, Aug 31, 2015 at 10:36:25PM +0300, Vladimir Davydov wrote:
> >
> > Yeah, you're right. But then we diverge from pty ref counting design,
> > which isn't good IMO. To fix that, let's increment slave's count twice
> > on vtty_install, once for file and once for master reference. Then we
>
> If we increment it twice we have to carry extra-ref bit (which I've
> dropped off) otherwise if noone has opened master peer the tty engine
> will complain that the number of fd != count. What's worse is that
> if noone ever has opened master we have to decrement it back together
> with extra ref to be able to close the peer. I mean
>
> 1) Create pair inside container via slave
>
> slave:2 (1 - read fd + extra ref) master:0
>
> noone opens master and we're calling tty_release, then in
> vtty_close we've tp drop the extra ref together with count--,
> but if we do so there is still a race window after tty_unlock.
I see. Then it's OK.
>
> > will only have to decrement slave's count right after tty_init_dev,
> > which is safe, because we're holding tty_lock there. Sounds OK?
>
More information about the Devel
mailing list