ath: Replace zero-length arrays with flexible-array members
authorGustavo A. R. Silva <gustavoars@kernel.org>
Wed, 16 Feb 2022 19:49:15 +0000 (13:49 -0600)
committerKalle Valo <quic_kvalo@quicinc.com>
Mon, 21 Feb 2022 10:26:28 +0000 (12:26 +0200)
There is a regular need in the kernel to provide a way to declare
having a dynamically sized set of trailing elements in a structure.
Kernel code should always use “flexible array members”[1] for these
cases. The older style of one-element or zero-length arrays should
no longer be used[2].

[1] https://en.wikipedia.org/wiki/Flexible_array_member
[2] https://www.kernel.org/doc/html/v5.16/process/deprecated.html#zero-length-and-one-element-arrays

Link: https://github.com/KSPP/linux/issues/78
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20220216194915.GA904081@embeddedor
drivers/net/wireless/ath/spectral_common.h

index e14f374f97d4256e6d30ad8d1b0fcf671cbe8d50..fe187c1fbeb04c2dd1160b4c4f6b8184a7ac18fa 100644 (file)
@@ -108,7 +108,7 @@ struct fft_sample_ath10k {
        u8 avgpwr_db;
        u8 max_exp;
 
-       u8 data[0];
+       u8 data[];
 } __packed;
 
 struct fft_sample_ath11k {
@@ -123,7 +123,7 @@ struct fft_sample_ath11k {
        __be32 tsf;
        __be32 noise;
 
-       u8 data[0];
+       u8 data[];
 } __packed;
 
 #endif /* SPECTRAL_COMMON_H */