Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 04 Sep 2015 13:37:59 -0700
From:      John Baldwin <jhb@freebsd.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        freebsd-drivers@freebsd.org, Leonardo Fogel <leonardofogel@yahoo.com.br>
Subject:   Re: Race conditions
Message-ID:  <2149458.2Hg3JbBXY3@ralph.baldwin.cx>
In-Reply-To: <20150904193207.GK2072@kib.kiev.ua>
References:  <1439923294.98963.YahooMailBasic@web120801.mail.ne1.yahoo.com> <1595067.LHJIsK18l7@ralph.baldwin.cx> <20150904193207.GK2072@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, September 04, 2015 10:32:07 PM Konstantin Belousov wrote:
> On Fri, Sep 04, 2015 at 11:42:38AM -0700, John Baldwin wrote:
> > Hmm, looking at /dev/ptmx, it handles this by not doing a clone on open,
> > but instead using a d_fdopen routine and explicitly setting up the new
> > file descriptor as if it had opened the equivalent named device.  Perhaps
> > that is what I should do instead in my tap change.  If I go that route,
> > then I think that fdevname/devname would already DTRT without needing a
> > new cdevsw method.
> 
> There is probably some fine difference between pts, which are typically
> fully managed and configured by master using the file descriptor, and
> cloned network interfaces, where you usually allow external processes to
> do the work.  But if it works for tap, great.

In some cases though the external management is not that much to arrange.
For my particular use case (multiple VMs) devd can autoconfigure new tap
devices as they are created (add them to a global bridge interface) and
bhyve just does operations on the fd it has opened.

> Also, you should have noted D3557 (csw d_devname), just in case ?

I did see the e-mail but have not (yet) looked in detail.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2149458.2Hg3JbBXY3>