bitkeeper revision 1.1159.223.57 (42009aa1vckOCJ3XiCz8SXnP4BQsFw)
authoriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>
Wed, 2 Feb 2005 09:17:21 +0000 (09:17 +0000)
committeriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>
Wed, 2 Feb 2005 09:17:21 +0000 (09:17 +0000)
Small hack to make CROMMULTISESSION ioctl return success rather than enosys, like we did on Xen 1.2.
From: Anthony Liguori aliguori@us.ibm.com
Signed-off-by: ian.pratt@cl.cam.ac.uk
linux-2.6.10-xen-sparse/drivers/xen/blkfront/blkfront.c

index 9216e148e71f4ffb3d9b36b72d7cfbdde49974fb..e28db67411cd8075ee51ffbacec35d3612d93251 100644 (file)
@@ -223,6 +223,7 @@ int blkif_release(struct inode *inode, struct file *filep)
 int blkif_ioctl(struct inode *inode, struct file *filep,
                 unsigned command, unsigned long argument)
 {
+       int i;
     /*  struct gendisk *gd = inode->i_bdev->bd_disk; */
 
     DPRINTK_IOCTL("command: 0x%x, argument: 0x%lx, dev: 0x%04x\n",
@@ -234,6 +235,12 @@ int blkif_ioctl(struct inode *inode, struct file *filep,
         /* return ENOSYS to use defaults */
         return -ENOSYS;
 
+    case CDROMMULTISESSION:
+        DPRINTK("FIXME: support multisession CDs later\n");
+        for ( i = 0; i < sizeof(struct cdrom_multisession); i++ )
+            if ( put_user(0, (byte *)(argument + i)) ) return -EFAULT;
+        return 0;
+
     default:
         printk(KERN_ALERT "ioctl %08x not supported by Xen blkdev\n",
                command);