[BACK]Return to inode.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / ufs / ufs

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/ufs/ufs/inode.h between version 1.51.6.2 and 1.52

version 1.51.6.2, 2009/01/17 13:29:42 version 1.52, 2008/07/31 05:38:06
Line 37 
Line 37 
  */   */
   
 #ifndef _UFS_UFS_INODE_H_  #ifndef _UFS_UFS_INODE_H_
 #define _UFS_UFS_INODE_H_  #define _UFS_UFS_INODE_H_
   
 #include <sys/vnode.h>  #include <sys/vnode.h>
 #include <ufs/ufs/dinode.h>  #include <ufs/ufs/dinode.h>
Line 52 
Line 52 
 struct ffs_inode_ext {  struct ffs_inode_ext {
         daddr_t *ffs_snapblklist;       /* Collect expunged snapshot blocks. */          daddr_t *ffs_snapblklist;       /* Collect expunged snapshot blocks. */
         /* follow two fields are used by contiguous allocation code only. */          /* follow two fields are used by contiguous allocation code only. */
         daddr_t ffs_first_data_blk;     /* first data block on disk. */          daddr_t ffs_first_data_blk;     /* first indirect block on disk. */
         daddr_t ffs_first_indir_blk;    /* first indirect block on disk. */          daddr_t ffs_first_indir_blk;    /* first data block on disk. */
 };  };
   
 struct ext2fs_inode_ext {  struct ext2fs_inode_ext {
Line 164  struct inode {
Line 164  struct inode {
 #define i_ffs1_rdev             i_din.ffs1_din->di_rdev  #define i_ffs1_rdev             i_din.ffs1_din->di_rdev
 #define i_ffs1_size             i_din.ffs1_din->di_size  #define i_ffs1_size             i_din.ffs1_din->di_size
 #define i_ffs1_uid              i_din.ffs1_din->di_uid  #define i_ffs1_uid              i_din.ffs1_din->di_uid
 #define i_ffs1_ouid             i_din.ffs1_din->di_u.oldids[0]  #define i_ffs1_ouid             i_din.ffs1_din->di_u.oldids[0]
 #define i_ffs1_ogid             i_din.ffs1_din->di_u.oldids[1]  #define i_ffs1_ogid             i_din.ffs1_din->di_u.oldids[1]
   
 #define i_ffs2_atime            i_din.ffs2_din->di_atime  #define i_ffs2_atime            i_din.ffs2_din->di_atime
 #define i_ffs2_atimensec        i_din.ffs2_din->di_atimensec  #define i_ffs2_atimensec        i_din.ffs2_din->di_atimensec
 #define i_ffs2_birthtime        i_din.ffs2_din->di_birthtime  #define i_ffs2_birthtime        i_din.ffs2_din->di_birthtime
 #define i_ffs2_birthnsec        i_din.ffs2_din->di_birthnsec  #define i_ffs2_birthnsec        i_din.ffs2_din->di_birthnsec
 #define i_ffs2_blocks           i_din.ffs2_din->di_blocks  #define i_ffs2_blocks           i_din.ffs2_din->di_blocks
 #define i_ffs2_blksize          i_din.ffs2_din->di_blksize  #define i_ffs2_blksize          i_din.ffs2_din->di_blksize
 #define i_ffs2_ctime            i_din.ffs2_din->di_ctime  #define i_ffs2_ctime            i_din.ffs2_din->di_ctime
 #define i_ffs2_ctimensec        i_din.ffs2_din->di_ctimensec  #define i_ffs2_ctimensec        i_din.ffs2_din->di_ctimensec
 #define i_ffs2_db               i_din.ffs2_din->di_db  #define i_ffs2_db               i_din.ffs2_din->di_db
Line 187  struct inode {
Line 187  struct inode {
 #define i_ffs2_rdev             i_din.ffs2_din->di_rdev  #define i_ffs2_rdev             i_din.ffs2_din->di_rdev
 #define i_ffs2_size             i_din.ffs2_din->di_size  #define i_ffs2_size             i_din.ffs2_din->di_size
 #define i_ffs2_uid              i_din.ffs2_din->di_uid  #define i_ffs2_uid              i_din.ffs2_din->di_uid
 #define i_ffs2_kernflags        i_din.ffs2_din->di_kernflags  #define i_ffs2_kernflags        i_din.ffs2_din->di_kernflags
 #define i_ffs2_extsize          i_din.ffs2_din->di_extsize  #define i_ffs2_extsize          i_din.ffs2_din->di_extsize
 #define i_ffs2_extb             i_din.ffs2_din->di_extb  #define i_ffs2_extb             i_din.ffs2_din->di_extb
   
 #define i_e2fs_mode             i_din.e2fs_din->e2di_mode  #define i_e2fs_mode             i_din.e2fs_din->e2di_mode
 #define i_e2fs_uid              i_din.e2fs_din->e2di_uid  #define i_e2fs_uid              i_din.e2fs_din->e2di_uid
Line 210  struct inode {
Line 210  struct inode {
 #define i_e2fs_nfrag            i_din.e2fs_din->e2di_nfrag  #define i_e2fs_nfrag            i_din.e2fs_din->e2di_nfrag
 #define i_e2fs_fsize            i_din.e2fs_din->e2di_fsize  #define i_e2fs_fsize            i_din.e2fs_din->e2di_fsize
 #define i_e2fs_rdev             i_din.e2fs_din->e2di_rdev  #define i_e2fs_rdev             i_din.e2fs_din->e2di_rdev
 #define i_e2fs_uid_high         i_din.e2fs_din->e2di_uid_high  
 #define i_e2fs_gid_high         i_din.e2fs_din->e2di_gid_high  
   
 /* These flags are kept in i_flag. */  /* These flags are kept in i_flag. */
 #define IN_ACCESS       0x0001          /* Access time update request. */  #define IN_ACCESS       0x0001          /* Access time update request. */
Line 225  struct inode {
Line 223  struct inode {
 #define IN_EXLOCK       0x0080          /* File has exclusive lock. */  #define IN_EXLOCK       0x0080          /* File has exclusive lock. */
 #define IN_CLEANING     0x0100          /* LFS: file is being cleaned */  #define IN_CLEANING     0x0100          /* LFS: file is being cleaned */
 #define IN_ADIROP       0x0200          /* LFS: dirop in progress */  #define IN_ADIROP       0x0200          /* LFS: dirop in progress */
 #define IN_SPACECOUNTED 0x0400          /* Blocks to be freed in free count. */  #define IN_SPACECOUNTED 0x0400          /* Blocks to be freed in free count. */
 #define IN_PAGING       0x1000          /* LFS: file is on paging queue */  #define IN_PAGING       0x1000          /* LFS: file is on paging queue */
   
 #if defined(_KERNEL)  #if defined(_KERNEL)
   
Line 234  struct inode {
Line 232  struct inode {
  * The DIP macro is used to access fields in the dinode that are   * The DIP macro is used to access fields in the dinode that are
  * not cached in the inode itself.   * not cached in the inode itself.
  */   */
 #define DIP(ip, field) \  #define DIP(ip, field) \
         (((ip)->i_ump->um_fstype == UFS1) ? \          (((ip)->i_ump->um_fstype == UFS1) ? \
         (ip)->i_ffs1_##field : (ip)->i_ffs2_##field)          (ip)->i_ffs1_##field : (ip)->i_ffs2_##field)
   
 #define DIP_ASSIGN(ip, field, value)                                    \  #define DIP_ASSIGN(ip, field, value)                                    \
         do {                                                            \          do {                                                            \
                 if ((ip)->i_ump->um_fstype == UFS1)                     \                  if ((ip)->i_ump->um_fstype == UFS1)                     \
                         (ip)->i_ffs1_##field = (value);                 \                          (ip)->i_ffs1_##field = (value);                 \
Line 246  struct inode {
Line 244  struct inode {
                         (ip)->i_ffs2_##field = (value);                 \                          (ip)->i_ffs2_##field = (value);                 \
         } while(0)          } while(0)
   
 #define DIP_ADD(ip, field, value)                                       \  #define DIP_ADD(ip, field, value)                                       \
         do {                                                            \          do {                                                            \
                 if ((ip)->i_ump->um_fstype == UFS1)                     \                  if ((ip)->i_ump->um_fstype == UFS1)                     \
                         (ip)->i_ffs1_##field += (value);                \                          (ip)->i_ffs1_##field += (value);                \
Line 254  struct inode {
Line 252  struct inode {
                         (ip)->i_ffs2_##field += (value);                \                          (ip)->i_ffs2_##field += (value);                \
         } while(0)          } while(0)
   
 #define  SHORTLINK(ip) \  #define  SHORTLINK(ip) \
         (((ip)->i_ump->um_fstype == UFS1) ? \          (((ip)->i_ump->um_fstype == UFS1) ? \
         (void *)(ip)->i_ffs1_db : (void *)(ip)->i_ffs2_db)          (void *)(ip)->i_ffs1_db : (void *)(ip)->i_ffs2_db)
   

Legend:
Removed from v.1.51.6.2  
changed lines
  Added in v.1.52

CVSweb <webmaster@jp.NetBSD.org>