mbox series

[net-next,0/2] PCI: let pci_disable_link_state propagate errors

Message ID 5ea56278-05e2-794f-5f66-23343e72164c@gmail.com
Headers show
Series PCI: let pci_disable_link_state propagate errors | expand

Message

Heiner Kallweit June 18, 2019, 9:12 p.m. UTC
Drivers like r8169 rely on pci_disable_link_state() having disabled
certain ASPM link states. If OS can't control ASPM then
pci_disable_link_state() turns into a no-op w/o informing the caller.
The driver therefore may falsely assume the respective ASPM link
states are disabled. Let pci_disable_link_state() propagate errors
to the caller, enabling the caller to react accordingly.

I'd propose to let this series go through the netdev tree if the PCI
core extension is acked by the PCI people.

Heiner Kallweit (2):
  PCI: let pci_disable_link_state propagate errors
  r8169: don't activate ASPM in chip if OS can't control ASPM

 drivers/net/ethernet/realtek/r8169_main.c |  8 ++++++--
 drivers/pci/pcie/aspm.c                   | 20 +++++++++++---------
 include/linux/pci-aspm.h                  |  7 ++++---
 3 files changed, 21 insertions(+), 14 deletions(-)

Comments

David Miller June 19, 2019, 9:26 p.m. UTC | #1
From: Heiner Kallweit <hkallweit1@gmail.com>
Date: Tue, 18 Jun 2019 23:12:56 +0200

> Drivers like r8169 rely on pci_disable_link_state() having disabled
> certain ASPM link states. If OS can't control ASPM then
> pci_disable_link_state() turns into a no-op w/o informing the caller.
> The driver therefore may falsely assume the respective ASPM link
> states are disabled. Let pci_disable_link_state() propagate errors
> to the caller, enabling the caller to react accordingly.
> 
> I'd propose to let this series go through the netdev tree if the PCI
> core extension is acked by the PCI people.

Bjorn et al., please look at patch #1 and ACK/NACK

Thank you.
David Miller June 22, 2019, 2:06 a.m. UTC | #2
From: Heiner Kallweit <hkallweit1@gmail.com>
Date: Tue, 18 Jun 2019 23:12:56 +0200

> Drivers like r8169 rely on pci_disable_link_state() having disabled
> certain ASPM link states. If OS can't control ASPM then
> pci_disable_link_state() turns into a no-op w/o informing the caller.
> The driver therefore may falsely assume the respective ASPM link
> states are disabled. Let pci_disable_link_state() propagate errors
> to the caller, enabling the caller to react accordingly.
> 
> I'd propose to let this series go through the netdev tree if the PCI
> core extension is acked by the PCI people.

Series applied, thanks Heiner.