virtio/blk: verify device has config space
Some devices might not implement config space access (e.g. remoteproc used not to - before 3.9). virtio/blk needs config space access so make it fail gracefully if not there. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
committed by
Rusty Russell
parent
7754f53e94
commit
a4379fd841
@@ -575,6 +575,12 @@ static int virtblk_probe(struct virtio_device *vdev)
|
|||||||
u16 min_io_size;
|
u16 min_io_size;
|
||||||
u8 physical_block_exp, alignment_offset;
|
u8 physical_block_exp, alignment_offset;
|
||||||
|
|
||||||
|
if (!vdev->config->get) {
|
||||||
|
dev_err(&vdev->dev, "%s failure: config access disabled\n",
|
||||||
|
__func__);
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
|
|
||||||
err = ida_simple_get(&vd_index_ida, 0, minor_to_index(1 << MINORBITS),
|
err = ida_simple_get(&vd_index_ida, 0, minor_to_index(1 << MINORBITS),
|
||||||
GFP_KERNEL);
|
GFP_KERNEL);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user