gigaset: add ->compat_ioctl()
authorAl Viro <viro@zeniv.linux.org.uk>
Thu, 13 Sep 2018 00:02:50 +0000 (20:02 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Sat, 13 Oct 2018 04:50:50 +0000 (00:50 -0400)
... and get rid of COMPAT_IOCTL() for its private ioctls

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
drivers/isdn/gigaset/interface.c
fs/compat_ioctl.c

index f9698c0..d9a578a 100644 (file)
@@ -233,6 +233,14 @@ static int if_ioctl(struct tty_struct *tty,
        return retval;
 }
 
+#ifdef CONFIG_COMPAT
+static long if_compat_ioctl(struct tty_struct *tty,
+                   unsigned int cmd, unsigned long arg)
+{
+       return if_ioctl(tty, cmd, (unsigned long)compat_ptr(arg));
+}
+#endif
+
 static int if_tiocmget(struct tty_struct *tty)
 {
        struct cardstate *cs = tty->driver_data;
@@ -472,6 +480,9 @@ static const struct tty_operations if_ops = {
        .open =                 if_open,
        .close =                if_close,
        .ioctl =                if_ioctl,
+#ifdef CONFIG_COMPAT
+       .compat_ioctl =         if_compat_ioctl,
+#endif
        .write =                if_write,
        .write_room =           if_write_room,
        .chars_in_buffer =      if_chars_in_buffer,
index ca2b51d..7eec04b 100644 (file)
@@ -1021,11 +1021,6 @@ COMPATIBLE_IOCTL(CAPI_SET_FLAGS)
 COMPATIBLE_IOCTL(CAPI_CLR_FLAGS)
 COMPATIBLE_IOCTL(CAPI_NCCI_OPENCOUNT)
 COMPATIBLE_IOCTL(CAPI_NCCI_GETUNIT)
-/* Siemens Gigaset */
-COMPATIBLE_IOCTL(GIGASET_REDIR)
-COMPATIBLE_IOCTL(GIGASET_CONFIG)
-COMPATIBLE_IOCTL(GIGASET_BRKCHARS)
-COMPATIBLE_IOCTL(GIGASET_VERSION)
 /* Misc. */
 COMPATIBLE_IOCTL(0x41545900)           /* ATYIO_CLKR */
 COMPATIBLE_IOCTL(0x41545901)           /* ATYIO_CLKW */