Re: [RFT] llquantize for FreeBSD's dtrace

From: Mark Peek <mp_at_FreeBSD.org>
Date: Tue, 26 Jun 2012 10:23:05 -0700
On 6/23/12 11:09 AM, Pedro Giffuni wrote:
>
>
> --- Sab 23/6/12, Fabian Keil <freebsd-listen_at_fabiankeil.de> ha scritto:
> ...
>>> 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
>>>
>>> _at_ = llquantize(0, 1, 0, 10, 10);
>>
>> The problem appears to be unrelated to the syntax change:
>>
>> fk_at_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
>>
>
> It's a different assertion.
>
> Probably some difference between Solaris and BSD.
> this is very useful, thanks!

Try this, change the assert on line 1429 in file dt_cc.c from:

assert(!(arg & (UINT16_MAX << args[i].shift)));

to

assert(!(arg & ((uint64_t)UINT16_MAX << args[i].shift)));


Mark
Received on Tue Jun 26 2012 - 15:23:13 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:28 UTC