From: Bjorn Helgaas <helgaas@kernel.org>
To: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Cc: linux-pci <linux-pci@vger.kernel.org>,
"open list:MIPS" <linux-mips@vger.kernel.org>,
Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
John Crispin <john@phrozen.org>,
Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
Bjorn Helgaas <bhelgaas@google.com>,
Arnd Bergmann <arnd@arndb.de>,
linux-kernel <linux-kernel@vger.kernel.org>,
Thierry Reding <thierry.reding@gmail.com>,
Guenter Roeck <linux@roeck-us.net>
Subject: Re: [PATCH 1/5] PCI: let 'pcibios_root_bridge_prepare()' access to 'bridge->windows'
Date: Wed, 1 Dec 2021 15:12:36 -0600 [thread overview]
Message-ID: <20211201211236.GA2841879@bhelgaas> (raw)
In-Reply-To: <CAMhs-H-NkL4=hcVfBvT0ZeBOfg8bmPYv1urJ1JVWtcA2tbtfjA@mail.gmail.com>
[+cc Guenter from other thread:
https://lore.kernel.org/r/20211129015909.GA921717@roeck-us.net]
On Wed, Dec 01, 2021 at 09:56:22PM +0100, Sergio Paracuellos wrote:
> On Wed, Dec 1, 2021 at 9:24 PM Bjorn Helgaas <helgaas@kernel.org> wrote:
> > On Fri, Nov 19, 2021 at 05:20:17PM -0600, Bjorn Helgaas wrote:
> > > [+cc Thierry]
> > >
> > > In subject,
> > >
> > > PCI: Let pcibios_root_bridge_prepare() access bridge->windows
> > >
> > > On Mon, Nov 15, 2021 at 08:08:05AM +0100, Sergio Paracuellos wrote:
> > > > When function 'pci_register_host_bridge()' is called, 'bridge->windows' are
> > > > already available. However this windows are being moved temporarily from
> > > > there. To let 'pcibios_root_bridge_prepare()' to have access to this windows
> > > > move this windows movement after call this function. This is interesting for
> > > > MIPS ralink mt7621 platform to be able to properly set I/O coherence units
> > > > with this information and avoid custom MIPs code in generic PCIe controller
> > > > drivers.
> > > >
> > > > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
> > > > ---
> > > > drivers/pci/probe.c | 4 ++--
> > > > 1 file changed, 2 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
> > > > index 087d3658f75c..372a70efccc6 100644
> > > > --- a/drivers/pci/probe.c
> > > > +++ b/drivers/pci/probe.c
> > > > @@ -898,8 +898,6 @@ static int pci_register_host_bridge(struct pci_host_bridge *bridge)
> > > >
> > > > bridge->bus = bus;
> > > >
> > > > - /* Temporarily move resources off the list */
> > > > - list_splice_init(&bridge->windows, &resources);
> > >
> > > Arnd added this with 37d6a0a6f470 ("PCI: Add
> > > pci_register_host_bridge() interface") [1].
> > >
> > > I can't remember why this was done, but we did go to some trouble to
> > > move things around, so there must have been a good reason.
> > >
> > > Arnd or Thierry, do you remember?
> >
> > Nobody seems to remember, so I think we should go ahead and make this
> > change after the usual due diligence (audit the code between the old
> > site and the new site to look for any uses of bridge->windows).
>
> It seems any user of the pcibios_root_bridge_prepare() does nothing
> with 'bridge->windows'. But I don't get the point of passing around a
> complete bridge pointer if windows are temporarily removed from there.
> That is an incomplete bridge and after parsing windows from dts are
> supposed to be there... What do you mean with 'audit the code between
> the old and new site'?
I mean "look at all the code that is run between the old site and the
new site to make sure that none of that code depends on
bridge->windows being temporarily emptied."
> > I think this would be material for v5.17.
>
> Do you prefer me to parse dts again inside
> pcibios_root_bridge_prepare() for ralink mt7621?. Not real sense since
> 'windows' should be already there, but it would be a way to get this
> patchset added for v5.16. Something like (not tested yet but it should
> work):
This is definitely too big for v5.16, regardless of which way you go.
For v5.16, the only thing that's practical is to avoid building as a
module. It'd be *nice* if it could be built as a module, but it is
not a requirement.
Bjorn
next prev parent reply other threads:[~2021-12-01 21:12 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-15 7:08 [PATCH 0/5] PCI: mt7621: remove specific MIPS code from driver Sergio Paracuellos
2021-11-15 7:08 ` [PATCH 1/5] PCI: let 'pcibios_root_bridge_prepare()' access to 'bridge->windows' Sergio Paracuellos
2021-11-19 23:20 ` Bjorn Helgaas
2021-12-01 20:24 ` Bjorn Helgaas
2021-12-01 20:50 ` Arnd Bergmann
2021-12-01 20:56 ` Sergio Paracuellos
2021-12-01 21:12 ` Bjorn Helgaas [this message]
2021-12-01 20:27 ` Bjorn Helgaas
2021-11-15 7:08 ` [PATCH 2/5] MIPS: ralink: implement 'pcibios_root_bridge_prepare()' Sergio Paracuellos
2021-11-15 7:08 ` [PATCH 3/5] PCI: mt7621: avoid custom MIPS code in driver code Sergio Paracuellos
2021-12-01 18:16 ` Bjorn Helgaas
2021-12-01 19:25 ` Sergio Paracuellos
2021-11-15 7:08 ` [PATCH 4/5] PCI: mt7621: Add missing 'MODULE_LICENSE()' definition Sergio Paracuellos
2021-11-15 12:44 ` Krzysztof Wilczyński
2021-11-15 13:00 ` Arnd Bergmann
2021-11-15 13:51 ` Sergio Paracuellos
2021-11-15 13:55 ` Arnd Bergmann
2021-11-15 21:50 ` Krzysztof Wilczyński
2021-11-15 21:52 ` Krzysztof Wilczyński
2021-11-15 7:08 ` [PATCH 5/5] PCI: mt7621: Kconfig: completely enable driver for 'COMPILE_TEST' Sergio Paracuellos
2021-12-01 20:12 ` Bjorn Helgaas
2021-12-01 20:33 ` Sergio Paracuellos
2021-11-17 12:41 ` [PATCH 0/5] PCI: mt7621: remove specific MIPS code from driver Thomas Bogendoerfer
2021-11-17 12:48 ` Sergio Paracuellos
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=20211201211236.GA2841879@bhelgaas \
--to=helgaas@kernel.org \
--cc=arnd@arndb.de \
--cc=bhelgaas@google.com \
--cc=john@phrozen.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=lorenzo.pieralisi@arm.com \
--cc=sergio.paracuellos@gmail.com \
--cc=thierry.reding@gmail.com \
--cc=tsbogend@alpha.franken.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox