[PATCH net-next v2 10/15] net: lan969x: add PTP handler function
Daniel Machon
daniel.machon at microchip.com
Thu Oct 31 02:36:28 PDT 2024
> On Thu, 24 Oct 2024 00:01:29 +0200 Daniel Machon wrote:
> > + spin_lock_irqsave(&port->tx_skbs.lock, flags);
> > + skb_queue_walk_safe(&port->tx_skbs, skb, skb_tmp) {
> > + if (SPARX5_SKB_CB(skb)->ts_id != id)
> > + continue;
> > +
> > + __skb_unlink(skb, &port->tx_skbs);
> > + skb_match = skb;
> > + break;
> > + }
> > + spin_unlock_irqrestore(&port->tx_skbs.lock, flags);
>
> For a followup for both drivers -- you're mixing irqsave and bare
> spin_lock() here. The _irqsave/_irqrestore is not necessary, let's
> drop it.
>
> > + spin_lock(&sparx5->ptp_ts_id_lock);
Hi Jakub,
I agree it seems wrong to mix these.
I just talked to Horatiu, and he mentioned posting a similar fix for the
lan966x driver some time ago [1]. Only this fix added
_irqsave/_irqrestore to the ptp_ts_id_lock - so basically the opposite
of what you are suggesting. Why do you think that the
_irqsave/_irqrestore is not necessary?
[1] 3a70e0d4c9d7 ("net: lan966x: Fix possible deadlock inside PTP")
/Daniel
More information about the linux-arm-kernel
mailing list