History log of /openbmc/linux/drivers/pci/hotplug/rpaphp.h (Results 1 – 25 of 205)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.6.67, v6.6.66, v6.6.65, v6.6.64, v6.6.63, v6.6.62, v6.6.61, v6.6.60, v6.6.59, v6.6.58, v6.6.57, v6.6.56, v6.6.55, v6.6.54, v6.6.53, v6.6.52, v6.6.51, v6.6.50, v6.6.49, v6.6.48, v6.6.47, v6.6.46, v6.6.45, v6.6.44, v6.6.43, v6.6.42, v6.6.41, v6.6.40, v6.6.39, v6.6.38, v6.6.37, v6.6.36, v6.6.35, v6.6.34, v6.6.33, v6.6.32, v6.6.31, v6.6.30, v6.6.29, v6.6.28, v6.6.27, v6.6.26, v6.6.25, v6.6.24, v6.6.23, v6.6.16, v6.6.15, v6.6.14, v6.6.13, v6.6.12, v6.6.11, v6.6.10, v6.6.9, v6.6.8, v6.6.7, v6.6.6, v6.6.5, v6.6.4, v6.6.3, v6.6.2, v6.5.11, v6.6.1, v6.5.10, v6.6, v6.5.9, v6.5.8, v6.5.7, v6.5.6, v6.5.5, v6.5.4, v6.5.3, v6.5.2, v6.1.51, v6.5.1, v6.1.50, v6.5, v6.1.49, v6.1.48, v6.1.46, v6.1.45, v6.1.44, v6.1.43, v6.1.42, v6.1.41, v6.1.40, v6.1.39, v6.1.38, v6.1.37, v6.1.36, v6.4, v6.1.35, v6.1.34, v6.1.33, v6.1.32, v6.1.31, v6.1.30, v6.1.29, v6.1.28, v6.1.27, v6.1.26, v6.3, v6.1.25, v6.1.24, v6.1.23, v6.1.22, v6.1.21, v6.1.20, v6.1.19, v6.1.18, v6.1.17, v6.1.16, v6.1.15, v6.1.14, v6.1.13, v6.2, v6.1.12, v6.1.11, v6.1.10, v6.1.9, v6.1.8, v6.1.7, v6.1.6, v6.1.5, v6.0.19, v6.0.18, v6.1.4, v6.1.3, v6.0.17, v6.1.2, v6.0.16, v6.1.1, v6.0.15, v6.0.14, v6.0.13, v6.1, v6.0.12, v6.0.11, v6.0.10, v5.15.80, v6.0.9, v5.15.79, v6.0.8, v5.15.78, v6.0.7, v5.15.77, v5.15.76, v6.0.6, v6.0.5, v5.15.75, v6.0.4, v6.0.3, v6.0.2, v5.15.74, v5.15.73, v6.0.1, v5.15.72, v6.0, v5.15.71, v5.15.70, v5.15.69, v5.15.68, v5.15.67, v5.15.66, v5.15.65, v5.15.64, v5.15.63, v5.15.62, v5.15.61, v5.15.60, v5.15.59, v5.19, v5.15.58, v5.15.57, v5.15.56, v5.15.55, v5.15.54, v5.15.53, v5.15.52, v5.15.51, v5.15.50, v5.15.49, v5.15.48, v5.15.47, v5.15.46, v5.15.45, v5.15.44, v5.15.43, v5.15.42, v5.18, v5.15.41, v5.15.40, v5.15.39, v5.15.38, v5.15.37, v5.15.36, v5.15.35, v5.15.34, v5.15.33, v5.15.32, v5.15.31, v5.17, v5.15.30, v5.15.29, v5.15.28, v5.15.27, v5.15.26, v5.15.25, v5.15.24, v5.15.23, v5.15.22, v5.15.21, v5.15.20, v5.15.19, v5.15.18, v5.15.17, v5.4.173, v5.15.16, v5.15.15, v5.16, v5.15.10, v5.15.9, v5.15.8, v5.15.7, v5.15.6, v5.15.5, v5.15.4, v5.15.3, v5.15.2, v5.15.1, v5.15, v5.14.14, v5.14.13, v5.14.12, v5.14.11, v5.14.10, v5.14.9, v5.14.8, v5.14.7, v5.14.6, v5.10.67, v5.10.66, v5.14.5, v5.14.4, v5.10.65, v5.14.3, v5.10.64, v5.14.2, v5.10.63, v5.14.1, v5.10.62, v5.14, v5.10.61, v5.10.60, v5.10.53, v5.10.52, v5.10.51, v5.10.50, v5.10.49, v5.13, v5.10.46, v5.10.43, v5.10.42, v5.10.41, v5.10.40, v5.10.39, v5.4.119, v5.10.36, v5.10.35, v5.10.34, v5.4.116, v5.10.33, v5.12, v5.10.32, v5.10.31, v5.10.30, v5.10.27, v5.10.26, v5.10.25, v5.10.24, v5.10.23, v5.10.22, v5.10.21, v5.10.20, v5.10.19, v5.4.101, v5.10.18, v5.10.17, v5.11, v5.10.16, v5.10.15, v5.10.14, v5.10, v5.8.17, v5.8.16, v5.8.15, v5.9, v5.8.14, v5.8.13, v5.8.12, v5.8.11, v5.8.10, v5.8.9, v5.8.8, v5.8.7, v5.8.6, v5.4.62, v5.8.5, v5.8.4, v5.4.61, v5.8.3, v5.4.60, v5.8.2, v5.4.59, v5.8.1, v5.4.58, v5.4.57, v5.4.56, v5.8, v5.7.12, v5.4.55, v5.7.11, v5.4.54, v5.7.10, v5.4.53, v5.4.52, v5.7.9, v5.7.8, v5.4.51, v5.4.50, v5.7.7, v5.4.49, v5.7.6, v5.7.5, v5.4.48, v5.7.4, v5.7.3, v5.4.47, v5.4.46, v5.7.2, v5.4.45, v5.7.1, v5.4.44, v5.7, v5.4.43, v5.4.42, v5.4.41, v5.4.40, v5.4.39, v5.4.38, v5.4.37, v5.4.36, v5.4.35, v5.4.34, v5.4.33, v5.4.32, v5.4.31, v5.4.30, v5.4.29, v5.6, v5.4.28, v5.4.27, v5.4.26, v5.4.25, v5.4.24, v5.4.23, v5.4.22, v5.4.21, v5.4.20, v5.4.19, v5.4.18, v5.4.17, v5.4.16, v5.5, v5.4.15, v5.4.14, v5.4.13, v5.4.12, v5.4.11, v5.4.10, v5.4.9, v5.4.8, v5.4.7, v5.4.6, v5.4.5, v5.4.4, v5.4.3, v5.3.15, v5.4.2, v5.4.1, v5.3.14, v5.4, v5.3.13, v5.3.12, v5.3.11, v5.3.10, v5.3.9, v5.3.8, v5.3.7, v5.3.6, v5.3.5, v5.3.4, v5.3.3, v5.3.2, v5.3.1, v5.3, v5.2.14, v5.3-rc8, v5.2.13, v5.2.12, v5.2.11, v5.2.10, v5.2.9, v5.2.8, v5.2.7, v5.2.6, v5.2.5, v5.2.4, v5.2.3, v5.2.2, v5.2.1, v5.2, v5.1.16, v5.1.15, v5.1.14, v5.1.13, v5.1.12, v5.1.11, v5.1.10, v5.1.9, v5.1.8, v5.1.7, v5.1.6, v5.1.5, v5.1.4, v5.1.3, v5.1.2, v5.1.1, v5.0.14, v5.1, v5.0.13, v5.0.12, v5.0.11, v5.0.10, v5.0.9, v5.0.8, v5.0.7, v5.0.6, v5.0.5, v5.0.4, v5.0.3, v4.19.29, v5.0.2, v4.19.28, v5.0.1, v4.19.27, v5.0, v4.19.26, v4.19.25, v4.19.24, v4.19.23, v4.19.22, v4.19.21, v4.19.20, v4.19.19, v4.19.18, v4.19.17, v4.19.16
# 3eb66e91 14-Jan-2019 Dmitry Torokhov <dmitry.torokhov@gmail.com>

Merge tag 'v4.20' into for-linus

Sync with mainline to get linux/overflow.h among other things.


# 4116941b 14-Jan-2019 Dmitry Torokhov <dmitry.torokhov@gmail.com>

Merge tag 'v4.20' into next

Merge with mainline to bring in the new APIs.


Revision tags: v4.19.15, v4.19.14, v4.19.13, v4.19.12
# 31d1b771 20-Dec-2018 Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>

Merge tag 'v4.20-rc7' of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into fbdev-for-next

Linux 4.20-rc7

Sync with upstream (which now contains fbdev-v4.20 changes) to
prepare a b

Merge tag 'v4.20-rc7' of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into fbdev-for-next

Linux 4.20-rc7

Sync with upstream (which now contains fbdev-v4.20 changes) to
prepare a base for fbdev-v4.21 changes.

show more ...


Revision tags: v4.19.11, v4.19.10, v4.19.9, v4.19.8, v4.19.7, v4.19.6, v4.19.5, v4.19.4, v4.18.20, v4.19.3
# 2ac5e38e 20-Nov-2018 Jani Nikula <jani.nikula@intel.com>

Merge drm/drm-next into drm-intel-next-queued

Pull in v4.20-rc3 via drm-next.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>


Revision tags: v4.18.19, v4.19.2
# 0ea0397a 13-Nov-2018 Maarten Lankhorst <maarten.lankhorst@linux.intel.com>

Merge remote-tracking branch 'drm/drm-next' into drm-misc-next

drm-next is forwarded to v4.20-rc1, and we need this to make
a patch series apply.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst

Merge remote-tracking branch 'drm/drm-next' into drm-misc-next

drm-next is forwarded to v4.20-rc1, and we need this to make
a patch series apply.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>

show more ...


# 26b76320 12-Nov-2018 James Morris <james.morris@microsoft.com>

Merge tag 'v4.20-rc2' into next-general

Sync to Linux 4.20-rc2 for downstream developers.


Revision tags: v4.18.18
# 07fa3fa2 08-Nov-2018 Tony Lindgren <tony@atomide.com>

Merge tag 'v4.20-rc1' into omap-for-v4.21/dt-ti-sysc

Linux 4.20-rc1


# 91e43395 08-Nov-2018 Tony Lindgren <tony@atomide.com>

Merge branch 'fixes-dts' into omap-for-v4.20/fixes


# 0c724420 06-Nov-2018 Jiri Kosina <jkosina@suse.cz>

Merge branch 'master' into for-4.20/upstream-fixes

Pull in a merge commit that brought in 3b692c55e58d ("HID: asus: only
support backlight when it's not driven by WMI") so that fixup could be
applie

Merge branch 'master' into for-4.20/upstream-fixes

Pull in a merge commit that brought in 3b692c55e58d ("HID: asus: only
support backlight when it's not driven by WMI") so that fixup could be
applied on top of it.

show more ...


Revision tags: v4.18.17, v4.19.1
# f0718d79 29-Oct-2018 Ingo Molnar <mingo@kernel.org>

Merge branch 'linus' into perf/urgent, to pick up fixes

Signed-off-by: Ingo Molnar <mingo@kernel.org>


# 97ec37c5 29-Oct-2018 Ingo Molnar <mingo@kernel.org>

Merge branch 'linus' into x86/urgent, to refresh the tree

Signed-off-by: Ingo Molnar <mingo@kernel.org>


# bd6bf7c1 25-Oct-2018 Linus Torvalds <torvalds@linux-foundation.org>

Merge tag 'pci-v4.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci

Pull PCI updates from Bjorn Helgaas:

- Fix ASPM link_state teardown on removal (Lukas Wunner)

- Fix mis

Merge tag 'pci-v4.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci

Pull PCI updates from Bjorn Helgaas:

- Fix ASPM link_state teardown on removal (Lukas Wunner)

- Fix misleading _OSC ASPM message (Sinan Kaya)

- Make _OSC optional for PCI (Sinan Kaya)

- Don't initialize ASPM link state when ACPI_FADT_NO_ASPM is set
(Patrick Talbert)

- Remove x86 and arm64 node-local allocation for host bridge structures
(Punit Agrawal)

- Pay attention to device-specific _PXM node values (Jonathan Cameron)

- Support new Immediate Readiness bit (Felipe Balbi)

- Differentiate between pciehp surprise and safe removal (Lukas Wunner)

- Remove unnecessary pciehp includes (Lukas Wunner)

- Drop pciehp hotplug_slot_ops wrappers (Lukas Wunner)

- Tolerate PCIe Slot Presence Detect being hardwired to zero to
workaround broken hardware, e.g., the Wilocity switch/wireless device
(Lukas Wunner)

- Unify pciehp controller & slot structs (Lukas Wunner)

- Constify hotplug_slot_ops (Lukas Wunner)

- Drop hotplug_slot_info (Lukas Wunner)

- Embed hotplug_slot struct into users instead of allocating it
separately (Lukas Wunner)

- Initialize PCIe port service drivers directly instead of relying on
initcall ordering (Keith Busch)

- Restore PCI config state after a slot reset (Keith Busch)

- Save/restore DPC config state along with other PCI config state
(Keith Busch)

- Reference count devices during AER handling to avoid race issue with
concurrent hot removal (Keith Busch)

- If an Upstream Port reports ERR_FATAL, don't try to read the Port's
config space because it is probably unreachable (Keith Busch)

- During error handling, use slot-specific reset instead of secondary
bus reset to avoid link up/down issues on hotplug ports (Keith Busch)

- Restore previous AER/DPC handling that does not remove and
re-enumerate devices on ERR_FATAL (Keith Busch)

- Notify all drivers that may be affected by error recovery resets
(Keith Busch)

- Always generate error recovery uevents, even if a driver doesn't have
error callbacks (Keith Busch)

- Make PCIe link active reporting detection generic (Keith Busch)

- Support D3cold in PCIe hierarchies during system sleep and runtime,
including hotplug and Thunderbolt ports (Mika Westerberg)

- Handle hpmemsize/hpiosize kernel parameters uniformly, whether slots
are empty or occupied (Jon Derrick)

- Remove duplicated include from pci/pcie/err.c and unused variable
from cpqphp (YueHaibing)

- Remove driver pci_cleanup_aer_uncorrect_error_status() calls (Oza
Pawandeep)

- Uninline PCI bus accessors for better ftracing (Keith Busch)

- Remove unused AER Root Port .error_resume method (Keith Busch)

- Use kfifo in AER instead of a local version (Keith Busch)

- Use threaded IRQ in AER bottom half (Keith Busch)

- Use managed resources in AER core (Keith Busch)

- Reuse pcie_port_find_device() for AER injection (Keith Busch)

- Abstract AER interrupt handling to disconnect error injection (Keith
Busch)

- Refactor AER injection callbacks to simplify future improvments
(Keith Busch)

- Remove unused Netronome NFP32xx Device IDs (Jakub Kicinski)

- Use bitmap_zalloc() for dma_alias_mask (Andy Shevchenko)

- Add switch fall-through annotations (Gustavo A. R. Silva)

- Remove unused Switchtec quirk variable (Joshua Abraham)

- Fix pci.c kernel-doc warning (Randy Dunlap)

- Remove trivial PCI wrappers for DMA APIs (Christoph Hellwig)

- Add Intel GPU device IDs to spurious interrupt quirk (Bin Meng)

- Run Switchtec DMA aliasing quirk only on NTB endpoints to avoid
useless dmesg errors (Logan Gunthorpe)

- Update Switchtec NTB documentation (Wesley Yung)

- Remove redundant "default n" from Kconfig (Bartlomiej Zolnierkiewicz)

- Avoid panic when drivers enable MSI/MSI-X twice (Tonghao Zhang)

- Add PCI support for peer-to-peer DMA (Logan Gunthorpe)

- Add sysfs group for PCI peer-to-peer memory statistics (Logan
Gunthorpe)

- Add PCI peer-to-peer DMA scatterlist mapping interface (Logan
Gunthorpe)

- Add PCI configfs/sysfs helpers for use by peer-to-peer users (Logan
Gunthorpe)

- Add PCI peer-to-peer DMA driver writer's documentation (Logan
Gunthorpe)

- Add block layer flag to indicate driver support for PCI peer-to-peer
DMA (Logan Gunthorpe)

- Map Infiniband scatterlists for peer-to-peer DMA if they contain P2P
memory (Logan Gunthorpe)

- Register nvme-pci CMB buffer as PCI peer-to-peer memory (Logan
Gunthorpe)

- Add nvme-pci support for PCI peer-to-peer memory in requests (Logan
Gunthorpe)

- Use PCI peer-to-peer memory in nvme (Stephen Bates, Steve Wise,
Christoph Hellwig, Logan Gunthorpe)

- Cache VF config space size to optimize enumeration of many VFs
(KarimAllah Ahmed)

- Remove unnecessary <linux/pci-ats.h> include (Bjorn Helgaas)

- Fix VMD AERSID quirk Device ID matching (Jon Derrick)

- Fix Cadence PHY handling during probe (Alan Douglas)

- Signal Cadence Endpoint interrupts via AXI region 0 instead of last
region (Alan Douglas)

- Write Cadence Endpoint MSI interrupts with 32 bits of data (Alan
Douglas)

- Remove redundant controller tests for "device_type == pci" (Rob
Herring)

- Document R-Car E3 (R8A77990) bindings (Tho Vu)

- Add device tree support for R-Car r8a7744 (Biju Das)

- Drop unused mvebu PCIe capability code (Thomas Petazzoni)

- Add shared PCI bridge emulation code (Thomas Petazzoni)

- Convert mvebu to use shared PCI bridge emulation (Thomas Petazzoni)

- Add aardvark Root Port emulation (Thomas Petazzoni)

- Support 100MHz/200MHz refclocks for i.MX6 (Lucas Stach)

- Add initial power management for i.MX7 (Leonard Crestez)

- Add PME_Turn_Off support for i.MX7 (Leonard Crestez)

- Fix qcom runtime power management error handling (Bjorn Andersson)

- Update TI dra7xx unaligned access errata workaround for host mode as
well as endpoint mode (Vignesh R)

- Fix kirin section mismatch warning (Nathan Chancellor)

- Remove iproc PAXC slot check to allow VF support (Jitendra Bhivare)

- Quirk Keystone K2G to limit MRRS to 256 (Kishon Vijay Abraham I)

- Update Keystone to use MRRS quirk for host bridge instead of open
coding (Kishon Vijay Abraham I)

- Refactor Keystone link establishment (Kishon Vijay Abraham I)

- Simplify and speed up Keystone link training (Kishon Vijay Abraham I)

- Remove unused Keystone host_init argument (Kishon Vijay Abraham I)

- Merge Keystone driver files into one (Kishon Vijay Abraham I)

- Remove redundant Keystone platform_set_drvdata() (Kishon Vijay
Abraham I)

- Rename Keystone functions for uniformity (Kishon Vijay Abraham I)

- Add Keystone device control module DT binding (Kishon Vijay Abraham
I)

- Use SYSCON API to get Keystone control module device IDs (Kishon
Vijay Abraham I)

- Clean up Keystone PHY handling (Kishon Vijay Abraham I)

- Use runtime PM APIs to enable Keystone clock (Kishon Vijay Abraham I)

- Clean up Keystone config space access checks (Kishon Vijay Abraham I)

- Get Keystone outbound window count from DT (Kishon Vijay Abraham I)

- Clean up Keystone outbound window configuration (Kishon Vijay Abraham
I)

- Clean up Keystone DBI setup (Kishon Vijay Abraham I)

- Clean up Keystone ks_pcie_link_up() (Kishon Vijay Abraham I)

- Fix Keystone IRQ status checking (Kishon Vijay Abraham I)

- Add debug messages for all Keystone errors (Kishon Vijay Abraham I)

- Clean up Keystone includes and macros (Kishon Vijay Abraham I)

- Fix Mediatek unchecked return value from devm_pci_remap_iospace()
(Gustavo A. R. Silva)

- Fix Mediatek endpoint/port matching logic (Honghui Zhang)

- Change Mediatek Root Port Class Code to PCI_CLASS_BRIDGE_PCI (Honghui
Zhang)

- Remove redundant Mediatek PM domain check (Honghui Zhang)

- Convert Mediatek to pci_host_probe() (Honghui Zhang)

- Fix Mediatek MSI enablement (Honghui Zhang)

- Add Mediatek system PM support for MT2712 and MT7622 (Honghui Zhang)

- Add Mediatek loadable module support (Honghui Zhang)

- Detach VMD resources after stopping root bus to prevent orphan
resources (Jon Derrick)

- Convert pcitest build process to that used by other tools (iio, perf,
etc) (Gustavo Pimentel)

* tag 'pci-v4.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (140 commits)
PCI/AER: Refactor error injection fallbacks
PCI/AER: Abstract AER interrupt handling
PCI/AER: Reuse existing pcie_port_find_device() interface
PCI/AER: Use managed resource allocations
PCI: pcie: Remove redundant 'default n' from Kconfig
PCI: aardvark: Implement emulated root PCI bridge config space
PCI: mvebu: Convert to PCI emulated bridge config space
PCI: mvebu: Drop unused PCI express capability code
PCI: Introduce PCI bridge emulated config space common logic
PCI: vmd: Detach resources after stopping root bus
nvmet: Optionally use PCI P2P memory
nvmet: Introduce helper functions to allocate and free request SGLs
nvme-pci: Add support for P2P memory in requests
nvme-pci: Use PCI p2pmem subsystem to manage the CMB
IB/core: Ensure we map P2P memory correctly in rdma_rw_ctx_[init|destroy]()
block: Add PCI P2P flag for request queue
PCI/P2PDMA: Add P2P DMA driver writer's documentation
docs-rst: Add a new directory for PCI documentation
PCI/P2PDMA: Introduce configfs/sysfs enable attribute helpers
PCI/P2PDMA: Add PCI p2pmem DMA mappings to adjust the bus offset
...

show more ...


Revision tags: v4.19
# 20634dc3 20-Oct-2018 Bjorn Helgaas <bhelgaas@google.com>

Merge branch 'pci/hotplug'

- Differentiate between pciehp surprise and safe removal (Lukas Wunner)

- Remove unnecessary pciehp includes (Lukas Wunner)

- Drop pciehp hotplug_slot_ops wrappers

Merge branch 'pci/hotplug'

- Differentiate between pciehp surprise and safe removal (Lukas Wunner)

- Remove unnecessary pciehp includes (Lukas Wunner)

- Drop pciehp hotplug_slot_ops wrappers (Lukas Wunner)

- Tolerate PCIe Slot Presence Detect being hardwired to zero to
workaround broken hardware, e.g., the Wilocity switch/wireless device
(Lukas Wunner)

- Unify pciehp controller & slot structs (Lukas Wunner)

- Constify hotplug_slot_ops (Lukas Wunner)

- Drop hotplug_slot_info (Lukas Wunner)

- Embed hotplug_slot struct into users instead of allocating it
separately (Lukas Wunner)

- Initialize PCIe port service drivers directly instead of relying on
initcall ordering (Keith Busch)

- Restore PCI config state after a slot reset (Keith Busch)

- Save/restore DPC config state along with other PCI config state (Keith
Busch)

- Reference count devices during AER handling to avoid race issue with
concurrent hot removal (Keith Busch)

- If an Upstream Port reports ERR_FATAL, don't try to read the Port's
config space because it is probably unreachable (Keith Busch)

- During error handling, use slot-specific reset instead of secondary
bus reset to avoid link up/down issues on hotplug ports (Keith Busch)

- Restore previous AER/DPC handling that does not remove and re-enumerate
devices on ERR_FATAL (Keith Busch)

- Notify all drivers that may be affected by error recovery resets (Keith
Busch)

- Always generate error recovery uevents, even if a driver doesn't have
error callbacks (Keith Busch)

- Make PCIe link active reporting detection generic (Keith Busch)

- Support D3cold in PCIe hierarchies during system sleep and runtime,
including hotplug and Thunderbolt ports (Mika Westerberg)

- Handle hpmemsize/hpiosize kernel parameters uniformly, whether slots
are empty or occupied (Jon Derrick)

- Remove duplicated include from pci/pcie/err.c and unused variable from
cpqphp (YueHaibing)

- Remove driver pci_cleanup_aer_uncorrect_error_status() calls (Oza
Pawandeep)

- Uninline PCI bus accessors for better ftracing (Keith Busch)

- Remove unused AER Root Port .error_resume method (Keith Busch)

- Use kfifo in AER instead of a local version (Keith Busch)

- Use threaded IRQ in AER bottom half (Keith Busch)

- Use managed resources in AER core (Keith Busch)

- Reuse pcie_port_find_device() for AER injection (Keith Busch)

- Abstract AER interrupt handling to disconnect error injection (Keith
Busch)

- Refactor AER injection callbacks to simplify future improvments (Keith
Busch)

* pci/hotplug:
PCI/AER: Refactor error injection fallbacks
PCI/AER: Abstract AER interrupt handling
PCI/AER: Reuse existing pcie_port_find_device() interface
PCI/AER: Use managed resource allocations
PCI/AER: Use threaded IRQ for bottom half
PCI/AER: Use kfifo_in_spinlocked() to insert locked elements
PCI/AER: Use kfifo for tracking events instead of reimplementing it
PCI/AER: Remove error source from AER struct aer_rpc
PCI/AER: Remove unused aer_error_resume()
PCI: Uninline PCI bus accessors for better ftracing
PCI/AER: Remove pci_cleanup_aer_uncorrect_error_status() calls
PCI: pnv_php: Use kmemdup()
PCI: cpqphp: Remove set but not used variable 'physical_slot'
PCI/ERR: Remove duplicated include from err.c
PCI: Equalize hotplug memory and io for occupied and empty slots
PCI / ACPI: Whitelist D3 for more PCIe hotplug ports
ACPI / property: Allow multiple property compatible _DSD entries
PCI/PME: Implement runtime PM callbacks
PCI: pciehp: Implement runtime PM callbacks
PCI/portdrv: Add runtime PM hooks for port service drivers
PCI/portdrv: Resume upon exit from system suspend if left runtime suspended
PCI: pciehp: Do not handle events if interrupts are masked
PCI: pciehp: Disable hotplug interrupt during suspend
PCI / ACPI: Enable wake automatically for power managed bridges
PCI: Do not skip power-managed bridges in pci_enable_wake()
PCI: Make link active reporting detection generic
PCI: Unify device inaccessible
PCI/ERR: Always report current recovery status for udev
PCI/ERR: Simplify broadcast callouts
PCI/ERR: Run error recovery callbacks for all affected devices
PCI/ERR: Handle fatal error recovery
PCI/ERR: Use slot reset if available
PCI/AER: Don't read upstream ports below fatal errors
PCI/AER: Take reference on error devices
PCI/DPC: Save and restore config state
PCI: portdrv: Restore PCI config state on slot reset
PCI: portdrv: Initialize service drivers directly
PCI: hotplug: Document TODOs
PCI: hotplug: Embed hotplug_slot
PCI: hotplug: Drop hotplug_slot_info
PCI: hotplug: Constify hotplug_slot_ops
PCI: pciehp: Reshuffle controller struct for clarity
PCI: pciehp: Rename controller struct members for clarity
PCI: pciehp: Unify controller and slot structs
PCI: pciehp: Tolerate Presence Detect hardwired to zero
PCI: pciehp: Drop hotplug_slot_ops wrappers
PCI: pciehp: Drop unnecessary includes
PCI: pciehp: Differentiate between surprise and safe removal
PCI: Simplify disconnected marking

show more ...


Revision tags: v4.18.16, v4.18.15, v4.18.14, v4.18.13, v4.18.12, v4.18.11, v4.18.10, v4.18.9, v4.18.7
# 125450f8 08-Sep-2018 Lukas Wunner <lukas@wunner.de>

PCI: hotplug: Embed hotplug_slot

When the PCI hotplug core and its first user, cpqphp, were introduced in
February 2002 with historic commit a8a2069f432c, cpqphp allocated a slot
struct for its inte

PCI: hotplug: Embed hotplug_slot

When the PCI hotplug core and its first user, cpqphp, were introduced in
February 2002 with historic commit a8a2069f432c, cpqphp allocated a slot
struct for its internal use plus a hotplug_slot struct to be registered
with the hotplug core and linked the two with pointers:
https://git.kernel.org/tglx/history/c/a8a2069f432c

Nowadays, the predominant pattern in the tree is to embed ("subclass")
such structures in one another and cast to the containing struct with
container_of(). But it wasn't until July 2002 that container_of() was
introduced with historic commit ec4f214232cf:
https://git.kernel.org/tglx/history/c/ec4f214232cf

pnv_php, introduced in 2016, did the right thing and embedded struct
hotplug_slot in its internal struct pnv_php_slot, but all other drivers
cargo-culted cpqphp's design and linked separate structs with pointers.

Embedding structs is preferrable to linking them with pointers because
it requires fewer allocations, thereby reducing overhead and simplifying
error paths. Casting an embedded struct to the containing struct
becomes a cheap subtraction rather than a dereference. And having fewer
pointers reduces the risk of them pointing nowhere either accidentally
or due to an attack.

Convert all drivers to embed struct hotplug_slot in their internal slot
struct. The "private" pointer in struct hotplug_slot thereby becomes
unused, so drop it.

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com> # drivers/pci/hotplug/rpa*
Acked-by: Sebastian Ott <sebott@linux.ibm.com> # drivers/pci/hotplug/s390*
Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com> # drivers/platform/x86
Cc: Len Brown <lenb@kernel.org>
Cc: Scott Murray <scott@spiteful.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Oliver OHalloran <oliveroh@au1.ibm.com>
Cc: Gavin Shan <gwshan@linux.vnet.ibm.com>
Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Cc: Corentin Chary <corentin.chary@gmail.com>
Cc: Darren Hart <dvhart@infradead.org>

show more ...


# a7da2161 08-Sep-2018 Lukas Wunner <lukas@wunner.de>

PCI: hotplug: Drop hotplug_slot_info

Ever since the PCI hotplug core was introduced in 2002, drivers had to
allocate and register a struct hotplug_slot_info for every slot:
https://git.kernel.org/tg

PCI: hotplug: Drop hotplug_slot_info

Ever since the PCI hotplug core was introduced in 2002, drivers had to
allocate and register a struct hotplug_slot_info for every slot:
https://git.kernel.org/tglx/history/c/a8a2069f432c

Apparently the idea was that drivers furnish the hotplug core with an
up-to-date card presence status, power status, latch status and
attention indicator status as well as notify the hotplug core of changes
thereof. However only 4 out of 12 hotplug drivers bother to notify the
hotplug core with pci_hp_change_slot_info() and the hotplug core never
made any use of the information: There is just a single macro in
pci_hotplug_core.c, GET_STATUS(), which uses the hotplug_slot_info if
the driver lacks the corresponding callback in hotplug_slot_ops. The
macro is called when the user reads the attribute via sysfs.

Now, if the callback isn't defined, the attribute isn't exposed in sysfs
in the first place (see e.g. has_power_file()). There are only two
situations when the hotplug_slot_info would actually be accessed:

* If the driver defines ->enable_slot or ->disable_slot but not
->get_power_status.

* If the driver defines ->set_attention_status but not
->get_attention_status.

There is no driver doing the former and just a single driver doing the
latter, namely pnv_php.c. Amend it with a ->get_attention_status
callback. With that, the hotplug_slot_info becomes completely unused by
the PCI hotplug core. But a few drivers use it internally as a cache:

cpcihp uses it to cache the latch_status and adapter_status.
cpqhp uses it to cache the adapter_status.
pnv_php and rpaphp use it to cache the attention_status.
shpchp uses it to cache all four values.

Amend these drivers to cache the information in their private slot
struct. shpchp's slot struct already contains members to cache the
power_status and adapter_status, so additional members are only needed
for the other two values. In the case of cpqphp, the cached value is
only accessed in a single place, so instead of caching it, read the
current value from the hardware.

Caution: acpiphp, cpci, cpqhp, shpchp, asus-wmi and eeepc-laptop
populate the hotplug_slot_info with initial values on probe. That code
is herewith removed. There is a theoretical chance that the code has
side effects without which the driver fails to function, e.g. if the
ACPI method to read the adapter status needs to be executed at least
once on probe. That seems unlikely to me, still maintainers should
review the changes carefully for this possibility.

Rafael adds: "I'm not aware of any case in which it will break anything,
[...] but if that happens, it may be necessary to add the execution of
the control methods in question directly to the initialization part."

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com> # drivers/pci/hotplug/rpa*
Acked-by: Sebastian Ott <sebott@linux.ibm.com> # drivers/pci/hotplug/s390*
Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com> # drivers/platform/x86
Cc: Len Brown <lenb@kernel.org>
Cc: Scott Murray <scott@spiteful.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Oliver OHalloran <oliveroh@au1.ibm.com>
Cc: Gavin Shan <gwshan@linux.vnet.ibm.com>
Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Cc: Corentin Chary <corentin.chary@gmail.com>
Cc: Darren Hart <dvhart@infradead.org>

show more ...


# 81c4b5bf 08-Sep-2018 Lukas Wunner <lukas@wunner.de>

PCI: hotplug: Constify hotplug_slot_ops

Hotplug drivers cannot declare their hotplug_slot_ops const, making them
attractive targets for attackers, because upon registration of a hotplug
slot, __pci_

PCI: hotplug: Constify hotplug_slot_ops

Hotplug drivers cannot declare their hotplug_slot_ops const, making them
attractive targets for attackers, because upon registration of a hotplug
slot, __pci_hp_initialize() writes to the "owner" and "mod_name" members
in that struct.

Fix by moving these members to struct hotplug_slot and constify every
driver's hotplug_slot_ops except for pciehp.

pciehp constructs its hotplug_slot_ops at runtime based on the PCIe
port's capabilities, hence cannot declare them const. It can be
converted to __write_rarely once that's mainlined:
http://www.openwall.com/lists/kernel-hardening/2016/11/16/3

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com> # drivers/pci/hotplug/rpa*
Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com> # drivers/platform/x86
Cc: Len Brown <lenb@kernel.org>
Cc: Scott Murray <scott@spiteful.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Oliver OHalloran <oliveroh@au1.ibm.com>
Cc: Gavin Shan <gwshan@linux.vnet.ibm.com>
Cc: Sebastian Ott <sebott@linux.vnet.ibm.com>
Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Cc: Corentin Chary <corentin.chary@gmail.com>
Cc: Darren Hart <dvhart@infradead.org>

show more ...


Revision tags: v4.18.6, v4.18.5, v4.17.18, v4.18.4, v4.18.3, v4.17.17, v4.18.2, v4.17.16, v4.17.15, v4.18.1, v4.18, v4.17.14, v4.17.13, v4.17.12, v4.17.11, v4.17.10, v4.17.9, v4.17.8, v4.17.7, v4.17.6, v4.17.5, v4.17.4, v4.17.3, v4.17.2, v4.17.1, v4.17
# 552c69b3 02-May-2018 John Johansen <john.johansen@canonical.com>

Merge tag 'v4.17-rc3' into apparmor-next

Linux v4.17-rc3

Merge in v4.17 for LSM updates

Signed-off-by: John Johansen <john.johansen@canonical.com>


# 664b0bae 04-Apr-2018 Dmitry Torokhov <dmitry.torokhov@gmail.com>

Merge branch 'next' into for-linus

Prepare input updates for 4.17 merge window.


Revision tags: v4.16
# c6380ecd 08-Mar-2018 Dmitry Torokhov <dmitry.torokhov@gmail.com>

Merge tag 'v4.16-rc4' into next

Sync up with mainline to bring in RAVE MFD device core.


# 5fe9cfbe 07-Mar-2018 Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>

Merge tag 'v4.16-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into fbdev-for-next

Linux 4.16-rc4


# bba73071 01-Mar-2018 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

Merge drm-next into drm-intel-next-queued (this time for real)

To pull in the HDCP changes, especially wait_for changes to drm/i915
that Chris wants to build on top of.

Signed-off-by: Joonas Lahtin

Merge drm-next into drm-intel-next-queued (this time for real)

To pull in the HDCP changes, especially wait_for changes to drm/i915
that Chris wants to build on top of.

Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

show more ...


# a02633e9 21-Feb-2018 James Morris <jmorris@namei.org>

Merge tag 'v4.16-rc2' into next-general

Sync to Linux 4.16-rc2 for developers to work against.


# 862e6e2a 21-Feb-2018 Ingo Molnar <mingo@kernel.org>

Merge tag 'v4.16-rc2' into locking/core, to refresh the branch

Signed-off-by: Ingo Molnar <mingo@kernel.org>


# 7057bb97 17-Feb-2018 Ingo Molnar <mingo@kernel.org>

Merge branch 'perf/urgent' into perf/core, to pick up fixes

Signed-off-by: Ingo Molnar <mingo@kernel.org>


# d4da404f 16-Feb-2018 Sean Paul <seanpaul@chromium.org>

Merge airlied/drm-next into drm-misc-next

Backmerge 4.15 and hdcp topic branch

Signed-off-by: Sean Paul <seanpaul@chromium.org>


123456789