All of lore.kernel.org
 help / color / mirror / Atom feed
From: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
To: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: Ingo Molnar <mingo@elte.hu>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [Bugfix] unregister_trace_probe needs to be called under mutex
Date: Thu, 01 Jul 2010 10:09:03 +0900	[thread overview]
Message-ID: <4C2BEAAF.8050103@hitachi.com> (raw)
In-Reply-To: <20100630084548.GA10325@linux.vnet.ibm.com>

Srikar Dronamraju wrote:
> Comment in unregister_trace_probe() says probe_lock will be held
> when it gets called. However there is a case where it might called
> without the probe_lock being held. Also since we are traversing the
> probe_list and deleting an element from the probe_list, probe_lock
> should be held.
> 
> This was first pointed in uprobes traceevent review by Frederic
> Weisbecker here.  (http://lkml.org/lkml/2010/5/12/106)
> 
> This patch is needed for both 2.6.35-rc3 and 2.6.35-rc3-tip
> 
> Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>

Ah, right! That's definately needed.

Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>

Thank you!


> ---
> 
> diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
> index 4f11a56..67670cd 100644
> --- a/kernel/trace/trace_kprobe.c
> +++ b/kernel/trace/trace_kprobe.c
> @@ -269,14 +269,17 @@ static int create_trace_probe(int argc, char **argv)
>  			pr_info("Delete command needs an event name.\n");
>  			return -EINVAL;
>  		}
> +		mutex_lock(&probe_lock);
>  		tp = find_probe_event(event, group);
>  		if (!tp) {
> +			mutex_unlock(&probe_lock);
>  			pr_info("Event %s/%s doesn't exist.\n", group, event);
>  			return -ENOENT;
>  		}
>  		/* delete an event */
>  		unregister_trace_probe(tp);
>  		free_trace_probe(tp);
> +		mutex_unlock(&probe_lock);
>  		return 0;
>  	}
>  


  parent reply	other threads:[~2010-07-01  1:09 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-30  8:45 [Bugfix] unregister_trace_probe needs to be called under mutex Srikar Dronamraju
2010-06-30  9:44 ` Peter Zijlstra
2010-06-30 10:49   ` Srikar Dronamraju
2010-06-30 16:00   ` Steven Rostedt
2010-07-01  1:09 ` Masami Hiramatsu [this message]
2010-07-06  5:08   ` Srikar Dronamraju
2010-08-05  8:01 ` [tip:perf/core] tracing/kprobes: " tip-bot for Srikar Dronamraju

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C2BEAAF.8050103@hitachi.com \
    --to=masami.hiramatsu.pt@hitachi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=srikar@linux.vnet.ibm.com \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.