mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-29 23:24:11 +08:00
tty: Simplify tty_release_checks() interface
Passing the 'other' tty to tty_release_checks() only makes sense for a pty pair; make o_tty scope local instead. Reviewed-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
62462aefeb
commit
359b9fb5c4
@ -1702,8 +1702,7 @@ static void release_tty(struct tty_struct *tty, int idx)
|
||||
* Performs some paranoid checking before true release of the @tty.
|
||||
* This is a no-op unless TTY_PARANOIA_CHECK is defined.
|
||||
*/
|
||||
static int tty_release_checks(struct tty_struct *tty, struct tty_struct *o_tty,
|
||||
int idx)
|
||||
static int tty_release_checks(struct tty_struct *tty, int idx)
|
||||
{
|
||||
#ifdef TTY_PARANOIA_CHECK
|
||||
if (idx < 0 || idx >= tty->driver->num) {
|
||||
@ -1722,6 +1721,8 @@ static int tty_release_checks(struct tty_struct *tty, struct tty_struct *o_tty,
|
||||
return -1;
|
||||
}
|
||||
if (tty->driver->other) {
|
||||
struct tty_struct *o_tty = tty->link;
|
||||
|
||||
if (o_tty != tty->driver->other->ttys[idx]) {
|
||||
printk(KERN_DEBUG "%s: other->table[%d] not o_tty for (%s)\n",
|
||||
__func__, idx, tty->name);
|
||||
@ -1777,7 +1778,7 @@ int tty_release(struct inode *inode, struct file *filp)
|
||||
/* Review: parallel close */
|
||||
o_tty = tty->link;
|
||||
|
||||
if (tty_release_checks(tty, o_tty, idx)) {
|
||||
if (tty_release_checks(tty, idx)) {
|
||||
tty_unlock(tty);
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user