Re: [net-next rfc v7 2/3] virtio_net: multiqueue support

From: Jason Wang
Date: Mon Dec 03 2012 - 05:31:01 EST


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 linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/