lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 31 Jul 2010 08:27:48 +0530
From:	Srikar Dronamraju <srikar@...ux.vnet.ibm.com>
To:	Arnaldo Carvalho de Melo <acme@...radead.org>
Cc:	Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...e.hu>,
	Steven Rostedt <rostedt@...dmis.org>,
	Randy Dunlap <rdunlap@...otime.net>,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	Christoph Hellwig <hch@...radead.org>,
	Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>,
	Oleg Nesterov <oleg@...hat.com>,
	Mark Wielaard <mjw@...hat.com>,
	Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Naren A Devaiah <naren.devaiah@...ibm.com>,
	Jim Keniston <jkenisto@...ux.vnet.ibm.com>,
	Frederic Weisbecker <fweisbec@...il.com>,
	"Frank Ch. Eigler" <fche@...hat.com>,
	Ananth N Mavinakayanahalli <ananth@...ibm.com>,
	LKML <linux-kernel@...r.kernel.org>,
	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
Subject: Re: [PATCHv10 2.6.35-rc6-tip 11/14]  perf: perf interface for
 uprobes

> >  		 "Set how many probe points can be found for a probe."),
> > +	OPT_INTEGER('p', "pid", &params.upid,
> > +			"specify a pid for a uprobes based probe"),
> 
> "ubrobes based probe" could be made clear as:
> 
> "Specify pid of process where the probe will be added"

Okay . will do.

> 
> ?
> 
> The following three hunks could be moved to a separate patch that I'd
> apply on my perf/core branch, so to reduce this patchset size, like I
> did with the s/kprobe/probe/g one that is already there:
> 
> http://git.kernel.org/?p=linux/kernel/git/acme/linux-2.6.git;a=commitdiff;h=0e60836bbd392300198c5c2d918c18845428a1fe
> 
[snipped]

Okay, I can make a separate patch of those three hunks and send it out. 

> 
> >  			group = pev->group;
> > -		else
> > +		else if (!pev->upid)
> >  			group = PERFPROBE_GROUP;
> > +		else {
> > +			/*
> > +			 * For uprobes based probes create a group
> > +			 * probe_<pid>.
> > +			 */
> > +			snprintf(buf, 64, "%s_%d", PERFPROBE_GROUP, pev->upid);
> > +			group = buf;
> > +		}
> > +
> > +		tev->group = strdup(group);
> 
> Here you don't check as you do on the next strdups 

Actually tev->group gets checked where tev->event gets checked. 
However I had moved assigning tev->group to where group gets
assigned. This probably is causing the confusion. I will move the
assignment to where tev->event gets assigned.

> >  			break;
> >  		event = buf;
> > -
> >  		tev->event = strdup(event);
> > -		tev->group = strdup(group);
> > +
> 
> here

This strdup(group) was moved ahead by few lines. I can move it back
here it makes things more clear.

> 
> >  				       tev->point.symbol, NULL);
> > @@ -1598,15 +1812,19 @@ struct __event_package {
> >  int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
> >  			  bool force_add, int max_tevs)
> >  {
> > -	int i, j, ret;
> > +	int i, j, ret = 0;
> >  	struct __event_package *pkgs;
> >  
> >  	pkgs = zalloc(sizeof(struct __event_package) * npevs);
> >  	if (pkgs == NULL)
> >  		return -ENOMEM;
> >  
> > -	/* Init vmlinux path */
> > -	ret = init_vmlinux();
> > +	if (!pevs->upid)
> > +		/* Init vmlinux path */
> > +		ret = init_vmlinux();
> > +	else
> > +		ret = init_perf_uprobes();
> > +
> >  	if (ret < 0)
> 
> pkgs leaks here.

Right, but I dont think this leak was introduced by my patch(s). I
guess its better fixed by a different patch. 

> 

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ