mbox series

[RFC,v3,0/5] Remove unncessary linked list from aspm.c

Message ID 20211106175503.27178-1-refactormyself@gmail.com (mailing list archive)
Headers show
Series Remove unncessary linked list from aspm.c | expand

Message

Saheed O. Bolarinwa Nov. 6, 2021, 5:54 p.m. UTC
An extra linked list is created inside aspm.c to keep track of devices
on which the link state was enabled. However, it is possible to access
them via existing device lists.

This series remove the extra linked list and other related members of
the struct pcie_link_state: `root`, `parent` and `downstream`. All
these are now either calculated or obtained directly when needed.


VERSION CHANGES:
 -v3:
	- Remane pci_get_parent() to pcie_upstream_link() and improve
	  the logic based previous review.
	- Improve the algorithm to iterate through the devices

 - v2:
»       - Avoid using BUG_ON()
»       - Create helper function pci_get_parent()
»       - Fix a bug from the previous version

MERGE NOTICE:
These series are based on
»       'commit e4e737bb5c17 ("Linux 5.15-rc2")'

Bolarinwa O. Saheed (4):
  PCI/ASPM: Remove struct pcie_link_state.parent
  PCI/ASPM: Remove struct pcie_link_state.root
  PCI/ASPM: Remove struct pcie_link_state.downstream
  PCI/ASPM: Remove unncessary linked list from aspm.c

Saheed O. Bolarinwa (1):
  PCI: Handle NULL value inside pci_upstream_bridge()

 drivers/pci/pcie/aspm.c | 152 ++++++++++++++++++++++++----------------
 include/linux/pci.h     |   3 +
 2 files changed, 94 insertions(+), 61 deletions(-)