[PATCH 0/3] PCI: Expose resource resizing through sysfs

From: Alex Williamson
Date: Tue Aug 16 2022 - 15:40:09 EST


We have a couple graphics drivers making use of PCIe Resizable BARs
now, but I've been trying to figure out how we can make use of such
features for devices assigned to a VM. This is a proposal for a
rather basic interface in sysfs such that we have the ability to
pre-enable larger BARs before we bind devices to vfio-pci and
attach them to a VM.

Along the way I found a double-free in the error path of creating
resource attributes, that can certainly be pulled separately (1/).

I'm using an RTX6000 for testing, which unexpectedly only supports
REBAR with smaller than default sizes, which led me to question
why we have such heavy requirements for shrinking resources (2/).

The final patch proposes the sysfs interface and I'll leave the
discussion there for whether this is a good approach. Thanks,

Alex
---

Alex Williamson (3):
PCI: Fix double-free in resource attribute error path
PCI: Skip reassigning bridge resources if reducing BAR size
PCI: Expose PCIe Resizable BAR support via sysfs


Documentation/ABI/testing/sysfs-bus-pci | 27 +++++
drivers/pci/pci-sysfs.c | 126 +++++++++++++++++++++++-
drivers/pci/setup-res.c | 2 +-
include/linux/pci.h | 1 +
4 files changed, 154 insertions(+), 2 deletions(-)