lkml.org 
[lkml]   [2013]   [Apr]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 3/4] uprobes/tracing: Kill the pointless local_save_flags/preempt_count calls
* Oleg Nesterov <oleg@redhat.com> [2013-03-29 19:15:45]:

> uprobe_trace_func() is never called with irqs or preemption
> disabled, no need to ask preempt_count() or local_save_flags().
>
> Signed-off-by: Oleg Nesterov <oleg@redhat.com>

Acked-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>

Adding Masami in the Cc.

> ---
> kernel/trace/trace_uprobe.c | 10 +++-------
> 1 files changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c
> index 8e00901..43d258d 100644
> --- a/kernel/trace/trace_uprobe.c
> +++ b/kernel/trace/trace_uprobe.c
> @@ -492,17 +492,13 @@ static int uprobe_trace_func(struct trace_uprobe *tu, struct pt_regs *regs)
> struct ring_buffer_event *event;
> struct ring_buffer *buffer;
> u8 *data;
> - int size, i, pc;
> - unsigned long irq_flags;
> + int size, i;
> struct ftrace_event_call *call = &tu->call;
>
> - local_save_flags(irq_flags);
> - pc = preempt_count();
> -
> size = sizeof(*entry) + tu->size;
>
> event = trace_current_buffer_lock_reserve(&buffer, call->event.type,
> - size, irq_flags, pc);
> + size, 0, 0);
> if (!event)
> return 0;
>
> @@ -513,7 +509,7 @@ static int uprobe_trace_func(struct trace_uprobe *tu, struct pt_regs *regs)
> call_fetch(&tu->args[i].fetch, regs, data + tu->args[i].offset);
>
> if (!filter_current_check_discard(buffer, call, entry, event))
> - trace_buffer_unlock_commit(buffer, event, irq_flags, pc);
> + trace_buffer_unlock_commit(buffer, event, 0, 0);
>
> return 0;
> }
> --
> 1.5.5.1
>

--
Thanks and Regards
Srikar Dronamraju



\
 
 \ /
  Last update: 2013-04-05 00:01    [W:0.234 / U:1.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site