diff mbox

[RESEND,1/2] irqdesc: Add function to identify percpu_devid irqs

Message ID 1507894005-53778-2-git-send-email-julien.thierry@arm.com (mailing list archive)
State New, archived
Headers show

Commit Message

Julien Thierry Oct. 13, 2017, 11:26 a.m. UTC
irq_is_percpu indicates whether an irq should only target a single cpu.
PERCPU_DEVID flag indicates that an irq can be configured differently on
each cpu it can target.

Provide a function to check whether an irq is PERCPU_DEVID.

Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Marc Zyngier <marc.zyngier@arm.com>
---
 include/linux/irqdesc.h | 8 ++++++++
 1 file changed, 8 insertions(+)

--
1.9.1

Comments

Marc Zyngier Oct. 13, 2017, 4:53 p.m. UTC | #1
On 13/10/17 12:26, Julien Thierry wrote:
> irq_is_percpu indicates whether an irq should only target a single cpu.
> PERCPU_DEVID flag indicates that an irq can be configured differently on
> each cpu it can target.
> 
> Provide a function to check whether an irq is PERCPU_DEVID.
> 
> Signed-off-by: Julien Thierry <julien.thierry@arm.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Marc Zyngier <marc.zyngier@arm.com>
> ---
>  include/linux/irqdesc.h | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/include/linux/irqdesc.h b/include/linux/irqdesc.h
> index 3e90a09..93960cf 100644
> --- a/include/linux/irqdesc.h
> +++ b/include/linux/irqdesc.h
> @@ -244,6 +244,14 @@ static inline int irq_is_percpu(unsigned int irq)
>  	return desc->status_use_accessors & IRQ_PER_CPU;
>  }
> 
> +static inline int irq_is_percpu_devid(unsigned int irq)
> +{
> +	struct irq_desc *desc;
> +
> +	desc = irq_to_desc(irq);
> +	return desc->status_use_accessors & IRQ_PER_CPU_DEVID;
> +}
> +
>  static inline void
>  irq_set_lockdep_class(unsigned int irq, struct lock_class_key *class)
>  {
> --
> 1.9.1
> 

Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>

	M.
Mark Rutland Oct. 13, 2017, 5:44 p.m. UTC | #2
Hi Thomas,

Would you be happy for this patch to be taken via the arm64 tree?

The next patch [1] makes use of this in the arm_pmu driver, and we're
likely to have some other changes there shortly.

Thanks,
Mark

[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2017-October/536532.html

On Fri, Oct 13, 2017 at 12:26:44PM +0100, Julien Thierry wrote:
> irq_is_percpu indicates whether an irq should only target a single cpu.
> PERCPU_DEVID flag indicates that an irq can be configured differently on
> each cpu it can target.
> 
> Provide a function to check whether an irq is PERCPU_DEVID.
> 
> Signed-off-by: Julien Thierry <julien.thierry@arm.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Marc Zyngier <marc.zyngier@arm.com>
> ---
>  include/linux/irqdesc.h | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/include/linux/irqdesc.h b/include/linux/irqdesc.h
> index 3e90a09..93960cf 100644
> --- a/include/linux/irqdesc.h
> +++ b/include/linux/irqdesc.h
> @@ -244,6 +244,14 @@ static inline int irq_is_percpu(unsigned int irq)
>  	return desc->status_use_accessors & IRQ_PER_CPU;
>  }
> 
> +static inline int irq_is_percpu_devid(unsigned int irq)
> +{
> +	struct irq_desc *desc;
> +
> +	desc = irq_to_desc(irq);
> +	return desc->status_use_accessors & IRQ_PER_CPU_DEVID;
> +}
> +
>  static inline void
>  irq_set_lockdep_class(unsigned int irq, struct lock_class_key *class)
>  {
> --
> 1.9.1
Will Deacon Oct. 24, 2017, 2:46 p.m. UTC | #3
Hi Thomas,

I was hoping to merge this one via arm64 since it now has Marc's
Reviewed-by, but I'd really like your Ack on it too, if you don't mind.

Could you take a look, please?

Thanks,

Will

On Fri, Oct 13, 2017 at 06:44:23PM +0100, Mark Rutland wrote:
> Would you be happy for this patch to be taken via the arm64 tree?
> 
> The next patch [1] makes use of this in the arm_pmu driver, and we're
> likely to have some other changes there shortly.
> 
> Thanks,
> Mark
> 
> [1] http://lists.infradead.org/pipermail/linux-arm-kernel/2017-October/536532.html
> 
> On Fri, Oct 13, 2017 at 12:26:44PM +0100, Julien Thierry wrote:
> > irq_is_percpu indicates whether an irq should only target a single cpu.
> > PERCPU_DEVID flag indicates that an irq can be configured differently on
> > each cpu it can target.
> > 
> > Provide a function to check whether an irq is PERCPU_DEVID.
> > 
> > Signed-off-by: Julien Thierry <julien.thierry@arm.com>
> > Cc: Thomas Gleixner <tglx@linutronix.de>
> > Cc: Marc Zyngier <marc.zyngier@arm.com>
> > ---
> >  include/linux/irqdesc.h | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> > 
> > diff --git a/include/linux/irqdesc.h b/include/linux/irqdesc.h
> > index 3e90a09..93960cf 100644
> > --- a/include/linux/irqdesc.h
> > +++ b/include/linux/irqdesc.h
> > @@ -244,6 +244,14 @@ static inline int irq_is_percpu(unsigned int irq)
> >  	return desc->status_use_accessors & IRQ_PER_CPU;
> >  }
> > 
> > +static inline int irq_is_percpu_devid(unsigned int irq)
> > +{
> > +	struct irq_desc *desc;
> > +
> > +	desc = irq_to_desc(irq);
> > +	return desc->status_use_accessors & IRQ_PER_CPU_DEVID;
> > +}
> > +
> >  static inline void
> >  irq_set_lockdep_class(unsigned int irq, struct lock_class_key *class)
> >  {
> > --
> > 1.9.1
Thomas Gleixner Oct. 24, 2017, 2:50 p.m. UTC | #4
On Tue, 24 Oct 2017, Will Deacon wrote:

> Hi Thomas,
> 
> I was hoping to merge this one via arm64 since it now has Marc's
> Reviewed-by, but I'd really like your Ack on it too, if you don't mind.
> 
> Could you take a look, please?

Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Will Deacon Oct. 24, 2017, 2:52 p.m. UTC | #5
On Tue, Oct 24, 2017 at 04:50:19PM +0200, Thomas Gleixner wrote:
> On Tue, 24 Oct 2017, Will Deacon wrote:
> 
> > Hi Thomas,
> > 
> > I was hoping to merge this one via arm64 since it now has Marc's
> > Reviewed-by, but I'd really like your Ack on it too, if you don't mind.
> > 
> > Could you take a look, please?
> 
> Reviewed-by: Thomas Gleixner <tglx@linutronix.de>

Brill, cheers.

Will
diff mbox

Patch

diff --git a/include/linux/irqdesc.h b/include/linux/irqdesc.h
index 3e90a09..93960cf 100644
--- a/include/linux/irqdesc.h
+++ b/include/linux/irqdesc.h
@@ -244,6 +244,14 @@  static inline int irq_is_percpu(unsigned int irq)
 	return desc->status_use_accessors & IRQ_PER_CPU;
 }

+static inline int irq_is_percpu_devid(unsigned int irq)
+{
+	struct irq_desc *desc;
+
+	desc = irq_to_desc(irq);
+	return desc->status_use_accessors & IRQ_PER_CPU_DEVID;
+}
+
 static inline void
 irq_set_lockdep_class(unsigned int irq, struct lock_class_key *class)
 {