diff options
author | Mark Brown <broonie@kernel.org> | 2016-06-29 17:28:16 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-06-29 17:28:16 +0100 |
commit | 10d832d607c621c101922442f4771737296e1241 (patch) | |
tree | 421229d6bb43c301bbf5eb97b11c5901aae66e08 /drivers/tty/pty.c | |
parent | 1a695a905c18548062509178b98bc91e67510864 (diff) | |
parent | a370f60a58ec7bad7045803041524ccdc4d79c75 (diff) | |
download | lwn-10d832d607c621c101922442f4771737296e1241.tar.gz lwn-10d832d607c621c101922442f4771737296e1241.zip |
Merge tag 'ib-mfd-regulator-arm-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd into regulator-rn5t618
Immutable branch between MFD, Regulator and ARM, due for v4.8
Diffstat (limited to 'drivers/tty/pty.c')
-rw-r--r-- | drivers/tty/pty.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/tty/pty.c b/drivers/tty/pty.c index dd4b8417e7f4..f856c4544eea 100644 --- a/drivers/tty/pty.c +++ b/drivers/tty/pty.c @@ -668,7 +668,7 @@ static void pty_unix98_remove(struct tty_driver *driver, struct tty_struct *tty) else fsi = tty->link->driver_data; devpts_kill_index(fsi, tty->index); - devpts_put_ref(fsi); + devpts_release(fsi); } static const struct tty_operations ptm_unix98_ops = { @@ -733,10 +733,11 @@ static int ptmx_open(struct inode *inode, struct file *filp) if (retval) return retval; - fsi = devpts_get_ref(inode, filp); - retval = -ENODEV; - if (!fsi) + fsi = devpts_acquire(filp); + if (IS_ERR(fsi)) { + retval = PTR_ERR(fsi); goto out_free_file; + } /* find a device that is not in use. */ mutex_lock(&devpts_mutex); @@ -745,7 +746,7 @@ static int ptmx_open(struct inode *inode, struct file *filp) retval = index; if (index < 0) - goto out_put_ref; + goto out_put_fsi; mutex_lock(&tty_mutex); @@ -789,8 +790,8 @@ err_release: return retval; out: devpts_kill_index(fsi, index); -out_put_ref: - devpts_put_ref(fsi); +out_put_fsi: + devpts_release(fsi); out_free_file: tty_free_file(filp); return retval; |