Re: [PATCH] Support compat_ioctl get/set termios_locked

From: Arnd Bergmann
Date: Sun Sep 25 2011 - 07:12:11 EST


On Saturday 24 September 2011 10:51:24 Thomas Meyer wrote:
> When running a Fedora 15 (x86) on an x86_64 kernel, in the boot process
> plymouthd complains about those two missing ioctls:
> [ 2.581783] ioctl32(plymouthd:186): Unknown cmd fd(10) cmd(00005457){t:'T';sz:0} arg(ffb6a5d0) on /dev/tty1
> [ 2.581803] ioctl32(plymouthd:186): Unknown cmd fd(10) cmd(00005456){t:'T';sz:0} arg(ffb6a680) on /dev/tty1
>
> both ioctl functions work on the 'struct termios', which has the same
> size (36 bytes) on x86 and x86_64, so it's just a matter of converting the
> pointer from userland.
>
> Signed-off-by: Thomas Meyer <thomas@xxxxxxxx>

Hi Thomas,

This looks ok for n_tty, but the same commands are supported for some
(all?) other tty line disciplines as well, and they remain broken
after your patch.

I think it would be better to handle this in the common tty_compat_ioctl()
function before calling into the line discipline's compat_ioctl function.

It would also be nice to move similar commands from fs/compat_ioctl.c into
the same place. The easiest solution would be to add the two missing command
in fs/compat_ioctl.c, but I would prefer getting stuff out of there instead.

Arnd
--
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/