[Bug tapsets/13478] ARM tapset/signal.stp signal.handle tries to use non-existing variable $signr

dsmith at redhat dot com sourceware-bugzilla@sourceware.org
Wed Dec 7 15:55:00 GMT 2011


http://sourceware.org/bugzilla/show_bug.cgi?id=13478

David Smith <dsmith at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dsmith at redhat dot com

--- Comment #1 from David Smith <dsmith at redhat dot com> 2011-12-07 15:49:57 UTC ---
Hmm, this one is quite strange.

The following code should handle that parameter being named '$sig' or '$signr':

    if (@defined($sig)) {
        sig = $sig
        sig_name = _signal_name($sig)
    }
    else {
        sig = $signr
        sig_name = _signal_name($signr)
    }

Since stap complains about not finding $signr, that means it couldn't find $sig
either.

But, one of the listed alternatives in the following error message *is* $sig:

  semantic error: unable to find local 'signr' near pc 0xc0059a54  in 
  handle_signal arch/arm/kernel/signal.c ( (alternatives: $regs $oldset $info
$ka
  $sig): identifier '$signr' at
  /root/install/share/systemtap/tapset/signal.stp:606:15

I don't have access to an arm system so I can't really look at this.  Could you
run the following commands and attach the output?

# stap -L 'kernel.function("handle_signal").*'
# stap -vp4 -e 'probe kernel.function("handle_signal") { print($sig) }'

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the Systemtap mailing list