From owner-svn-src-all@FreeBSD.ORG Tue Dec 31 04:00:31 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 98B6A8C9; Tue, 31 Dec 2013 04:00:31 +0000 (UTC) Received: from mail-ie0-x22f.google.com (mail-ie0-x22f.google.com [IPv6:2607:f8b0:4001:c03::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 366051D9A; Tue, 31 Dec 2013 04:00:31 +0000 (UTC) Received: by mail-ie0-f175.google.com with SMTP id x13so12713074ief.34 for ; Mon, 30 Dec 2013 20:00:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=coEH8EjPeTJ82uun9ijjmuVtHBGKKIDhkbSI5jRy0d4=; b=vEdkOi7iXlkT6/7owgPs2DkbeFwmcixlH3XqeMinyZL+e1aFJrJGrZarnicqbS/rxY qC6ejM+cbUQCy2852Bp7iB7FWmqQV0f5+BbAnRAO7ZMmyXuUTGap8et70mcmp21TXxkO 7SI7tM40deJGfJ39/wltOhn28m8BH2yRBG8UQOC6BpjzXgQwQ2+qAjr1ywYrBNBbfgkj pewU50XXCvD3Mwnh81blWJjI+lddznXLx+w4yMxoqD38VwMMRFFyujrjfZ2/PwIr+pBF 4E/cEBGhKLLKSMKOOezHP3wTIqrZyhCVSD6jehf8SBzyUylz3UDMcQbk/4fI0yYzBnLt 3l2g== X-Received: by 10.50.25.227 with SMTP id f3mr58638578igg.21.1388462430686; Mon, 30 Dec 2013 20:00:30 -0800 (PST) Received: from charmander.home ([65.95.94.123]) by mx.google.com with ESMTPSA id au9sm23933288igc.7.2013.12.30.20.00.29 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 30 Dec 2013 20:00:30 -0800 (PST) Sender: Mark Johnston Date: Mon, 30 Dec 2013 22:59:57 -0500 From: Mark Johnston To: Pedro Giffuni Subject: Re: svn commit: r260091 - in head/sys/cddl: contrib/opensolaris/uts/common/dtrace contrib/opensolaris/uts/common/sys dev/dtrace Message-ID: <20131231035957.GC11997@charmander.home> References: <201312301737.rBUHbW3I035088@svn.freebsd.org> <20131230204210.GD71033@FreeBSD.org> <20131231023952.GA11997@charmander.home> <7A335B4A-D986-4E6E-8D8B-22E7E7991A75@FreeBSD.org> <20131231032845.GB11997@charmander.home> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.22 (2013-10-16) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , Mike Ma , src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 31 Dec 2013 04:00:31 -0000 On Mon, Dec 30, 2013 at 10:49:23PM -0500, Pedro Giffuni wrote: > > Il giorno 30/dic/2013, alle ore 22:28, Mark Johnston ha scritto: > > > On Mon, Dec 30, 2013 at 10:21:58PM -0500, Pedro Giffuni wrote: > >> > >> Il giorno 30/dic/2013, alle ore 21:40, Mark Johnston ha scritto: > >> > >>> On Tue, Dec 31, 2013 at 12:42:10AM +0400, Gleb Smirnoff wrote: > >>>> On Mon, Dec 30, 2013 at 05:37:32PM +0000, Mark Johnston wrote: > >>>> M> Author: markj > >>>> M> Date: Mon Dec 30 17:37:32 2013 > >>>> M> New Revision: 260091 > >>>> M> URL: http://svnweb.freebsd.org/changeset/base/260091 > >>>> M> > >>>> M> Log: > >>>> M> Now that vmem(9) is available, use vmem arenas to allocate probe and > >>>> M> aggregation IDs, as is done in the upstream illumos code. This still > >>>> M> requires some FreeBSD-specific code, as our vmem API is not identical to the > >>>> M> one in illumos. > >>>> M> > >>>> M> Submitted by: Mike Ma > >>>> > >>>> IMHO, alloc_unr() was lighter and thus better for allocating just IDs. > >>> > >>> That's true; I committed the change since it helps keep our code similar > >>> to upstream and, as Pedro notes, it was a long-standing todo item on the > >>> wiki. After doing some testing, it looks like vmem is a bit slower: > >>> process startup is on the order of tenths of milliseconds longer with > >>> this change, for executables containing one USDT probe (since such > >>> probes are allocated during process startup). > >>> > >>> So probably the right thing to do is revert this change. It doesn't > >>> actually reduce the upstream diff as much as I'd hoped, anyway. > >>> > >> > >> Since it is our option to decide, perhaps just keep the vmem version as reference and #ifdef FreeBSD alloc_unr() ? > > > > You mean just having > > > > #if defined(sun) > > vmem code > > #else > > *_unr code > > #endif > > > > ? That's what we'd get by reverting the change. > > > Rather > #ifdef __FreeBSD__ > *_unr code > #else > vmem code (FreeBSD variant) > #endif > > Not much different, but if we are going to keep dead code let’s keep at least code that is known to work ;) IMHO, the whole point of keeping the dead code is to make it easier to merge upstream changes, and to have a quick reference handy when comparing illumos- and FreeBSD-specific code. That's how it's used in all of dtrace.c, so I'd prefer to be consistent in this case as well, rather than having two versions of FreeBSD-specific code. -Mark