The cap ID list can be more than 64 bits. Remove the build assert. Also remove caching of the supported caps, it wasn't used. Signed-off-by: Daniel Jurgens Reviewed-by: Parav Pandit --- v4: New patch for V4 v5: - support_caps -> supported_caps (Alok Tiwari) - removed unused variable (test robot) --- drivers/virtio/virtio_pci_common.h | 1 - drivers/virtio/virtio_pci_modern.c | 8 +------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/drivers/virtio/virtio_pci_common.h b/drivers/virtio/virtio_pci_common.h index 8cd01de27baf..fc26e035e7a6 100644 --- a/drivers/virtio/virtio_pci_common.h +++ b/drivers/virtio/virtio_pci_common.h @@ -48,7 +48,6 @@ struct virtio_pci_admin_vq { /* Protects virtqueue access. */ spinlock_t lock; u64 supported_cmds; - u64 supported_caps; u8 max_dev_parts_objects; struct ida dev_parts_ida; /* Name of the admin queue: avq.$vq_index. */ diff --git a/drivers/virtio/virtio_pci_modern.c b/drivers/virtio/virtio_pci_modern.c index dd0e65f71d41..ff11de5b3d69 100644 --- a/drivers/virtio/virtio_pci_modern.c +++ b/drivers/virtio/virtio_pci_modern.c @@ -304,7 +304,6 @@ virtio_pci_admin_cmd_dev_parts_objects_enable(struct virtio_device *virtio_dev) static void virtio_pci_admin_cmd_cap_init(struct virtio_device *virtio_dev) { - struct virtio_pci_device *vp_dev = to_vp_device(virtio_dev); struct virtio_admin_cmd_query_cap_id_result *data; struct virtio_admin_cmd cmd = {}; struct scatterlist result_sg; @@ -323,12 +322,7 @@ static void virtio_pci_admin_cmd_cap_init(struct virtio_device *virtio_dev) if (ret) goto end; - /* Max number of caps fits into a single u64 */ - BUILD_BUG_ON(sizeof(data->supported_caps) > sizeof(u64)); - - vp_dev->admin_vq.supported_caps = le64_to_cpu(data->supported_caps[0]); - - if (!(vp_dev->admin_vq.supported_caps & (1 << VIRTIO_DEV_PARTS_CAP))) + if (!(le64_to_cpu(data->supported_caps[0]) & (1 << VIRTIO_DEV_PARTS_CAP))) goto end; virtio_pci_admin_cmd_dev_parts_objects_enable(virtio_dev); -- 2.50.1