move compat handling of tty ioctls to tty_compat_ioctl()
ioctls that are * callable only via tty_ioctl() * not driver-specific * not demand data structure conversions * either always need passing arg as is or always demand compat_ptr() get intercepted in tty_compat_ioctl() from the very beginning and redirecter to tty_ioctl(). As the result, their entries in fs/compat_ioctl.c (some of those had been missing, BTW) got removed, as well as n_tty_compat_ioctl_helper() (now it's never called with any cmd it would accept). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@ -941,19 +941,3 @@ int n_tty_ioctl_helper(struct tty_struct *tty, struct file *file,
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL(n_tty_ioctl_helper);
|
||||
|
||||
#ifdef CONFIG_COMPAT
|
||||
long n_tty_compat_ioctl_helper(struct tty_struct *tty, struct file *file,
|
||||
unsigned int cmd, unsigned long arg)
|
||||
{
|
||||
switch (cmd) {
|
||||
case TIOCGLCKTRMIOS:
|
||||
case TIOCSLCKTRMIOS:
|
||||
return tty_mode_ioctl(tty, file, cmd, (unsigned long) compat_ptr(arg));
|
||||
default:
|
||||
return -ENOIOCTLCMD;
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL(n_tty_compat_ioctl_helper);
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user