Hi Alex, > > --- a/net/mac802154/tx.c > > +++ b/net/mac802154/tx.c > > @@ -45,7 +45,8 @@ void ieee802154_xmit_sync_worker(struct work_struct *work) > > /* Restart the netif queue on each sub_if_data object. */ > > ieee802154_wake_queue(local); > > kfree_skb(skb); > > - atomic_dec(&local->phy->ongoing_txs); > > + if (!atomic_dec_and_test(&local->phy->ongoing_txs)) > > + wake_up(&local->phy->sync_txq); > > netdev_dbg(dev, "transmission failed\n"); > > } > > There is a missing handling of dec() wake_up() in ieee802154_tx() > "err_tx" label. Good catch. Fixed. Thanks, Miquèl