[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3c6bc732-bd90-4a29-bcbc-f545b0ed79ad@riscstar.com>
Date: Sat, 15 Mar 2025 09:27:36 -0500
From: Alex Elder <elder@...cstar.com>
To: Kees Cook <kees@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: Azeem Shaikh <azeemshaikh38@...il.com>, Alex Elder <elder@...nel.org>,
Sumit Garg <sumit.garg@...nel.org>, linux-kernel@...r.kernel.org,
linux-hardening@...r.kernel.org, alx@...nel.org
Subject: Re: [PATCH] EISA: Increase length of device names
On 3/10/25 5:24 PM, Kees Cook wrote:
> GCC 15's -Wunterminated-string-initialization warned about truncated
> name strings. Instead of marking them with the "nonstring" attribute[1],
> increase their length to correctly include enough space for the
> terminating NUL character, as they are used with %s format specifiers.
>
> Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117178 [1]
> Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
> Cc: Azeem Shaikh <azeemshaikh38@...il.com>
> Cc: Alex Elder <elder@...nel.org>
This was interesting, but based on the bug text I suspect you
meant to address this to Alejandro Colomar, <alx@...nel.org>.
For what it's worth, it looks fine to me.
-Alex
> Cc: Sumit Garg <sumit.garg@...nel.org>
> Signed-off-by: Kees Cook <kees@...nel.org>
> ---
> drivers/eisa/eisa-bus.c | 2 +-
> include/linux/eisa.h | 4 +++-
> 2 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/eisa/eisa-bus.c b/drivers/eisa/eisa-bus.c
> index cb586a362944..edceea083b98 100644
> --- a/drivers/eisa/eisa-bus.c
> +++ b/drivers/eisa/eisa-bus.c
> @@ -21,7 +21,7 @@
>
> struct eisa_device_info {
> struct eisa_device_id id;
> - char name[50];
> + char name[EISA_DEVICE_INFO_NAME_SIZE];
> };
>
> #ifdef CONFIG_EISA_NAMES
> diff --git a/include/linux/eisa.h b/include/linux/eisa.h
> index f98200cae637..c73a410bf88f 100644
> --- a/include/linux/eisa.h
> +++ b/include/linux/eisa.h
> @@ -28,6 +28,8 @@
> #define EISA_CONFIG_ENABLED 1
> #define EISA_CONFIG_FORCED 2
>
> +#define EISA_DEVICE_INFO_NAME_SIZE 51
> +
> /* There is not much we can say about an EISA device, apart from
> * signature, slot number, and base address. dma_mask is set by
> * default to parent device mask..*/
> @@ -41,7 +43,7 @@ struct eisa_device {
> u64 dma_mask;
> struct device dev; /* generic device */
> #ifdef CONFIG_EISA_NAMES
> - char pretty_name[50];
> + char pretty_name[EISA_DEVICE_INFO_NAME_SIZE];
> #endif
> };
>
Powered by blists - more mailing lists