Message ID | 20230731012941.21875-1-rauji.raut@gmail.com |
---|---|
State | New |
Headers | show |
Series | ath6kl: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper | expand |
Greg KH <greg@kroah.com> writes: > On Sun, Jul 30, 2023 at 06:29:41PM -0700, Atul Raut wrote: > >> Because zero-length arrays are obsolete, replacing them with >> C99 flexible-array members. >> Instead of defining a zero-length array, use the new >> DECLARE_FLEX_ARRAY() auxiliary macro. >> >> This fixes warnings such as: >> ./drivers/net/wireless/ath/ath6kl/usb.c:109:8-12: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays) >> >> Signed-off-by: Atul Raut <rauji.raut@gmail.com> >> --- >> drivers/net/wireless/ath/ath6kl/usb.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/net/wireless/ath/ath6kl/usb.c b/drivers/net/wireless/ath/ath6kl/usb.c >> index 5220809841a6..bb3771a3897c 100644 >> --- a/drivers/net/wireless/ath/ath6kl/usb.c >> +++ b/drivers/net/wireless/ath/ath6kl/usb.c >> @@ -106,7 +106,7 @@ struct ath6kl_usb_ctrl_diag_cmd_write { >> __le32 cmd; >> __le32 address; >> __le32 value; >> - __le32 _pad[1]; >> + DECLARE_FLEX_ARRAY(__le32, _pad); > > This is not a 0 length array, or a variable array. Look at the work > done on the hardening mailing list for more details, I think this is > wrong. I agree with Greg, this is just padding and _pad is not even used anywhere in ath6kl. Though use of [1] is strange here, '__le32 _pad;' would be enough.
diff --git a/drivers/net/wireless/ath/ath6kl/usb.c b/drivers/net/wireless/ath/ath6kl/usb.c index 5220809841a6..bb3771a3897c 100644 --- a/drivers/net/wireless/ath/ath6kl/usb.c +++ b/drivers/net/wireless/ath/ath6kl/usb.c @@ -106,7 +106,7 @@ struct ath6kl_usb_ctrl_diag_cmd_write { __le32 cmd; __le32 address; __le32 value; - __le32 _pad[1]; + DECLARE_FLEX_ARRAY(__le32, _pad); } __packed; struct ath6kl_usb_ctrl_diag_cmd_read {
Because zero-length arrays are obsolete, replacing them with C99 flexible-array members. Instead of defining a zero-length array, use the new DECLARE_FLEX_ARRAY() auxiliary macro. This fixes warnings such as: ./drivers/net/wireless/ath/ath6kl/usb.c:109:8-12: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays) Signed-off-by: Atul Raut <rauji.raut@gmail.com> --- drivers/net/wireless/ath/ath6kl/usb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)