diff options
-rw-r--r-- | drivers/virtio/virtio.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/virtio/virtio.c b/drivers/virtio/virtio.c index 018c070a357..6b681036486 100644 --- a/drivers/virtio/virtio.c +++ b/drivers/virtio/virtio.c @@ -118,13 +118,14 @@ static int virtio_dev_probe(struct device *_d) if (device_features & (1 << i)) set_bit(i, dev->features); + dev->config->finalize_features(dev); + err = drv->probe(dev); if (err) add_status(dev, VIRTIO_CONFIG_S_FAILED); - else { - dev->config->finalize_features(dev); + else add_status(dev, VIRTIO_CONFIG_S_DRIVER_OK); - } + return err; } |