habanalabs: Replace zero-length arrays with flexible-array members
authorGustavo A. R. Silva <gustavoars@kernel.org>
Tue, 10 Jan 2023 01:39:47 +0000 (19:39 -0600)
committerOded Gabbay <ogabbay@kernel.org>
Thu, 26 Jan 2023 09:52:12 +0000 (11:52 +0200)
Zero-length arrays are deprecated[1] and we are moving towards
adopting C99 flexible-array members instead. So, replace zero-length
arrays in a couple of structures with flex-array members.

This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
routines on memcpy() and help us make progress towards globally
enabling -fstrict-flex-arrays=3 [2].

Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays
Link: https://gcc.gnu.org/pipermail/gcc-patches/2022-October/602902.html
Link: https://github.com/KSPP/linux/issues/78
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
drivers/accel/habanalabs/include/gaudi2/gaudi2_packets.h

index 8bf90fc..a812f85 100644 (file)
@@ -59,7 +59,7 @@ struct gaudi2_packet {
        /* The rest of the packet data follows. Use the corresponding
         * packet_XXX struct to deference the data, based on packet type
         */
-       u8 contents[0];
+       u8 contents[];
 };
 
 struct packet_nop {
@@ -80,7 +80,7 @@ struct packet_wreg32 {
 struct packet_wreg_bulk {
        __le32 size64;
        __le32 ctl;
-       __le64 values[0]; /* data starts here */
+       __le64 values[]; /* data starts here */
 };
 
 struct packet_msg_long {