The purpose of the series is to get comments and reviews so we can merge and test the series in downstream kernel. The latest Realtek vendor driver and its Windows driver implements a feature called "dynamic ASPM" which can improve performance on it's ethernet NICs. Heiner Kallweit pointed out the potential root cause can be that the buffer is to small for its ASPM exit latency. So bring the dynamic ASPM to r8169 so we can have both nice performance and powersaving at the same time. For the slow/fast alternating traffic pattern, we'll need some real world test to know if we need to lower the dynamic ASPM interval. v6: https://lore.kernel.org/netdev/20211007161552.272771-1-kai.heng.feng@xxxxxxxxxxxxx/ v5: https://lore.kernel.org/netdev/20210916154417.664323-1-kai.heng.feng@xxxxxxxxxxxxx/ v4: https://lore.kernel.org/netdev/20210827171452.217123-1-kai.heng.feng@xxxxxxxxxxxxx/ v3: https://lore.kernel.org/netdev/20210819054542.608745-1-kai.heng.feng@xxxxxxxxxxxxx/ v2: https://lore.kernel.org/netdev/20210812155341.817031-1-kai.heng.feng@xxxxxxxxxxxxx/ v1: https://lore.kernel.org/netdev/20210803152823.515849-1-kai.heng.feng@xxxxxxxxxxxxx/ Kai-Heng Feng (4): PCI/ASPM: Add pcie_aspm_capable() r8169: Enable chip-specific ASPM regardless of PCIe ASPM status r8169: Use mutex to guard config register locking r8169: Implement dynamic ASPM mechanism drivers/net/ethernet/realtek/r8169_main.c | 70 ++++++++++++++++++++--- drivers/pci/pcie/aspm.c | 11 ++++ include/linux/pci.h | 2 + 3 files changed, 74 insertions(+), 9 deletions(-) -- 2.32.0