From: Maxim Mikityanskiy <maxtram95@gmail.com>
To: Arnd Bergmann <arnd@kernel.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>,
Arnd Bergmann <arnd@arndb.de>,
Nathan Chancellor <nathan@kernel.org>,
Nick Desaulniers <ndesaulniers@google.com>,
Tom Rix <trix@redhat.com>, Tariq Toukan <tariqt@nvidia.com>,
Adham Faris <afaris@nvidia.com>,
netdev@vger.kernel.org, linux-rdma@vger.kernel.org,
linux-kernel@vger.kernel.org, llvm@lists.linux.dev
Subject: Re: [PATCH] mlx5: avoid integer overflow warning for large page size
Date: Thu, 22 Jun 2023 14:23:17 +0300 [thread overview]
Message-ID: <ZJQvJZxZkYfqGAJu@mail.gmail.com> (raw)
In-Reply-To: <20230622101525.3321642-1-arnd@kernel.org>
On Thu, 22 Jun 2023 at 12:15:02 +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> Build testing with 'make LLVM=1 W=1' shows a warning about a
> condition that is always true on configurations with 64KB
> pages:
>
> drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c:32:22: error: result of comparison of constant 65536 with expression of type 'u16' (aka 'unsigned short') is always false [-Werror,-Wtautological-constant-out-of-range-compare]
>
> Change the condition in a way that lets clang know this
> is intentional.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c b/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c
> index 36826b5824847..b9f62e531bd4c 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c
> @@ -29,7 +29,8 @@ bool mlx5e_validate_xsk_param(struct mlx5e_params *params,
> struct mlx5_core_dev *mdev)
> {
> /* AF_XDP doesn't support frames larger than PAGE_SIZE. */
> - if (xsk->chunk_size > PAGE_SIZE || xsk->chunk_size < MLX5E_MIN_XSK_CHUNK_SIZE) {
> + if ((PAGE_SIZE < U16_MAX && xsk->chunk_size > PAGE_SIZE)
> + || xsk->chunk_size < MLX5E_MIN_XSK_CHUNK_SIZE) {
I recall you already sent a fix to silence this warning before:
https://lore.kernel.org/netdev/20211015152056.2434853-1-arnd@kernel.org/
I prefer that old one, as it's more future-proof to cast to size_t here
in place (chunk_size won't be bigger than size_t for sure). With your
new patch, if chunk_size is ever changed from u16 to u32, it's likely
that this place will be unnoticed, and a bug will be introduced.
> mlx5_core_err(mdev, "XSK chunk size %u out of bounds [%u, %lu]\n", xsk->chunk_size,
> MLX5E_MIN_XSK_CHUNK_SIZE, PAGE_SIZE);
> return false;
> --
> 2.39.2
>
next prev parent reply other threads:[~2023-06-22 11:23 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-22 10:15 [PATCH] mlx5: avoid integer overflow warning for large page size Arnd Bergmann
2023-06-22 11:23 ` Maxim Mikityanskiy [this message]
2023-06-22 11:28 ` Arnd Bergmann
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=ZJQvJZxZkYfqGAJu@mail.gmail.com \
--to=maxtram95@gmail.com \
--cc=afaris@nvidia.com \
--cc=arnd@arndb.de \
--cc=arnd@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=nathan@kernel.org \
--cc=ndesaulniers@google.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=saeedm@nvidia.com \
--cc=tariqt@nvidia.com \
--cc=trix@redhat.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.