Lines Matching full:directory

3 Directory Entries
6 In an ext4 filesystem, a directory is more or less a flat file that maps
8 filesystem. There can be many directory entries across the filesystem
11 such, directory entries are found by reading the data block(s)
12 associated with a directory file for the particular directory entry that
18 By default, each directory lists its entries in an “almost-linear”
20 sense because directory entries are not split across filesystem blocks.
21 Therefore, it is more accurate to say that a directory is a series of
22 data blocks and that each block contains a linear array of directory
26 directory is of course signified by reaching the end of the file. Unused
27 directory entries are signified by inode = 0. By default the filesystem
28 uses ``struct ext4_dir_entry_2`` for directory entries unless the
32 The original directory entry format is ``struct ext4_dir_entry``, which
47 - Number of the inode that this directory entry points to.
51 - Length of this directory entry. Must be a multiple of 4.
61 Since file names cannot be longer than 255 bytes, the new directory
63 type flag, probably to avoid having to load every inode during directory
79 - Number of the inode that this directory entry points to.
83 - Length of this directory entry.
99 The directory file type is one of the following values:
112 - Directory.
124 In order to add checksums to these classic directory blocks, a phony
126 hold the checksum. The directory entry is 12 bytes long. The inode
128 ignoring an apparently empty directory entry, and the checksum is stored
147 - Length of this directory entry, which must be 12.
159 - Directory leaf block checksum.
161 The leaf directory block checksum is calculated against the FS UUID, the
162 directory's inode number, the directory's inode generation number, and
163 the entire directory entry block up to (but not including) the fake
164 directory entry.
169 A linear array of directory entries isn't great for performance, so a
171 balanced tree keyed off a hash of the directory entry name. If the
172 EXT4\_INDEX\_FL (0x1000) flag is set in the inode, this directory uses a
173 hashed btree (htree) to organize and find directory entries. For
175 hidden inside the directory file, masquerading as “empty” directory data
176 blocks! It was stated previously that the end of the linear directory
179 rest of the directory block is empty so that it moves on.
182 directory. By ext2 custom, the '.' and '..' entries must appear at the
198 To traverse the directory as a htree, the code calculates the hash of
200 number. If the tree is flat, the block is a linear array of directory
204 directory entries.
206 To traverse the directory as a linear array (such as the old code does),
207 the code simply reads every data block in the directory. The blocks used
225 - inode number of this directory.
237 - File type of this entry, 0x2 (directory) (if the feature flag is set).
245 - inode number of parent directory.
258 - File type of this entry, 0x2 (directory) (if the feature flag is set).
297 - The block number (within the directory file) that goes with hash=0.
305 The directory hash is one of the following values:
348 - Zero. There is no name for this “unused” directory entry.
352 - Zero. There is no file type for this “unused” directory entry.
366 - The block number (within the directory file) that goes with the lowest
392 - Block number (within the directory file, not filesystem blocks) of the
398 If metadata checksums are enabled, the last 8 bytes of the directory
404 directory index (which will ensure that there's space for the checksum.
422 - Checksum of the htree directory block.