rpms/kernel/devel linux-2.6-inode-diet-xfs.patch, NONE, 1.1 kernel-2.6.spec, 1.2701, 1.2702

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Wed Sep 27 18:17:16 UTC 2006


Author: davej

Update of /cvs/dist/rpms/kernel/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv6326

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6-inode-diet-xfs.patch 
Log Message:
Fix a problem with XFS & the inode diet patches.

linux-2.6-inode-diet-xfs.patch:
 xfs_iops.c |   25 ++++++++++++++++++++-----
 1 files changed, 20 insertions(+), 5 deletions(-)

--- NEW FILE linux-2.6-inode-diet-xfs.patch ---
--- linux-2.6-xfs/fs/xfs/linux-2.6/xfs_iops.c	2006/06/26 06:05:23	1.253
+++ linux-2.6-xfs/fs/xfs/linux-2.6/xfs_iops.c	2006/08/04 13:24:23	1.254
@@ -623,12 +623,27 @@ xfs_vn_getattr(
 {
 	struct inode	*inode = dentry->d_inode;
 	bhv_vnode_t	*vp = vn_from_inode(inode);
-	int		error = 0;
+	bhv_vattr_t	vattr = { .va_mask = XFS_AT_STAT };
+	int		error;
 
-	if (unlikely(vp->v_flag & VMODIFIED))
-		error = vn_revalidate(vp);
-	if (!error)
-		generic_fillattr(inode, stat);
+	error = bhv_vop_getattr(vp, &vattr, ATTR_LAZY, NULL);
+	if (likely(!error)) {
+		stat->size = i_size_read(inode);
+		stat->dev = inode->i_sb->s_dev;
+		stat->rdev = (vattr.va_rdev == 0) ? 0 :
+				MKDEV(sysv_major(vattr.va_rdev) & 0x1ff,
+				      sysv_minor(vattr.va_rdev));
+		stat->mode = vattr.va_mode;
+		stat->nlink = vattr.va_nlink;
+		stat->uid = vattr.va_uid;
+		stat->gid = vattr.va_gid;
+		stat->ino = vattr.va_nodeid;
+		stat->atime = vattr.va_atime;
+		stat->mtime = vattr.va_mtime;
+		stat->ctime = vattr.va_ctime;
+		stat->blocks = vattr.va_nblocks;
+		stat->blksize = vattr.va_blocksize;
+	}
 	return -error;
 }
 


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.2701
retrieving revision 1.2702
diff -u -r1.2701 -r1.2702
--- kernel-2.6.spec	27 Sep 2006 18:04:20 -0000	1.2701
+++ kernel-2.6.spec	27 Sep 2006 18:17:14 -0000	1.2702
@@ -439,6 +439,7 @@
 Patch1423: linux-2.6-inode-diet-move-i_cdev-into-a-union.patch
 Patch1424: linux-2.6-inode-diet-eliminate-i_blksize-and-use-a-per-superblock-default.patch
 Patch1425: linux-2.6-inode-diet-squashfs.patch
+Patch1426: linux-2.6-inode-diet-xfs.patch
 
 # NFS superblock sharing / CacheFS
 Patch1430: linux-2.6-nfs-superblock-sharing.patch
@@ -1004,6 +1005,7 @@
 %patch1423 -p1
 %patch1424 -p1
 %patch1425 -p1
+%patch1426 -p1
 
 #nfs sharing / cachefs
 %patch1430 -p1
@@ -1923,6 +1925,7 @@
 %changelog
 * Wed Sep 27 2006 Dave Jones <davej at redhat.com>
 - yet more lockdep fixes.
+- Fix a problem with XFS & the inode diet patches.
 
 * Tue Sep 26 2006 Dave Jones <davej at redhat.com>
 - Enable serverworks IDE driver for x86-64.




More information about the fedora-cvs-commits mailing list