Pull virtio updates from Michael Tsirkin: "vhost,virtio,vdpa: features, fixes, cleanups. vdpa/mlx5: - VHOST_BACKEND_F_ENABLE_AFTER_DRIVER_OK - new maintainer vdpa: - support for vq descriptor mappings - decouple reset of iotlb mapping from device reset and fixes, cleanups all over the place" * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: (34 commits) vdpa_sim: implement .reset_map support vdpa/mlx5: implement .reset_map driver op vhost-vdpa: clean iotlb map during reset for older userspace vdpa: introduce .compat_reset operation callback vhost-vdpa: introduce IOTLB_PERSIST backend feature bit vhost-vdpa: reset vendor specific mapping to initial state in .release vdpa: introduce .reset_map operation callback virtio_pci: add check for common cfg size virtio-blk: fix implicit overflow on virtio_max_dma_size virtio_pci: add build offset check for the new common cfg items virtio: add definition of VIRTIO_F_NOTIF_CONFIG_DATA feature bit vduse: make vduse_class constant vhost-scsi: Spelling s/preceeding/preceding/g virtio: kdoc for struct virtio_pci_modern_device vdpa: Update sysfs ABI documentation MAINTAINERS: Add myself as mlx5_vdpa driver virtio-balloon: correct the comment of virtballoon_migratepage() mlx5_vdpa: offer VHOST_BACKEND_F_ENABLE_AFTER_DRIVER_OK vdpa/mlx5: Update cvq iotlb mapping on ASID change vdpa/mlx5: Make iotlb helper functions more generic ...
Showing the changes to include/uapi/linux (3 of 22 files). Show all
Unified · Split
| @@ -219,4 +219,12 @@ · 218 unmodified lines | ||
| 219 | 219 | */ |
| 220 | 220 | #define VHOST_VDPA_RESUME _IO(VHOST_VIRTIO, 0x7E) |
| 221 | 221 | |
| 222 | +/* Get the group for the descriptor table including driver & device areas | |
| 223 | + * of a virtqueue: read index, write group in num. | |
| 224 | + * The virtqueue index is stored in the index field of vhost_vring_state. | |
| 225 | + * The group ID of the descriptor table for this specific virtqueue | |
| 226 | + * is returned via num field of vhost_vring_state. | |
| 227 | + */ | |
| 228 | +#define VHOST_VDPA_GET_VRING_DESC_GROUP _IOWR(VHOST_VIRTIO, 0x7F, \ | |
| 229 | + struct vhost_vring_state) | |
| 222 | 230 | #endif |
| @@ -185,5 +185,12 @@ struct vhost_vdpa_iova_range { · 184 unmodified lines | ||
| 185 | 185 | * DRIVER_OK |
| 186 | 186 | */ |
| 187 | 187 | #define VHOST_BACKEND_F_ENABLE_AFTER_DRIVER_OK 0x6 |
| 188 | +/* Device may expose the virtqueue's descriptor area, driver area and | |
| 189 | + * device area to a different group for ASID binding than where its | |
| 190 | + * buffers may reside. Requires VHOST_BACKEND_F_IOTLB_ASID. | |
| 191 | + */ | |
| 192 | +#define VHOST_BACKEND_F_DESC_ASID 0x7 | |
| 193 | +/* IOTLB don't flush memory mapping across device reset */ | |
| 194 | +#define VHOST_BACKEND_F_IOTLB_PERSIST 0x8 | |
| 188 | 195 | |
| 189 | 196 | #endif |
| @@ -105,6 +105,11 @@ · 104 unmodified lines | ||
| 105 | 105 | */ |
| 106 | 106 | #define VIRTIO_F_NOTIFICATION_DATA 38 |
| 107 | 107 | |
| 108 | +/* This feature indicates that the driver uses the data provided by the device | |
| 109 | + * as a virtqueue identifier in available buffer notifications. | |
| 110 | + */ | |
| 111 | +#define VIRTIO_F_NOTIF_CONFIG_DATA 39 | |
| 112 | + | |
| 108 | 113 | /* |
| 109 | 114 | * This feature indicates that the driver can reset a queue individually. |
| 110 | 115 | */ |