wifi: rtw88: Add __nonstring annotations for unterminated strings
authorKees Cook <kees@kernel.org>
Mon, 10 Mar 2025 22:22:58 +0000 (15:22 -0700)
committerPing-Ke Shih <pkshih@realtek.com>
Thu, 13 Mar 2025 01:18:31 +0000 (09:18 +0800)
When a character array without a terminating NUL character has a static
initializer, GCC 15's -Wunterminated-string-initialization will only
warn if the array lacks the "nonstring" attribute[1]. Mark the arrays
with __nonstring to and correctly identify the char array as "not a C
string" and thereby eliminate the warning.

Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117178
Cc: Ping-Ke Shih <pkshih@realtek.com>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: linux-wireless@vger.kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20250310222257.work.866-kees@kernel.org
drivers/net/wireless/realtek/rtw88/main.h

index c15e0f5..02343e0 100644 (file)
@@ -835,7 +835,7 @@ struct rtw_vif {
 };
 
 struct rtw_regulatory {
-       char alpha2[2];
+       char alpha2[2] __nonstring;
        u8 txpwr_regd_2g;
        u8 txpwr_regd_5g;
 };