Re: [PATCH stable 3/4] block: fail SCSI passthrough ioctls on partitiondevices

From: Paolo Bonzini
Date: Wed Jan 18 2012 - 04:01:15 EST


On 01/18/2012 05:47 AM, Ben Hutchings wrote:
> Changes with respect to 3.3: return -ENOTTY from scsi_verify_blk_ioctl
> and -ENOIOCTLCMD from sd_compat_ioctl. ]

But in 2.6.32, compat_sys_ioctl will end up returning EINVAL rather than
ENOTTY for an unhandled ioctl number.

No, it won't. The ioctl will percolate up the non-compat path and then sd_ioctl will return ENOTTY.

Also, since we're denying ioctls
for security reasons rather than because we don't know how to handle
them, I don't think there's any harm in doing this.

There is harm. You'll be blacklisting also the standard block device ioctls, and those won't work on 32-on-64 anymore. A system with 32-bit userland will likely not boot anymore. This is also somewhat exchanged in my original exchange with Linus.

Paolo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/