• Home
  • Raw
  • Download

Lines Matching +full:data +full:- +full:mapping

1 .. SPDX-License-Identifier: GPL-2.0
4 ------------------------------
16 maps will be used to allocate data blocks to store the link target.
22 means of an (up to) three level 1-1 block map. To find the logical block
36 Note that with this block mapping scheme, it is necessary to fill out a
37 lot of mapping data even for a large contiguous file! This inefficiency
38 led to the creation of the extent mapping scheme, discussed below.
40 Notice also that a file using this mapping scheme cannot be placed
49 mapping is reduced to a single ``struct ext4_extent`` with
63 point to the file's data blocks. The root node of the extent tree is
70 .. list-table::
72 :header-rows: 1
74 * - Offset
75 - Size
76 - Name
77 - Description
78 * - 0x0
79 - __le16
80 - eh_magic
81 - Magic number, 0xF30A.
82 * - 0x2
83 - __le16
84 - eh_entries
85 - Number of valid entries following the header.
86 * - 0x4
87 - __le16
88 - eh_max
89 - Maximum number of entries that could follow the header.
90 * - 0x6
91 - __le16
92 - eh_depth
93 - Depth of this extent node in the extent tree. 0 = this extent node
94 points to data blocks; otherwise, this extent node points to other
97 satisfies ``4*(((blocksize - 12)/12)^n) >= 2^32`` is 5.
98 * - 0x8
99 - __le32
100 - eh_generation
101 - Generation of the tree. (Used by Lustre, but not standard ext4).
106 .. list-table::
108 :header-rows: 1
110 * - Offset
111 - Size
112 - Name
113 - Description
114 * - 0x0
115 - __le32
116 - ei_block
117 - This index node covers file blocks from 'block' onward.
118 * - 0x4
119 - __le32
120 - ei_leaf_lo
121 - Lower 32-bits of the block number of the extent node that is the next
124 * - 0x8
125 - __le16
126 - ei_leaf_hi
127 - Upper 16-bits of the previous field.
128 * - 0xA
129 - __u16
130 - ei_unused
131 -
136 .. list-table::
138 :header-rows: 1
140 * - Offset
141 - Size
142 - Name
143 - Description
144 * - 0x0
145 - __le32
146 - ee_block
147 - First file block number that this extent covers.
148 * - 0x4
149 - __le16
150 - ee_len
151 - Number of blocks covered by extent. If the value of this field is <=
153 the extent is uninitialized and the actual extent length is ``ee_len`` -
156 * - 0x6
157 - __le16
158 - ee_start_hi
159 - Upper 16-bits of the block number to which this extent points.
160 * - 0x8
161 - __le32
162 - ee_start_lo
163 - Lower 32-bits of the block number to which this extent points.
167 end of each extent tree data block (because (2^x % 12) >= 4). Therefore,
168 the 32-bit checksum is inserted into this space. The 4 extents in the
176 .. list-table::
178 :header-rows: 1
180 * - Offset
181 - Size
182 - Name
183 - Description
184 * - 0x0
185 - __le32
186 - eb_checksum
187 - Checksum of the extent block, crc32c(uuid+inum+igeneration+extentblock)
189 Inline Data
192 If the inline data feature is enabled for the filesystem and the flag is
194 data are stored here.