On Tue, 2019-12-17 at 23:17 +0100, Arnd Bergmann wrote: [...]
@@ -1710,6 +1711,38 @@ static int idecd_ioctl(struct block_device *bdev, fmode_t mode, return ret; } +#ifdef CONFIG_COMPAT +static int idecd_locked_compat_ioctl(struct block_device *bdev, fmode_t mode,
unsigned int cmd, unsigned long arg)
+{
- struct cdrom_info *info = ide_drv_g(bdev->bd_disk, cdrom_info);
- int err;
- switch (cmd) {
- case CDROMSETSPINDOWN:
return idecd_set_spindown(&info->devinfo, arg);
- case CDROMGETSPINDOWN:
return idecd_get_spindown(&info->devinfo, arg);
compat_ptr() should also be applied to the argument for these two commands, though I'm fairly sure IDE drivers have never been useful on s390 so it doesn't matter in practice.
Ben.
- default:
break;
- }
- return cdrom_ioctl(&info->devinfo, bdev, mode, cmd,
(unsigned long)compat_ptr(arg));
+}
[...]