lkml.org 
[lkml]   [2009]   [Jan]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: sparc64 build breakage...

    * Yinghai Lu <yinghai@kernel.org> wrote:

    > > Meanwhile that particular comment is moot because ARM is genirq - but
    > > there's a handful of other non-genirq architectures so this area of code
    > > continues to be a mess.
    > >
    > > I guess we could move all the APIs to kernel_stat.h. Yinghai?
    >
    > sth like:

    yes. I've applied your cleanup to irq/sparseirq [see the commit below] and
    started doing some build testing to see what the general impact is.

    Ingo

    -------------------->
    From d52a61c04c6c0814ca270a088feedb126436598e Mon Sep 17 00:00:00 2001
    From: Yinghai Lu <yinghai@kernel.org>
    Date: Thu, 22 Jan 2009 00:38:56 -0800
    Subject: [PATCH] irq: clean up irq stat methods

    David Miller suggested, related to a kstat_irqs related build breakage:

    > Either linux/kernel_stat.h provides the kstat_incr_irqs_this_cpu
    > interface or linux/irq.h does, not both.

    So move them to kernel_stat.h.

    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    ---
    include/linux/irq.h | 6 ------
    include/linux/kernel_stat.h | 9 ++++++---
    2 files changed, 6 insertions(+), 9 deletions(-)

    diff --git a/include/linux/irq.h b/include/linux/irq.h
    index e9a8789..48901e9 100644
    --- a/include/linux/irq.h
    +++ b/include/linux/irq.h
    @@ -202,12 +202,6 @@ extern struct irq_desc irq_desc[NR_IRQS];
    extern struct irq_desc *move_irq_desc(struct irq_desc *old_desc, int cpu);
    #endif /* CONFIG_SPARSE_IRQ */

    -#define kstat_irqs_this_cpu(DESC) \
    - ((DESC)->kstat_irqs[smp_processor_id()])
    -#define kstat_incr_irqs_this_cpu(irqno, DESC) \
    - ((DESC)->kstat_irqs[smp_processor_id()]++)
    -
    -
    extern struct irq_desc *irq_to_desc_alloc_cpu(unsigned int irq, int cpu);

    static inline struct irq_desc *
    diff --git a/include/linux/kernel_stat.h b/include/linux/kernel_stat.h
    index a3431b1..0c8b89f 100644
    --- a/include/linux/kernel_stat.h
    +++ b/include/linux/kernel_stat.h
    @@ -52,16 +52,19 @@ static inline void kstat_incr_irqs_this_cpu(unsigned int irq,
    {
    kstat_this_cpu.irqs[irq]++;
    }
    -#endif
    -

    -#ifndef CONFIG_GENERIC_HARDIRQS
    static inline unsigned int kstat_irqs_cpu(unsigned int irq, int cpu)
    {
    return kstat_cpu(cpu).irqs[irq];
    }
    #else
    +#include <linux/irq.h>
    extern unsigned int kstat_irqs_cpu(unsigned int irq, int cpu);
    +#define kstat_irqs_this_cpu(DESC) \
    + ((DESC)->kstat_irqs[smp_processor_id()])
    +#define kstat_incr_irqs_this_cpu(irqno, DESC) \
    + ((DESC)->kstat_irqs[smp_processor_id()]++)
    +
    #endif

    /*

    \
     
     \ /
      Last update: 2009-01-22 10:23    [W:0.023 / U:60.176 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site