forked from luck/tmp_suning_uos_patched
virtio_net: enable VQs early
virtio spec requires drivers to set DRIVER_OK before using VQs. This is set automatically after probe returns, virtio net violated this rule by using receive VQs within probe. To fix, call virtio_device_ready before using VQs. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
parent
3569db5930
commit
4baf1e33d0
|
@ -1792,6 +1792,8 @@ static int virtnet_probe(struct virtio_device *vdev)
|
||||||
goto free_vqs;
|
goto free_vqs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
virtio_device_ready(vdev);
|
||||||
|
|
||||||
/* Last of all, set up some receive buffers. */
|
/* Last of all, set up some receive buffers. */
|
||||||
for (i = 0; i < vi->curr_queue_pairs; i++) {
|
for (i = 0; i < vi->curr_queue_pairs; i++) {
|
||||||
try_fill_recv(&vi->rq[i], GFP_KERNEL);
|
try_fill_recv(&vi->rq[i], GFP_KERNEL);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user