diff options
author | Jon Derrick <jonathan.derrick@intel.com> | 2018-09-25 21:39:06 +0300 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2018-10-03 00:04:40 +0300 |
commit | de3ffa301142bf8802a7b0de17f9985acde5c223 (patch) | |
tree | fd1a9e0027b6ba22c3e7c211d93df7261ec1b071 /drivers/pci/pcie/err.c | |
parent | 26ad34d510a87fc65caeb48fa85cce58d2477a88 (diff) | |
download | linux-de3ffa301142bf8802a7b0de17f9985acde5c223.tar.xz |
PCI: Equalize hotplug memory and io for occupied and empty slots
Currently, a hotplug bridge will be given hpmemsize additional memory
and hpiosize additional io if available, in order to satisfy any future
hotplug allocation requirements.
These calculations don't consider the current memory/io size of the
hotplug bridge/slot, so hotplug bridges/slots which have downstream
devices will be allocated their current allocation in addition to the
hpmemsize value.
This makes for possibly undesirable results with a mix of unoccupied and
occupied slots (ex, with hpmemsize=2M):
02:03.0 PCI bridge: <-- Occupied
Memory behind bridge: d6200000-d64fffff [size=3M]
02:04.0 PCI bridge: <-- Unoccupied
Memory behind bridge: d6500000-d66fffff [size=2M]
This change considers the current allocation size when using the
hpmemsize/hpiosize parameters to make the reservations predictable for
the mix of unoccupied and occupied slots:
02:03.0 PCI bridge: <-- Occupied
Memory behind bridge: d6200000-d63fffff [size=2M]
02:04.0 PCI bridge: <-- Unoccupied
Memory behind bridge: d6400000-d65fffff [size=2M]
Signed-off-by: Jon Derrick <jonathan.derrick@intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci/pcie/err.c')
0 files changed, 0 insertions, 0 deletions