Lines Matching refs:de

151 static int dx_make_map(struct ext3_dir_entry_2 *de, unsigned blocksize,
258 static struct stats dx_show_leaf(struct dx_hash_info *hinfo, struct ext3_dir_entry_2 *de, in dx_show_leaf() argument
262 char *base = (char *) de; in dx_show_leaf()
266 while ((char *) de < base + size) in dx_show_leaf()
268 if (de->inode) in dx_show_leaf()
272 int len = de->name_len; in dx_show_leaf()
273 char *name = de->name; in dx_show_leaf()
275 ext3fs_dirhash(de->name, de->name_len, &h); in dx_show_leaf()
277 (unsigned) ((char *) de - base)); in dx_show_leaf()
279 space += EXT3_DIR_REC_LEN(de->name_len); in dx_show_leaf()
282 de = ext3_next_entry(de); in dx_show_leaf()
563 struct ext3_dir_entry_2 *de, *top; in htree_dirblock_to_tree() local
571 de = (struct ext3_dir_entry_2 *) bh->b_data; in htree_dirblock_to_tree()
572 top = (struct ext3_dir_entry_2 *) ((char *) de + in htree_dirblock_to_tree()
575 for (; de < top; de = ext3_next_entry(de)) { in htree_dirblock_to_tree()
576 if (!ext3_check_dir_entry("htree_dirblock_to_tree", dir, de, bh, in htree_dirblock_to_tree()
578 +((char *)de - bh->b_data))) { in htree_dirblock_to_tree()
582 ext3fs_dirhash(de->name, de->name_len, hinfo); in htree_dirblock_to_tree()
587 if (de->inode == 0) in htree_dirblock_to_tree()
590 hinfo->hash, hinfo->minor_hash, de)) != 0) { in htree_dirblock_to_tree()
613 struct ext3_dir_entry_2 *de; in ext3_htree_fill_tree() local
643 de = (struct ext3_dir_entry_2 *) frames[0].bh->b_data; in ext3_htree_fill_tree()
644 if ((err = ext3_htree_store_dirent(dir_file, 0, 0, de)) != 0) in ext3_htree_fill_tree()
649 de = (struct ext3_dir_entry_2 *) frames[0].bh->b_data; in ext3_htree_fill_tree()
650 de = ext3_next_entry(de); in ext3_htree_fill_tree()
651 if ((err = ext3_htree_store_dirent(dir_file, 2, 0, de)) != 0) in ext3_htree_fill_tree()
700 static int dx_make_map(struct ext3_dir_entry_2 *de, unsigned blocksize, in dx_make_map() argument
704 char *base = (char *) de; in dx_make_map()
707 while ((char *) de < base + blocksize) in dx_make_map()
709 if (de->name_len && de->inode) { in dx_make_map()
710 ext3fs_dirhash(de->name, de->name_len, &h); in dx_make_map()
713 map_tail->offs = (u16) ((char *) de - base); in dx_make_map()
714 map_tail->size = le16_to_cpu(de->rec_len); in dx_make_map()
719 de = ext3_next_entry(de); in dx_make_map()
781 struct ext3_dir_entry_2 * de) in ext3_match() argument
783 if (len != de->name_len) in ext3_match()
785 if (!de->inode) in ext3_match()
787 return !memcmp(name, de->name, len); in ext3_match()
799 struct ext3_dir_entry_2 * de; in search_dirblock() local
805 de = (struct ext3_dir_entry_2 *) bh->b_data; in search_dirblock()
807 while ((char *) de < dlimit) { in search_dirblock()
811 if ((char *) de + namelen <= dlimit && in search_dirblock()
812 ext3_match (namelen, name, de)) { in search_dirblock()
815 dir, de, bh, offset)) in search_dirblock()
817 *res_dir = de; in search_dirblock()
821 de_len = ext3_rec_len_from_disk(de->rec_len); in search_dirblock()
825 de = (struct ext3_dir_entry_2 *) ((char *) de + de_len); in search_dirblock()
1017 struct ext3_dir_entry_2 * de; in ext3_lookup() local
1023 bh = ext3_find_entry(dir, &dentry->d_name, &de); in ext3_lookup()
1026 unsigned long ino = le32_to_cpu(de->inode); in ext3_lookup()
1049 struct ext3_dir_entry_2 * de; in ext3_get_parent() local
1052 bh = ext3_find_entry(d_inode(child), &dotdot, &de); in ext3_get_parent()
1055 ino = le32_to_cpu(de->inode); in ext3_get_parent()
1079 struct ext3_dir_entry_2 *de, in ext3_set_de_type() argument
1082 de->file_type = ext3_type_by_mode[(mode & S_IFMT)>>S_SHIFT]; in ext3_set_de_type()
1095 struct ext3_dir_entry_2 *de = (struct ext3_dir_entry_2 *) (from + map->offs); in dx_move_dirents() local
1096 rec_len = EXT3_DIR_REC_LEN(de->name_len); in dx_move_dirents()
1097 memcpy (to, de, rec_len); in dx_move_dirents()
1100 de->inode = 0; in dx_move_dirents()
1114 struct ext3_dir_entry_2 *de = (struct ext3_dir_entry_2 *)base; in dx_pack_dirents() local
1117 prev = to = de; in dx_pack_dirents()
1118 while ((char *)de < base + blocksize) { in dx_pack_dirents()
1119 next = ext3_next_entry(de); in dx_pack_dirents()
1120 if (de->inode && de->name_len) { in dx_pack_dirents()
1121 rec_len = EXT3_DIR_REC_LEN(de->name_len); in dx_pack_dirents()
1122 if (de > to) in dx_pack_dirents()
1123 memmove(to, de, rec_len); in dx_pack_dirents()
1128 de = next; in dx_pack_dirents()
1150 struct ext3_dir_entry_2 *de = NULL, *de2; in do_split() local
1197 de = dx_pack_dirents(data1,blocksize); in do_split()
1198 de->rec_len = ext3_rec_len_to_disk(data1 + blocksize - (char *) de); in do_split()
1207 de = de2; in do_split()
1218 return de; in do_split()
1243 struct inode *inode, struct ext3_dir_entry_2 *de, in add_dirent_to_buf() argument
1255 if (!de) { in add_dirent_to_buf()
1256 de = (struct ext3_dir_entry_2 *)bh->b_data; in add_dirent_to_buf()
1258 while ((char *) de <= top) { in add_dirent_to_buf()
1259 if (!ext3_check_dir_entry("ext3_add_entry", dir, de, in add_dirent_to_buf()
1264 if (ext3_match (namelen, name, de)) { in add_dirent_to_buf()
1268 nlen = EXT3_DIR_REC_LEN(de->name_len); in add_dirent_to_buf()
1269 rlen = ext3_rec_len_from_disk(de->rec_len); in add_dirent_to_buf()
1270 if ((de->inode? rlen - nlen: rlen) >= reclen) in add_dirent_to_buf()
1272 de = (struct ext3_dir_entry_2 *)((char *)de + rlen); in add_dirent_to_buf()
1275 if ((char *) de > top) in add_dirent_to_buf()
1287 nlen = EXT3_DIR_REC_LEN(de->name_len); in add_dirent_to_buf()
1288 rlen = ext3_rec_len_from_disk(de->rec_len); in add_dirent_to_buf()
1289 if (de->inode) { in add_dirent_to_buf()
1290 struct ext3_dir_entry_2 *de1 = (struct ext3_dir_entry_2 *)((char *)de + nlen); in add_dirent_to_buf()
1292 de->rec_len = ext3_rec_len_to_disk(nlen); in add_dirent_to_buf()
1293 de = de1; in add_dirent_to_buf()
1295 de->file_type = EXT3_FT_UNKNOWN; in add_dirent_to_buf()
1297 de->inode = cpu_to_le32(inode->i_ino); in add_dirent_to_buf()
1298 ext3_set_de_type(dir->i_sb, de, inode->i_mode); in add_dirent_to_buf()
1300 de->inode = 0; in add_dirent_to_buf()
1301 de->name_len = namelen; in add_dirent_to_buf()
1302 memcpy (de->name, name, namelen); in add_dirent_to_buf()
1340 struct ext3_dir_entry_2 *de, *de2; in make_indexed_dir() local
1361 de = (struct ext3_dir_entry_2 *)((char *)fde + in make_indexed_dir()
1363 if ((char *) de >= (((char *) root) + blocksize)) { in make_indexed_dir()
1370 len = ((char *) root) + blocksize - (char *) de; in make_indexed_dir()
1380 memcpy (data1, de, len); in make_indexed_dir()
1381 de = (struct ext3_dir_entry_2 *) data1; in make_indexed_dir()
1383 while ((char *)(de2 = ext3_next_entry(de)) < top) in make_indexed_dir()
1384 de = de2; in make_indexed_dir()
1385 de->rec_len = ext3_rec_len_to_disk(data1 + blocksize - (char *) de); in make_indexed_dir()
1387 de = (struct ext3_dir_entry_2 *) (&root->dotdot); in make_indexed_dir()
1388 de->rec_len = ext3_rec_len_to_disk(blocksize - EXT3_DIR_REC_LEN(2)); in make_indexed_dir()
1414 de = do_split(handle,dir, &bh, frame, &hinfo, &retval); in make_indexed_dir()
1415 if (!de) { in make_indexed_dir()
1422 return add_dirent_to_buf(handle, dentry, inode, de, bh); in make_indexed_dir()
1440 struct ext3_dir_entry_2 *de; in ext3_add_entry() local
1476 de = (struct ext3_dir_entry_2 *) bh->b_data; in ext3_add_entry()
1477 de->inode = 0; in ext3_add_entry()
1478 de->rec_len = ext3_rec_len_to_disk(blocksize); in ext3_add_entry()
1479 return add_dirent_to_buf(handle, dentry, inode, de, bh); in ext3_add_entry()
1494 struct ext3_dir_entry_2 *de; in ext3_dx_add_entry() local
1603 de = do_split(handle, dir, &bh, frame, &hinfo, &err); in ext3_dx_add_entry()
1604 if (!de) in ext3_dx_add_entry()
1606 err = add_dirent_to_buf(handle, dentry, inode, de, bh); in ext3_dx_add_entry()
1628 struct ext3_dir_entry_2 * de, * pde; in ext3_delete_entry() local
1633 de = (struct ext3_dir_entry_2 *) bh->b_data; in ext3_delete_entry()
1635 if (!ext3_check_dir_entry("ext3_delete_entry", dir, de, bh, i)) in ext3_delete_entry()
1637 if (de == de_del) { in ext3_delete_entry()
1648 ext3_rec_len_from_disk(de->rec_len)); in ext3_delete_entry()
1650 de->inode = 0; in ext3_delete_entry()
1661 i += ext3_rec_len_from_disk(de->rec_len); in ext3_delete_entry()
1662 pde = de; in ext3_delete_entry()
1663 de = ext3_next_entry(de); in ext3_delete_entry()
1805 struct ext3_dir_entry_2 * de; in ext3_mkdir() local
1839 de = (struct ext3_dir_entry_2 *) dir_block->b_data; in ext3_mkdir()
1840 de->inode = cpu_to_le32(inode->i_ino); in ext3_mkdir()
1841 de->name_len = 1; in ext3_mkdir()
1842 de->rec_len = ext3_rec_len_to_disk(EXT3_DIR_REC_LEN(de->name_len)); in ext3_mkdir()
1843 strcpy (de->name, "."); in ext3_mkdir()
1844 ext3_set_de_type(dir->i_sb, de, S_IFDIR); in ext3_mkdir()
1845 de = ext3_next_entry(de); in ext3_mkdir()
1846 de->inode = cpu_to_le32(dir->i_ino); in ext3_mkdir()
1847 de->rec_len = ext3_rec_len_to_disk(inode->i_sb->s_blocksize - in ext3_mkdir()
1849 de->name_len = 2; in ext3_mkdir()
1850 strcpy (de->name, ".."); in ext3_mkdir()
1851 ext3_set_de_type(dir->i_sb, de, S_IFDIR); in ext3_mkdir()
1893 struct ext3_dir_entry_2 * de, * de1; in empty_dir() local
1910 de = (struct ext3_dir_entry_2 *) bh->b_data; in empty_dir()
1911 de1 = ext3_next_entry(de); in empty_dir()
1912 if (le32_to_cpu(de->inode) != inode->i_ino || in empty_dir()
1914 strcmp (".", de->name) || in empty_dir()
1922 offset = ext3_rec_len_from_disk(de->rec_len) + in empty_dir()
1924 de = ext3_next_entry(de1); in empty_dir()
1927 (void *) de >= (void *) (bh->b_data+sb->s_blocksize)) { in empty_dir()
1940 de = (struct ext3_dir_entry_2 *) bh->b_data; in empty_dir()
1942 if (!ext3_check_dir_entry("empty_dir", inode, de, bh, offset)) { in empty_dir()
1943 de = (struct ext3_dir_entry_2 *)(bh->b_data + in empty_dir()
1948 if (le32_to_cpu(de->inode)) { in empty_dir()
1952 offset += ext3_rec_len_from_disk(de->rec_len); in empty_dir()
1953 de = ext3_next_entry(de); in empty_dir()
2108 struct ext3_dir_entry_2 * de; in ext3_rmdir() local
2121 bh = ext3_find_entry(dir, &dentry->d_name, &de); in ext3_rmdir()
2131 if (le32_to_cpu(de->inode) != inode->i_ino) in ext3_rmdir()
2138 retval = ext3_delete_entry(handle, dir, de, bh); in ext3_rmdir()
2169 struct ext3_dir_entry_2 * de; in ext3_unlink() local
2186 bh = ext3_find_entry(dir, &dentry->d_name, &de); in ext3_unlink()
2193 if (le32_to_cpu(de->inode) != inode->i_ino) in ext3_unlink()
2202 retval = ext3_delete_entry(handle, dir, de, bh); in ext3_unlink()