virtio_pci: better macro exported in uapi
authorMichael S. Tsirkin <mst@redhat.com>
Mon, 20 May 2013 00:57:00 +0000 (10:27 +0930)
committerRusty Russell <rusty@rustcorp.com.au>
Mon, 20 May 2013 02:38:09 +0000 (12:08 +0930)
Macro VIRTIO_PCI_CONFIG assumes that userspace actually has a structure
with a field named msix_enabled.  Add VIRTIO_PCI_CONFIG_OFF that gets
the msix_enabled by value instead, to make it useful for userspace.  We
still keep VIRTIO_PCI_CONFIG around for now, in case some userspace uses
it.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
include/uapi/linux/virtio_pci.h

index ea66f3f60d63f7db3234c2f75058826af072a771..e5ec1caab82aa70811a9d155e3e90dddfecb853c 100644 (file)
@@ -80,7 +80,9 @@
 
 /* The remaining space is defined by each driver as the per-driver
  * configuration space */
-#define VIRTIO_PCI_CONFIG(dev)         ((dev)->msix_enabled ? 24 : 20)
+#define VIRTIO_PCI_CONFIG_OFF(msix_enabled)    ((msix_enabled) ? 24 : 20)
+/* Deprecated: please use VIRTIO_PCI_CONFIG_OFF instead */
+#define VIRTIO_PCI_CONFIG(dev) VIRTIO_PCI_CONFIG_OFF((dev)->msix_enabled)
 
 /* Virtio ABI version, this must match exactly */
 #define VIRTIO_PCI_ABI_VERSION         0