Messages in this thread Patch in this message | | | From | Andrey Vagin <> | Subject | [PATCH 2/2] fs: devpts_pty_new() return -ENOMEM if dentry allocation failed | Date | Fri, 4 Feb 2011 18:28:27 +0300 |
| |
In this case nobody can open a slave point, so will be better return error from devpts_pty_new()
Signed-off-by: Andrey Vagin <avagin@openvz.org> --- fs/devpts/inode.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/fs/devpts/inode.c b/fs/devpts/inode.c index 530b1f1..31474f3 100644 --- a/fs/devpts/inode.c +++ b/fs/devpts/inode.c @@ -479,6 +479,7 @@ int devpts_pty_new(struct inode *ptmx_inode, struct tty_struct *tty) struct dentry *root = sb->s_root; struct pts_fs_info *fsi = DEVPTS_SB(sb); struct pts_mount_opts *opts = &fsi->mount_opts; + int ret = 0; char s[12]; /* We're supposed to be given the slave end of a pty */ @@ -504,11 +505,14 @@ int devpts_pty_new(struct inode *ptmx_inode, struct tty_struct *tty) if (dentry) { d_add(dentry, inode); fsnotify_create(root->d_inode, dentry); + } else { + iput(inode); + ret = -ENOMEM; } mutex_unlock(&root->d_inode->i_mutex); - return 0; + return ret; } struct tty_struct *devpts_get_tty(struct inode *pts_inode, int number) -- 1.7.2.1
| |