Messages in this thread | | | Date | Sun, 12 Oct 2008 19:03:12 +0100 | From | Alan Cox <> | Subject | Re: [PATCH 0/2] SIGWINCH problem with terminal apps still alive |
| |
> I've read the code. The race problem with xterm or other pty using
Clearly not.
> program in 2.6.26 appeared because one app called ioctl(TIOCSWINSZ) on > the master side while other read winsize (TIOCGWINSZ) using client side > (slave). So in one ioctl() call tty == master and in other tty == > real_tty. Of course we can have the opposite situaction so terminal app
Then we end up with both using real_tty.
> Anyway I think that you miss the point. Why using > real_tty->termios_mutex instead of tty->termios_mutex in tty_do_resize
To avoid deadlocks if you took both as you updated both structures.
> So it seems that tty->termios_mutex could point to different > location in different calls but real_tty->termios_mutex always points > to the same location.
You've finally got there - we always work off real_tty. That is why we can safely use the mutex on the real_tty side.
Alan
| |