From: Al Viro Date: Sun, 10 Jun 2012 18:24:38 +0000 (-0400) Subject: fold __dentry_open() into its sole caller X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=2a027e7a1873812240cbdac0f55c4734ff0042a5;p=GitHub%2Fmt8127%2Fandroid_kernel_alcatel_ttab.git fold __dentry_open() into its sole caller Signed-off-by: Al Viro --- diff --git a/fs/open.c b/fs/open.c index 1241c597d317..28fbacbd5e31 100644 --- a/fs/open.c +++ b/fs/open.c @@ -752,26 +752,6 @@ cleanup_file: return error; } -static struct file *__dentry_open(struct dentry *dentry, struct vfsmount *mnt, - struct file *f, - int (*open)(struct inode *, struct file *), - const struct cred *cred) -{ - int error; - error = do_dentry_open(dentry, mnt, f, open, cred); - if (!error) { - error = open_check_o_direct(f); - if (error) { - fput(f); - f = ERR_PTR(error); - } - } else { - put_filp(f); - f = ERR_PTR(error); - } - return f; -} - /** * finish_open - finish opening a file * @od: opaque open data @@ -841,7 +821,18 @@ struct file *dentry_open(struct dentry *dentry, struct vfsmount *mnt, int flags, } f->f_flags = flags; - return __dentry_open(dentry, mnt, f, NULL, cred); + error = do_dentry_open(dentry, mnt, f, NULL, cred); + if (!error) { + error = open_check_o_direct(f); + if (error) { + fput(f); + f = ERR_PTR(error); + } + } else { + put_filp(f); + f = ERR_PTR(error); + } + return f; } EXPORT_SYMBOL(dentry_open);