On Mon, Oct 05, 2009 at 04:18:39PM -0400, Masami Hiramatsu wrote:
Frederic Weisbecker wrote:
For the function arguments, I guess we don't need to worry
anymore about r0, r1, etc... but we can deal with the true var
name, without any kind of prefixes.
This depends on ABI, function argument from ABI doesn't need
debuginfo, but it will be unstable on some arch, e.g. x86-32
with/without asmlinkage.
Thus, I think that we can just describe where function arguments
will be(e.g. arg0 is ax) as a note for each architecture
in Documents/trace/kprobetrace.txt.
Yeah that may help. Although everyone can look at the calling convention
ABI for a given arch but that would still help.
What about @return :-) ?
Hmm, it might conflict with global symbol... Maybe, we can remove this
because retprobe already shows return address in the head of entry.
It won't conflict since "return" is a reserved word and can't then be
used as a symbol.
But yeah, if it's an embeded field, we should remove it.
What if we take the following:
[Ftrace and perf probe side]
%reg = registers, we can also play with deref and offsets like (%esp), 8(%esp), etc.
Hmm, on x86-32, sp at intr context is not pointing the top of stack. actually&sp is
the real address of the stack :(
Perhaps, on x86-32, we can translate %sp to stack address in kprobe-tracer.
Oh? You mean in the saved registers while triggering an int 3?