Am Montag, den 06.05.2019, 10:17 +0200 schrieb Oliver Neukum: > On So, 2019-05-05 at 00:45 -0700, David Miller wrote: > > From: Kloetzke Jan <Jan.Kloetzke@xxxxxxx> > > Date: Tue, 30 Apr 2019 14:15:07 +0000 > > > > > @@ -1431,6 +1432,11 @@ netdev_tx_t usbnet_start_xmit (struct sk_buff *skb, > > > spin_unlock_irqrestore(&dev->txq.lock, flags); > > > goto drop; > > > } > > > + if (WARN_ON(netif_queue_stopped(net))) { > > > + usb_autopm_put_interface_async(dev->intf); > > > + spin_unlock_irqrestore(&dev->txq.lock, flags); > > > + goto drop; > > > + } > > > > If this is known to happen and is expected, then we should not warn. > > > > Hi, > > yes this is the point. Can ndo_start_xmit() and ndo_stop() race? > If not, why does the patch fix the observed issue and what > prevents the race? Something is not clear here. Dave, could you shed some light on Olivers question? If the race can happen then we can stick to v1 because the WARN_ON is indeed pointless. Otherwise it's not clear why it made the problem go away for us and v2 may be the better option... Regards, Jan