* [PATCH net] net: sparx5: do not refer to skb after passing it on
@ 2022-02-01 14:30 Steen Hegelund
2022-02-02 4:05 ` Jakub Kicinski
0 siblings, 1 reply; 3+ messages in thread
From: Steen Hegelund @ 2022-02-01 14:30 UTC (permalink / raw)
To: David S. Miller, Jakub Kicinski, UNGLinuxDriver, netdev,
linux-arm-kernel, linux-kernel, Dan Carpenter
Cc: Steen Hegelund, kernel test robot
Do not try to use any SKB fields after the packet has been passed up in the
receive stack.
This error was reported as shown below:
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: f3cad2611a77 (net: sparx5: add hostmode with phylink support)
Signed-off-by: Steen Hegelund <steen.hegelund@microchip.com>
---
drivers/net/ethernet/microchip/sparx5/sparx5_packet.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c b/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
index dc7e5ea6ec15..ebdce4b35686 100644
--- a/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
+++ b/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
@@ -145,8 +145,8 @@ static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap)
skb_put(skb, byte_cnt - ETH_FCS_LEN);
eth_skb_pad(skb);
skb->protocol = eth_type_trans(skb, netdev);
- netif_rx(skb);
netdev->stats.rx_bytes += skb->len;
+ netif_rx(skb);
netdev->stats.rx_packets++;
}
--
2.35.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH net] net: sparx5: do not refer to skb after passing it on
2022-02-01 14:30 [PATCH net] net: sparx5: do not refer to skb after passing it on Steen Hegelund
@ 2022-02-02 4:05 ` Jakub Kicinski
2022-02-02 8:23 ` Steen Hegelund
0 siblings, 1 reply; 3+ messages in thread
From: Jakub Kicinski @ 2022-02-02 4:05 UTC (permalink / raw)
To: Steen Hegelund
Cc: David S. Miller, UNGLinuxDriver, netdev, linux-arm-kernel,
linux-kernel, Dan Carpenter, kernel test robot
On Tue, 1 Feb 2022 15:30:57 +0100 Steen Hegelund wrote:
> Do not try to use any SKB fields after the packet has been passed up in the
> receive stack.
>
> This error was reported as shown below:
No need to spell it out, the tags speak for themselves.
> Reported-by: kernel test robot <lkp@intel.com>
> Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
>
Drop this...
> Fixes: f3cad2611a77 (net: sparx5: add hostmode with phylink support)
>
and this empty line - all the tags should be together.
> Signed-off-by: Steen Hegelund <steen.hegelund@microchip.com>
> ---
> drivers/net/ethernet/microchip/sparx5/sparx5_packet.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c b/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
> index dc7e5ea6ec15..ebdce4b35686 100644
> --- a/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
> +++ b/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
> @@ -145,8 +145,8 @@ static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap)
> skb_put(skb, byte_cnt - ETH_FCS_LEN);
> eth_skb_pad(skb);
> skb->protocol = eth_type_trans(skb, netdev);
> - netif_rx(skb);
> netdev->stats.rx_bytes += skb->len;
> + netif_rx(skb);
> netdev->stats.rx_packets++;
sorry to nit pick - wouldn't it be neater if both the stats were
updated together? Looks a little strange that netif_rx() is in
between the two now.
> }
>
> --
> 2.35.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH net] net: sparx5: do not refer to skb after passing it on
2022-02-02 4:05 ` Jakub Kicinski
@ 2022-02-02 8:23 ` Steen Hegelund
0 siblings, 0 replies; 3+ messages in thread
From: Steen Hegelund @ 2022-02-02 8:23 UTC (permalink / raw)
To: Jakub Kicinski
Cc: David S. Miller, UNGLinuxDriver, netdev, linux-arm-kernel,
linux-kernel, Dan Carpenter, kernel test robot
Hi Jacub,
Thanks for the feedback.
I will update according to your suggestions.
BR
Steen
On Tue, 2022-02-01 at 20:05 -0800, Jakub Kicinski wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
> On Tue, 1 Feb 2022 15:30:57 +0100 Steen Hegelund wrote:
> > Do not try to use any SKB fields after the packet has been passed up in the
> > receive stack.
> >
> > This error was reported as shown below:
>
> No need to spell it out, the tags speak for themselves.
>
> > Reported-by: kernel test robot <lkp@intel.com>
> > Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
> >
>
> Drop this...
>
> > Fixes: f3cad2611a77 (net: sparx5: add hostmode with phylink support)
> >
>
> and this empty line - all the tags should be together.
>
> > Signed-off-by: Steen Hegelund <steen.hegelund@microchip.com>
> > ---
> > drivers/net/ethernet/microchip/sparx5/sparx5_packet.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
> > b/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
> > index dc7e5ea6ec15..ebdce4b35686 100644
> > --- a/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
> > +++ b/drivers/net/ethernet/microchip/sparx5/sparx5_packet.c
> > @@ -145,8 +145,8 @@ static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap)
> > skb_put(skb, byte_cnt - ETH_FCS_LEN);
> > eth_skb_pad(skb);
> > skb->protocol = eth_type_trans(skb, netdev);
> > - netif_rx(skb);
> > netdev->stats.rx_bytes += skb->len;
> > + netif_rx(skb);
> > netdev->stats.rx_packets++;
>
> sorry to nit pick - wouldn't it be neater if both the stats were
> updated together? Looks a little strange that netif_rx() is in
> between the two now.
>
> > }
> >
> > --
> > 2.35.1
> >
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-02-02 8:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-01 14:30 [PATCH net] net: sparx5: do not refer to skb after passing it on Steen Hegelund
2022-02-02 4:05 ` Jakub Kicinski
2022-02-02 8:23 ` Steen Hegelund
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).