]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Avoid truncating the return value of DTrace predicates.
authormarkj <markj@FreeBSD.org>
Sat, 9 Jul 2016 22:41:21 +0000 (22:41 +0000)
committermarkj <markj@FreeBSD.org>
Sat, 9 Jul 2016 22:41:21 +0000 (22:41 +0000)
commita70869aa34999d907a1e0e30035571bf5d80917f
tree0c51022e98174d09f3b775cd136fab7fa83a8bc4
parent07d0b2f49e6c8e5400c7e1f51621c7362382ed5b
Avoid truncating the return value of DTrace predicates.

Predicates are DIF objects whose return value is compared with zero to
determine whether the corresponding probe body is to be executed. The return
value itself is the contents of a 64-bit DIF register, but it was being
truncated to an int before the comparison. This meant that a predicate such
as /0x100000000/ would evaluate to false.

Reported by: rwatson
MFC after: 3 days
sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c