Lines Matching defs:dir
223 static void hfsplus_subfolders_inc(struct inode *dir)
225 struct hfsplus_sb_info *sbi = HFSPLUS_SB(dir->i_sb);
232 HFSPLUS_I(dir)->subfolders++;
236 static void hfsplus_subfolders_dec(struct inode *dir)
238 struct hfsplus_sb_info *sbi = HFSPLUS_SB(dir->i_sb);
248 if (HFSPLUS_I(dir)->subfolders)
249 HFSPLUS_I(dir)->subfolders--;
253 int hfsplus_create_cat(u32 cnid, struct inode *dir,
256 struct super_block *sb = dir->i_sb;
280 dir->i_ino, str);
296 err = hfsplus_cat_build_key(sb, fd.search_key, dir->i_ino, str);
312 dir->i_size++;
314 hfsplus_subfolders_inc(dir);
315 dir->i_mtime = inode_set_ctime_current(dir);
316 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY);
330 int hfsplus_delete_cat(u32 cnid, struct inode *dir, const struct qstr *str)
332 struct super_block *sb = dir->i_sb;
362 fd.search_key->cat.parent = cpu_to_be32(dir->i_ino);
371 err = hfsplus_cat_build_key(sb, fd.search_key, dir->i_ino, str);
395 spin_lock(&HFSPLUS_I(dir)->open_dir_lock);
396 list_for_each(pos, &HFSPLUS_I(dir)->open_dir_list) {
402 spin_unlock(&HFSPLUS_I(dir)->open_dir_lock);
417 dir->i_size--;
419 hfsplus_subfolders_dec(dir);
420 dir->i_mtime = inode_set_ctime_current(dir);
421 hfsplus_mark_inode_dirty(dir, HFSPLUS_I_CAT_DIRTY);
425 hfsplus_delete_all_attrs(dir, cnid);
460 /* find the old dir entry and read the data */
478 /* create new dir entry with the data from the old entry */