* [PATCH] wifi: mac80211: Add __nonstring annotations for unterminated strings
@ 2025-03-10 22:23 Kees Cook
2025-03-11 9:25 ` Johannes Berg
0 siblings, 1 reply; 3+ messages in thread
From: Kees Cook @ 2025-03-10 22:23 UTC (permalink / raw)
To: Andrew Lunn
Cc: Kees Cook, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Johannes Berg, Kalle Valo, Julia Lawall, En-Wei Wu,
Shaul Triebitz, Alexander Wetzel, Emmanuel Grumbach,
linux-wireless, netdev, kernel test robot, Miri Korenblit,
linux-kernel, syzbot+d6eb9cee2885ec06f5e3, linux-hardening
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 [1]
Cc: Andrew Lunn <andrew+netdev@lunn.ch>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Paolo Abeni <pabeni@redhat.com>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: Kalle Valo <kvalo@kernel.org>
Cc: Julia Lawall <Julia.Lawall@inria.fr>
Cc: En-Wei Wu <en-wei.wu@canonical.com>
Cc: Shaul Triebitz <shaul.triebitz@intel.com>
Cc: Alexander Wetzel <alexander@wetzel-home.de>
Cc: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Cc: linux-wireless@vger.kernel.org
Cc: netdev@vger.kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
---
drivers/net/wireless/virtual/virt_wifi.c | 2 +-
drivers/net/wireless/zydas/zd1211rw/zd_mac.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/virtual/virt_wifi.c b/drivers/net/wireless/virtual/virt_wifi.c
index 4ee374080466..fc122b79301a 100644
--- a/drivers/net/wireless/virtual/virt_wifi.c
+++ b/drivers/net/wireless/virtual/virt_wifi.c
@@ -146,7 +146,7 @@ static void virt_wifi_inform_bss(struct wiphy *wiphy)
static const struct {
u8 tag;
u8 len;
- u8 ssid[8];
+ u8 ssid[8] __nonstring;
} __packed ssid = {
.tag = WLAN_EID_SSID,
.len = VIRT_WIFI_SSID_LEN,
diff --git a/drivers/net/wireless/zydas/zd1211rw/zd_mac.c b/drivers/net/wireless/zydas/zd1211rw/zd_mac.c
index f90c33d19b39..9653dbaac3c0 100644
--- a/drivers/net/wireless/zydas/zd1211rw/zd_mac.c
+++ b/drivers/net/wireless/zydas/zd1211rw/zd_mac.c
@@ -21,7 +21,7 @@
struct zd_reg_alpha2_map {
u32 reg;
- char alpha2[2];
+ char alpha2[2] __nonstring;
};
static struct zd_reg_alpha2_map reg_alpha2_map[] = {
--
2.34.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] wifi: mac80211: Add __nonstring annotations for unterminated strings
2025-03-10 22:23 [PATCH] wifi: mac80211: Add __nonstring annotations for unterminated strings Kees Cook
@ 2025-03-11 9:25 ` Johannes Berg
2025-03-11 22:36 ` Kees Cook
0 siblings, 1 reply; 3+ messages in thread
From: Johannes Berg @ 2025-03-11 9:25 UTC (permalink / raw)
To: Kees Cook, Andrew Lunn
Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Kalle Valo, Julia Lawall, En-Wei Wu, Shaul Triebitz,
Alexander Wetzel, Emmanuel Grumbach, linux-wireless, netdev,
kernel test robot, Miri Korenblit, linux-kernel,
syzbot+d6eb9cee2885ec06f5e3, linux-hardening
On Mon, 2025-03-10 at 15:23 -0700, Kees Cook wrote:
>
> drivers/net/wireless/virtual/virt_wifi.c | 2 +-
> drivers/net/wireless/zydas/zd1211rw/zd_mac.c | 2 +-
>
That's not mac80211?
Also, I have no idea how you came up with the CC list but it seems
excessive. :)
johannes
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] wifi: mac80211: Add __nonstring annotations for unterminated strings
2025-03-11 9:25 ` Johannes Berg
@ 2025-03-11 22:36 ` Kees Cook
0 siblings, 0 replies; 3+ messages in thread
From: Kees Cook @ 2025-03-11 22:36 UTC (permalink / raw)
To: Johannes Berg
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Kalle Valo, Julia Lawall, En-Wei Wu, Shaul Triebitz,
Alexander Wetzel, Emmanuel Grumbach, linux-wireless, netdev,
kernel test robot, Miri Korenblit, linux-kernel,
syzbot+d6eb9cee2885ec06f5e3, linux-hardening
On Tue, Mar 11, 2025 at 10:25:10AM +0100, Johannes Berg wrote:
> On Mon, 2025-03-10 at 15:23 -0700, Kees Cook wrote:
> >
> > drivers/net/wireless/virtual/virt_wifi.c | 2 +-
> > drivers/net/wireless/zydas/zd1211rw/zd_mac.c | 2 +-
> >
>
> That's not mac80211?
Hrm, you're right. The automation I use for splitting up "treewide"
changes per subsystem tries to guess at a reasonable subject give a set
of files, based on historical git subject prefixes. And these two files
ended up grouped together because no more specific subsystem claimed
them.
It seems I should probably split this into two, as:
wifi: zd1211rw:
wifi: virt_wifi:
> Also, I have no idea how you came up with the CC list but it seems
> excessive. :)
It's based on my permutation of arguments to get_maintainers.pl that
seems to work best for splitting my "treewide" changes per subsystem:
ccs = subprocess.run(["./scripts/get_maintainer.pl", "--email",
"--git-min-percent", "15",
"--git-since", '3-years-ago',
"--no-rolestats", patch.name],
-Kees
--
Kees Cook
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-03-11 22:36 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-10 22:23 [PATCH] wifi: mac80211: Add __nonstring annotations for unterminated strings Kees Cook
2025-03-11 9:25 ` Johannes Berg
2025-03-11 22:36 ` Kees Cook
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).