diff --git a/[refs] b/[refs] index c2f4d734decd..49925da3f41a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 157a4b311c45c9aba75a990464d9680867dc8805 +refs/heads/master: 79d753209245de3d6f02480535a8f5cf21ad02f7 diff --git a/trunk/drivers/tty/pty.c b/trunk/drivers/tty/pty.c index d8558834ce57..a0ca0830cbcf 100644 --- a/trunk/drivers/tty/pty.c +++ b/trunk/drivers/tty/pty.c @@ -618,13 +618,12 @@ static int ptmx_open(struct inode *inode, struct file *filp) /* find a device that is not in use. */ mutex_lock(&devpts_mutex); index = devpts_new_index(inode); + mutex_unlock(&devpts_mutex); if (index < 0) { retval = index; goto err_file; } - mutex_unlock(&devpts_mutex); - mutex_lock(&tty_mutex); tty = tty_init_dev(ptm_driver, index); @@ -659,7 +658,6 @@ static int ptmx_open(struct inode *inode, struct file *filp) mutex_unlock(&tty_mutex); devpts_kill_index(inode, index); err_file: - mutex_unlock(&devpts_mutex); tty_free_file(filp); return retval; }