[PATCH v1] net: mvpp2: use slab_build_skb for oversized frames

Aryan Srivastava posted 1 patch 1 year, 8 months ago
drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
[PATCH v1] net: mvpp2: use slab_build_skb for oversized frames
Posted by Aryan Srivastava 1 year, 8 months ago
Setting frag_size to 0 to indicate kmalloc has been deprecated,
use slab_build_skb directly.

Fixes: ce098da1497c ("skbuff: Introduce slab_build_skb()")
Signed-off-by: Aryan Srivastava <aryan.srivastava@alliedtelesis.co.nz>
---
Changes in v1:
- Added Fixes tag

 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
index aca17082b9ec..05f4aa11b95c 100644
--- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
+++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
@@ -4001,7 +4001,10 @@ static int mvpp2_rx(struct mvpp2_port *port, struct napi_struct *napi,
 			}
 		}
 
-		skb = build_skb(data, frag_size);
+		if (frag_size)
+			skb = build_skb(data, frag_size);
+		else
+			skb = slab_build_skb(data);
 		if (!skb) {
 			netdev_warn(port->dev, "skb build failed\n");
 			goto err_drop_frame;
-- 
2.43.2
Re: [PATCH v1] net: mvpp2: use slab_build_skb for oversized frames
Posted by Kees Cook 1 year, 8 months ago
On Thu, Jun 13, 2024 at 02:49:00PM +1200, Aryan Srivastava wrote:
> Setting frag_size to 0 to indicate kmalloc has been deprecated,
> use slab_build_skb directly.
> 
> Fixes: ce098da1497c ("skbuff: Introduce slab_build_skb()")
> Signed-off-by: Aryan Srivastava <aryan.srivastava@alliedtelesis.co.nz>
> ---
> Changes in v1:
> - Added Fixes tag

This looks like similar updates like commit 99b415fe8986 ("tg3: Use
slab_build_skb() when needed")

Reviewed-by: Kees Cook <kees@kernel.org>

-- 
Kees Cook
Re: [PATCH v1] net: mvpp2: use slab_build_skb for oversized frames
Posted by Aryan Srivastava 1 year, 8 months ago
On Wed, 2024-06-12 at 20:05 -0700, Kees Cook wrote:
> On Thu, Jun 13, 2024 at 02:49:00PM +1200, Aryan Srivastava wrote:
> > Setting frag_size to 0 to indicate kmalloc has been deprecated,
> > use slab_build_skb directly.
> > 
> > Fixes: ce098da1497c ("skbuff: Introduce slab_build_skb()")
> > Signed-off-by: Aryan Srivastava
> > <aryan.srivastava@alliedtelesis.co.nz>
> > ---
> > Changes in v1:
> > - Added Fixes tag
> 
> This looks like similar updates like commit 99b415fe8986 ("tg3: Use
> slab_build_skb() when needed")
Yeah, I noticed that when I was looking for examples of other "Fixes"
tags for the "skbuff: Introduce slab_build_skb()" commit. I suspect
there are many drivers that will need this "fix".
> 
> Reviewed-by: Kees Cook <kees@kernel.org>
> 

Re: [PATCH v1] net: mvpp2: use slab_build_skb for oversized frames
Posted by Kees Cook 1 year, 8 months ago
On Thu, Jun 13, 2024 at 03:13:34AM +0000, Aryan Srivastava wrote:
> On Wed, 2024-06-12 at 20:05 -0700, Kees Cook wrote:
> > On Thu, Jun 13, 2024 at 02:49:00PM +1200, Aryan Srivastava wrote:
> > > Setting frag_size to 0 to indicate kmalloc has been deprecated,
> > > use slab_build_skb directly.
> > > 
> > > Fixes: ce098da1497c ("skbuff: Introduce slab_build_skb()")
> > > Signed-off-by: Aryan Srivastava
> > > <aryan.srivastava@alliedtelesis.co.nz>
> > > ---
> > > Changes in v1:
> > > - Added Fixes tag
> > 
> > This looks like similar updates like commit 99b415fe8986 ("tg3: Use
> > slab_build_skb() when needed")
> Yeah, I noticed that when I was looking for examples of other "Fixes"
> tags for the "skbuff: Introduce slab_build_skb()" commit. I suspect
> there are many drivers that will need this "fix".

Yeah, at the time the API changes was made it was clear it wasn't easy
to identify which needed it, so the WARN was added along with supporting
the old style via internal fall-back.

-Kees

> > 
> > Reviewed-by: Kees Cook <kees@kernel.org>
> > 
> 

-- 
Kees Cook
Re: [PATCH v1] net: mvpp2: use slab_build_skb for oversized frames
Posted by Aryan Srivastava 1 year, 8 months ago
On Wed, 2024-06-12 at 20:34 -0700, Kees Cook wrote:
> On Thu, Jun 13, 2024 at 03:13:34AM +0000, Aryan Srivastava wrote:
> > On Wed, 2024-06-12 at 20:05 -0700, Kees Cook wrote:
> > > On Thu, Jun 13, 2024 at 02:49:00PM +1200, Aryan Srivastava wrote:
> > > > Setting frag_size to 0 to indicate kmalloc has been deprecated,
> > > > use slab_build_skb directly.
> > > > 
> > > > Fixes: ce098da1497c ("skbuff: Introduce slab_build_skb()")
> > > > Signed-off-by: Aryan Srivastava
> > > > <aryan.srivastava@alliedtelesis.co.nz>
> > > > ---
> > > > Changes in v1:
> > > > - Added Fixes tag
> > > 
> > > This looks like similar updates like commit 99b415fe8986 ("tg3:
> > > Use
> > > slab_build_skb() when needed")
> > Yeah, I noticed that when I was looking for examples of other
> > "Fixes"
> > tags for the "skbuff: Introduce slab_build_skb()" commit. I suspect
> > there are many drivers that will need this "fix".
> 
> Yeah, at the time the API changes was made it was clear it wasn't
> easy
> to identify which needed it, so the WARN was added along with
> supporting
> the old style via internal fall-back.
> 
> -Kees
I love that about the kernel. Just nudges you in the right direction.

-Aryan
> 
> > > 
> > > Reviewed-by: Kees Cook <kees@kernel.org>
> > > 
> > 
>