From: Dave Hansen Date: Wed, 17 Oct 2007 06:31:14 +0000 (-0700) Subject: r/o bind mounts: give permission() a local 'mnt' variable X-Git-Tag: v2.6.24-rc1~527 X-Git-Url: http://www.pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=c7eb26678e59f16f4e84f1176d187cd21a27414d;p=linux-2.6-omap-h63xx.git r/o bind mounts: give permission() a local 'mnt' variable First of all, this makes the structure jumping look a little bit cleaner. So, this stands alone as a tiny cleanup. But, we also need 'mnt' by itself a few more times later in this series, so this isn't _just_ a cleanup. Signed-off-by: Dave Hansen Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/fs/namei.c b/fs/namei.c index a29bb0f40ed..464eeccb675 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -228,6 +228,10 @@ int generic_permission(struct inode *inode, int mask, int permission(struct inode *inode, int mask, struct nameidata *nd) { int retval, submask; + struct vfsmount *mnt = NULL; + + if (nd) + mnt = nd->mnt; if (mask & MAY_WRITE) { umode_t mode = inode->i_mode; @@ -251,7 +255,7 @@ int permission(struct inode *inode, int mask, struct nameidata *nd) * MAY_EXEC on regular files is denied if the fs is mounted * with the "noexec" flag. */ - if (nd && nd->mnt && (nd->mnt->mnt_flags & MNT_NOEXEC)) + if (mnt && (mnt->mnt_flags & MNT_NOEXEC)) return -EACCES; }