Thread (35 messages) 35 messages, 6 authors, 2018-11-12

Re: [PATCH v3 1/2] kretprobe: produce sane stack traces

From: Steven Rostedt <rostedt@goodmis.org>
Date: 2018-11-03 13:13:49
Also in: linux-doc, linux-kselftest, lkml

On Sat, 3 Nov 2018 22:00:12 +0900
Masami Hiramatsu [off-list ref] wrote:
On Fri, 2 Nov 2018 12:13:07 -0400
Steven Rostedt [off-list ref] wrote:
quoted
Because that means if function graph tracer is active, then you can't
do a kretprobe, and vice versa. I'd really like to have it working for
multiple users, then we could trace different graph functions and store
them in different buffers. It would also allow for perf to use function
graph tracer too.  
Steve, how woul you allow multiple users on it? Something like this?

ret_trampoline_multiple(){
   list_for_each(handler, &shadow_entry[i].handlers, list)
	handler(shadow_entry[i]);
   restore_retval_and_jump_to(shadow_entry[i].orig);
}
Something like that. But since it's not a single mapping between shadow
entries and handlers, that is we have multiple tasks with multiple
shadow entries and multiple handlers, we can't use a link list (two
different parents per handler).

I was thinking of a bitmask that represents the handlers, and use that
to map which handler gets called for which shadow entry for a
particular task.

-- Steve
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help