Subject: virtio_blk: ioctl return value fix
Date: Sat, 20 Jun 2009 21:29:41 +0200
From: Christoph Hellwig <hch@lst.de>

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: Christoph Hellwig <hch@lst.de>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
---
 drivers/block/virtio_blk.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c
--- linux-2.6.orig/drivers/block/virtio_blk.c	2009-06-20 21:21:20.252930284 +0200
+++ linux-2.6/drivers/block/virtio_blk.c	2009-06-20 21:22:48.364932365 +0200
@@ -213,7 +213,7 @@ static int virtblk_ioctl(struct block_de
 	 * Only allow the generic SCSI ioctls if the host can support it.
 	 */
 	if (!virtio_has_feature(vblk->vdev, VIRTIO_BLK_F_SCSI))
-		return -ENOIOCTLCMD;
+		return -ENOTTY;
 
 	return scsi_cmd_ioctl(disk->queue, disk, mode, cmd, argp);
 }
