Re: [PATCH 0/2] PCI/AER: Consistently use _OSC to determine who owns AER

From: Sinan Kaya
Date: Mon Nov 19 2018 - 12:42:30 EST


On 11/19/2018 12:32 PM, Sinan Kaya wrote:

ButÂwe'reÂnotÂusingÂHESTÂasÂaÂfineÂgrainÂcontrol.ÂWeÂdisableÂnativeÂAER
handlingÂif *any*ÂdeviceÂhasÂFFÂsetÂinÂHEST,ÂandÂthatÂjustÂforcesÂpeople
toÂuseÂpcie_ports=nativeÂtoÂgetÂaroundÂthat.


IÂdon'tÂsee *any*ÂinÂtheÂcode.ÂÂaer_hest_parse()ÂdoesÂtheÂHESTÂtableÂparsing.
ItÂswitchesÂtoÂfirmwareÂfirstÂmodeÂifÂglobalÂflagÂinÂHESTÂisÂset.ÂOtherwise
forÂeachÂBDFÂinÂdevice,Âhest_match_pci()ÂisÂusedÂtoÂdoÂaÂcross-matchingÂagainst
HESTÂtableÂcontents.

AmÂIÂmissingÂsomething?

I see. I think you are talking about aer_firmware_first, right?

aer_set_firmware_first() and pcie_aer_get_firmware_first() seem to do the right
thing.

aer_firmware_first is probably getting set because events are all routed to a
single root port and aer_acpi_firmware_first() is used to decide whether AER
should be initialized or not.

I think I understand what is going on now.

Still, breaking existing systems that rely on HEST table is not cool.
I'd rather have users specify "pcie_ports=native" to skip FF rather than
having broken systems by default to be honest.