Hi Jakub,

> -----Original Message-----
> From: Jakub Kicinski <[email protected]>
> Sent: 2021年4月14日 1:11
> To: Y.b. Lu <[email protected]>
> Cc: [email protected]; David S . Miller <[email protected]>; Richard
> Cochran <[email protected]>; Claudiu Manoil
> <[email protected]>; Vladimir Oltean <[email protected]>;
> Russell King <[email protected]>
> Subject: Re: [net-next] enetc: fix locking for one-step timestamping packet
> transfer
> 
> On Tue, 13 Apr 2021 11:48:17 +0800 Yangbo Lu wrote:
> > +   /* Queue one-step Sync packet if already locked */
> > +   if (skb->cb[0] & ENETC_F_TX_ONESTEP_SYNC_TSTAMP) {
> > +           if
> (test_and_set_bit_lock(ENETC_TX_ONESTEP_TSTAMP_IN_PROGRESS,
> > +                                     &priv->flags)) {
> > +                   skb_queue_tail(&priv->tx_skbs, skb);
> > +                   return NETDEV_TX_OK;
> > +           }
> > +   }
> 
> Isn't this missing queue_work() as well?
> 
> Also as I mentioned I don't understand why you created a separate workqueue
> instead of using the system workqueue via schedule_work().

queue_work(system_wq, ) was put in clean_tx. I finally followed the logic you 
suggested :)

See my reply in v2 discussion
https://patchwork.kernel.org/project/netdevbpf/patch/[email protected]/

And v3 patch merged (7294380c5211 enetc: support PTP Sync packet one-step 
timestamping)
https://patchwork.kernel.org/project/netdevbpf/patch/[email protected]/

Thanks.








Reply via email to