virtio: VIRTIO_F_IOMMU_PLATFORM -> VIRTIO_F_ACCESS_PLATFORM
Rename the bit to match latest virtio spec. Add a compat macro to avoid breaking existing userspace. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: David Hildenbrand <david@redhat.com>
This commit is contained in:
parent
bcf876870b
commit
321bd21261
@ -385,7 +385,7 @@ static irqreturn_t vu_req_interrupt(int irq, void *data)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case VHOST_USER_SLAVE_IOTLB_MSG:
|
case VHOST_USER_SLAVE_IOTLB_MSG:
|
||||||
/* not supported - VIRTIO_F_IOMMU_PLATFORM */
|
/* not supported - VIRTIO_F_ACCESS_PLATFORM */
|
||||||
case VHOST_USER_SLAVE_VRING_HOST_NOTIFIER_MSG:
|
case VHOST_USER_SLAVE_VRING_HOST_NOTIFIER_MSG:
|
||||||
/* not supported - VHOST_USER_PROTOCOL_F_HOST_NOTIFIER */
|
/* not supported - VHOST_USER_PROTOCOL_F_HOST_NOTIFIER */
|
||||||
default:
|
default:
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
(1ULL << VIRTIO_F_VERSION_1) | \
|
(1ULL << VIRTIO_F_VERSION_1) | \
|
||||||
(1ULL << VIRTIO_NET_F_STATUS) | \
|
(1ULL << VIRTIO_NET_F_STATUS) | \
|
||||||
(1ULL << VIRTIO_F_ORDER_PLATFORM) | \
|
(1ULL << VIRTIO_F_ORDER_PLATFORM) | \
|
||||||
(1ULL << VIRTIO_F_IOMMU_PLATFORM) | \
|
(1ULL << VIRTIO_F_ACCESS_PLATFORM) | \
|
||||||
(1ULL << VIRTIO_NET_F_MRG_RXBUF))
|
(1ULL << VIRTIO_NET_F_MRG_RXBUF))
|
||||||
|
|
||||||
/* Only one queue pair for now. */
|
/* Only one queue pair for now. */
|
||||||
|
@ -55,7 +55,7 @@ struct vdpasim_virtqueue {
|
|||||||
|
|
||||||
static u64 vdpasim_features = (1ULL << VIRTIO_F_ANY_LAYOUT) |
|
static u64 vdpasim_features = (1ULL << VIRTIO_F_ANY_LAYOUT) |
|
||||||
(1ULL << VIRTIO_F_VERSION_1) |
|
(1ULL << VIRTIO_F_VERSION_1) |
|
||||||
(1ULL << VIRTIO_F_IOMMU_PLATFORM);
|
(1ULL << VIRTIO_F_ACCESS_PLATFORM);
|
||||||
|
|
||||||
/* State of each vdpasim device */
|
/* State of each vdpasim device */
|
||||||
struct vdpasim {
|
struct vdpasim {
|
||||||
@ -450,7 +450,7 @@ static int vdpasim_set_features(struct vdpa_device *vdpa, u64 features)
|
|||||||
struct vdpasim *vdpasim = vdpa_to_sim(vdpa);
|
struct vdpasim *vdpasim = vdpa_to_sim(vdpa);
|
||||||
|
|
||||||
/* DMA mapping must be done by driver */
|
/* DMA mapping must be done by driver */
|
||||||
if (!(features & (1ULL << VIRTIO_F_IOMMU_PLATFORM)))
|
if (!(features & (1ULL << VIRTIO_F_ACCESS_PLATFORM)))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
vdpasim->features = features & vdpasim_features;
|
vdpasim->features = features & vdpasim_features;
|
||||||
|
@ -73,7 +73,7 @@ enum {
|
|||||||
VHOST_NET_FEATURES = VHOST_FEATURES |
|
VHOST_NET_FEATURES = VHOST_FEATURES |
|
||||||
(1ULL << VHOST_NET_F_VIRTIO_NET_HDR) |
|
(1ULL << VHOST_NET_F_VIRTIO_NET_HDR) |
|
||||||
(1ULL << VIRTIO_NET_F_MRG_RXBUF) |
|
(1ULL << VIRTIO_NET_F_MRG_RXBUF) |
|
||||||
(1ULL << VIRTIO_F_IOMMU_PLATFORM)
|
(1ULL << VIRTIO_F_ACCESS_PLATFORM)
|
||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
@ -1653,7 +1653,7 @@ static int vhost_net_set_features(struct vhost_net *n, u64 features)
|
|||||||
!vhost_log_access_ok(&n->dev))
|
!vhost_log_access_ok(&n->dev))
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
|
|
||||||
if ((features & (1ULL << VIRTIO_F_IOMMU_PLATFORM))) {
|
if ((features & (1ULL << VIRTIO_F_ACCESS_PLATFORM))) {
|
||||||
if (vhost_init_device_iotlb(&n->dev, true))
|
if (vhost_init_device_iotlb(&n->dev, true))
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
}
|
}
|
||||||
|
@ -31,7 +31,7 @@ enum {
|
|||||||
(1ULL << VIRTIO_F_NOTIFY_ON_EMPTY) |
|
(1ULL << VIRTIO_F_NOTIFY_ON_EMPTY) |
|
||||||
(1ULL << VIRTIO_F_ANY_LAYOUT) |
|
(1ULL << VIRTIO_F_ANY_LAYOUT) |
|
||||||
(1ULL << VIRTIO_F_VERSION_1) |
|
(1ULL << VIRTIO_F_VERSION_1) |
|
||||||
(1ULL << VIRTIO_F_IOMMU_PLATFORM) |
|
(1ULL << VIRTIO_F_ACCESS_PLATFORM) |
|
||||||
(1ULL << VIRTIO_F_RING_PACKED) |
|
(1ULL << VIRTIO_F_RING_PACKED) |
|
||||||
(1ULL << VIRTIO_F_ORDER_PLATFORM) |
|
(1ULL << VIRTIO_F_ORDER_PLATFORM) |
|
||||||
(1ULL << VIRTIO_RING_F_INDIRECT_DESC) |
|
(1ULL << VIRTIO_RING_F_INDIRECT_DESC) |
|
||||||
|
@ -1129,7 +1129,7 @@ static int virtballoon_validate(struct virtio_device *vdev)
|
|||||||
else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
|
else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
|
||||||
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
|
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
|
||||||
|
|
||||||
__virtio_clear_bit(vdev, VIRTIO_F_IOMMU_PLATFORM);
|
__virtio_clear_bit(vdev, VIRTIO_F_ACCESS_PLATFORM);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2225,7 +2225,7 @@ void vring_transport_features(struct virtio_device *vdev)
|
|||||||
break;
|
break;
|
||||||
case VIRTIO_F_VERSION_1:
|
case VIRTIO_F_VERSION_1:
|
||||||
break;
|
break;
|
||||||
case VIRTIO_F_IOMMU_PLATFORM:
|
case VIRTIO_F_ACCESS_PLATFORM:
|
||||||
break;
|
break;
|
||||||
case VIRTIO_F_RING_PACKED:
|
case VIRTIO_F_RING_PACKED:
|
||||||
break;
|
break;
|
||||||
|
@ -171,7 +171,7 @@ static inline bool virtio_has_iommu_quirk(const struct virtio_device *vdev)
|
|||||||
* Note the reverse polarity of the quirk feature (compared to most
|
* Note the reverse polarity of the quirk feature (compared to most
|
||||||
* other features), this is for compatibility with legacy systems.
|
* other features), this is for compatibility with legacy systems.
|
||||||
*/
|
*/
|
||||||
return !virtio_has_feature(vdev, VIRTIO_F_IOMMU_PLATFORM);
|
return !virtio_has_feature(vdev, VIRTIO_F_ACCESS_PLATFORM);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline
|
static inline
|
||||||
|
@ -67,13 +67,17 @@
|
|||||||
#define VIRTIO_F_VERSION_1 32
|
#define VIRTIO_F_VERSION_1 32
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If clear - device has the IOMMU bypass quirk feature.
|
* If clear - device has the platform DMA (e.g. IOMMU) bypass quirk feature.
|
||||||
* If set - use platform tools to detect the IOMMU.
|
* If set - use platform DMA tools to access the memory.
|
||||||
*
|
*
|
||||||
* Note the reverse polarity (compared to most other features),
|
* Note the reverse polarity (compared to most other features),
|
||||||
* this is for compatibility with legacy systems.
|
* this is for compatibility with legacy systems.
|
||||||
*/
|
*/
|
||||||
#define VIRTIO_F_IOMMU_PLATFORM 33
|
#define VIRTIO_F_ACCESS_PLATFORM 33
|
||||||
|
#ifndef __KERNEL__
|
||||||
|
/* Legacy name for VIRTIO_F_ACCESS_PLATFORM (for compatibility with old userspace) */
|
||||||
|
#define VIRTIO_F_IOMMU_PLATFORM VIRTIO_F_ACCESS_PLATFORM
|
||||||
|
#endif /* __KERNEL__ */
|
||||||
|
|
||||||
/* This feature indicates support for the packed virtqueue layout. */
|
/* This feature indicates support for the packed virtqueue layout. */
|
||||||
#define VIRTIO_F_RING_PACKED 34
|
#define VIRTIO_F_RING_PACKED 34
|
||||||
|
@ -51,7 +51,7 @@ static inline bool virtio_has_iommu_quirk(const struct virtio_device *vdev)
|
|||||||
* Note the reverse polarity of the quirk feature (compared to most
|
* Note the reverse polarity of the quirk feature (compared to most
|
||||||
* other features), this is for compatibility with legacy systems.
|
* other features), this is for compatibility with legacy systems.
|
||||||
*/
|
*/
|
||||||
return !virtio_has_feature(vdev, VIRTIO_F_IOMMU_PLATFORM);
|
return !virtio_has_feature(vdev, VIRTIO_F_ACCESS_PLATFORM);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool virtio_is_little_endian(struct virtio_device *vdev)
|
static inline bool virtio_is_little_endian(struct virtio_device *vdev)
|
||||||
|
Loading…
Reference in New Issue
Block a user