Ext4: Difference between revisions

Jump to navigation Jump to search
2,262 bytes added ,  3 years ago
Add Block Group Descriptors
[unchecked revision][unchecked revision]
(Explain stable inodes.)
(Add Block Group Descriptors)
Line 305:
|-
| 0x0800 || Inode numbers do not change during resize.
|}
 
=== Block Group Descriptor ===
 
Block group descriptor Structure:
 
{| {{wikitable}}
! Starting
Byte
! Ending
Byte
! Size
in Bytes
! Description
|-
| 0 || 3 || 4 || Low 32bits of block address of block usage bitmap.
|-
| 4 || 7 || 4 || Low 32bits of block address of inode usage bitmap.
|-
| 8 || 11 || 4 || Low 32bits of starting block address of inode table.
|-
| 12 || 13 || 2 || Low 16bits of number of unallocated blocks in group.
|-
| 14 || 15 || 2 || Low 16bits of number of unallocated inodes in group.
|-
| 16 || 17 || 2 || Low 16bits of number of directories in group.
|-
| 18 || 19 || 2 || Block group features present.
|-
| 20 || 23 || 4 || Low 32-bits of block address of snapshot exclude bitmap.
|-
| 24 || 25 || 2 || Low 16-bits of Checksum of the block usage bitmap.
|-
| 26 || 27 || 2 || Low 16-bits of Checksum of the inode usage bitmap.
|-
| 28 || 29 || 2 || Low 16-bits of amount of free inodes. This allows us to optimize inode searching.
|-
| 30 || 31 || 2 || Checksum of the block group, [[CRC16]](UUID+group+desc).
|}
 
These fields are valid if the 64bit feature is set and the superblock's group desciptor size is greater than 32.
 
{| {{wikitable}}
! Starting
Byte
! Ending
Byte
! Size
in Bytes
! Description
|-
| 32 || 35 || 4 || High 32-bits of block address of block usage bitmap.
|-
| 36 || 39 || 4 || High 32-bits of block address of inode usage bitmap.
|-
| 40 || 43 || 4 || High 32-bits of starting block address of inode table.
|-
| 44 || 45 || 2 || High 16-bits of number of unallocated blocks in group.
|-
| 46 || 47 || 2 || High 16-bits of number of unallocated inodes in group.
|-
| 48 || 49 || 2 || High 16-bits of number of directories in group.
|-
| 50 || 51 || 2 || High 16-bits of amount of free inodes.
|-
| 52 || 55 || 4 || High 32-bits of block address of snapshot exclude bitmap.
|-
| 56 || 57 || 2 || High 16-bits of checksum of the block usage bitmap.
|-
| 58 || 59 || 2 || High 16-bits of checksum of the inode usage bitmap.
|-
| 60 || 63 || 4 || Reserved as of Linux 5.9rc3.
|}
 
block group flags:
 
{| {{wikitable}}
! Flag
Value
! Description
|-
| 0x0001 || Block group's inode bitmap/table is unused.
|-
| 0x0002 || Block groups's block bitmap is unused.
|-
| 0x0004 || Block groups's inode table is zeroed.
|}
 
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.

Navigation menu