From owner-freebsd-drivers@freebsd.org Fri Sep 4 19:32:13 2015 Return-Path: Delivered-To: freebsd-drivers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ADD759CA7CC for ; Fri, 4 Sep 2015 19:32:13 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 40C3C1AB0; Fri, 4 Sep 2015 19:32:13 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id t84JW71P063902 (version=TLSv1 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Fri, 4 Sep 2015 22:32:07 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua t84JW71P063902 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id t84JW7ru063901; Fri, 4 Sep 2015 22:32:07 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 4 Sep 2015 22:32:07 +0300 From: Konstantin Belousov To: John Baldwin Cc: freebsd-drivers@freebsd.org, Leonardo Fogel Subject: Re: Race conditions Message-ID: <20150904193207.GK2072@kib.kiev.ua> References: <1439923294.98963.YahooMailBasic@web120801.mail.ne1.yahoo.com> <1619676.EuPFulsFRT@ralph.baldwin.cx> <20150903094727.GD2072@kib.kiev.ua> <1595067.LHJIsK18l7@ralph.baldwin.cx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1595067.LHJIsK18l7@ralph.baldwin.cx> User-Agent: Mutt/1.5.23 (2014-03-12) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on tom.home X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Sep 2015 19:32:13 -0000 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. Also, you should have noted D3557 (csw d_devname), just in case ?