]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
xen/mcelog: Add __nonstring annotations for unterminated strings
authorKees Cook <kees@kernel.org>
Mon, 10 Mar 2025 22:22:38 +0000 (15:22 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 May 2025 05:40:47 +0000 (07:40 +0200)
[ Upstream commit 1c3dfc7c6b0f551fdca3f7c1f1e4c73be8adb17d ]

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: Juergen Gross <jgross@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: xen-devel@lists.xenproject.org
Signed-off-by: Kees Cook <kees@kernel.org>
Acked-by: Juergen Gross <jgross@suse.com>
Message-ID: <20250310222234.work.473-kees@kernel.org>
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/xen/interface/xen-mca.h

index 7483a78d24251e46bbcca9007003d0f06f2725bc..20a3b320d1a58919183cd59b2cefd8b1c78264d2 100644 (file)
@@ -371,7 +371,7 @@ struct xen_mce {
 #define XEN_MCE_LOG_LEN 32
 
 struct xen_mce_log {
-       char signature[12]; /* "MACHINECHECK" */
+       char signature[12] __nonstring; /* "MACHINECHECK" */
        unsigned len;       /* = XEN_MCE_LOG_LEN */
        unsigned next;
        unsigned flags;