Lines Matching refs:de

215  * len <= EXT2_NAME_LEN and de != NULL are guaranteed by caller.
218 struct ext2_dir_entry_2 * de)
220 if (len != de->name_len)
222 if (!de->inode)
224 return !memcmp(name, de->name, len);
239 ext2_dirent *de = (ext2_dirent*)(base + offset);
241 while ((char*)p < (char*)de) {
249 static inline void ext2_set_de_type(ext2_dirent *de, struct inode *inode)
252 de->file_type = fs_umode_to_ftype(inode->i_mode);
254 de->file_type = 0;
277 ext2_dirent *de;
297 de = (ext2_dirent *)(kaddr+offset);
299 for ( ;(char*)de <= limit; de = ext2_next_entry(de)) {
300 if (de->rec_len == 0) {
303 folio_release_kmap(folio, de);
306 if (de->inode) {
310 d_type = fs_ftype_to_dtype(de->file_type);
312 if (!dir_emit(ctx, de->name, de->name_len,
313 le32_to_cpu(de->inode),
315 folio_release_kmap(folio, de);
319 ctx->pos += ext2_rec_len_from_disk(de->rec_len);
352 ext2_dirent * de;
366 de = (ext2_dirent *) kaddr;
368 while ((char *) de <= kaddr) {
369 if (de->rec_len == 0) {
372 folio_release_kmap(*foliop, de);
375 if (ext2_match(namelen, name, de))
377 de = ext2_next_entry(de);
397 return de;
415 ext2_dirent *de = ext2_get_folio(dir, 0, 0, foliop);
417 if (!IS_ERR(de))
418 return ext2_next_entry(de);
424 struct ext2_dir_entry_2 *de;
427 de = ext2_find_entry(dir, child, &folio);
428 if (IS_ERR(de))
429 return PTR_ERR(de);
431 *ino = le32_to_cpu(de->inode);
432 folio_release_kmap(folio, de);
451 int ext2_set_link(struct inode *dir, struct ext2_dir_entry_2 *de,
454 loff_t pos = folio_pos(folio) + offset_in_folio(folio, de);
455 unsigned len = ext2_rec_len_from_disk(de->rec_len);
464 de->inode = cpu_to_le32(inode->i_ino);
465 ext2_set_de_type(de, inode);
486 ext2_dirent * de;
505 de = (ext2_dirent *)kaddr;
507 while ((char *)de <= kaddr) {
508 if ((char *)de == dir_end) {
512 de->rec_len = ext2_rec_len_to_disk(chunk_size);
513 de->inode = 0;
516 if (de->rec_len == 0) {
523 if (ext2_match (namelen, name, de))
525 name_len = EXT2_DIR_REC_LEN(de->name_len);
526 rec_len = ext2_rec_len_from_disk(de->rec_len);
527 if (!de->inode && rec_len >= reclen)
531 de = (ext2_dirent *) ((char *) de + rec_len);
540 pos = folio_pos(folio) + offset_in_folio(folio, de);
544 if (de->inode) {
545 ext2_dirent *de1 = (ext2_dirent *) ((char *) de + name_len);
547 de->rec_len = ext2_rec_len_to_disk(name_len);
548 de = de1;
550 de->name_len = namelen;
551 memcpy(de->name, name, namelen);
552 de->inode = cpu_to_le32(inode->i_ino);
553 ext2_set_de_type (de, inode);
561 folio_release_kmap(folio, de);
578 ext2_dirent *de, *pde = NULL;
585 de = (ext2_dirent *)(kaddr + from);
587 while ((char*)de < (char*)dir) {
588 if (de->rec_len == 0) {
593 pde = de;
594 de = ext2_next_entry(de);
622 struct ext2_dir_entry_2 * de;
636 de = (struct ext2_dir_entry_2 *)kaddr;
637 de->name_len = 1;
638 de->rec_len = ext2_rec_len_to_disk(EXT2_DIR_REC_LEN(1));
639 memcpy (de->name, ".\0\0", 4);
640 de->inode = cpu_to_le32(inode->i_ino);
641 ext2_set_de_type (de, inode);
643 de = (struct ext2_dir_entry_2 *)(kaddr + EXT2_DIR_REC_LEN(1));
644 de->name_len = 2;
645 de->rec_len = ext2_rec_len_to_disk(chunk_size - EXT2_DIR_REC_LEN(1));
646 de->inode = cpu_to_le32(parent->i_ino);
647 memcpy (de->name, "..\0", 4);
648 ext2_set_de_type (de, inode);
667 ext2_dirent *de;
673 de = (ext2_dirent *)kaddr;
676 while ((char *)de <= kaddr) {
677 if (de->rec_len == 0) {
680 printk("kaddr=%p, de=%p\n", kaddr, de);
683 if (de->inode != 0) {
685 if (de->name[0] != '.')
687 if (de->name_len > 2)
689 if (de->name_len < 2) {
690 if (de->inode !=
693 } else if (de->name[1] != '.')
696 de = ext2_next_entry(de);