From: Thorsten Blum Date: Wed, 13 Aug 2025 10:30:59 +0000 (+0200) Subject: powerpc/rtas: Replace one-element array with flexible array member X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ab8bbf8024b7434e2b630965fd373fba5b89f29f;p=thirdparty%2Flinux.git powerpc/rtas: Replace one-element array with flexible array member Replace the deprecated one-element array with a modern flexible array member in the struct rtas_error_log and add the __counted_by_be() compiler attribute to improve access bounds-checking via CONFIG_UBSAN_BOUNDS and CONFIG_FORTIFY_SOURCE. Link: https://github.com/KSPP/linux/issues/79 Signed-off-by: Thorsten Blum Signed-off-by: Madhavan Srinivasan Link: https://patch.msgid.link/20250813103101.163698-2-thorsten.blum@linux.dev --- diff --git a/arch/powerpc/include/asm/rtas-types.h b/arch/powerpc/include/asm/rtas-types.h index 9d5b16803cbb..5d40d187b965 100644 --- a/arch/powerpc/include/asm/rtas-types.h +++ b/arch/powerpc/include/asm/rtas-types.h @@ -42,8 +42,9 @@ struct rtas_error_log { */ u8 byte3; /* General event or error*/ __be32 extended_log_length; /* length in bytes */ - unsigned char buffer[1]; /* Start of extended log */ - /* Variable length. */ + + /* Start of extended log, variable length */ + unsigned char buffer[] __counted_by_be(extended_log_length); }; /* RTAS general extended event log, Version 6. The extended log starts