kvm/vfio: Constify struct kvm_device_ops
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sat, 28 Sep 2024 09:52:46 +0000 (11:52 +0200)
committerAlex Williamson <alex.williamson@redhat.com>
Wed, 30 Oct 2024 19:31:26 +0000 (13:31 -0600)
'struct kvm_device_ops' is not modified in this driver.

Constifying this structure moves some data to a read-only section, so
increases overall security, especially when the structure holds some
function pointers.

On a x86_64, with allmodconfig:
Before:
======
   text    data     bss     dec     hex filename
   2605     169      16    2790     ae6 virt/kvm/vfio.o

After:
=====
   text    data     bss     dec     hex filename
   2685      89      16    2790     ae6 virt/kvm/vfio.o

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/e7361a1bb7defbb0f7056b884e83f8d75ac9fe21.1727517084.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
virt/kvm/vfio.c

index 388ae47..e72a6a1 100644 (file)
@@ -353,7 +353,7 @@ static void kvm_vfio_release(struct kvm_device *dev)
 
 static int kvm_vfio_create(struct kvm_device *dev, u32 type);
 
-static struct kvm_device_ops kvm_vfio_ops = {
+static const struct kvm_device_ops kvm_vfio_ops = {
        .name = "kvm-vfio",
        .create = kvm_vfio_create,
        .release = kvm_vfio_release,