Author: jhb
Date: Wed Jan 19 16:46:13 2011
New Revision: 217582
URL: http://svn.freebsd.org/changeset/base/217582

Log:
  Merge 118969 from UFS:
  Eliminate the i_devvp field from the incore inodes, we can get the same
  value from ip->i_ump->um_devvp.
  
  Submitted by: Pedro F. Giffuni  giffunip at yahoo
  MFC after:    1 week

Modified:
  head/sys/fs/ext2fs/ext2_subr.c
  head/sys/fs/ext2fs/ext2_vfsops.c
  head/sys/fs/ext2fs/inode.h

Modified: head/sys/fs/ext2fs/ext2_subr.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_subr.c      Wed Jan 19 15:43:54 2011        
(r217581)
+++ head/sys/fs/ext2fs/ext2_subr.c      Wed Jan 19 16:46:13 2011        
(r217582)
@@ -105,7 +105,7 @@ ext2_checkoverlap(bp, ip)
        for (ep = buf; ep < ebp; ep++) {
                if (ep == bp || (ep->b_flags & B_INVAL))
                        continue;
-               vp = ip->i_devvp;
+               vp = ip->i_ump->um_devvp;
                /* look for overlap */
                if (ep->b_bcount == 0 || ep->b_blkno > last ||
                    ep->b_blkno + btodb(ep->b_bcount) <= start)

Modified: head/sys/fs/ext2fs/ext2_vfsops.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_vfsops.c    Wed Jan 19 15:43:54 2011        
(r217581)
+++ head/sys/fs/ext2fs/ext2_vfsops.c    Wed Jan 19 16:46:13 2011        
(r217582)
@@ -945,9 +945,8 @@ ext2_vget(struct mount *mp, ino_t ino, i
        }
 
        /*
-        * Finish inode initialization now that aliasing has been resolved.
+        * Finish inode initialization.
         */
-       ip->i_devvp = ump->um_devvp;
 
        /*
         * Set up a generation number for this inode if it does not

Modified: head/sys/fs/ext2fs/inode.h
==============================================================================
--- head/sys/fs/ext2fs/inode.h  Wed Jan 19 15:43:54 2011        (r217581)
+++ head/sys/fs/ext2fs/inode.h  Wed Jan 19 16:46:13 2011        (r217582)
@@ -62,7 +62,6 @@
  */
 struct inode {
        struct  vnode  *i_vnode;/* Vnode associated with this inode. */
-       struct  vnode  *i_devvp;/* Vnode for block I/O. */
        struct  ext2mount *i_ump;
        u_int32_t i_flag;       /* flags, see below */
        ino_t     i_number;     /* The identity of the inode. */
@@ -143,6 +142,9 @@ struct inode {
 #define        IN_SPACECOUNTED 0x0080          /* Blocks to be freed in free 
count. */
 #define IN_LAZYACCESS   0x0100         /* Process IN_ACCESS after the
                                            suspension finished */
+
+#define i_devvp i_ump->um_devvp
+
 #ifdef _KERNEL
 /*
  * Structure used to pass around logical block paths generated by
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to