Lines Matching refs:de

217 					struct ext2_dir_entry_2 * de)  in ext2_match()  argument
219 if (len != de->name_len) in ext2_match()
221 if (!de->inode) in ext2_match()
223 return !memcmp(name, de->name, len); in ext2_match()
238 ext2_dirent *de = (ext2_dirent*)(base + offset); in ext2_validate_entry() local
240 while ((char*)p < (char*)de) { in ext2_validate_entry()
248 static inline void ext2_set_de_type(ext2_dirent *de, struct inode *inode) in ext2_set_de_type() argument
251 de->file_type = fs_umode_to_ftype(inode->i_mode); in ext2_set_de_type()
253 de->file_type = 0; in ext2_set_de_type()
276 ext2_dirent *de; in ext2_readdir() local
296 de = (ext2_dirent *)(kaddr+offset); in ext2_readdir()
298 for ( ;(char*)de <= limit; de = ext2_next_entry(de)) { in ext2_readdir()
299 if (de->rec_len == 0) { in ext2_readdir()
302 ext2_put_page(page, de); in ext2_readdir()
305 if (de->inode) { in ext2_readdir()
309 d_type = fs_ftype_to_dtype(de->file_type); in ext2_readdir()
311 if (!dir_emit(ctx, de->name, de->name_len, in ext2_readdir()
312 le32_to_cpu(de->inode), in ext2_readdir()
314 ext2_put_page(page, de); in ext2_readdir()
318 ctx->pos += ext2_rec_len_from_disk(de->rec_len); in ext2_readdir()
351 ext2_dirent * de; in ext2_find_entry() local
368 de = (ext2_dirent *) kaddr; in ext2_find_entry()
370 while ((char *) de <= kaddr) { in ext2_find_entry()
371 if (de->rec_len == 0) { in ext2_find_entry()
374 ext2_put_page(page, de); in ext2_find_entry()
377 if (ext2_match(namelen, name, de)) in ext2_find_entry()
379 de = ext2_next_entry(de); in ext2_find_entry()
400 return de; in ext2_find_entry()
417 ext2_dirent *de = ext2_get_page(dir, 0, 0, p); in ext2_dotdot() local
419 if (!IS_ERR(de)) in ext2_dotdot()
420 return ext2_next_entry(de); in ext2_dotdot()
426 struct ext2_dir_entry_2 *de; in ext2_inode_by_name() local
429 de = ext2_find_entry(dir, child, &page); in ext2_inode_by_name()
430 if (IS_ERR(de)) in ext2_inode_by_name()
431 return PTR_ERR(de); in ext2_inode_by_name()
433 *ino = le32_to_cpu(de->inode); in ext2_inode_by_name()
434 ext2_put_page(page, de); in ext2_inode_by_name()
454 int ext2_set_link(struct inode *dir, struct ext2_dir_entry_2 *de, in ext2_set_link() argument
457 loff_t pos = page_offset(page) + offset_in_page(de); in ext2_set_link()
458 unsigned len = ext2_rec_len_from_disk(de->rec_len); in ext2_set_link()
467 de->inode = cpu_to_le32(inode->i_ino); in ext2_set_link()
468 ext2_set_de_type(de, inode); in ext2_set_link()
489 ext2_dirent * de; in ext2_add_link() local
508 de = (ext2_dirent *)kaddr; in ext2_add_link()
510 while ((char *)de <= kaddr) { in ext2_add_link()
511 if ((char *)de == dir_end) { in ext2_add_link()
515 de->rec_len = ext2_rec_len_to_disk(chunk_size); in ext2_add_link()
516 de->inode = 0; in ext2_add_link()
519 if (de->rec_len == 0) { in ext2_add_link()
526 if (ext2_match (namelen, name, de)) in ext2_add_link()
528 name_len = EXT2_DIR_REC_LEN(de->name_len); in ext2_add_link()
529 rec_len = ext2_rec_len_from_disk(de->rec_len); in ext2_add_link()
530 if (!de->inode && rec_len >= reclen) in ext2_add_link()
534 de = (ext2_dirent *) ((char *) de + rec_len); in ext2_add_link()
543 pos = page_offset(page) + offset_in_page(de); in ext2_add_link()
547 if (de->inode) { in ext2_add_link()
548 ext2_dirent *de1 = (ext2_dirent *) ((char *) de + name_len); in ext2_add_link()
550 de->rec_len = ext2_rec_len_to_disk(name_len); in ext2_add_link()
551 de = de1; in ext2_add_link()
553 de->name_len = namelen; in ext2_add_link()
554 memcpy(de->name, name, namelen); in ext2_add_link()
555 de->inode = cpu_to_le32(inode->i_ino); in ext2_add_link()
556 ext2_set_de_type (de, inode); in ext2_add_link()
564 ext2_put_page(page, de); in ext2_add_link()
584 ext2_dirent *de = (ext2_dirent *)(kaddr + from); in ext2_delete_entry() local
587 while ((char*)de < (char*)dir) { in ext2_delete_entry()
588 if (de->rec_len == 0) { in ext2_delete_entry()
593 pde = de; in ext2_delete_entry()
594 de = ext2_next_entry(de); in ext2_delete_entry()
622 struct ext2_dir_entry_2 * de; in ext2_make_empty() local
636 de = (struct ext2_dir_entry_2 *)kaddr; in ext2_make_empty()
637 de->name_len = 1; in ext2_make_empty()
638 de->rec_len = ext2_rec_len_to_disk(EXT2_DIR_REC_LEN(1)); in ext2_make_empty()
639 memcpy (de->name, ".\0\0", 4); in ext2_make_empty()
640 de->inode = cpu_to_le32(inode->i_ino); in ext2_make_empty()
641 ext2_set_de_type (de, inode); in ext2_make_empty()
643 de = (struct ext2_dir_entry_2 *)(kaddr + EXT2_DIR_REC_LEN(1)); in ext2_make_empty()
644 de->name_len = 2; in ext2_make_empty()
645 de->rec_len = ext2_rec_len_to_disk(chunk_size - EXT2_DIR_REC_LEN(1)); in ext2_make_empty()
646 de->inode = cpu_to_le32(parent->i_ino); in ext2_make_empty()
647 memcpy (de->name, "..\0", 4); in ext2_make_empty()
648 ext2_set_de_type (de, inode); in ext2_make_empty()
667 ext2_dirent *de; in ext2_empty_dir() local
673 de = (ext2_dirent *)kaddr; in ext2_empty_dir()
676 while ((char *)de <= kaddr) { in ext2_empty_dir()
677 if (de->rec_len == 0) { in ext2_empty_dir()
680 printk("kaddr=%p, de=%p\n", kaddr, de); in ext2_empty_dir()
683 if (de->inode != 0) { in ext2_empty_dir()
685 if (de->name[0] != '.') in ext2_empty_dir()
687 if (de->name_len > 2) in ext2_empty_dir()
689 if (de->name_len < 2) { in ext2_empty_dir()
690 if (de->inode != in ext2_empty_dir()
693 } else if (de->name[1] != '.') in ext2_empty_dir()
696 de = ext2_next_entry(de); in ext2_empty_dir()