Re: [PATCH v2] usbnet: fix kernel crash after disconnect

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux