On 1/16/25 8:18 AM, Thorsten Blum wrote:
Replace the deprecated one-element array with a modern flexible array
member in the struct ap_matrix_dev.
Use struct_size() to calculate the number of bytes to allocate for
matrix_dev with a single mdev_type.
Link: https://github.com/KSPP/linux/issues/79
LGTM:
Reviewed-by: Anthony Krowiak <akrowiak@xxxxxxxxxxxxx>
Signed-off-by: Thorsten Blum <thorsten.blum@xxxxxxxxx>
---
drivers/s390/crypto/vfio_ap_drv.c | 2 +-
drivers/s390/crypto/vfio_ap_private.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/s390/crypto/vfio_ap_drv.c b/drivers/s390/crypto/vfio_ap_drv.c
index 67a807e2e75b..ea9ffa37f263 100644
--- a/drivers/s390/crypto/vfio_ap_drv.c
+++ b/drivers/s390/crypto/vfio_ap_drv.c
@@ -96,7 +96,7 @@ static int vfio_ap_matrix_dev_create(void)
if (ret)
goto bus_register_err;
- matrix_dev = kzalloc(sizeof(*matrix_dev), GFP_KERNEL);
+ matrix_dev = kzalloc(struct_size(matrix_dev, mdev_types, 1), GFP_KERNEL);
if (!matrix_dev) {
ret = -ENOMEM;
goto matrix_alloc_err;
diff --git a/drivers/s390/crypto/vfio_ap_private.h b/drivers/s390/crypto/vfio_ap_private.h
index 437a161c8659..9aed8994f567 100644
--- a/drivers/s390/crypto/vfio_ap_private.h
+++ b/drivers/s390/crypto/vfio_ap_private.h
@@ -53,7 +53,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[1];
+ struct mdev_type *mdev_types[];
};
extern struct ap_matrix_dev *matrix_dev;