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)); > +} [...] -- Ben Hutchings, Software Developer Codethink Ltd https://www.codethink.co.uk/ Dale House, 35 Dale Street Manchester, M1 2HF, United Kingdom