lkml.org 
[lkml]   [2007]   [Sep]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH 03/24] create cleanup helper svc_msnfs()
    From
    Date

    I'm going to be modifying nfsd_rename() shortly to support
    read-only bind mounts. This #ifdef is around the area I'm
    patching, and it starts to get really ugly if I just try
    to add my new code by itself. Using this little helper
    makes things a lot cleaner to use.

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

    lxc-dave/fs/nfsd/vfs.c | 15 +++++++++++----
    1 file changed, 11 insertions(+), 4 deletions(-)

    diff -puN fs/nfsd/vfs.c~create-svc_msnfs-helper fs/nfsd/vfs.c
    --- lxc/fs/nfsd/vfs.c~create-svc_msnfs-helper 2007-09-17 09:43:56.000000000 -0700
    +++ lxc-dave/fs/nfsd/vfs.c 2007-09-17 09:43:56.000000000 -0700
    @@ -865,6 +865,15 @@ static int nfsd_direct_splice_actor(stru
    return __splice_from_pipe(pipe, sd, nfsd_splice_actor);
    }

    +static inline int svc_msnfs(struct svc_fh *ffhp)
    +{
    +#ifdef MSNFS
    + return (ffhp->fh_export->ex_flags & NFSEXP_MSNFS);
    +#else
    + return 0;
    +#endif
    +}
    +
    static __be32
    nfsd_vfs_read(struct svc_rqst *rqstp, struct svc_fh *fhp, struct file *file,
    loff_t offset, struct kvec *vec, int vlen, unsigned long *count)
    @@ -877,11 +886,9 @@ nfsd_vfs_read(struct svc_rqst *rqstp, st

    err = nfserr_perm;
    inode = file->f_path.dentry->d_inode;
    -#ifdef MSNFS
    - if ((fhp->fh_export->ex_flags & NFSEXP_MSNFS) &&
    - (!lock_may_read(inode, offset, *count)))
    +
    + if (svc_msnfs(fhp) && !lock_may_read(inode, offset, *count))
    goto out;
    -#endif

    /* Get readahead parameters */
    ra = nfsd_get_raparms(inode->i_sb->s_dev, inode->i_ino);
    _
    -
    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-17 20:53    [W:0.021 / U:30.700 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site