Re: [PATCH] powerpc: add new required termio functions
From: Andrew Morton <akpm@linux-foundation.org>
Date: 2007-09-12 11:01:54
Also in:
lkml
On Wed, 12 Sep 2007 12:20:32 +0200 Heiko Carstens [off-list ref] wrote:
On Wed, Sep 12, 2007 at 12:04:39PM +1000, Michael Neuling wrote:quoted
The "tty: termios locking functions break with new termios type" patch (f629307c857c030d5a3dd777fee37c8bb395e171) breaks the powerpc compile. [...] I'm guessing other architectures are broken too?FWIW, the above quoted patch breaks s390 as well.
Does this fix it? diff -puN drivers/char/tty_ioctl.c~powerpc-add-new-required-termio-functions drivers/char/tty_ioctl.c
--- a/drivers/char/tty_ioctl.c~powerpc-add-new-required-termio-functions
+++ a/drivers/char/tty_ioctl.c@@ -795,6 +795,19 @@ int n_tty_ioctl(struct tty_struct * tty, if (L_ICANON(tty)) retval = inq_canon(tty); return put_user(retval, (unsigned int __user *) arg); +#ifndef TCGETS2 + case TIOCGLCKTRMIOS: + if (kernel_termios_to_user_termios((struct termios __user *)arg, real_tty->termios_locked)) + return -EFAULT; + return 0; + + case TIOCSLCKTRMIOS: + if (!capable(CAP_SYS_ADMIN)) + return -EPERM; + if (user_termios_to_kernel_termios(real_tty->termios_locked, (struct termios __user *) arg)) + return -EFAULT; + return 0; +#else case TIOCGLCKTRMIOS: if (kernel_termios_to_user_termios_1((struct termios __user *)arg, real_tty->termios_locked)) return -EFAULT;
@@ -806,6 +819,7 @@ int n_tty_ioctl(struct tty_struct * tty, if (user_termios_to_kernel_termios_1(real_tty->termios_locked, (struct termios __user *) arg)) return -EFAULT; return 0; +#endif case TIOCPKT: {
_