Hello, > From: Sergey Shtylyov, Sent: Tuesday, November 21, 2023 5:56 PM > > On 11/21/23 8:52 AM, Yoshihiro Shimoda wrote: > > > This .ndo_start_xmit() function should return netdev_tx_t value, > > not -ENOMEM. Also, before returning the function, dev_kfree_skb_any() > > should be called. So, fix them. > > Sounds like 2 separate issues -- each needing a patch of its own... Thank you for your review! I got it. > > Fixes: 33f5d733b589 ("net: renesas: rswitch: Improve TX timestamp accuracy") > > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> > > --- > > drivers/net/ethernet/renesas/rswitch.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/net/ethernet/renesas/rswitch.c b/drivers/net/ethernet/renesas/rswitch.c > > index 43a7795d6591..fc9dcf5fa166 100644 > > --- a/drivers/net/ethernet/renesas/rswitch.c > > +++ b/drivers/net/ethernet/renesas/rswitch.c > > @@ -1535,7 +1535,8 @@ static netdev_tx_t rswitch_start_xmit(struct sk_buff *skb, struct net_device *nd > > ts_info = kzalloc(sizeof(*ts_info), GFP_ATOMIC); > > if (!ts_info) { > > dma_unmap_single(ndev->dev.parent, dma_addr, skb->len, DMA_TO_DEVICE); > > - return -ENOMEM; > > + dev_kfree_skb_any(skb); > > + return ret; > > Looks like we have the same error path as when dma_mapping_error() > returns error. Shouldn't we use *goto*? Although probably can be done > later, as a cleanup... Thank you for your suggestion. Perhaps, using goto is better. I'll make a such a patch on v2. Best regards, Yoshihiro Shimoda > [...] > > MBR, Sergey