On Thu, 2007-06-07 at 20:16 -0700, Andrew Morton wrote:
> On Fri, 8 Jun 2007 05:06:29 +0200 Björn Steinbrink <[email protected]> wrote:
> > This is do_tty_hangup() exchanging the fops while we're waiting for the
> > lock. The new fops (hung_up_tty_fops) only have the unlocked variant and
> > thus we Oops our way.
>
> ah, yes, that explains it, thanks. Culprit:
>
> commit e10cc1df1d2014f68a4bdcf73f6dd122c4561f94
> Author: Paul Fulghum <[email protected]>
> Date: Thu May 10 22:22:50 2007 -0700
>
> tty: add compat_ioctl
>
> Add compat_ioctl method for tty code to allow processing of 32 bit ioctl
> calls on 64 bit systems by tty core, tty drivers, and line disciplines.
OK, the change of hung_up_tty_ioctl() from locked to unlocked
is not necessary for this patch. On the surface it seemed a clever
way of not needing two different functions to do the same simple:
return cmd == TIOCSPGRP ? -ENOTTY : -EIO;
which does not need any locking for its own sake. But clearly
the hangup behavior requires the locked version.
I'll redo the patch with hung_up_tty_ioctl remaining locked.
That will separate the compat ioctl stuff from this issue.
--
Paul Fulghum
Microgate Systems, Ltd
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]