Re: [PATCH -v4 9/9] tracing: add function graph tracer support forMIPS

From: David Daney
Date: Thu Oct 22 2009 - 12:17:18 EST


Steven Rostedt wrote:
On Thu, 2009-10-22 at 08:59 -0700, David Daney wrote:

This is what I was talking about up-thread. Leaf functions may have no function prolog. If you do code scanning you will fail. While scanning backwards, there is no way to know when you have entered a new function. Looking for function return sequences 'jr ra' doesn't work as there may be functions with multiple return sites, functions that never return, or arbitrary data before the function. I think you have to force a frame pointer to be established if you want this to work.

Functions that run off into another function?? I guess the compiler
could do that, but with -pg enable, I would think is broken.


Use of GCC-4.5's __builtin_unreachable() can lead to this, as well as functions that call noreturn functions.


Note to self: Time to resend the __builtin_unreachable() patch set again...

David Daney
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/