changes to runtime string functions

Martin Hunt hunt@redhat.com
Wed Jan 31 20:34:00 GMT 2007


I have checked in a rewrite of the string functions in the runtime.
This is part of an effort to increase performance and reduce memory
usage. Many functions were eliminated and the symbol and stack code
required major editing. Only a few tapset functions needed to be
modified to use the new code and everything appears to be running fine
on x86_64 and i386. It would be nice if people with access to other
architectures could test and report back if there are any problems. Also
if you have embedded code that is not checked in and you use any of the
old string functions, you may need to update your code.

The most likely affected code is the stack trace stuff.  Please try this
and see if it looks OK.

function print_stuff () {
        print_regs()
        print_backtrace()
        print("--------\n")
        bt = backtrace()
        printf("the stack is %s\n", bt)
        print("--------\n")
        print_stack(bt)
        print("--------\n")
}

probe kernel.function("uptime_read_proc") {
        print("NOW IN UPTIME\n")
        print_stuff ()
}

After starting this probe, run "uptime" to trigger it.

Martin




More information about the Systemtap mailing list