diff options
author | William Cohen <wcohen@redhat.com> | 2008-11-04 10:44:42 -0500 |
---|---|---|
committer | William Cohen <wcohen@redhat.com> | 2008-11-04 10:44:42 -0500 |
commit | 59d4675dca023f30aecfaa9a7836b6c75ed60029 (patch) | |
tree | e15a3af82235d4f5d644d6d6817187e8c6185a92 /runtime | |
parent | 3266a355a8d41eee4e49ce6aa841a5166e3f6fe9 (diff) | |
parent | b95e2b79d84654ca890f7f2b02ae2c5f4e836eaf (diff) | |
download | systemtap-steved-59d4675dca023f30aecfaa9a7836b6c75ed60029.tar.gz systemtap-steved-59d4675dca023f30aecfaa9a7836b6c75ed60029.tar.xz systemtap-steved-59d4675dca023f30aecfaa9a7836b6c75ed60029.zip |
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/ChangeLog | 5 | ||||
-rw-r--r-- | runtime/regs-ia64.c | 13 |
2 files changed, 16 insertions, 2 deletions
diff --git a/runtime/ChangeLog b/runtime/ChangeLog index a59af1b7..e4ea3330 100644 --- a/runtime/ChangeLog +++ b/runtime/ChangeLog @@ -1,3 +1,8 @@ +2008-11-04 Frank Ch. Eigler <fche@elastic.org> + + From Masami Hiramatsu <mhiramat@redhat.com>, PR 6028. + * regs-ia64.c (bspcache): Expand documentation. + 2008-10-28 Frank Ch. Eigler <fche@elastic.org> From Jim Keniston: diff --git a/runtime/regs-ia64.c b/runtime/regs-ia64.c index f884c5f8..c78a757e 100644 --- a/runtime/regs-ia64.c +++ b/runtime/regs-ia64.c @@ -36,8 +36,17 @@ static void ia64_stap_get_arbsp(struct unw_frame_info *info, void *arg) } /* - * bspcache: get cached unwound address and - * set a probe local cache of the offset of unwound address. + * bspcache: get cached unwound address from current BSP and + * set a static local cache of the offset of unwound address + * if the static local cache(variable) is not set. + * The unwound address means the BSP value when the kprobe + * was hit. This macro stores the difference of BSP between + * when the kprobe was hit and when this macro was called. + * Since the difference depends on how much stack is consumed + * from when the kprobe was hit, this macro *MUST NOT* be put + * on the path which several functions execute (in that case, + * each time the difference is changed and this macro can't + * return correct unwound address). */ #define bspcache(cache, regs)\ if(regs) {\ |