Re: [PATCH v6 12/20] vfio: move VFIO PCI macros to common header
From: Alex Williamson <hidden>
Date: 2021-06-04 03:47:39
Also in:
kvm, lkml
On Fri, 21 May 2021 17:20:19 -0700 Dave Jiang [off-list ref] wrote:
Move some VFIO_PCI macros to a common header as they will be shared between mdev and vfio_pci.
No, this is the current implementation of vfio-pci, it's specifically not meant to be a standard. Each vfio device driver is free to expose regions on the device file descriptor as they wish. If you want to use a 40-bit implementation as well, great, but it should not be imposed as a standard. Thanks, Alex
quoted hunk ↗ jump to hunk
Signed-off-by: Dave Jiang <dave.jiang@intel.com> --- drivers/vfio/pci/vfio_pci_private.h | 6 ------ include/linux/vfio.h | 6 ++++++ 2 files changed, 6 insertions(+), 6 deletions(-)diff --git a/drivers/vfio/pci/vfio_pci_private.h b/drivers/vfio/pci/vfio_pci_private.h index a17943911fcb..e644f981509c 100644 --- a/drivers/vfio/pci/vfio_pci_private.h +++ b/drivers/vfio/pci/vfio_pci_private.h@@ -18,12 +18,6 @@ #ifndef VFIO_PCI_PRIVATE_H #define VFIO_PCI_PRIVATE_H -#define VFIO_PCI_OFFSET_SHIFT 40 - -#define VFIO_PCI_OFFSET_TO_INDEX(off) (off >> VFIO_PCI_OFFSET_SHIFT) -#define VFIO_PCI_INDEX_TO_OFFSET(index) ((u64)(index) << VFIO_PCI_OFFSET_SHIFT) -#define VFIO_PCI_OFFSET_MASK (((u64)(1) << VFIO_PCI_OFFSET_SHIFT) - 1) - /* Special capability IDs predefined access */ #define PCI_CAP_ID_INVALID 0xFF /* default raw access */ #define PCI_CAP_ID_INVALID_VIRT 0xFE /* default virt access */diff --git a/include/linux/vfio.h b/include/linux/vfio.h index 3b372fa57ef4..ed5ca027eb49 100644 --- a/include/linux/vfio.h +++ b/include/linux/vfio.h@@ -15,6 +15,12 @@ #include <linux/poll.h> #include <uapi/linux/vfio.h> +#define VFIO_PCI_OFFSET_SHIFT 40 + +#define VFIO_PCI_OFFSET_TO_INDEX(off) ((off) >> VFIO_PCI_OFFSET_SHIFT) +#define VFIO_PCI_INDEX_TO_OFFSET(index) ((u64)(index) << VFIO_PCI_OFFSET_SHIFT) +#define VFIO_PCI_OFFSET_MASK (((u64)(1) << VFIO_PCI_OFFSET_SHIFT) - 1) + struct vfio_device { struct device *dev; const struct vfio_device_ops *ops;