lkml.org 
[lkml]   [2007]   [Sep]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[RFC][PATCH 6/8] kill do_filp_open()
    From
    Date

    This kills off the almost empty do_filp_open(). The indenting
    change in do_sys_open() is because we would have gone over our
    80 characters otherwise.

    Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
    ---

    lxc-dave/fs/open.c | 39 ++++++++++++++++++---------------------
    1 file changed, 18 insertions(+), 21 deletions(-)

    diff -puN fs/open.c~kill-do_filp_open fs/open.c
    --- lxc/fs/open.c~kill-do_filp_open 2007-09-28 11:03:24.000000000 -0700
    +++ lxc-dave/fs/open.c 2007-09-28 11:03:24.000000000 -0700
    @@ -840,17 +840,10 @@ cleanup_file:
    return ERR_PTR(error);
    }

    -static struct file *do_filp_open(int dfd, const char *filename, int flags,
    - int mode)
    -{
    - struct nameidata nd;
    -
    - return open_namei(dfd, filename, flags, mode, &nd);
    -}
    -
    struct file *filp_open(const char *filename, int flags, int mode)
    {
    - return do_filp_open(AT_FDCWD, filename, flags, mode);
    + struct nameidata nd;
    + return open_namei(AT_FDCWD, filename, flags, mode, &nd);
    }
    EXPORT_SYMBOL(filp_open);

    @@ -1049,20 +1042,24 @@ long do_sys_open(int dfd, const char __u
    char *tmp = getname(filename);
    int fd = PTR_ERR(tmp);

    - if (!IS_ERR(tmp)) {
    - fd = get_unused_fd_flags(flags);
    - if (fd >= 0) {
    - struct file *f = do_filp_open(dfd, tmp, flags, mode);
    - if (IS_ERR(f)) {
    - put_unused_fd(fd);
    - fd = PTR_ERR(f);
    - } else {
    - fsnotify_open(f->f_path.dentry);
    - fd_install(fd, f);
    - }
    + if (IS_ERR(tmp))
    + goto out;
    +
    + fd = get_unused_fd_flags(flags);
    + if (fd >= 0) {
    + struct nameidata nd;
    + struct file *f = open_namei(dfd, tmp, flags, mode, &nd);
    +
    + if (IS_ERR(f)) {
    + put_unused_fd(fd);
    + fd = PTR_ERR(f);
    + } else {
    + fsnotify_open(f->f_path.dentry);
    + fd_install(fd, f);
    }
    - putname(tmp);
    }
    + putname(tmp);
    +out:
    return fd;
    }

    _
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2007-09-28 20:19    [W:0.020 / U:31.952 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site