Generic test suite failures found with ARM testing
Quentin Barnes
qbarnes@urbana.css.mot.com
Thu Jun 14 16:40:00 GMT 2007
On Thu, Jun 14, 2007 at 10:42:27AM -0400, Martin Hunt wrote:
>On Thu, 2007-06-14 at 09:11 -0500, David Smith wrote:
>> Quentin Barnes wrote:
>> > I've run across two test failures on ARM that are not ARM-specific. They
>> > are with systemtap.samples/profile.exp and systemtap.samples/syscalls2.exp.
>> > These tests fail for me because of the 128 character limit on strings.
>> >
>> > For example, with profile.exp the output being looked for is truncated:
>> > staprun(4619)
>> > kernel.function("sys_poll@/proj/cost/work/qbarnes/kprobes/work/usr/src/linux-2.6.21.4/fs/select.c:742").call
>> > coun^M
>>
>> The reason why we haven't noticed this problem is that you are evidently
>> compiling your kernel differently than we are.
Somebody doing something previously untried is often a good source of
new bugs. :-)
>I've seen this before. It happens if you use "make O=output/dir" to
>build your kernel.
Ah, ha!
In the log, sometimes I was getting "short" names and sometimes I
was getting "long" names. I never figured out why. That's the
missing piece. Most of the time I build with O=... giving me the
long names, but sometimes I would build in place giving me the short
names.
>> I believe the following patch will fix the problem by removing the
>> strcats. If this works for you I'll check it in.
>>
>> diff -u -p -r1.2 profile.stp
>> --- testsuite/systemtap.samples/profile.stp 2 Apr 2007 20:30:30
>> -0000 1.2
>> +++ testsuite/systemtap.samples/profile.stp 14 Jun 2007 14:10:01 -0000
>> @@ -30,9 +30,9 @@ probe timer.ms(5000) {
>> }
>> probe end {
>> foreach ([pid,syscall] in syscall_count-) {
>> - log (command[pid] . "(" . sprint(pid) . ") " . syscall .
>> - " count=" . sprint(syscall_count[pid,syscall]) .
>> - " ttime=" . sprint(syscall_times[pid,syscall]))
>> + printf("%s(%d) %s count=%d ttime=%d\n", command[pid], pid, syscall,
>> + syscall_count[pid,syscall], syscall_times[pid,syscall])
>> +
>> if (count++ > 30) next
>> }
>> }
It worked!
>I think removing all uses of the dot concatenation operator would be a
>good idea. Maybe keep a specific testcase around for backwards
>compatibility.
Probably...
>Martin
Quentin
More information about the Systemtap
mailing list