[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210813135253.GA4126399@paulmck-ThinkPad-P17-Gen-1>
Date: Fri, 13 Aug 2021 06:52:53 -0700
From: "Paul E. McKenney" <paulmck@...nel.org>
To: Stephen Rothwell <sfr@...b.auug.org.au>
Cc: Marc Zyngier <maz@...nel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux Next Mailing List <linux-next@...r.kernel.org>,
Mark Rutland <mark.rutland@....com>,
Valentin Schneider <valentin.schneider@....com>
Subject: Re: linux-next: manual merge of the rcu tree with the irqchip tree
On Fri, Aug 13, 2021 at 02:04:37PM +1000, Stephen Rothwell wrote:
> Hi all,
>
> Today's linux-next merge of the rcu tree got a conflict in:
>
> kernel/irq/chip.c
>
> between commit:
>
> 56707bb845f5 ("genirq, irq-gic-v3: Make NMI flow handlers use ->irq_ack() if available")
>
> from the irqchip tree and commit:
>
> ef62bf7e92d8 ("irq: abstract irqaction handler invocation")
>
> from the rcu tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
I had pulled these two in just for testing only because I was chasing
a problem that looked like long-running irq handlers, but which proved
to be something rather different.
ef62bf7e92d8 ("irq: abstract irqaction handler invocation")
2eeaae3c02b9 ("irq: detect long-running IRQ handlers")
I will be dropping these this morning, Pacific Time.
Thanx, Paul
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc kernel/irq/chip.c
> index 1b1171113437,804c2791315d..000000000000
> --- a/kernel/irq/chip.c
> +++ b/kernel/irq/chip.c
> @@@ -768,11 -744,6 +768,9 @@@ void handle_nmi(struct irq_desc *desc
>
> __kstat_incr_irqs_this_cpu(desc);
>
> + if (chip->irq_ack)
> + chip->irq_ack(&desc->irq_data);
> +
> - trace_irq_handler_entry(irq, action);
> /*
> * NMIs cannot be shared, there is only one action.
> */
> @@@ -1050,13 -954,7 +1044,10 @@@ void handle_percpu_devid_nmi(struct irq
>
> __kstat_incr_irqs_this_cpu(desc);
>
> + if (chip->irq_ack)
> + chip->irq_ack(&desc->irq_data);
> +
> - trace_irq_handler_entry(irq, action);
> - res = action->handler(irq, raw_cpu_ptr(action->percpu_dev_id));
> - trace_irq_handler_exit(irq, action, res);
> + handle_irqaction_percpu_devid(irq, action);
>
> if (chip->irq_eoi)
> chip->irq_eoi(&desc->irq_data);
Powered by blists - more mailing lists