Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Jun 2012 09:52:38 -0700 (PDT)
From:      Pedro Giffuni <pfg@freebsd.org>
To:        freebsd-current@FreeBSD.org
Subject:   Re: [RFT] llquantize for FreeBSD's dtrace
Message-ID:  <1340470358.2705.YahooMailClassic@web113519.mail.gq1.yahoo.com>
In-Reply-To: <20120623133624.3433ec78@fabiankeil.de>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello Fabian;=0A=0A--- Sab 23/6/12, Fabian Keil ha scritto:=0A=0A> Pedro Gi=
ffuni <pfg@FreeBSD.org> wrote:=0A> =0A> > I am not a Dtrace user (yet) but =
I started to port the=0A> Log/linear=0A> > quantizations from Illumos:=0A> =
> =0A> > http://dtrace.org/blogs/bmc/2011/02/08/llquantize/=0A>; > =0A> > Ap=
parently this patch should do it:=0A> > =0A> > http://people.freebsd.org/~p=
fg/patches/patch-llquantize-complete=0A> > =0A> > Unfortunately when I trie=
d to build current with Dtrace=0A> > support, my i386 Virtualbox VM got stu=
ck in ctfmerge so=0A> > this is completely untested.=0A> > =0A> > Testers t=
hat know how to use it are welcome :).=0A> =0A> I applied it on 10-CURRENT =
amd64 from /usr/src with patch=0A> -p0 without any conflicts, but it doesn'=
t appear to be=0A> working.=0A> =0A> The example from the blog post above t=
riggers an assertion=0A> that is still reproducible when reducing the test =
case:=0A> =0A> fk@r500 /tmp $sudo dtrace -n 'tick-1ms{@ =3D llquantize(i++,=
=0A> 10, 0, 6, 20);}'=0A> Assertion failed: (!(arg & (UINT16_MAX <<=0A> arg=
s[i].shift))), file=0A> /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/o=
pensolaris/lib/libdtrace/common/dt_cc.c,=0A> line 1429.=0A>=0A=0AThanks for=
 testing!=0A=0AIt seems like the syntax has changed from the time the=0Aexa=
mple from the blog was made. The code says:=0A=0A/*=0A * For log/linear qua=
ntizations, we have between one and five=0A * arguments in addition to the =
expression:=0A *=0A *    arg1 =3D> Factor=0A *    arg2 =3D> Low magnitude=
=0A *    arg3 =3D> High magnitude=0A *    arg4 =3D> Number of steps per mag=
nitude=0A *    arg5 =3D> Quantization increment value (defaults to 1)=0A */=
=0A=0A=0AMy suggestion would be to instead try using the test=0Ascripts in=
=0Acddl/contrib/opensolaris/cmd/dtrace/test/tst/common/llquantize/=0A=0Aerr=
.D_LLQUANT_FACTORSMALL.d (for example) has=0A=0A@ =3D llquantize(0, 1, 0, 1=
0, 10);=0A=0Ahope that helps!=0A=0APedro.=0A=0A



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