Date: Sat, 23 Jun 2012 19:25:54 +0200 From: Fabian Keil <freebsd-listen@fabiankeil.de> To: pfg@freebsd.org Cc: freebsd-current@FreeBSD.org Subject: Re: [RFT] llquantize for FreeBSD's dtrace Message-ID: <20120623192554.3a0fb7e8@fabiankeil.de> In-Reply-To: <1340470358.2705.YahooMailClassic@web113519.mail.gq1.yahoo.com> References: <20120623133624.3433ec78@fabiankeil.de> <1340470358.2705.YahooMailClassic@web113519.mail.gq1.yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] Pedro Giffuni <pfg@freebsd.org> wrote: > Hello Fabian; > > --- Sab 23/6/12, Fabian Keil ha scritto: > > > Pedro Giffuni <pfg@FreeBSD.org> wrote: > > > > > I am not a Dtrace user (yet) but I started to port the > > Log/linear > > > quantizations from Illumos: > > > > > > http://dtrace.org/blogs/bmc/2011/02/08/llquantize/ > > > > > > Apparently this patch should do it: > > > > > > http://people.freebsd.org/~pfg/patches/patch-llquantize-complete > > > > > > Unfortunately when I tried to build current with Dtrace > > > support, my i386 Virtualbox VM got stuck in ctfmerge so > > > this is completely untested. > > > > > > Testers that know how to use it are welcome :). > > > > I applied it on 10-CURRENT amd64 from /usr/src with patch > > -p0 without any conflicts, but it doesn't appear to be > > working. > > > > The example from the blog post above triggers an assertion > > that is still reproducible when reducing the test case: > > > > fk@r500 /tmp $sudo dtrace -n 'tick-1ms{@ = llquantize(i++, > > 10, 0, 6, 20);}' > > Assertion failed: (!(arg & (UINT16_MAX << > > args[i].shift))), file > > /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c, > > line 1429. > > > > Thanks for testing! > > It seems like the syntax has changed from the time the > example from the blog was made. The code says: > > /* > * For log/linear quantizations, we have between one and five > * arguments in addition to the expression: > * > * arg1 => Factor > * arg2 => Low magnitude > * arg3 => High magnitude > * arg4 => Number of steps per magnitude > * arg5 => Quantization increment value (defaults to 1) > */ > > > My suggestion would be to instead try using the test > scripts in > cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/llquantize/ > > err.D_LLQUANT_FACTORSMALL.d (for example) has > > @ = llquantize(0, 1, 0, 10, 10); The problem appears to be unrelated to the syntax change: fk@r500 /usr/src/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/llquantize $sudo dtrace -s err.D_LLQUANT_FACTORSMALL.d Assertion failed: (!(arg & (UINT16_MAX << args[i].shift))), file /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c, line 1429. fk@r500 /usr/src/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/llquantize $sudo dtrace -s tst.bases.d Assertion failed: (!(arg & (UINT16_MAX << args[i].shift))), file /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c, line 1429. fk@r500 /usr/src/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/llquantize $sudo dtrace -s tst.negvalue.d Assertion failed: (!(arg & (UINT16_MAX << args[i].shift))), file /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c, line 1429. fk@r500 /usr/src/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/llquantize $sudo dtrace -s tst.steps.d Assertion failed: (!(arg & (UINT16_MAX << args[i].shift))), file /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c, line 1429. root@r500:/root # dtrace -s /usr/src/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/llquantize/tst.steps.d Assertion failed: (!(arg & (UINT16_MAX << args[i].shift))), file /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c, line 1429. Abort (core dumped) Fabian [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAk/l/CYACgkQBYqIVf93VJ2OTgCguroNhM7ItOH2Jkfy0Jzq7NPe Ny4An2ciB1CzLAQr2yHlMJIEqI3Rnas5 =UZGY -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120623192554.3a0fb7e8>
