On Mon, Dec 03, 2012 at 06:30:49PM +0800, Jason Wang wrote:
> On 12/03/2012 06:14 PM, Michael S. Tsirkin wrote:
> > On Tue, Nov 27, 2012 at 06:15:59PM +0800, Jason Wang wrote:
> >> > -        if (!try_fill_recv(&vi->rq, GFP_KERNEL))
> >> > -                schedule_delayed_work(&vi->rq.refill, 0);
> >> > +        for (i = 0; i < vi->max_queue_pairs; i++)
> >> > +                if (!try_fill_recv(&vi->rq[i], GFP_KERNEL))
> >> > +                        schedule_delayed_work(&vi->rq[i].refill, 0);
> >> >  
> >> >          mutex_lock(&vi->config_lock);
> >> >          vi->config_enable = true;
> >> >          mutex_unlock(&vi->config_lock);
> >> >  
> >> > +        BUG_ON(virtnet_set_queues(vi));
> >> > +
> >> >          return 0;
> >> >  }
> >> >  #endif
> > Also crashing on device nack of command is also not nice.
> > In this case it seems we can just switch to
> > single-queue mode which should always be safe.
> 
> Not sure it's safe. It depends on the reason why this call fails. If we
> left a state that the driver only use single queue but the device use
> multi queues, we may still lost the network.

Looks like we won't: napi will stay enabled on all queues
so we will process incoming packets.

-- 
MST
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to