Fully update inode when created

When a new znode/inode pair is created both the znode and the inode
should be immediately updated to the correct values.  This was done
for the znode and for most of the values in the inode, but not all
of them.  This normally wasn't a problem because most subsequent
operations would cause the inode to be immediately updated.  This
change ensures the inode is now fully updated before it is inserted
in to the inode hash.

Closes #116
Closes #146
Closes #164
This commit is contained in:
Brian Behlendorf 2011-05-02 14:04:19 -07:00
parent df554c148e
commit 5f35b19007

View File

@ -373,8 +373,7 @@ zfs_znode_alloc(zfs_sb_t *zsb, dmu_buf_t *db, int blksz,
}
ip->i_ino = obj;
ip->i_mode = zp->z_mode;
ip->i_mtime = ip->i_atime = ip->i_ctime = CURRENT_TIME_SEC;
zfs_inode_update(zp);
zfs_inode_set_ops(zsb, ip);
if (insert_inode_locked(ip))