From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dmitry Monakhov Subject: [PATCH 09/19] jfs: replace inode uid,gid,mode init with helper v2 Date: Thu, 18 Feb 2010 10:12:13 +0300 Message-ID: <87fx4z9fw2.fsf_-_@openvz.org> References: <1266431353-8549-1-git-send-email-dmonakhov@openvz.org> <1266432066-9298-1-git-send-email-dmonakhov@openvz.org> <1266443832.10249.18.camel@norville.austin.ibm.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Cc: linux-fsdevel@vger.kernel.org, jfs-discussion@lists.sourceforge.net To: Dave Kleikamp Return-path: Received: from mail-fx0-f220.google.com ([209.85.220.220]:44346 "EHLO mail-fx0-f220.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751867Ab0BRHMR (ORCPT ); Thu, 18 Feb 2010 02:12:17 -0500 Received: by fxm20 with SMTP id 20so8623107fxm.21 for ; Wed, 17 Feb 2010 23:12:15 -0800 (PST) In-Reply-To: <1266443832.10249.18.camel@norville.austin.ibm.com> (Dave Kleikamp's message of "Wed, 17 Feb 2010 15:57:12 -0600") Sender: linux-fsdevel-owner@vger.kernel.org List-ID: --=-=-= Dave Kleikamp writes: > Acked-by: Dave Kleikamp > > One minor nit though. jfs maintains jfs_inode->mode2 which is a > superset of inode->i_mode. Since inode_init_owner() may set S_ISGID, > the following change should also be made. (I don't think these > duplicate bits in mode2 are really important, but we may as well be > consistent.) Folded in to one patch. --=-=-= Content-Disposition: inline; filename=0009-jfs-replace-inode-uid-gid-mode-init-with-helper-v2.patch >>From fae29b54bd3735a9723499bc6110c533089b79fe Mon Sep 17 00:00:00 2001 From: Dmitry Monakhov Date: Thu, 18 Feb 2010 09:43:31 +0300 Subject: [PATCH 09/19] jfs: replace inode uid,gid,mode init with helper v2 Signed-off-by: Dmitry Monakhov --- fs/jfs/jfs_inode.c | 12 ++---------- 1 files changed, 2 insertions(+), 10 deletions(-) diff --git a/fs/jfs/jfs_inode.c b/fs/jfs/jfs_inode.c index dc0e021..705646d 100644 --- a/fs/jfs/jfs_inode.c +++ b/fs/jfs/jfs_inode.c @@ -98,14 +98,7 @@ struct inode *ialloc(struct inode *parent, umode_t mode) goto fail_unlock; } - inode->i_uid = current_fsuid(); - if (parent->i_mode & S_ISGID) { - inode->i_gid = parent->i_gid; - if (S_ISDIR(mode)) - mode |= S_ISGID; - } else - inode->i_gid = current_fsgid(); - + inode_init_owner(inode, parent, mode); /* * New inodes need to save sane values on disk when * uid & gid mount options are used @@ -121,7 +114,6 @@ struct inode *ialloc(struct inode *parent, umode_t mode) goto fail_drop; } - inode->i_mode = mode; /* inherit flags from parent */ jfs_inode->mode2 = JFS_IP(parent)->mode2 & JFS_FL_INHERIT; @@ -134,7 +126,7 @@ struct inode *ialloc(struct inode *parent, umode_t mode) if (S_ISLNK(mode)) jfs_inode->mode2 &= ~(JFS_IMMUTABLE_FL|JFS_APPEND_FL); } - jfs_inode->mode2 |= mode; + jfs_inode->mode2 |= inode->i_mode; inode->i_blocks = 0; inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME; -- 1.6.6 --=-=-=--