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.
                 */

Reply via email to