public inbox for linux-arm-kernel@lists.infradead.org 
 help / color / mirror / Atom feed
From: robert.richter@amd•com (Robert Richter)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH 4/7] ARM: oprofile: Move non-ARM code into separate init/exit
Date: Wed, 6 Oct 2010 16:49:21 +0200	[thread overview]
Message-ID: <20101006144921.GQ13563@erda.amd.com> (raw)
In-Reply-To: <20101006133309.GP13563@erda.amd.com>

On 06.10.10 15:33:09, Robert Richter wrote:
> On 04.10.10 16:44:22, Matt Fleming wrote:
> > In preparation for moving the majority of this oprofile code into an
> > architecture-neutral place separate the architecture-independent code
> > into oprofile_perf_init() and oprofile_perf_exit().
> > 
> > Signed-off-by: Matt Fleming <matt@console-pimps•org>
> > Tested-by: Will Deacon <will.deacon@arm•com>
> > ---
> >  arch/arm/oprofile/common.c |   17 ++++++++++++++---
> >  1 files changed, 14 insertions(+), 3 deletions(-)
> > 
> > diff --git a/arch/arm/oprofile/common.c b/arch/arm/oprofile/common.c
> > index 86df75f..e4cd332 100644
> > --- a/arch/arm/oprofile/common.c
> > +++ b/arch/arm/oprofile/common.c
> > @@ -327,7 +327,7 @@ static void arm_backtrace(struct pt_regs * const regs, unsigned int depth)
> >  		tail = user_backtrace(tail);
> >  }
> >  
> > -int __init oprofile_arch_init(struct oprofile_operations *ops)
> > +int __init oprofile_perf_init(struct oprofile_operations *ops)
> >  {
> >  	int cpu, ret = 0;
> >  
> > @@ -365,7 +365,6 @@ int __init oprofile_arch_init(struct oprofile_operations *ops)
> >  		}
> >  	}
> >  
> > -	ops->backtrace		= arm_backtrace;
> >  	ops->create_files	= oprofile_perf_create_files;
> >  	ops->setup		= oprofile_perf_setup;
> >  	ops->start		= oprofile_perf_start;
> > @@ -388,7 +387,14 @@ out:
> >  	return ret;
> >  }
> >  
> > -void __exit oprofile_arch_exit(void)
> > +int __init oprofile_arch_init(struct oprofile_operations *ops)
> > +{
> 
> We should do here a:
> 
> 	memset(ops, 0, sizeof(*ops));

Matt,

an alternative would be to move this to oprofile_perf_init() and
modify ops->backtrace afterwards, but then we will lose the function's
tail call. Not sure that is better. Paul, what do you think?

-Robert

> 
> Otherwise it looks good.
> 
> -Robert
> 
> > +	ops->backtrace		= arm_backtrace;
> > +
> > +	return oprofile_perf_init(ops);
> > +}
> > +
> > +void __exit oprofile_perf_exit(void)
> >  {
> >  	int cpu, id;
> >  	struct perf_event *event;
> > @@ -406,6 +412,11 @@ void __exit oprofile_arch_exit(void)
> >  	kfree(counter_config);
> >  	exit_driverfs();
> >  }
> > +
> > +void __exit oprofile_arch_exit(void)
> > +{
> > +	oprofile_perf_exit();
> > +}
> >  #else
> >  int __init oprofile_arch_init(struct oprofile_operations *ops)
> >  {
> > -- 
> > 1.7.1

-- 
Advanced Micro Devices, Inc.
Operating System Research Center

  parent reply	other threads:[~2010-10-06 14:49 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-04 20:44 [PATCH V4 0/7] Generalise ARM perf-events backend for oprofile Matt Fleming
2010-10-04 20:44 ` [PATCH 1/7] perf: Add helper function to return number of counters Matt Fleming
2010-10-05  8:15   ` Paul Mundt
2010-10-06 12:14   ` Robert Richter
2010-10-06 12:35     ` Robert Richter
2010-10-06 13:41     ` Peter Zijlstra
2010-10-04 20:44 ` [PATCH 2/7] perf: New helper function for pmu name Matt Fleming
2010-10-05  8:10   ` Paul Mundt
2010-10-06 12:27   ` Robert Richter
2010-10-06 12:39     ` Paul Mundt
2010-10-06 13:18       ` Robert Richter
2010-10-06 13:30         ` Paul Mundt
2010-10-06 14:13           ` Paul Mundt
2010-10-06 15:37             ` Robert Richter
2010-10-06 15:46               ` Paul Mundt
2010-10-06 15:50           ` Robert Richter
2010-10-06 15:57             ` Paul Mundt
2010-10-06 18:15   ` Robert Richter
2010-10-06 18:38     ` Paul Mundt
2010-10-04 20:44 ` [PATCH 3/7] ARM: oprofile: Rename op_arm to oprofile_perf Matt Fleming
2010-10-06 12:41   ` Robert Richter
2010-10-04 20:44 ` [PATCH 4/7] ARM: oprofile: Move non-ARM code into separate init/exit Matt Fleming
2010-10-06 13:33   ` Robert Richter
2010-10-06 13:41     ` Paul Mundt
2010-10-06 14:49     ` Robert Richter [this message]
2010-10-06 14:53       ` Paul Mundt
2010-10-06 14:59         ` Robert Richter
2010-10-06 15:00           ` Paul Mundt
2010-10-06 18:23           ` Grant Likely
2010-10-06 18:44             ` Robert Richter
2010-10-06 18:50               ` Paul Mundt
2010-10-06 18:58               ` Grant Likely
2010-10-06 19:22                 ` Robert Richter
2010-10-04 20:44 ` [PATCH 5/7] oprofile: Abstract the perf-events backend Matt Fleming
2010-10-06 18:34   ` Robert Richter
2010-10-04 20:44 ` [PATCH 6/7] sh: oprofile: Use perf-events oprofile backend Matt Fleming
2010-10-05  8:08   ` Paul Mundt
2010-10-06 18:35   ` Robert Richter
2010-10-06 19:45     ` Matt Fleming
2010-10-06 21:03       ` Paul Mundt
2010-10-04 20:44 ` [PATCH 7/7] sh: Annotate oprofile_arch_exit() with __exit marker Matt Fleming
2010-10-05  8:16   ` Paul Mundt
2010-10-06 18:37   ` Robert Richter

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=20101006144921.GQ13563@erda.amd.com \
    --to=robert.richter@amd$(echo .)com \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox