lkml.org 
[lkml]   [2024]   [Apr]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH net 1/2] net: bridge: fix multicast-to-unicast with fraglist GSO
From
Date
On Sat, 2024-04-27 at 20:24 +0200, Felix Fietkau wrote:
> Calling skb_copy on a SKB_GSO_FRAGLIST skb is not valid, since it returns
> an invalid linearized skb. This code only needs to change the ethernet
> header, so pskb_copy is the right function to call here.
>
> Fixes: 6db6f0eae605 ("bridge: multicast to unicast")
> Signed-off-by: Felix Fietkau <nbd@nbd.name>
> ---
> net/bridge/br_forward.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/net/bridge/br_forward.c b/net/bridge/br_forward.c
> index 7431f89e897b..d7c35f55bd69 100644
> --- a/net/bridge/br_forward.c
> +++ b/net/bridge/br_forward.c
> @@ -266,7 +266,7 @@ static void maybe_deliver_addr(struct net_bridge_port *p, struct sk_buff *skb,
> if (skb->dev == p->dev && ether_addr_equal(src, addr))
> return;
>
> - skb = skb_copy(skb, GFP_ATOMIC);
> + skb = pskb_copy(skb, GFP_ATOMIC);
> if (!skb) {
> DEV_STATS_INC(dev, tx_dropped);
> return;

LGTM, but let's wait a little more time for Nikolay

Acked-by: Paolo Abeni <pabeni@redhat.com>


\
 
 \ /
  Last update: 2024-04-30 13:07    [W:0.047 / U:0.096 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site