On Thu, Sep 24, 2009 at 03:36:16PM -0400, Dave Anderson wrote:
----- "John Wright (ALPS, Fort Collins)" <john.wright(a)hp.com> wrote:
> > crash> dis -l register_kprobes
> > < never returns >
>
> I wonder if it would eventually return after minutes or hours? (Not
> that this is acceptable - I'm just curious.)
Anyway, I tried it again, and it came back 6 minutes later,
so my "never returns" claim was a bit of a exaggeration...
Sorry about that...
But stranger still -- I mis-typed the hanging command above.
It's takes several minutes to run "dis -l register_kprobe", whereas
"dis -l register_kprobes" works OK -- they're both in the same
neighborhood:
ffffffff813af401 (T) register_kprobe
ffffffff813afac4 (T) register_kprobes
I suspect the reason register_kprobe takes so much longer is that it has
way more instructions than register_kprobes. (The last instruction for
register_kbrobes is 96 bytes from the first, whereas for register_kprobe
it's 1146, on my 2.6.29-based kernel.) For each instruction, crash is
asking gdb for line number information, so for really long functions,
the slowness with the original patch is exacerbated.
> > With your new patch (and unpatched for that matter) it
works OK.
>
> Great! Sorry for the original mess. It was quick and dirty, and solved
> the specific problem Bob and I were having. I think this version is
> correct, though.
Queued for the next release.
Great, thanks!
--
+----------------------------------------------------------+
| John Wright <john.wright(a)hp.com> |
| HP Mission Critical OS Enablement & Solution Test (MOST) |
+----------------------------------------------------------+