All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <bhelgaas@google.com>
To: Deng-Cheng Zhu <dczhu@mips.com>
Cc: jbarnes@virtuousgeek.org, ralf@linux-mips.org,
	linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-mips@linux-mips.org, eyal@mips.com, zenon@mips.com,
	dengcheng.zhu@gmail.com
Subject: Re: [PATCH v3 0/2] Pass resources to pci_create_bus() and fix MIPS PCI resources
Date: Tue, 30 Aug 2011 09:13:02 -0600	[thread overview]
Message-ID: <CAErSpo506Mz3QSxxdpbxyCUuZvqMTNL+fT5R81ivoj7cDTFyJg@mail.gmail.com> (raw)
In-Reply-To: <CAErSpo5PgXs4tuihh_JZCePzD8FWWzwp=-VHxFGCCuRKRKOYFQ@mail.gmail.com>

On Fri, Aug 26, 2011 at 7:54 AM, Bjorn Helgaas <bhelgaas@google.com> wrote:
> On Fri, Aug 26, 2011 at 3:07 AM, Deng-Cheng Zhu <dczhu@mips.com> wrote:
>> Change the pci_create_bus() interface to pass in available resources to get them
>> settled down early. This is to avoid possible resource conflicts while doing
>> pci_scan_slot() in pci_scan_child_bus(). Note that pcibios_fixup_bus() can get
>> rid of such conflicts, but it's done AFTER scanning slots.
>>
>> In addition, MIPS PCI resources are now fixed using this new interface.
>>
>> -- Changes --
>> v3 - v2:
>> o Do not do fixups for root buses in pcibios_fixup_bus().
>> o Skip bus creation when bus resources cannot be allocated.
>> o PCI domain/bus numbers added to the error info in controller_resources().
>>
>> v2 - v1:
>> o Merge [PATCH 1/3] to [PATCH 3/3], so now 2 patches in total.
>> o Add more info to patch description.
>> o Fix arch breaks in default resource setup discovered by Bjorn Helgaas.
>>
>> Deng-Cheng Zhu (2):
>>  PCI: Pass available resources into pci_create_bus()
>>  MIPS: PCI: Pass controller's resources to pci_create_bus() in
>>    pcibios_scanbus()
>>
>>  arch/microblaze/pci/pci-common.c |    3 +-
>>  arch/mips/pci/pci.c              |   61 +++++++++++++++++++++++++++++++++-----
>>  arch/powerpc/kernel/pci-common.c |    3 +-
>>  arch/sparc/kernel/pci.c          |    3 +-
>>  arch/x86/pci/acpi.c              |    2 +-
>>  drivers/pci/probe.c              |   15 +++++++--
>>  include/linux/pci.h              |    3 +-
>>  7 files changed, 73 insertions(+), 17 deletions(-)
>
> This is beautiful.  Thanks for doing this work!  I hope other
> architectures will follow your lead and get rid of their root bus
> resource fixups.
>
> Reviewed-by: Bjorn Helgaas <bhelgaas@google.com>
>

One logistical issue here is that the first patch touches several
architectures at once, which puts Jesse in a bit of a pinch.  If he
applies it, there's always the possibility that an arch patch will
conflict with it, which makes merging harder.

It might be easier if, instead of changing the pci_create_bus()
interface, you added a new one (it could call pci_create_bus() then
replace the resources, so the implementation could still be mostly
shared.)  We already have a plethora of "create bus" methods
(pci_create_bus(), pci_scan_bus_parented(), pci_scan_bus()), but if
you added a pci_create_root_bus() or something similar, maybe we could
try to converge on it and obsolete the others.

Then the first patch would touch only the PCI core, and the second
would touch only MIPS, which would make merging more straightforward.

Bjorn

  reply	other threads:[~2011-08-30 15:13 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-26  9:07 [PATCH v3 0/2] Pass resources to pci_create_bus() and fix MIPS PCI resources Deng-Cheng Zhu
2011-08-26  9:07 ` Deng-Cheng Zhu
2011-08-26  9:07 ` [PATCH v3 1/2] PCI: Pass available resources into pci_create_bus() Deng-Cheng Zhu
2011-08-26  9:07   ` Deng-Cheng Zhu
2011-08-26  9:07 ` [PATCH v3 2/2] MIPS: PCI: Pass controller's resources to pci_create_bus() in pcibios_scanbus() Deng-Cheng Zhu
2011-08-26  9:07   ` Deng-Cheng Zhu
2011-08-26 13:54 ` [PATCH v3 0/2] Pass resources to pci_create_bus() and fix MIPS PCI resources Bjorn Helgaas
2011-08-30 15:13   ` Bjorn Helgaas [this message]
2011-08-31  4:50     ` Deng-Cheng Zhu
2011-08-31  4:50       ` Deng-Cheng Zhu
2011-08-31 13:48       ` Bjorn Helgaas
2011-08-31 15:47         ` Jesse Barnes

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=CAErSpo506Mz3QSxxdpbxyCUuZvqMTNL+fT5R81ivoj7cDTFyJg@mail.gmail.com \
    --to=bhelgaas@google.com \
    --cc=dczhu@mips.com \
    --cc=dengcheng.zhu@gmail.com \
    --cc=eyal@mips.com \
    --cc=jbarnes@virtuousgeek.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@linux-mips.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=ralf@linux-mips.org \
    --cc=zenon@mips.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.