From: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
To: linux-pci@vger.kernel.org, "Barnes, Jesse" <jesse.barnes@intel.com>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>,
Len Brown <lenb@kernel.org>,
linux-acpi@vger.kernel.org,
linux-kernel <linux-kernel@vger.kernel.org>,
shaohua.li@intel.com, Grant Grundler <grundler@parisc-linux.org>
Subject: Re: ACPI hotplug panic with current git head
Date: Wed, 28 Jan 2009 21:05:50 +0900 [thread overview]
Message-ID: <49804A1E.9030503@jp.fujitsu.com> (raw)
In-Reply-To: <498045D1.60005@jp.fujitsu.com>
Kenji Kaneshige wrote:
> Kenji Kaneshige wrote:
>> James Bottomley wrote:
>>> On Mon, 2009-01-19 at 12:11 +0900, Kenji Kaneshige wrote:
>>>> I'm sending the debug patch against 2.6.29-rc1 below. I'm also
>>>> sending it as an attachment. It also contains the code to prevent
>>>> the kernel panic from you. Please note that you will see two
>>>> WARN_ON(1) messages with the patch. Those are shown by my debug
>>>> patch.
>>>>
>>>> Could you try it and send me the whole dmsg output?
>>> Actually, the machine is now running -rc2, so the patch doesn't quite
>>> apply:
>>>
>>> jejb@sparkweed> patch -p1 < ~/tmp.diff
>>> patching file include/linux/pci-acpi.h
>>> patching file drivers/pci/hotplug/acpiphp_glue.c
>>> Hunk #1 FAILED at 266.
>>> Hunk #2 succeeded at 467 (offset 2 lines).
>>> Hunk #3 succeeded at 489 (offset 2 lines).
>>> Hunk #4 succeeded at 518 (offset 2 lines).
>>> Hunk #5 succeeded at 556 (offset 2 lines).
>>>
>>> Looks like the rejection is in the NULL check piece, so I've already
>>> actually sent you the information it would produce.
>>>
>>> The dmesg output is pretty big, below.
>>>
>> Thank you very much, James.
>>
>> Thanks to you, I found the root cause of the
>> problem. The acpi_pci_get_bridge_handle() function assumes
>> pci_bus->self is NULL on the root bus. But it is not true
>> and pci_bus->self can have a non-NULL value on some
>> platfroms (like yours). So it must check pci_bus->parent
>> instead.
>>
>> I found some other code that has the same wrong assumption.
>> I'll make a fix for them and send it soon.
>>
>
> I made several patches to fix the wrong assumption described
> above. It is very difficult for me to check all the code that
> refers pci_bus->self. So I checked include/linux/pci-acpi.h and
> the code under drivers/pci/ only. And I made patches for the code
> like below:
>
> - The code that clearly chooses host bridge operation or
> PCI-to-PCI bridge operation based on pci_bus->self.
>
> - The code that might cause endless loop if pci_bus->self is
> not NULL on the PCI root bus.
>
> The patches are
>
> - [PATCH 1/8] PCI/ACPI: fix wrong assumption in acpi_pci_get_bridge_handle
> - [PATCH 2/8] PCI/ACPI: fix wrong assumption in acpi_find_root_bridge_handle
> - [PATCH 3/8] PCI hotplug: fix wrong assumption in acpi_get_hp_params_from_firmware
> - [PATCH 4/8] PCI hotplug: fix wrong assumption in acpi_get_hp_hw_control_from_firmware
> - [PATCH 5/8] PCI: fix wrong assumption in pci_find_upstream_pcie_bridge
> - [PATCH 6/8] PCI: fix wrong assumption in pci_read_bridge_bases
> - [PATCH 7/8] PCI: fix wrong assumption in pci_get_interrupt_pin
> - [PATCH 8/8] PCI: fix wrong assumption in pci_common_swizzle
>
Those patches are against 2.6.29-rc2.
Thanks,
Kenji Kaneshige
next prev parent reply other threads:[~2009-01-28 12:05 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-10 16:17 ACPI hotplug panic with current git head James Bottomley
2009-01-12 21:16 ` Len Brown
2009-01-13 0:48 ` James Bottomley
2009-01-13 3:40 ` Len Brown
2009-01-15 19:01 ` James Bottomley
2009-01-15 19:22 ` Len Brown
2009-01-15 19:54 ` James Bottomley
2009-01-15 20:12 ` James Bottomley
2009-01-16 6:07 ` Kenji Kaneshige
2009-01-16 14:19 ` James Bottomley
2009-01-19 1:10 ` Kenji Kaneshige
2009-01-19 1:23 ` James Bottomley
2009-01-19 3:11 ` Kenji Kaneshige
2009-01-21 17:26 ` James Bottomley
2009-01-26 2:11 ` Kenji Kaneshige
2009-01-26 6:21 ` Grant Grundler
2009-01-26 12:27 ` Kenji Kaneshige
2009-01-28 11:47 ` Kenji Kaneshige
2009-01-28 11:48 ` [PATCH 1/8] PCI/ACPI: fix wrong assumption in acpi_pci_get_bridge_handle Kenji Kaneshige
2009-01-28 11:50 ` [PATCH 2/8] PCI/ACPI: fix wrong assumption in acpi_find_root_bridge_handle Kenji Kaneshige
2009-01-28 11:51 ` [PATCH 3/8] PCI hotplug: fix wrong assumption in acpi_get_hp_params_from_firmware Kenji Kaneshige
2009-01-28 11:55 ` [PATCH 4/8] PCI hotplug: fix wrong assumption in acpi_get_hp_hw_control_from_firmware Kenji Kaneshige
2009-01-28 11:56 ` [PATCH 5/8] PCI: fix wrong assumption in pci_find_upstream_pcie_bridge Kenji Kaneshige
2009-01-28 11:57 ` [PATCH 6/8] PCI: fix wrong assumption in pci_read_bridge_bases Kenji Kaneshige
2009-01-28 11:58 ` [PATCH 7/8] PCI: fix wrong assumption in pci_get_interrupt_pin Kenji Kaneshige
2009-01-28 11:59 ` [PATCH 8/8] PCI: fix wrong assumption in pci_common_swizzle Kenji Kaneshige
2009-01-28 12:05 ` Kenji Kaneshige [this message]
2009-02-14 0:30 ` ACPI hotplug panic with current git head Jesse Barnes
[not found] ` <499A46CC.1020102@jp.fujitsu.com>
2009-02-18 18:59 ` Jesse Barnes
2009-02-18 19:08 ` James Bottomley
2009-02-18 19:41 ` Jesse Barnes
2009-03-02 17:07 ` James Bottomley
2009-01-16 20:08 ` Len Brown
2009-01-16 20:22 ` Jesse Barnes
2009-01-19 1:15 ` Kenji Kaneshige
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=49804A1E.9030503@jp.fujitsu.com \
--to=kaneshige.kenji@jp.fujitsu.com \
--cc=James.Bottomley@HansenPartnership.com \
--cc=grundler@parisc-linux.org \
--cc=jesse.barnes@intel.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=shaohua.li@intel.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.