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

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

 



Alex Chiang wrote:
> * 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.
> 

Ok, I'll update patches and post them soon.

Thanks,
Kenji Kaneshige


--
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