netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] nfp: xsk: Adjust allocation type for nn->dp.xsk_pools
@ 2025-04-26  6:08 Kees Cook
  2025-04-28 20:04 ` Simon Horman
  2025-04-29 18:20 ` patchwork-bot+netdevbpf
  0 siblings, 2 replies; 3+ messages in thread
From: Kees Cook @ 2025-04-26  6:08 UTC (permalink / raw)
  To: Louis Peens
  Cc: Kees Cook, Jakub Kicinski, Andrew Lunn, David S. Miller,
	Eric Dumazet, Paolo Abeni, Simon Horman, Yinjun Zhang, Diana Wang,
	oss-drivers, netdev, Jacob Keller, Thomas Gleixner, Jinjie Ruan,
	Easwar Hariharan, Mohammad Heib, linux-kernel, linux-hardening

In preparation for making the kmalloc family of allocators type aware,
we need to make sure that the returned type from the allocation matches
the type of the variable being assigned. (Before, the allocator would
always return "void *", which can be implicitly cast to any pointer type.)

The assigned type "struct xsk_buff_pool **", but the returned type will be
"struct xsk_buff_pool ***". These are the same allocation size (pointer
size), but the types don't match. Adjust the allocation type to match
the assignment.

Signed-off-by: Kees Cook <kees@kernel.org>
---
Cc: Louis Peens <louis.peens@corigine.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Andrew Lunn <andrew+netdev@lunn.ch>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Paolo Abeni <pabeni@redhat.com>
Cc: Simon Horman <horms@kernel.org>
Cc: Yinjun Zhang <yinjun.zhang@corigine.com>
Cc: Diana Wang <na.wang@corigine.com>
Cc: <oss-drivers@corigine.com>
Cc: <netdev@vger.kernel.org>
---
 drivers/net/ethernet/netronome/nfp/nfp_net_common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
index 95514fabadf2..28997ddab966 100644
--- a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
+++ b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
@@ -2538,7 +2538,7 @@ nfp_net_alloc(struct pci_dev *pdev, const struct nfp_dev_info *dev_info,
 				  nn->dp.num_r_vecs, num_online_cpus());
 	nn->max_r_vecs = nn->dp.num_r_vecs;
 
-	nn->dp.xsk_pools = kcalloc(nn->max_r_vecs, sizeof(nn->dp.xsk_pools),
+	nn->dp.xsk_pools = kcalloc(nn->max_r_vecs, sizeof(*nn->dp.xsk_pools),
 				   GFP_KERNEL);
 	if (!nn->dp.xsk_pools) {
 		err = -ENOMEM;
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] nfp: xsk: Adjust allocation type for nn->dp.xsk_pools
  2025-04-26  6:08 [PATCH] nfp: xsk: Adjust allocation type for nn->dp.xsk_pools Kees Cook
@ 2025-04-28 20:04 ` Simon Horman
  2025-04-29 18:20 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 3+ messages in thread
From: Simon Horman @ 2025-04-28 20:04 UTC (permalink / raw)
  To: Kees Cook
  Cc: Louis Peens, Jakub Kicinski, Andrew Lunn, David S. Miller,
	Eric Dumazet, Paolo Abeni, Yinjun Zhang, Diana Wang, oss-drivers,
	netdev, Jacob Keller, Thomas Gleixner, Jinjie Ruan,
	Easwar Hariharan, Mohammad Heib, linux-kernel, linux-hardening

On Fri, Apr 25, 2025 at 11:08:42PM -0700, Kees Cook wrote:
> In preparation for making the kmalloc family of allocators type aware,
> we need to make sure that the returned type from the allocation matches
> the type of the variable being assigned. (Before, the allocator would
> always return "void *", which can be implicitly cast to any pointer type.)
> 
> The assigned type "struct xsk_buff_pool **", but the returned type will be
> "struct xsk_buff_pool ***". These are the same allocation size (pointer
> size), but the types don't match. Adjust the allocation type to match
> the assignment.
> 
> Signed-off-by: Kees Cook <kees@kernel.org>

Reviewed-by: Simon Horman <horms@kernel.org>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] nfp: xsk: Adjust allocation type for nn->dp.xsk_pools
  2025-04-26  6:08 [PATCH] nfp: xsk: Adjust allocation type for nn->dp.xsk_pools Kees Cook
  2025-04-28 20:04 ` Simon Horman
@ 2025-04-29 18:20 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+netdevbpf @ 2025-04-29 18:20 UTC (permalink / raw)
  To: Kees Cook
  Cc: louis.peens, kuba, andrew+netdev, davem, edumazet, pabeni, horms,
	yinjun.zhang, na.wang, oss-drivers, netdev, jacob.e.keller, tglx,
	ruanjinjie, eahariha, mheib, linux-kernel, linux-hardening

Hello:

This patch was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Fri, 25 Apr 2025 23:08:42 -0700 you wrote:
> In preparation for making the kmalloc family of allocators type aware,
> we need to make sure that the returned type from the allocation matches
> the type of the variable being assigned. (Before, the allocator would
> always return "void *", which can be implicitly cast to any pointer type.)
> 
> The assigned type "struct xsk_buff_pool **", but the returned type will be
> "struct xsk_buff_pool ***". These are the same allocation size (pointer
> size), but the types don't match. Adjust the allocation type to match
> the assignment.
> 
> [...]

Here is the summary with links:
  - nfp: xsk: Adjust allocation type for nn->dp.xsk_pools
    https://git.kernel.org/netdev/net-next/c/c636eed60958

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-04-29 18:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-26  6:08 [PATCH] nfp: xsk: Adjust allocation type for nn->dp.xsk_pools Kees Cook
2025-04-28 20:04 ` Simon Horman
2025-04-29 18:20 ` patchwork-bot+netdevbpf

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).