Hi Tan, This is very nice! Thank you for this. [...] > if (dev->aer_cap && pci_aer_available() && > - (pcie_ports_native || host->native_aer)) { > + pcie_aer_is_native(dev)) { > services |= PCIE_PORT_SERVICE_AER; [...] A suggestion. You could improve this even further, for example: if (pci_aer_available() && pcie_aer_is_native(dev)) { This is because the pcie_aer_is_native() function performs the dev->aer_cap check internally, so we could rely on it, and avoid checking the same thing twice. What do you think? Reviewed-by: Krzysztof Wilczyński <kw@xxxxxxxxx> Krzysztof