Hello, are there any updates on upstreaming this change?
If there haven't been much testing, could it be put behind the module
option and disabled by default?
Hello,
We've decided to pursue a different solution to the issue.
The original workaround may negatively impact system power consumption,
as a low LTR value can prevent the CPU from entering deeper power states.
As an alternative, and for testing purposes only, could you please check
whether the following changes resolve the issue on your system?
--- a/drivers/net/ethernet/intel/igc/igc_main.c
+++ b/drivers/net/ethernet/intel/igc/igc_main.c
@@ -7426,6 +7426,8 @@ static int __igc_resume(struct device *dev, bool rpm)
pci_enable_wake(pdev, PCI_D3hot, 0);
pci_enable_wake(pdev, PCI_D3cold, 0);
+ pci_disable_link_state(pdev, PCIE_LINK_STATE_L1_2);
+
if (igc_init_interrupt_scheme(adapter, true)) {
netdev_err(netdev, "Unable to allocate memory for
queues\n");
return -ENOMEM;
@@ -7551,6 +7553,7 @@ static pci_ers_result_t igc_io_slot_reset(struct
pci_dev *pdev)
pci_enable_wake(pdev, PCI_D3hot, 0);
pci_enable_wake(pdev, PCI_D3cold, 0);
+ pci_disable_link_state_locked(pdev, PCIE_LINK_STATE_L1_2);
/* In case of PCI error, adapter loses its HW address
* so we should re-assign it here.
*/