s390/vfio-ap: Fix memory allocation for mdev_types array
authorJason J. Herne <jjherne@linux.ibm.com>
Fri, 21 Oct 2022 14:50:02 +0000 (10:50 -0400)
committerVasily Gorbik <gor@linux.ibm.com>
Wed, 26 Oct 2022 12:47:31 +0000 (14:47 +0200)
The vfio-ap crypto driver fails to allocate memory for an array of
pointers used to pass supported mdev types to mdev_register_parent().

Since we only support a single mdev type, the fix is to allocate a
single entry in the ap_matrix_dev->mdev_types array.

Link: https://lore.kernel.org/r/20221021145905.15100-1-jjherne@linux.ibm.com
Fixes: da44c340c4fe ("vfio/mdev: simplify mdev_type handling")
Cc: stable@vger.kernel.org
Cc: Tony Krowiak <akrowiak@linux.ibm.com>
Reported-by: Christian Borntraeger <borntraeger@linux.ibm.com>
Reviewed-by: Matthew Rosato <mjrosato@linux.ibm.com>
Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
drivers/s390/crypto/vfio_ap_private.h

index 2eddd5f34ed34c55e9f0473a8d1c90c0224a2d6f..976a65f32e7d10419131fe1e447b647e0569c069 100644 (file)
@@ -52,7 +52,7 @@ struct ap_matrix_dev {
        struct mutex guests_lock; /* serializes access to each KVM guest */
        struct mdev_parent parent;
        struct mdev_type mdev_type;
-       struct mdev_type *mdev_types[];
+       struct mdev_type *mdev_types[1];
 };
 
 extern struct ap_matrix_dev *matrix_dev;