This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: two errors - what are they?


On Sat, May 17, 2008 at 3:57 PM,  <wenji.huang@oracle.com> wrote:
>> thank you for the answer.   has it been fixed?
>>
>> 6429 is the same as 6510, and here within it is mentioned as
>> fixed, right?
>>
>> http://sourceware.org/bugzilla/show_bug.cgi?id=6510
>>
>> But my current systemtap (after doing a git pull and compile
>> install)
>> is already the latest, and still having the same problem:
>>
>> test -e include/linux/autoconf.h -a -e include/config/auto.conf
>> || (           \
>>         echo;
>>            \
>>         echo "  ERROR: Kernel configuration is invalid.";
>>            \
>>         echo "         include/linux/autoconf.h or
>> include/config/auto.conf are missing.";      \
>>         echo "         Run 'make oldconfig && make prepare'
>> on kernel
>> src to fix it.";  \
>>         echo;
>>            \
>>         /bin/false)
>>
>> and this:
>>
>> In file included from
>> /usr/local/share/systemtap/runtime/transport/transport.c:22,
>>                  from /usr/local/share/systemtap/runtime/print.c:17,
>>                  from /usr/local/share/systemtap/runtime/runtime.h:82,
>>                  from
>> /tmp/stapt7sMiH/stap_5e59f7c7581623199639d9e6ea82ab29_12247.c:41:
>> /usr/local/share/systemtap/runtime/transport/symbols.c: In
>> function
>> '_stp_load_module_symbols':
>> /usr/local/share/systemtap/runtime/transport/symbols.c:407:
>> error:
>> dereferencing pointer to incomplete type
>> /usr/local/share/systemtap/runtime/transport/symbols.c:425:
>> error:
>> dereferencing pointer to incomplete type
>> /usr/local/share/systemtap/runtime/transport/symbols.c:427:
>> error:
>> dereferencing pointer to incomplete type
>> /usr/local/share/systemtap/runtime/transport/symbols.c:456:
>> error:
>> dereferencing pointer to incomplete type
>> /usr/local/share/systemtap/runtime/transport/symbols.c:457:
>> error:
>> dereferencing pointer to incomplete type
>> /usr/local/share/systemtap/runtime/transport/symbols.c:460:
>> error:
>> dereferencing pointer to incomplete type
>>
>> and finally:
>> make[1]: *** [/tmp/stapt7sMiH/stap_5e59f7c7581623199639d9e6ea82ab29_12247.o]
>> Error 1
>> make: *** [_module_/tmp/stapt7sMiH] Error 2
>> Pass 4: compiled C into
>> "stap_5e59f7c7581623199639d9e6ea82ab29_12247.ko" in
>> 1120usr/530sys/4117real ms.
>> Pass 4: compilation failed.  Try again with more '-v' (verbose)
>> options.
>> Running rm -rf /tmp/stapt7sMiH
>>
>> I suspect there must be something wrong on my side....
>
> The main problem is the change of upstream kernel. Structure module_sect_attr{s} was moved to
> module.c, not in module.h as before. So the accessing member is denied lack of definition. This
> happens since 2.6.26 and is architecture independant.
>
> Regards,
> Wenji
>
>
I see....thank you for the explanation.   Systemtap is highly
sensitive to kernel version.   So using macros like the following:

./runtime/alloc.c:
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,15)
#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15) */

we should be able to resolve the errors, and make it work for the
different kernel version, correct?   As far as possible we should be
having our own structures/headers, so that it will not break easily
when the kernel starts changing....anyway just some wishful
thinking....:-).

So is the fix completed, or it is not?   thank you :-).
-- 
Regards,
Peter Teoh


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]