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] [day] [month] [year] [list]
Date:	Fri, 4 Sep 2015 07:55:37 +0000
From:	平松雅巳 / HIRAMATU,MASAMI 
	<masami.hiramatsu.pt@...achi.com>
To:	"'Namhyung Kim'" <namhyung@...nel.org>
CC:	Arnaldo Carvalho de Melo <acme@...nel.org>,
	Ingo Molnar <mingo@...nel.org>,
	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Jiri Olsa <jolsa@...hat.com>,
	LKML <linux-kernel@...r.kernel.org>,
	Wang Nan <wangnan0@...wei.com>
Subject: RE: Re: [RFC/PATCH 2/3] perf probe: Rename __event_package to
 probe_event_package

> From: Namhyung Kim [mailto:namhyung@...il.com] On Behalf Of Namhyung Kim
> 
> On Fri, Sep 04, 2015 at 02:11:09AM +0000, 平松雅巳 / HIRAMATU,MASAMI wrote:
> > > From: Namhyung Kim [mailto:namhyung@...il.com] On Behalf Of Namhyung Kim
> > >
> > > The struct __event_package can be accessed now from other than
> > > probe-event.c code.  So rename it to more specific name.
> > >
> > > Cc: Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>
> > > Signed-off-by: Namhyung Kim <namhyung@...nel.org>
> > > ---
> > >  tools/perf/util/probe-event.c | 18 ++++++------------
> > >  tools/perf/util/probe-event.h | 10 ++++++++++
> > >  2 files changed, 16 insertions(+), 12 deletions(-)
> > >
> > > diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> > > index 8eaa03428d72..eef39338bb2a 100644
> > > --- a/tools/perf/util/probe-event.c
> > > +++ b/tools/perf/util/probe-event.c
> > > @@ -2759,20 +2759,14 @@ static int convert_to_probe_trace_events(struct perf_probe_event *pev,
> > >  	return find_probe_trace_events_from_map(pev, tevs);
> > >  }
> > >
> > > -struct __event_package {
> > > -	struct perf_probe_event		*pev;
> > > -	struct probe_trace_event	*tevs;
> > > -	int				ntevs;
> > > -};
> > > -
> > > -static int __add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
> > > -				   struct __event_package **ppkgs)
> > > +int __add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
> > > +			    struct probe_event_package **ppkgs)
> >
> > OK, since now we have probe_event_package object, this function should be
> > refactored as pkgs = probe_event_packages__new(pevs, npevs)(allocate, initialize)
> > , probe_event_packages__convert(pkgs) and probe_event_packages__apply(pkgs).
> 
> I think it'd be better using Wang Nan's patch below.
> 
>   https://lkml.org/lkml/2015/8/29/25

Ah, I see. It is certainly good way to solve :)

Thanks!

> 
> I'll send v2 with this change.
> 
> Thanks,
> Namhyung
> 
> 
> >
> > >  {
> > >  	int i, ret;
> > > -	struct __event_package *pkgs;
> > > +	struct probe_event_package *pkgs;
> > >
> > >  	ret = 0;
> > > -	pkgs = zalloc(sizeof(struct __event_package) * npevs);
> > > +	pkgs = zalloc(sizeof(struct probe_event_package) * npevs);
> > >
> > >  	if (pkgs == NULL)
> > >  		return -ENOMEM;
> > > @@ -2813,7 +2807,7 @@ static int __add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
> > >  	return 0;
> > >  }
> > >
> > > -static void cleanup_perf_probe_events(struct __event_package *pkgs, int npevs)
> > > +void cleanup_perf_probe_events(struct probe_event_package *pkgs, int npevs)
> >
> > This also should be perf_event_pacakges__delete() :)
> >
> > Thanks!
> >
> > >  {
> > >  	int i, j;
> > >
> > > @@ -2833,7 +2827,7 @@ static void cleanup_perf_probe_events(struct __event_package *pkgs, int npevs)
> > >  int add_perf_probe_events(struct perf_probe_event *pevs, int npevs)
> > >  {
> > >  	int ret;
> > > -	struct __event_package *pkgs = NULL;
> > > +	struct probe_event_package *pkgs = NULL;
> > >
> > >  	ret = __add_perf_probe_events(pevs, npevs, &pkgs);
> > >  	cleanup_perf_probe_events(pkgs, npevs);
> > > diff --git a/tools/perf/util/probe-event.h b/tools/perf/util/probe-event.h
> > > index 6e7ec68a4aa8..73f922fa7cac 100644
> > > --- a/tools/perf/util/probe-event.h
> > > +++ b/tools/perf/util/probe-event.h
> > > @@ -89,6 +89,12 @@ struct perf_probe_event {
> > >  	struct perf_probe_arg	*args;	/* Arguments */
> > >  };
> > >
> > > +struct probe_event_package {
> > > +	struct perf_probe_event		*pev;
> > > +	struct probe_trace_event	*tevs;
> > > +	int				ntevs;
> > > +};
> > > +
> > >  /* Line range */
> > >  struct line_range {
> > >  	char			*file;		/* File name */
> > > @@ -138,6 +144,10 @@ extern void line_range__clear(struct line_range *lr);
> > >  extern int line_range__init(struct line_range *lr);
> > >
> > >  extern int add_perf_probe_events(struct perf_probe_event *pevs, int npevs);
> > > +extern int __add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
> > > +				   struct probe_event_package **ppkgs);
> > > +extern void cleanup_perf_probe_events(struct probe_event_package *pkgs,
> > > +				      int npevs);
> > >  extern int del_perf_probe_events(struct strfilter *filter);
> > >  extern int show_perf_probe_events(struct strfilter *filter);
> > >  extern int show_line_range(struct line_range *lr, const char *module,
> > > --
> > > 2.5.0
> >

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ