Date: Mon, 30 Dec 2013 22:59:57 -0500 From: Mark Johnston <markj@freebsd.org> To: Pedro Giffuni <pfg@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff <glebius@FreeBSD.org>, Mike Ma <mikemandarine@gmail.com>, src-committers@freebsd.org 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> In-Reply-To: <BE9E80D8-33E5-43AF-9D21-123BF5544A97@FreeBSD.org> 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> <BE9E80D8-33E5-43AF-9D21-123BF5544A97@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Dec 30, 2013 at 10:49:23PM -0500, Pedro Giffuni wrote: > > Il giorno 30/dic/2013, alle ore 22:28, Mark Johnston <markj@freebsd.org> 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 <markj@freebsd.org> 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 <mikemandarine@gmail.com> > >>>> > >>>> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131231035957.GC11997>