From: "Gustavo A. R. Silva" <gustavoars@kernel.org>
To: Kees Cook <keescook@chromium.org>
Cc: Saeed Mahameed <saeedm@nvidia.com>,
Leon Romanovsky <leon@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
netdev@vger.kernel.org, linux-rdma@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org
Subject: Re: [PATCH] net/mlx5e: Replace 0-length array with flexible array
Date: Fri, 6 Jan 2023 10:09:40 -0600 [thread overview]
Message-ID: <Y7hHxKgX24+pGCsI@work> (raw)
In-Reply-To: <20230105223642.never.980-kees@kernel.org>
On Thu, Jan 05, 2023 at 02:36:43PM -0800, Kees Cook wrote:
> Zero-length arrays are deprecated[1]. Replace struct mlx5e_rx_wqe_cyc's
> "data" 0-length array with a flexible array. Detected with GCC 13,
> using -fstrict-flex-arrays=3:
>
> drivers/net/ethernet/mellanox/mlx5/core/en_main.c: In function 'mlx5e_alloc_rq':
> drivers/net/ethernet/mellanox/mlx5/core/en_main.c:827:42: warning: array subscript f is outside array bounds of 'struct mlx5_wqe_data_seg[0]' [-Warray-bounds=]
> 827 | wqe->data[f].byte_count = 0;
> | ~~~~~~~~~^~~
> In file included from drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.h:11,
> from drivers/net/ethernet/mellanox/mlx5/core/eswitch.h:48,
> from drivers/net/ethernet/mellanox/mlx5/core/en_main.c:42:
> drivers/net/ethernet/mellanox/mlx5/core/en.h:250:39: note: while referencing 'data'
> 250 | struct mlx5_wqe_data_seg data[0];
> | ^~~~
>
> [1] https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays
>
> Cc: Saeed Mahameed <saeedm@nvidia.com>
> Cc: Leon Romanovsky <leon@kernel.org>
> 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: "Gustavo A. R. Silva" <gustavoars@kernel.org>
> Cc: netdev@vger.kernel.org
> Cc: linux-rdma@vger.kernel.org
> Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Thanks!
--
Gustavo
> ---
> drivers/net/ethernet/mellanox/mlx5/core/en.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en.h b/drivers/net/ethernet/mellanox/mlx5/core/en.h
> index 2d77fb8a8a01..37cf3b1bb144 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/en.h
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en.h
> @@ -247,7 +247,7 @@ struct mlx5e_rx_wqe_ll {
> };
>
> struct mlx5e_rx_wqe_cyc {
> - struct mlx5_wqe_data_seg data[0];
> + DECLARE_FLEX_ARRAY(struct mlx5_wqe_data_seg, data);
> };
>
> struct mlx5e_umr_wqe {
> --
> 2.34.1
>
next prev parent reply other threads:[~2023-01-06 16:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-05 22:36 [PATCH] net/mlx5e: Replace 0-length array with flexible array Kees Cook
2023-01-06 16:09 ` Gustavo A. R. Silva [this message]
2023-01-10 16:30 ` Jiri Pirko
2023-01-10 21:58 ` Saeed Mahameed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Y7hHxKgX24+pGCsI@work \
--to=gustavoars@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=keescook@chromium.org \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=linux-hardening@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=saeedm@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.