Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1199204 > unrolled thread
| Started by | Russell King - ARM Linux <linux@arm.linux.org.uk> |
|---|---|
| First post | 2015-08-03 21:20 +0200 |
| Last post | 2015-08-04 00:40 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH] ARM/PCI: set MPS before pci_bus_add_devices() Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-08-03 21:20 +0200
Re: [PATCH] ARM/PCI: set MPS before pci_bus_add_devices() Bjorn Helgaas <bhelgaas@google.com> - 2015-08-04 00:40 +0200
| From | Russell King - ARM Linux <linux@arm.linux.org.uk> |
|---|---|
| Date | 2015-08-03 21:20 +0200 |
| Subject | Re: [PATCH] ARM/PCI: set MPS before pci_bus_add_devices() |
| Message-ID | <pTtrc-3P6-7@gated-at.bofh.it> |
On Tue, Jul 21, 2015 at 05:35:19PM -0400, Murali Karicheri wrote:
> The MPS configuration should be done *before* pci_bus_add_devices().
> After pci_bus_add_devices(), drivers may be bound to devices, and
> the PCI core shouldn't touch device configuration while a driver
> owns the device.
>
> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
> Reported-by: Bjorn Helgaas <bhelgaas@google.com>
> ---
> arch/arm/kernel/bios32.c | 19 +++++--------------
> 1 file changed, 5 insertions(+), 14 deletions(-)
>
> diff --git a/arch/arm/kernel/bios32.c b/arch/arm/kernel/bios32.c
> index fcbbbb1..17efde7 100644
> --- a/arch/arm/kernel/bios32.c
> +++ b/arch/arm/kernel/bios32.c
> @@ -520,7 +520,8 @@ void pci_common_init_dev(struct device *parent, struct hw_pci *hw)
> list_for_each_entry(sys, &head, node) {
> struct pci_bus *bus = sys->bus;
>
> - if (!pci_has_flag(PCI_PROBE_ONLY)) {
> + if (bus && !pci_has_flag(PCI_PROBE_ONLY)) {
Let's get rid of that useless check. bus can't be NULL here.
In the original code (below) if bus was NULL, then we would've already
oopsed before we got here. As we don't oops here, no one is ever
seeing it being NULL, so the test is redundant.
> - list_for_each_entry(sys, &head, node) {
> - struct pci_bus *bus = sys->bus;
> -
> - /* Configure PCI Express settings */
> - if (bus && !pci_has_flag(PCI_PROBE_ONLY)) {
Thanks.
--
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Bjorn Helgaas <bhelgaas@google.com> |
|---|---|
| Date | 2015-08-04 00:40 +0200 |
| Message-ID | <pTwyK-8oA-11@gated-at.bofh.it> |
| In reply to | #1199204 |
On Mon, Aug 3, 2015 at 2:13 PM, Russell King - ARM Linux
<linux@arm.linux.org.uk> wrote:
> On Tue, Jul 21, 2015 at 05:35:19PM -0400, Murali Karicheri wrote:
>> The MPS configuration should be done *before* pci_bus_add_devices().
>> After pci_bus_add_devices(), drivers may be bound to devices, and
>> the PCI core shouldn't touch device configuration while a driver
>> owns the device.
>>
>> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
>> Reported-by: Bjorn Helgaas <bhelgaas@google.com>
>> ---
>> arch/arm/kernel/bios32.c | 19 +++++--------------
>> 1 file changed, 5 insertions(+), 14 deletions(-)
>>
>> diff --git a/arch/arm/kernel/bios32.c b/arch/arm/kernel/bios32.c
>> index fcbbbb1..17efde7 100644
>> --- a/arch/arm/kernel/bios32.c
>> +++ b/arch/arm/kernel/bios32.c
>> @@ -520,7 +520,8 @@ void pci_common_init_dev(struct device *parent, struct hw_pci *hw)
>> list_for_each_entry(sys, &head, node) {
>> struct pci_bus *bus = sys->bus;
>>
>> - if (!pci_has_flag(PCI_PROBE_ONLY)) {
>> + if (bus && !pci_has_flag(PCI_PROBE_ONLY)) {
>
> Let's get rid of that useless check. bus can't be NULL here.
>
> In the original code (below) if bus was NULL, then we would've already
> oopsed before we got here. As we don't oops here, no one is ever
> seeing it being NULL, so the test is redundant.
>
>> - list_for_each_entry(sys, &head, node) {
>> - struct pci_bus *bus = sys->bus;
>> -
>> - /* Configure PCI Express settings */
>> - if (bus && !pci_has_flag(PCI_PROBE_ONLY)) {
>
Sorry, I had forgotten to push this branch, but I did already get rid
of the check for bus being NULL:
http://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?id=808b27a5ae05
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web