On Fri, 2008-12-05 at 12:19 +0800, Wenji Huang wrote:
...
Yes, this error is specific to 2.6.25 Fedora shipment kernel. Works fine
on 2.6.28-rc7+latest utrace patch. But got warning on 2.6.27.5-41.fc9
kernel.
In file included from
/usr/local/share/systemtap/runtime/uprobes/../uprobes2/uprobes_arch.c:2,
from
/usr/local/share/systemtap/runtime/uprobes/../uprobes2/uprobes.c:2795,
from
/usr/local/share/systemtap/runtime/uprobes/uprobes.c:8:
/usr/local/share/systemtap/runtime/uprobes/../uprobes2/uprobes_x86.c: In
function âhandle_riprel_insn':
/usr/local/share/systemtap/runtime/uprobes/../uprobes2/uprobes_x86.c:420:
warning: passing argument 2 of âconstant_test_bit' from incompatible
pointer type
/usr/local/share/systemtap/runtime/uprobes/../uprobes2/uprobes_x86.c:420:
warning: passing argument 2 of âvariable_test_bit' from incompatible
pointer type
/usr/local/share/systemtap/runtime/uprobes/../uprobes2/uprobes_x86.c:423:
warning: passing argument 2 of âconstant_test_bit' from incompatible
pointer type
/usr/local/share/systemtap/runtime/uprobes/../uprobes2/uprobes_x86.c:423:
warning: passing argument 2 of âvariable_test_bit' from incompatible
pointer type
Yeah, somebody has mucked with the definitions of constant_test_bit()
and variable_test_bit(). On lines 420 and 423, could you try casting
twobyte_has_modrm and onebyte_has_modrm, respectively, to (unsigned
long*)? If that doesn't work, try casting them to (const unsigned
long*).
Thanks.
Jim