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. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html