From: Saeed Mahameed <saeed@kernel.org>
To: "David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Eric Dumazet <edumazet@google.com>
Cc: Saeed Mahameed <saeedm@nvidia.com>,
netdev@vger.kernel.org, Tariq Toukan <tariqt@nvidia.com>,
Kees Cook <keescook@chromium.org>,
Leon Romanovsky <leon@kernel.org>,
linux-rdma@vger.kernel.org, Justin Stitt <justinstitt@google.com>,
"Gustavo A . R . Silva" <gustavoars@kernel.org>,
Leon Romanovsky <leonro@nvidia.com>
Subject: [net-next 08/11] net/mlx5: Annotate struct mlx5_fc_bulk with __counted_by
Date: Fri, 27 Oct 2023 15:20:03 -0700 [thread overview]
Message-ID: <20231027222006.115999-9-saeed@kernel.org> (raw)
In-Reply-To: <20231027222006.115999-1-saeed@kernel.org>
From: Kees Cook <keescook@chromium.org>
Prepare for the coming implementation by GCC and Clang of the __counted_by
attribute. Flexible array members annotated with __counted_by can have
their accesses bounds-checked at run-time via CONFIG_UBSAN_BOUNDS (for
array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
functions).
As found with Coccinelle[1], add __counted_by for struct mlx5_fc_bulk.
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: netdev@vger.kernel.org
Cc: linux-rdma@vger.kernel.org
Link: https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci [1]
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Justin Stitt <justinstitt@google.com>
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
---
drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c b/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c
index 17fe30a4c06c..0c26d707eed2 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c
@@ -539,7 +539,7 @@ struct mlx5_fc_bulk {
u32 base_id;
int bulk_len;
unsigned long *bitmask;
- struct mlx5_fc fcs[];
+ struct mlx5_fc fcs[] __counted_by(bulk_len);
};
static void mlx5_fc_init(struct mlx5_fc *counter, struct mlx5_fc_bulk *bulk,
--
2.41.0
next prev parent reply other threads:[~2023-10-27 22:20 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-27 22:19 [pull request][net-next 00/11] mlx5 updates 2023-10-27 Saeed Mahameed
2023-10-27 22:19 ` [net-next 01/11] net/mlx5: Increase size of irq name buffer Saeed Mahameed
2023-10-27 22:19 ` [net-next 02/11] net/mlx5e: Reduce the size of icosq_str Saeed Mahameed
2023-10-27 22:19 ` [net-next 03/11] net/mlx5e: Check return value of snprintf writing to fw_version buffer Saeed Mahameed
2023-10-27 22:19 ` [net-next 04/11] net/mlx5e: Check return value of snprintf writing to fw_version buffer for representors Saeed Mahameed
2023-10-27 22:20 ` [net-next 05/11] net/mlx5: print change on SW reset semaphore returns busy Saeed Mahameed
2023-10-27 22:20 ` [net-next 06/11] net/mlx5: Allow sync reset flow when BF MGT interface device is present Saeed Mahameed
2023-10-27 22:20 ` [net-next 07/11] net/mlx5e: Some cleanup in mlx5e_tc_stats_matchall() Saeed Mahameed
2023-10-27 22:20 ` Saeed Mahameed [this message]
2023-10-27 22:20 ` [net-next 09/11] net/mlx5: Annotate struct mlx5_flow_handle with __counted_by Saeed Mahameed
2023-10-27 22:20 ` [net-next 10/11] net/mlx5: simplify mlx5_set_driver_version string assignments Saeed Mahameed
2023-10-27 22:20 ` [net-next 11/11] net/mlx5e: Access array with enum values instead of magic numbers Saeed Mahameed
2023-10-30 6:31 ` [pull request][net-next 00/11] mlx5 updates 2023-10-27 Jakub Kicinski
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=20231027222006.115999-9-saeed@kernel.org \
--to=saeed@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=gustavoars@kernel.org \
--cc=justinstitt@google.com \
--cc=keescook@chromium.org \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=leonro@nvidia.com \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=saeedm@nvidia.com \
--cc=tariqt@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).