Re: [PATCH 0/2] pciehp: workaround for slot mis-detection problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Kenji Kaneshige <kaneshige.kenji@xxxxxxxxxxxxxx>:
> Alex Chiang wrote:
> > * Kenji Kaneshige <kaneshige.kenji@xxxxxxxxxxxxxx>:
> >> Kenji Kaneshige wrote:
> >>> Alex Chiang wrote:
> >>>> Hi Kenji-san,
> >>>>
> >>>> * Kenji Kaneshige <kaneshige.kenji@xxxxxxxxxxxxxx>:
> >>>>> There had been reported a problem that pciehp driver mis-detect the
> >>>>> non hot-pluggable slot as hot-pluggable on some platforms. The cause
> >>>>> of this problem is hot-plug capable bit in Slot Capabilities register
> >>>>> is set improperly by BIOS or hardware. It seems BIOS/hardware problem,
> >>>>> but I think pciehp driver needs workaround for this problem.
> >>>> Do you know the magnitude of how many machines have broekn BIOS?
> >>>>
> >>>> I see from your patch 2/2 that there is a strong correlation
> >>>> between duplicate slot names and incorrect hot-plug capable bit.
> >>>> If that's true, then I guess there are a lot of broken machines
> >>>> out there...
> >>>>
> >>>> 	http://www.kerneloops.org/searchweek.php?search=pci_create_slot
> >>>>
> >>>> I was just wondering if we could quirk this somehow, but if you
> >>>> think there are too many broken machines out there, then your
> >>>> approach seems pretty reasonable.
> >>>>
> >>> Please note that pciehp and ACPI PCI slot detection driver have
> >>> different naming method. The pciehp driver uses Physical Slot Number
> >>> bit in Slot Capabilities register for slot naming. On the other hand,
> >>> ACPI PCI slot detection driver uses ACPI _SUN method for slot naming.
> >>> So, pciehp's duplicate slot name problem is different from the problem
> >>> reported in the above URL, I think.
> >>>
> >> Maybe I was wrong.
> >> Is the cause that pciehp driver registered a slot with a wrong name
> >> before ACPI PCI slot detection driver tried to register slots?
> > 
> > No, I think you were right. My guess is that those warnings came
> > from a broken ACPI namespace.
> >
> 
> Oh, that's bad news also for my patches, because my patch has an
> assumption that PCI hotplug slots are properly defined in ACPI
> Namespace even if hotplug capable bit is wrongly set in the slot
> capabilities register. For those machines, maybe we need quirk
> approach one by one, I think.

It may be the case that BIOS sets the capability bit incorrectly
but has correctly programmed ACPI. I really don't know...

> By the way, do you have DSDT dump image of those broken ACPI
> Namespace? I would like to look, if possible.

I asked Arjan to include a dmidecode with kerneloops in the
future, but we don't have anything today. I'm just going off of
what is reported on the web page, so I'm sorry, but I don't have
the data. :(

> > In that case, I still wonder how many machines have broken native
> > PCIe hotplug that have the wrong bit set in the capabilities
> > register (and also falsely advertise hotplug).
> > 
> > Do you know?
> 
> I don't know the actual number. But the reported machines on the
> ML were popular laptop, so I think the number is relatively large.
> In addition, I got a x86 server recently and it has this problem
> (This is why I can make patches this time. I had been looking for
> the reproduction environment, and I finally got it).

Ok, I think your patches can help, so let's try them out and see
if they improve the situation.

Thanks.

/ac

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

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux