On Mon, Sep 17, 2018 at 12:00:22PM -0700, Rajat Jain wrote: > On Fri, Sep 14, 2018 at 9:21 AM Sergey Miroshnichenko <s.miroshnichenko@xxxxxxxxx> wrote: > > If a new PCIe device has been hot-plugged between two active ones, which > > have no (or not big enough) gap between their BARs, allocating new BARs > > requires to move BARs of the following working devices: > > * What about non-memory resources? E.g. cards may have pci bridges or > switches on them, and they may need extra PCI bus numbers. Does this > help that use case? FWIW, macOS has had a "PCI Pause" functionality since 2013, documented here: (the anchor is apparently overridden by Javascript, scroll down to "Supporting PCIe Pause") https://developer.apple.com/library/archive/documentation/HardwareDrivers/Conceptual/ThunderboltDevGuide/Basics02/Basics02.html#//apple_ref/doc/uid/TP40011138-CH4-SW14 In addition to memory resources, they also reallocate bus numbers and MSIs. Thanks, Lukas