Re: [PATCH 4/4] ACPI PCI slot detection driver

From: Kenji Kaneshige
Date: Wed Mar 12 2008 - 00:10:41 EST


Hi,

Matthew Wilcox wrote:
On Tue, Mar 11, 2008 at 10:10:40PM +0900, Kenji Kaneshige wrote:
1) I checked ACPI spec again and again, but I could not find any
reason to add Fujitsu servers to quirks list. So I'd like you to
add HP servers to the quirks list. I'll send the following patches
followed by this e-mail.

Alex pointed out that IBM interprets the spec the same way that HP does.
Are there any other machines that follow the spec the same way that
Fujitsu does?


I don't know.

2) The ACPI PCI slot detection driver would change the slot names of
some hotplug drivers (at least I checked shpchp and pciehp). And
the name of slots are depending on the order of driver loading.
For example, on my system which has several SHPCHP slots and
PCIEHP slots, the name of PCIEHP slots are changed as
follows. Please note that PCIEHP based slots are 0034_0027 and
0032_0026, and others are SHPCHP based slots.

- Without ACPI PCI slot detection driver
# ls /sys/bus/pci/slots/
0009_0016 0014_0018 0019_0020 0021_0022 0034_0027
0011_0017 0016_0019 0021_0021 0032_0026

- With ACPI PCI slot detection driver
# ls /sys/bus/pci/slots/
0009_0016 0014_0018 0019_0020 0021_0022 27
0011_0017 0016_0019 0021_0021 26

I hadn't realised that patch got in to put the bus name in as a
uniquifier. I thought we'd rejected it because the problem only
occurred on one box with bad firmware.


Maybe I've told you before :-)

I also don't like to put bus into the names of those directories,
because I think the names of those directories are used as physical
slot identifier, not logical identifier, and neither PCI-to-PCI
Bridge Architecture spec, PCI Hot-Plug spec, SHPC spec nor PCI
Express spec allow putting bus number into physical slot identifier.

Removing bus number from the names of those directories would fix
the problem in a short term. But I think it is only a band-aid
because all of those specifications allow using chassis number
in the physical slot identifier. If any hotplug driver will put
chassis number into slot names, the same problem will happen.

I think it's the right direction to use combination of chassis and
slot number as a slot name if we try to unify slot names among
drivers, though there will be some challenges as follows.

- how to handle the names of vendor specific hotplug drivers?
- SHPC spec allows vendor specific names, IIRC. how to handle it?
- and so on.

- Unify slot names among all hotplug drivers

That is the plan. I'm not sure why the shpc slots aren't renamed in
this revision of the patch -- maybe Alex dropped that part?


Maybe the reason is very simple. The SHPCHP driver was loaded first,
and then ACPI PCI slot detection driver was loaded. Both are loaded
automatically at boot time. If we changed the order, we would get
another result.

Thanks,
Kenji Kaneshige

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/