diff options
author | Michael S. Tsirkin <mst@redhat.com> | 2014-10-07 16:39:42 +0200 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2014-12-09 12:05:23 +0200 |
commit | e16e12be34648777606a2c03a3526409b38f0e63 (patch) | |
tree | 36298911ba8eed0a4805c2c30a56d92520d23432 /include/linux/virtio_config.h | |
parent | d4024af56f7c6cdb7e721994204fb07b2cda8be9 (diff) | |
download | op-kernel-dev-e16e12be34648777606a2c03a3526409b38f0e63.zip op-kernel-dev-e16e12be34648777606a2c03a3526409b38f0e63.tar.gz |
virtio: use u32, not bitmap for features
It seemed like a good idea to use bitmap for features
in struct virtio_device, but it's actually a pain,
and seems to become even more painful when we get more
than 32 feature bits. Just change it to a u32 for now.
Based on patch by Rusty.
Suggested-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Diffstat (limited to 'include/linux/virtio_config.h')
-rw-r--r-- | include/linux/virtio_config.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/include/linux/virtio_config.h b/include/linux/virtio_config.h index d8e28a2..ffc2ae0 100644 --- a/include/linux/virtio_config.h +++ b/include/linux/virtio_config.h @@ -92,7 +92,7 @@ static inline bool __virtio_test_bit(const struct virtio_device *vdev, else BUG_ON(fbit >= 32); - return test_bit(fbit, vdev->features); + return vdev->features & BIT(fbit); } /** @@ -109,7 +109,7 @@ static inline void __virtio_set_bit(struct virtio_device *vdev, else BUG_ON(fbit >= 32); - set_bit(fbit, vdev->features); + vdev->features |= BIT(fbit); } /** @@ -126,7 +126,7 @@ static inline void __virtio_clear_bit(struct virtio_device *vdev, else BUG_ON(fbit >= 32); - clear_bit(fbit, vdev->features); + vdev->features &= ~BIT(fbit); } /** |