Commit d9ecdea7 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Rusty Russell

virtio_blk: ioctl return value fix

Block driver ioctl methods must return ENOTTY and not -ENOIOCTLCMD if
they expect the block layer to handle generic ioctls.

This triggered a BLKROSET failure in xfsqa #200.
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
parent 4eff3cae
...@@ -213,7 +213,7 @@ static int virtblk_ioctl(struct block_device *bdev, fmode_t mode, ...@@ -213,7 +213,7 @@ static int virtblk_ioctl(struct block_device *bdev, fmode_t mode,
* Only allow the generic SCSI ioctls if the host can support it. * Only allow the generic SCSI ioctls if the host can support it.
*/ */
if (!virtio_has_feature(vblk->vdev, VIRTIO_BLK_F_SCSI)) if (!virtio_has_feature(vblk->vdev, VIRTIO_BLK_F_SCSI))
return -ENOIOCTLCMD; return -ENOTTY;
return scsi_cmd_ioctl(disk->queue, disk, mode, cmd, argp); return scsi_cmd_ioctl(disk->queue, disk, mode, cmd, argp);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment