From owner-p4-projects@FreeBSD.ORG Tue May 12 21:34:10 2009 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C589F1065679; Tue, 12 May 2009 21:34:09 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8516F1065674 for ; Tue, 12 May 2009 21:34:09 +0000 (UTC) (envelope-from julian@elischer.org) Received: from outW.internet-mail-service.net (outw.internet-mail-service.net [216.240.47.246]) by mx1.freebsd.org (Postfix) with ESMTP id 6B5808FC12 for ; Tue, 12 May 2009 21:34:09 +0000 (UTC) (envelope-from julian@elischer.org) Received: from idiom.com (mx0.idiom.com [216.240.32.160]) by out.internet-mail-service.net (Postfix) with ESMTP id 5DFF9DACC8; Tue, 12 May 2009 14:34:52 -0700 (PDT) X-Client-Authorized: MaGic Cook1e X-Client-Authorized: MaGic Cook1e X-Client-Authorized: MaGic Cook1e Received: from julian-mac.elischer.org (home.elischer.org [216.240.48.38]) by idiom.com (Postfix) with ESMTP id C2EAF2D600E; Tue, 12 May 2009 14:34:08 -0700 (PDT) Message-ID: <4A09EB50.3030608@elischer.org> Date: Tue, 12 May 2009 14:34:08 -0700 From: Julian Elischer User-Agent: Thunderbird 2.0.0.21 (Macintosh/20090302) MIME-Version: 1.0 To: Marko Zec References: <200905121848.n4CImKQt036691@repoman.freebsd.org> In-Reply-To: <200905121848.n4CImKQt036691@repoman.freebsd.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Perforce Change Reviews , Brooks Davis Subject: Re: PERFORCE change 161987 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 May 2009 21:34:10 -0000 Marko Zec wrote: > http://perforce.freebsd.org/chv.cgi?CH=161987 > > Change 161987 by zec@zec_tpx32 on 2009/05/12 18:47:49 > > Back out O(n**2) ad-hoc hack for searching for available > ifunits in cloning ifnets, and restore the standard O(n) > bitmapped searching / ifunit allocation method for both > default and options VIMAGE builds. > > HOWEVER, hereby we also introduce per-vnet if_clone driver > registration and ifunit allocation. As a (necessary) example, > if_loop is modified to attach itself as an independent > cloner instance to each vnet. > > This approach has a neat byproduct: if_clone drivers that > do not explicitly declare themselves as multi-vnet, by > exporting an iattach() method and registering to the vnet > framework, continue to work with unmodified semantics in > the default vnet. However, they will NOT be available > in other vnets. > > This brings us a step closer to being able to selectively > attach subsystems to particular vnets, instead of having > all subsystems unconditionally available to all vnets by > default. > excellent sidestep.