lkml.org 
[lkml]   [2009]   [Sep]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[RFC PATCH 04/11] autofs4 - use macro for need mount check
    Date
    Define simple macro function for checking if we need to trigger
    a mount.

    Signed-off-by: Ian Kent <raven@themaw.net>
    ---

    fs/autofs4/root.c | 12 ++++++++++--
    1 files changed, 10 insertions(+), 2 deletions(-)

    diff --git a/fs/autofs4/root.c b/fs/autofs4/root.c
    index 2954ac5..f6e8ca9 100644
    --- a/fs/autofs4/root.c
    +++ b/fs/autofs4/root.c
    @@ -104,6 +104,14 @@ static void autofs4_del_active(struct dentry *dentry)
    return;
    }

    +static unsigned int autofs4_need_mount(unsigned int flags)
    +{
    + unsigned int res = 0;
    + if (flags & (TRIGGER_FLAGS | TRIGGER_INTENTS))
    + res = 1;
    + return res;
    +}
    +
    static int autofs4_dir_open(struct inode *inode, struct file *file)
    {
    struct dentry *dentry = file->f_path.dentry;
    @@ -168,7 +176,7 @@ static int try_to_fill_dentry(struct dentry *dentry, int flags)
    }
    /* Trigger mount for path component or follow link */
    } else if (dentry->d_flags & DCACHE_AUTOFS_PENDING ||
    - flags & (TRIGGER_FLAGS | TRIGGER_INTENTS) ||
    + autofs4_need_mount(flags) ||
    current->link_count) {
    DPRINTK("waiting for mount name=%.*s",
    dentry->d_name.len, dentry->d_name.name);
    @@ -234,7 +242,7 @@ static void *autofs4_follow_link(struct dentry *dentry, struct nameidata *nd)
    autofs4_expire_wait(dentry);

    /* We trigger a mount for almost all flags */
    - lookup_type = nd->flags & (TRIGGER_FLAGS | TRIGGER_INTENTS);
    + lookup_type = autofs4_need_mount(nd->flags);
    if (!(lookup_type || dentry->d_flags & DCACHE_AUTOFS_PENDING))
    goto follow;



    \
     
     \ /
      Last update: 2009-09-24 10:25    [W:0.029 / U:1.704 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site