From: Marc Zyngier <maz@kernel.org>
To: Manivannan Sadhasivam <mani@kernel.org>
Cc: "Brian Norris" <briannorris@chromium.org>,
"Manivannan Sadhasivam" <manivannan.sadhasivam@linaro.org>,
"Tsai Sung-Fu" <danielsftsai@google.com>,
"Jingoo Han" <jingoohan1@gmail.com>,
"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
"Krzysztof Wilczyński" <kw@linux.com>,
"Rob Herring" <robh@kernel.org>,
"Bjorn Helgaas" <bhelgaas@google.com>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
"Andrew Chant" <achant@google.com>,
"Sajid Dalvi" <sdalvi@google.com>
Subject: Re: [PATCH] PCI: dwc: Separate MSI out to different controller
Date: Wed, 19 Feb 2025 18:02:24 +0000 [thread overview]
Message-ID: <8634g9sthr.wl-maz@kernel.org> (raw)
In-Reply-To: <20250219175119.vjfdgvltutpzyyp5@thinkpad>
On Wed, 19 Feb 2025 17:51:19 +0000,
Manivannan Sadhasivam <mani@kernel.org> wrote:
>
> On Fri, Feb 14, 2025 at 11:54:52AM -0800, Brian Norris wrote:
> > On Fri, Feb 14, 2025 at 12:45:52PM +0530, Manivannan Sadhasivam wrote:
> > > On Tue, Feb 11, 2025 at 04:23:53PM +0800, Tsai Sung-Fu wrote:
> > > > >Because you cannot set affinity for chained MSIs as these MSIs are muxed to
> > > > >another parent interrupt. Since the IRQ affinity is all about changing which CPU
> > > > >gets the IRQ, affinity setting is only possible for the MSI parent.
> > > >
> > > > So if we can find the MSI parent by making use of chained
> > > > relationships (32 MSI vectors muxed to 1 parent),
> > > > is it possible that we can add that implementation back ?
> > > > We have another patch that would like to add the
> > > > dw_pci_msi_set_affinity feature.
> > > > Would it be a possible try from your perspective ?
> > > >
> > >
> > > This question was brought up plenty of times and the concern from the irqchip
> > > maintainer Marc was that if you change the affinity of the parent when the child
> > > MSI affinity changes, it tends to break the userspace ABI of the parent.
> > >
> > > See below links:
> > >
> > > https://lore.kernel.org/all/87mtg0i8m8.wl-maz@kernel.org/
> > > https://lore.kernel.org/all/874k0bf7f7.wl-maz@kernel.org/
> >
> > It's hard to meaningfully talk about a patch that hasn't been posted
> > yet, but the implementation we have at least attempts to make *some*
> > kind of resolution to those ABI questions. For one, it rejects affinity
> > changes that are incompatible (by some definition) with affinities
> > requested by other virqs shared on the same parent line. It also updates
> > their effective affinities upon changes.
> >
> > Those replies seem to over-focus on dynamic, user-space initiated
> > changes too. But how about for "managed-affinity" interrupts? Those are
> > requested by drivers internally to the kernel (a la
> > pci_alloc_irq_vectors_affinity()), and can't be changed by user space
> > afterward. It seems like there'd be room for supporting that, provided
> > we don't allow conflicting/non-overlapping configurations.
> >
> > I do see that Marc sketched out a complex sysfs/hierarchy API in some of
> > his replies. I'm not sure that would provide too much value to the
> > managed-affinity cases we're interested in, but I get the appeal for
> > user-managed affinity.
> >
>
> Whatever your proposal is, please get it reviewed by Marc.
Please see b673fe1a6229a and avoid dragging me into discussion I have
purposely removed myself from. I'd also appreciate if you didn't
volunteer me for review tasks I have no intention to perform (this is
the second time you are doing it, and that's not on).
M.
--
Without deviation from the norm, progress is not possible.
next prev parent reply other threads:[~2025-02-19 18:02 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-15 8:32 [PATCH] PCI: dwc: Separate MSI out to different controller Daniel Tsai
2025-01-15 21:23 ` Bjorn Helgaas
2025-01-27 10:07 ` Manivannan Sadhasivam
2025-02-11 7:16 ` Tsai Sung-Fu
2025-02-11 7:56 ` Manivannan Sadhasivam
2025-02-11 8:22 ` Tsai Sung-Fu
2025-02-11 8:23 ` Tsai Sung-Fu
2025-02-14 7:15 ` Manivannan Sadhasivam
2025-02-14 19:54 ` Brian Norris
2025-02-19 17:51 ` Manivannan Sadhasivam
2025-02-19 18:02 ` Marc Zyngier [this message]
2025-02-19 18:09 ` Manivannan Sadhasivam
2025-03-03 7:08 ` Tsai Sung-Fu
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=8634g9sthr.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=achant@google.com \
--cc=bhelgaas@google.com \
--cc=briannorris@chromium.org \
--cc=danielsftsai@google.com \
--cc=jingoohan1@gmail.com \
--cc=kw@linux.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mani@kernel.org \
--cc=manivannan.sadhasivam@linaro.org \
--cc=robh@kernel.org \
--cc=sdalvi@google.com \
/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.