All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Yinghai Lu <yinghai@kernel.org>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
	Gavin Shan <shangw@linux.vnet.ibm.com>,
	linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/2] PCI: Split pci_assign_unassigned_resources to per root bus
Date: Tue, 07 May 2013 10:50:26 +1000	[thread overview]
Message-ID: <1367887826.4484.2.camel@pasglop> (raw)
In-Reply-To: <1367882130-19452-1-git-send-email-yinghai@kernel.org>

On Mon, 2013-05-06 at 16:15 -0700, Yinghai Lu wrote:
> BenH reported that there is some assign unassigned resource problem
> in powerpc.
> 
> It turns out after
> | commit 0c5be0cb0edfe3b5c4b62eac68aa2aa15ec681af
> | Date:   Thu Feb 23 19:23:29 2012 -0800
> |
> |    PCI: Retry on IORESOURCE_IO type allocations
> 
> even the root bus does not have io port range, it will keep retrying
> to realloc with mmio.
> 
> Current retry logic is : try with must+optional at first, and if
> it fails will try must then try to extend must with optional.
> That will fail as mmio-non-pref and mmio-pref for bridge will
> be next to each other. So we have no chance to extend mmio-non-pref.

Shouldn't you do completely separate passes for IO and MMIO through the
whole lot instead since they are completely separate address spaces ?

IE. Even a legit setup with IOs, in case of failures on the IO side
(resource exhaustion, FW bugs, ...) we shouldn't retry the memory side
and vice-versa.

Note that I'm a bit worried by how invasive your proposed patch is. I
will let Gavin test it and if it works I'm happy but keep in mind that I
really need that fixed in 3.10 ... (especially since there are noises
around about a certain enterprise distro using that version...)

Cheers,
Ben.



  parent reply	other threads:[~2013-05-07  0:50 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-05  0:10 Resource assignment oddities Benjamin Herrenschmidt
2013-05-05  0:15 ` Benjamin Herrenschmidt
2013-05-05  5:18   ` Yinghai Lu
2013-05-05  5:34     ` Benjamin Herrenschmidt
2013-05-05  7:09       ` Yinghai Lu
2013-05-05  7:52         ` Benjamin Herrenschmidt
     [not found]           ` <51871088.4594420a.0ccc.7300SMTPIN_ADDED_BROKEN@mx.google.com>
2013-05-06  3:04             ` Yinghai Lu
     [not found]               ` <20130506103159.GA16927@shangw.(null)>
2013-05-06 10:48                 ` Benjamin Herrenschmidt
2013-05-06 19:56                   ` Yinghai Lu
     [not found]                     ` <5188b791.a110420a.0bea.077eSMTPIN_ADDED_BROKEN@mx.google.com>
2013-05-07 22:21                       ` Yinghai Lu
     [not found]                         ` <5189c22b.45f7440a.0a88.6b75SMTPIN_ADDED_BROKEN@mx.google.com>
2013-05-08  3:42                           ` Yinghai Lu
2013-05-17  5:36                         ` Benjamin Herrenschmidt
2013-05-21 17:28                           ` Bjorn Helgaas
2013-05-21 17:39                             ` Yinghai Lu
2013-05-21 22:01                             ` Benjamin Herrenschmidt
2013-05-06 23:15                   ` [PATCH 1/2] PCI: Split pci_assign_unassigned_resources to per root bus Yinghai Lu
2013-05-06 23:15                     ` [PATCH 2/2] PCI: Skip IORESOURCE_IO size and allocation for root bus without ioport range Yinghai Lu
2013-05-07  0:50                     ` Benjamin Herrenschmidt [this message]
     [not found]                       ` <51885a04.c181440a.37c9.ffffa88eSMTPIN_ADDED_BROKEN@mx.google.com>
2013-05-07  7:34                         ` [PATCH 1/2] PCI: Split pci_assign_unassigned_resources to per root bus Yinghai Lu
2013-05-21 20:41                     ` Bjorn Helgaas
2013-05-07 22:17                   ` [PATCH v3 0/5] PCI: Skip resource allocation for root bus without conresponding type resource Yinghai Lu
2013-05-07 22:17                     ` [PATCH v3 1/5] PCI: Split pci_assign_unassigned_resources to per root bus Yinghai Lu
2013-05-07 22:17                     ` [PATCH v3 2/5] PCI: Skip IORESOURCE_IO allocation for root bus without ioport range Yinghai Lu
2013-05-07 22:17                     ` [PATCH v3 3/5] PCI: Skip IORESOURCE_MMIO allocation for root bus without MMIO range Yinghai Lu
2013-05-07 22:28                       ` Benjamin Herrenschmidt
2013-05-07 22:44                         ` Yinghai Lu
2013-05-08  1:16                           ` Benjamin Herrenschmidt
2013-05-08  3:57                             ` Yinghai Lu
2013-05-07 22:17                     ` [PATCH v3 4/5] PCI: Enable pci bridge when it is needed Yinghai Lu
2013-05-07 22:17                     ` [PATCH v3 5/5] PCI: Retry assign unassigned resources for hotadd root bus Yinghai Lu
2013-05-22  6:38                   ` [PATCH v4 0/8] PCI: Skip resource allocation for root bus without conresponding type resource Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 1/8] PCI: Don't use temp bus for pci_bus_release_bridge_resources Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 2/8] PCI: Use pci_walk_bus to detect unassigned resources Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 3/8] PCI: Introduce enable_local to prepare per root bus handling Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 4/8] PCI: Split pci_assign_unassigned_resources to per root bus Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 5/8] PCI: Skip IORESOURCE_IO allocation for root bus without ioport range Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 6/8] PCI: Skip IORESOURCE_MMIO allocation for root bus without MMIO range Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 7/8] PCI: Enable pci bridge when it is needed Yinghai Lu
2013-05-22  6:38                     ` [PATCH v4 8/8] PCI: Retry assign unassigned resources for hotadd root bus Yinghai Lu
2013-06-01  6:03                   ` [PATCH v5 0/7] PCI: Change assign unassigned resources per root bus bassis Yinghai Lu
2013-06-01  6:03                     ` [PATCH v5 2/7] PCI: Don't use temp bus for pci_bus_release_bridge_resources Yinghai Lu
2013-06-01  6:03                     ` [PATCH v5 3/7] PCI: Use pci_walk_bus to detect unassigned resources Yinghai Lu
2013-06-25 21:15                       ` Bjorn Helgaas
2013-06-25 21:38                         ` Benjamin Herrenschmidt
2013-06-25 21:46                           ` Bjorn Helgaas
2013-06-26  8:07                             ` Yinghai Lu
2013-06-26  7:38                         ` Yinghai Lu
2013-06-01  6:03                     ` [PATCH v5 4/7] PCI: Introduce enable_local to prepare per root bus handling Yinghai Lu
2013-06-01  6:03                     ` [PATCH v5 5/7] PCI: Split pci_assign_unassigned_resources to per root bus Yinghai Lu
2013-06-01  6:03                     ` [PATCH v5 6/7] PCI: Enable pci bridge when it is needed Yinghai Lu
2013-06-01  6:03                     ` [PATCH v5 7/7] PCI: Retry assign unassigned resources for hotadd root bus Yinghai Lu
2013-06-01  6:03                     ` [PATCH v5 1/7] PCI: Don't let mmio fallback to must-only, if ioport fails with must+optional Yinghai Lu
2013-06-22  3:00                     ` [PATCH v5 0/7] PCI: Change assign unassigned resources per root bus bassis Yinghai Lu
     [not found]               ` <518786a7.64bbec0a.58a0.1f6bSMTPIN_ADDED_BROKEN@mx.google.com>
2013-05-22 14:54                 ` Resource assignment oddities Bjorn Helgaas
2013-05-22 16:59                   ` Yinghai Lu
2013-05-22 17:21                     ` Bjorn Helgaas
2013-05-22 20:44                       ` Benjamin Herrenschmidt
2013-05-22 21:01                         ` Yinghai Lu
2013-05-22 20:43                     ` Benjamin Herrenschmidt
2013-05-22 21:00                       ` Yinghai Lu
2013-05-22 21:13                         ` Benjamin Herrenschmidt
2013-05-22 20:50                     ` Yinghai Lu
     [not found]                       ` <519dcfbe.89e9420a.4934.488bSMTPIN_ADDED_BROKEN@mx.google.com>
2013-05-23 17:08                         ` Yinghai Lu
2013-05-23 17:12                           ` Bjorn Helgaas
2013-05-23 17:17                             ` Yinghai Lu
2013-05-23 19:47                               ` Bjorn Helgaas
2013-05-23 21:00                                 ` Yinghai Lu
2013-05-23 21:23                                   ` Benjamin Herrenschmidt
2013-05-23 22:16                                     ` Yinghai Lu
2013-05-24 15:59                                       ` Bjorn Helgaas
2013-05-24 16:33                                         ` Benjamin Herrenschmidt
2013-05-24 16:34                                         ` Yinghai Lu
2013-05-23 17:11                         ` [PATCH] PCI: Don't let mmio fallback to must-only, if ioport fails with must+optional Yinghai Lu
2013-05-24 17:25                           ` Bjorn Helgaas
2013-05-24 23:31                             ` [PATCH v3] " Yinghai Lu
2013-05-24 23:34                             ` [PATCH] " Yinghai Lu

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=1367887826.4484.2.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=bhelgaas@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=shangw@linux.vnet.ibm.com \
    --cc=yinghai@kernel.org \
    /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.