* [PATCH dovetail-6.16] generic: irq_pipeline: Fix fallouts of lock guard conversion
@ 2025-07-30 19:39 Jan Kiszka
2025-07-30 20:31 ` Philippe Gerum
0 siblings, 1 reply; 2+ messages in thread
From: Jan Kiszka @ 2025-07-30 19:39 UTC (permalink / raw)
To: Philippe Gerum; +Cc: Xenomai
From: Jan Kiszka <jan.kiszka@siemens.com>
The irq_chip_generic struct uses a hard_spinlock to support the irq
pipeline.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
Should unbreak the Xenomai CI pipeline.
drivers/irqchip/irq-bcm7120-l2.c | 2 +-
drivers/soc/dove/pmu.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
index 28cebe480eb1d..a2f8433d9a564 100644
--- a/drivers/irqchip/irq-bcm7120-l2.c
+++ b/drivers/irqchip/irq-bcm7120-l2.c
@@ -68,7 +68,7 @@ static void bcm7120_l2_intc_irq_handle(struct irq_desc *desc)
int hwirq;
gc = irq_get_domain_generic_chip(b->domain, base);
- scoped_guard (raw_spinlock, &gc->lock) {
+ scoped_guard (hard_spinlock, &gc->lock) {
pending = irq_reg_readl(gc, b->stat_offset[idx]) & gc->mask_cache &
data->irq_map_mask[idx];
}
diff --git a/drivers/soc/dove/pmu.c b/drivers/soc/dove/pmu.c
index 7bbd3f940e4d9..142ccda535176 100644
--- a/drivers/soc/dove/pmu.c
+++ b/drivers/soc/dove/pmu.c
@@ -257,7 +257,7 @@ static void pmu_irq_handler(struct irq_desc *desc)
* So, let's structure the code so that the window is as small as
* possible.
*/
- guard(raw_spinlock)(&gc->lock);
+ guard(hard_spinlock)(&gc->lock);
done &= readl_relaxed(base + PMC_IRQ_CAUSE);
writel_relaxed(done, base + PMC_IRQ_CAUSE);
}
--
2.43.0
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH dovetail-6.16] generic: irq_pipeline: Fix fallouts of lock guard conversion
2025-07-30 19:39 [PATCH dovetail-6.16] generic: irq_pipeline: Fix fallouts of lock guard conversion Jan Kiszka
@ 2025-07-30 20:31 ` Philippe Gerum
0 siblings, 0 replies; 2+ messages in thread
From: Philippe Gerum @ 2025-07-30 20:31 UTC (permalink / raw)
To: Jan Kiszka; +Cc: Xenomai
Jan Kiszka <jan.kiszka@siemens.com> writes:
> From: Jan Kiszka <jan.kiszka@siemens.com>
>
> The irq_chip_generic struct uses a hard_spinlock to support the irq
> pipeline.
>
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>
> Should unbreak the Xenomai CI pipeline.
>
> drivers/irqchip/irq-bcm7120-l2.c | 2 +-
> drivers/soc/dove/pmu.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c
> index 28cebe480eb1d..a2f8433d9a564 100644
> --- a/drivers/irqchip/irq-bcm7120-l2.c
> +++ b/drivers/irqchip/irq-bcm7120-l2.c
> @@ -68,7 +68,7 @@ static void bcm7120_l2_intc_irq_handle(struct irq_desc *desc)
> int hwirq;
>
> gc = irq_get_domain_generic_chip(b->domain, base);
> - scoped_guard (raw_spinlock, &gc->lock) {
> + scoped_guard (hard_spinlock, &gc->lock) {
> pending = irq_reg_readl(gc, b->stat_offset[idx]) & gc->mask_cache &
> data->irq_map_mask[idx];
> }
> diff --git a/drivers/soc/dove/pmu.c b/drivers/soc/dove/pmu.c
> index 7bbd3f940e4d9..142ccda535176 100644
> --- a/drivers/soc/dove/pmu.c
> +++ b/drivers/soc/dove/pmu.c
> @@ -257,7 +257,7 @@ static void pmu_irq_handler(struct irq_desc *desc)
> * So, let's structure the code so that the window is as small as
> * possible.
> */
> - guard(raw_spinlock)(&gc->lock);
> + guard(hard_spinlock)(&gc->lock);
> done &= readl_relaxed(base + PMC_IRQ_CAUSE);
> writel_relaxed(done, base + PMC_IRQ_CAUSE);
> }
Merged, thanks.
--
Philippe.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-07-30 20:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-30 19:39 [PATCH dovetail-6.16] generic: irq_pipeline: Fix fallouts of lock guard conversion Jan Kiszka
2025-07-30 20:31 ` Philippe Gerum
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.