[PATCH] ppc32: fix perf_irq extern on e500

2005-11-08 Thread Matt Porter
On Mon, Nov 07, 2005 at 07:01:28PM -0800, Andrew Morton wrote:
 Matt Porter mporter at kernel.crashing.org wrote:
 
  Add an extern reference to perf_irq on e500.

snip

   #ifdef CONFIG_E500
  +extern perf_irq_t perf_irq;
  +
   void performance_monitor_exception(struct pt_regs *regs)
   {
  perf_irq(regs);
 
 extern decls are placed in header files, please.  

Here's the updated patch, addressing this for ppc64 as well.  Paul,
would you prefer that this go through the powerpc-merge tree since
the updated version modifies arch/powerpc/?

-Matt

Fixes e500 build and cleans up traps.c by moving perf_irq extern to
pmc.h.

Signed-off-by: Matt Porter mporter at kernel.crashing.org

diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index 07e5ee4..32cd797 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -898,10 +898,6 @@ void altivec_unavailable_exception(struc
die(Unrecoverable VMX/Altivec Unavailable Exception, regs, SIGABRT);
 }
 
-#ifdef CONFIG_PPC64
-extern perf_irq_t perf_irq;
-#endif
-
 #if defined(CONFIG_PPC64) || defined(CONFIG_E500)
 void performance_monitor_exception(struct pt_regs *regs)
 {
diff --git a/include/asm-powerpc/pmc.h b/include/asm-powerpc/pmc.h
index 2f3c3fc..5f41f3a 100644
--- a/include/asm-powerpc/pmc.h
+++ b/include/asm-powerpc/pmc.h
@@ -22,6 +22,7 @@
 #include asm/ptrace.h
 
 typedef void (*perf_irq_t)(struct pt_regs *);
+extern perf_irq_t perf_irq;
 
 int reserve_pmc_hardware(perf_irq_t new_perf_irq);
 void release_pmc_hardware(void);



[PATCH] ppc32: fix perf_irq extern on e500

2005-11-07 Thread Andrew Morton
Matt Porter mporter at kernel.crashing.org wrote:

 Add an extern reference to perf_irq on e500.
 
 Signed-off-by: Matt Porter mporter at kernel.crashing.org
 
 diff --git a/arch/ppc/kernel/traps.c b/arch/ppc/kernel/traps.c
 index 16adde6..ff1bdc2 100644
 --- a/arch/ppc/kernel/traps.c
 +++ b/arch/ppc/kernel/traps.c
 @@ -888,6 +888,8 @@ void altivec_assist_exception(struct pt_
  #endif /* CONFIG_ALTIVEC */
  
  #ifdef CONFIG_E500
 +extern perf_irq_t perf_irq;
 +
  void performance_monitor_exception(struct pt_regs *regs)
  {
   perf_irq(regs);

extern decls are placed in header files, please.  



[PATCH] ppc32: fix perf_irq extern on e500

2005-11-07 Thread Matt Porter
On Mon, Nov 07, 2005 at 07:01:28PM -0800, Andrew Morton wrote:
 Matt Porter mporter at kernel.crashing.org wrote:
 
  Add an extern reference to perf_irq on e500.
  
  Signed-off-by: Matt Porter mporter at kernel.crashing.org
  
  diff --git a/arch/ppc/kernel/traps.c b/arch/ppc/kernel/traps.c
  index 16adde6..ff1bdc2 100644
  --- a/arch/ppc/kernel/traps.c
  +++ b/arch/ppc/kernel/traps.c
  @@ -888,6 +888,8 @@ void altivec_assist_exception(struct pt_
   #endif /* CONFIG_ALTIVEC */
   
   #ifdef CONFIG_E500
  +extern perf_irq_t perf_irq;
  +
   void performance_monitor_exception(struct pt_regs *regs)
   {
  perf_irq(regs);
 
 extern decls are placed in header files, please.  

Ok, but we'll have to fix the equivalent code in arch/powerpc/.
The problem is that these rules are applied inconsistently at best. :)

-Matt