All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
To: Marc Zyngier <maz@kernel.org>
Cc: Sander Vanheule <sander@svanheule.net>,
	Aleksander Jan Bajkowski <olek2@wp.pl>,
	martin.blumenstingl@googlemail.com, hauke@hauke-m.de,
	git@birger-koblitz.de, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] MIPS: smp-mt: enable all hardware interrupts on second VPE
Date: Wed, 6 Jul 2022 10:19:01 +0200	[thread overview]
Message-ID: <20220706081901.GA10797@alpha.franken.de> (raw)
In-Reply-To: <87fsjen2kl.wl-maz@kernel.org>

On Wed, Jul 06, 2022 at 08:05:30AM +0100, Marc Zyngier wrote:
> On Sun, 03 Jul 2022 19:15:11 +0100,
> Sander Vanheule <sander@svanheule.net> wrote:
> > 
> > Hi Aleksander,
> > 
> > Since this is IRQ related: +CC Marc Zyngier
> > 
> > On Sat, 2022-07-02 at 21:07 +0200, Aleksander Jan Bajkowski wrote:
> > > This patch is needed to handle interrupts by the second VPE on
> > > the Lantiq xRX200, xRX300 and xRX330 SoCs. In these chips, 32 ICU
> > > interrupts are connected to each hardware line. The SoC supports
> > > a total of 160 interrupts. Currently changing smp_affinity to the
> > > second VPE hangs interrupts.
> > > 
> > > This problem affects multithreaded SoCs with a custom interrupt
> > > controller. Chips with 1004Kc core and newer use the MIPS GIC.
> > > 
> > > Also CC'ed Birger Koblitz and Sander Vanheule. Both are working
> > > on support for Realtek RTL930x chips with 34Kc core and Birger
> > > has added a patch in OpenWRT that also enables all interrupt
> > > lines. So it looks like this patch is useful for more SoCs.
> > > 
> > > Tested on lantiq xRX200 and xRX330.
> > > 
> > > Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
> > 
> > Thanks for bringing up this issue. Like you say OpenWrt carries a
> > similar patch, and I also carry a patch on my tree to enable all CPU
> > IRQ lines.
> > 
> > Indiscriminately enabling all IRQ lines doesn't sit quite right with
> > me though, since I would expect these to be enabled
> > on-demand. I.e. when a peripheral requests an IRQ, or when an IRQ
> > controller is cascaded into one of the CPU's interrupt lines. If I
> > understand correctly, the IRQ mask/unmask functions in
> > drivers/irqchip/irq-mips-cpu.c should do this.
> 
> But this is only enabling interrupts at the CPU level, right? And the
> irqchip is still in control of the masking of the individual
> interrupts?

in the Lantiq case yes

> If both assertions are true, then this patch seems OK. If it just let
> any interrupt through without any control, then this is wrong.
> 
> So which one is it?

if there isn't an additional irqchip connected to the cpu interrupt lines,
this patch will cause problems.

Thomas.

-- 
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea.                                                [ RFC1925, 2.3 ]

  reply	other threads:[~2022-07-06  9:43 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-02 19:07 [PATCH] MIPS: smp-mt: enable all hardware interrupts on second VPE Aleksander Jan Bajkowski
2022-07-03 18:15 ` Sander Vanheule
2022-07-06  7:05   ` Marc Zyngier
2022-07-06  8:19     ` Thomas Bogendoerfer [this message]
2022-07-06  9:53       ` Marc Zyngier
2022-07-07  9:57         ` Thomas Bogendoerfer
2022-07-06  9:56       ` Martin Blumenstingl
2022-07-07 10:06         ` Thomas Bogendoerfer
2022-07-07 12:57           ` Martin Blumenstingl
2022-07-07 14:39             ` Thomas Bogendoerfer
2022-07-07 15:12               ` Sander Vanheule
2022-07-09 16:11                 ` Birger Koblitz
2022-07-28 15:50               ` Martin Blumenstingl
2022-08-01 15:25                 ` Thomas Bogendoerfer
2022-08-01 16:02                   ` Sander Vanheule
2022-08-02  7:15                     ` Birger Koblitz
2022-09-10 10:53               ` Aleksander Bajkowski
2022-09-12 14:02                 ` Thomas Bogendoerfer
2022-07-05 10:35 ` Thomas Bogendoerfer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220706081901.GA10797@alpha.franken.de \
    --to=tsbogend@alpha.franken.de \
    --cc=git@birger-koblitz.de \
    --cc=hauke@hauke-m.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=martin.blumenstingl@googlemail.com \
    --cc=maz@kernel.org \
    --cc=olek2@wp.pl \
    --cc=sander@svanheule.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.