Lines Matching defs:inode
29 void udf_free_inode(struct inode *inode)
31 struct super_block *sb = inode->i_sb;
37 if (S_ISDIR(inode->i_mode))
45 udf_free_blocks(sb, NULL, &UDF_I(inode)->i_location, 0, 1);
48 struct inode *udf_new_inode(struct inode *dir, umode_t mode)
52 struct inode *inode;
60 inode = new_inode(sb);
62 if (!inode)
65 iinfo = UDF_I(inode);
66 if (UDF_QUERY_FLAG(inode->i_sb, UDF_FLAG_USE_EXTENDED_FE)) {
70 iinfo->i_data = kzalloc(inode->i_sb->s_blocksize -
75 iinfo->i_data = kzalloc(inode->i_sb->s_blocksize -
80 make_bad_inode(inode);
81 iput(inode);
90 make_bad_inode(inode);
91 iput(inode);
98 inode->i_generation = iinfo->i_unique;
108 inode_init_owner(inode, dir, mode);
110 inode->i_uid = sbi->s_uid;
112 inode->i_gid = sbi->s_gid;
117 inode->i_ino = udf_get_lb_pblock(sb, &iinfo->i_location, 0);
118 inode->i_blocks = 0;
124 udf_update_extra_perms(inode, mode);
126 if (UDF_QUERY_FLAG(inode->i_sb, UDF_FLAG_USE_AD_IN_ICB))
128 else if (UDF_QUERY_FLAG(inode->i_sb, UDF_FLAG_USE_SHORT_AD))
132 inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
133 iinfo->i_crtime = inode->i_mtime;
134 if (unlikely(insert_inode_locked(inode) < 0)) {
135 make_bad_inode(inode);
136 iput(inode);
139 mark_inode_dirty(inode);
141 return inode;