Lines Matching refs:de
58 static bool is_fake_dir_entry(struct ext4_dir_entry_2 *de) in is_fake_dir_entry() argument
61 if ((de->name_len > 0) && (de->name_len <= 2) && (de->name[0] == '.') && in is_fake_dir_entry()
62 (de->name[1] == '.' || de->name[1] == '\0')) in is_fake_dir_entry()
65 if (de->file_type == EXT4_FT_DIR_CSUM) in is_fake_dir_entry()
80 struct ext4_dir_entry_2 *de, in __ext4_check_dir_entry() argument
85 const int rlen = ext4_rec_len_from_disk(de->rec_len, in __ext4_check_dir_entry()
87 const int next_offset = ((char *) de - buf) + rlen; in __ext4_check_dir_entry()
88 bool fake = is_fake_dir_entry(de); in __ext4_check_dir_entry()
95 else if (unlikely(rlen < ext4_dir_rec_len(de->name_len, in __ext4_check_dir_entry()
104 else if (unlikely(le32_to_cpu(de->inode) > in __ext4_check_dir_entry()
107 else if (unlikely(next_offset == size && de->name_len == 1 && in __ext4_check_dir_entry()
108 de->name[0] == '.')) in __ext4_check_dir_entry()
117 error_msg, offset, le32_to_cpu(de->inode), in __ext4_check_dir_entry()
123 error_msg, offset, le32_to_cpu(de->inode), in __ext4_check_dir_entry()
133 struct ext4_dir_entry_2 *de; in ext4_readdir() local
238 de = (struct ext4_dir_entry_2 *) in ext4_readdir()
246 if (ext4_rec_len_from_disk(de->rec_len, in ext4_readdir()
250 i += ext4_rec_len_from_disk(de->rec_len, in ext4_readdir()
261 de = (struct ext4_dir_entry_2 *) (bh->b_data + offset); in ext4_readdir()
262 if (ext4_check_dir_entry(inode, file, de, bh, in ext4_readdir()
272 offset += ext4_rec_len_from_disk(de->rec_len, in ext4_readdir()
274 if (le32_to_cpu(de->inode)) { in ext4_readdir()
276 if (!dir_emit(ctx, de->name, in ext4_readdir()
277 de->name_len, in ext4_readdir()
278 le32_to_cpu(de->inode), in ext4_readdir()
279 get_dtype(sb, de->file_type))) in ext4_readdir()
284 FSTR_INIT(de->name, in ext4_readdir()
285 de->name_len); in ext4_readdir()
290 hash = EXT4_DIRENT_HASH(de); in ext4_readdir()
291 minor_hash = EXT4_DIRENT_MINOR_HASH(de); in ext4_readdir()
306 le32_to_cpu(de->inode), in ext4_readdir()
307 get_dtype(sb, de->file_type))) in ext4_readdir()
311 ctx->pos += ext4_rec_len_from_disk(de->rec_len, in ext4_readdir()
650 struct ext4_dir_entry_2 *de; in ext4_check_all_de() local
655 de = buf; in ext4_check_all_de()
657 while ((char *) de < top) { in ext4_check_all_de()
658 if (ext4_check_dir_entry(dir, NULL, de, bh, in ext4_check_all_de()
661 rlen = ext4_rec_len_from_disk(de->rec_len, buf_size); in ext4_check_all_de()
662 de = (struct ext4_dir_entry_2 *)((char *)de + rlen); in ext4_check_all_de()
665 if ((char *) de > top) in ext4_check_all_de()