~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/filesystems/ext4/group_descr.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/filesystems/ext4/group_descr.rst (Version linux-6.12-rc7) and /Documentation/filesystems/ext4/group_descr.rst (Version linux-4.12.14)


  1 .. SPDX-License-Identifier: GPL-2.0               
  2                                                   
  3 Block Group Descriptors                           
  4 -----------------------                           
  5                                                   
  6 Each block group on the filesystem has one of     
  7 associated with it. As noted in the Layout sec    
  8 descriptors (if present) are the second item i    
  9 standard configuration is for each block group    
 10 the block group descriptor table unless the sp    
 11 is set.                                           
 12                                                   
 13 Notice how the group descriptor records the lo    
 14 the inode table (i.e. they can float). This me    
 15 group, the only data structures with fixed loc    
 16 and the group descriptor table. The flex_bg me    
 17 property to group several block groups into a     
 18 of the groups' bitmaps and inode tables into o    
 19 group of the flex group.                          
 20                                                   
 21 If the meta_bg feature flag is set, then sever    
 22 grouped together into a meta group. Note that     
 23 however, the first and last two block groups w    
 24 group contain only group descriptors for the g    
 25 group.                                            
 26                                                   
 27 flex_bg and meta_bg do not appear to be mutual    
 28                                                   
 29 In ext2, ext3, and ext4 (when the 64bit featur    
 30 block group descriptor was only 32 bytes long     
 31 bg_checksum. On an ext4 filesystem with the 64    
 32 block group descriptor expands to at least the    
 33 the size is stored in the superblock.             
 34                                                   
 35 If gdt_csum is set and metadata_csum is not se    
 36 checksum is the crc16 of the FS UUID, the grou    
 37 descriptor structure. If metadata_csum is set,    
 38 checksum is the lower 16 bits of the checksum     
 39 number, and the group descriptor structure. Bo    
 40 checksums are calculated against the FS UUID,     
 41 entire bitmap.                                    
 42                                                   
 43 The block group descriptor is laid out in ``st    
 44                                                   
 45 .. list-table::                                   
 46    :widths: 8 8 24 40                             
 47    :header-rows: 1                                
 48                                                   
 49    * - Offset                                     
 50      - Size                                       
 51      - Name                                       
 52      - Description                                
 53    * - 0x0                                        
 54      - __le32                                     
 55      - bg_block_bitmap_lo                         
 56      - Lower 32-bits of location of block bitm    
 57    * - 0x4                                        
 58      - __le32                                     
 59      - bg_inode_bitmap_lo                         
 60      - Lower 32-bits of location of inode bitm    
 61    * - 0x8                                        
 62      - __le32                                     
 63      - bg_inode_table_lo                          
 64      - Lower 32-bits of location of inode tabl    
 65    * - 0xC                                        
 66      - __le16                                     
 67      - bg_free_blocks_count_lo                    
 68      - Lower 16-bits of free block count.         
 69    * - 0xE                                        
 70      - __le16                                     
 71      - bg_free_inodes_count_lo                    
 72      - Lower 16-bits of free inode count.         
 73    * - 0x10                                       
 74      - __le16                                     
 75      - bg_used_dirs_count_lo                      
 76      - Lower 16-bits of directory count.          
 77    * - 0x12                                       
 78      - __le16                                     
 79      - bg_flags                                   
 80      - Block group flags. See the bgflags_ tab    
 81    * - 0x14                                       
 82      - __le32                                     
 83      - bg_exclude_bitmap_lo                       
 84      - Lower 32-bits of location of snapshot e    
 85    * - 0x18                                       
 86      - __le16                                     
 87      - bg_block_bitmap_csum_lo                    
 88      - Lower 16-bits of the block bitmap check    
 89    * - 0x1A                                       
 90      - __le16                                     
 91      - bg_inode_bitmap_csum_lo                    
 92      - Lower 16-bits of the inode bitmap check    
 93    * - 0x1C                                       
 94      - __le16                                     
 95      - bg_itable_unused_lo                        
 96      - Lower 16-bits of unused inode count. If    
 97        ``(sb.s_inodes_per_group - gdt.bg_itabl    
 98        inode table for this group.                
 99    * - 0x1E                                       
100      - __le16                                     
101      - bg_checksum                                
102      - Group descriptor checksum; crc16(sb_uui    
103        RO_COMPAT_GDT_CSUM feature is set, or      
104        crc32c(sb_uuid+group_num+bg_desc) & 0xF    
105        RO_COMPAT_METADATA_CSUM feature is set.    
106        field in bg_desc is skipped when calcul    
107        and set to zero if crc32c checksum is u    
108    * -                                            
109      -                                            
110      -                                            
111      - These fields only exist if the 64bit fe    
112        > 32.                                      
113    * - 0x20                                       
114      - __le32                                     
115      - bg_block_bitmap_hi                         
116      - Upper 32-bits of location of block bitm    
117    * - 0x24                                       
118      - __le32                                     
119      - bg_inode_bitmap_hi                         
120      - Upper 32-bits of location of inodes bit    
121    * - 0x28                                       
122      - __le32                                     
123      - bg_inode_table_hi                          
124      - Upper 32-bits of location of inodes tab    
125    * - 0x2C                                       
126      - __le16                                     
127      - bg_free_blocks_count_hi                    
128      - Upper 16-bits of free block count.         
129    * - 0x2E                                       
130      - __le16                                     
131      - bg_free_inodes_count_hi                    
132      - Upper 16-bits of free inode count.         
133    * - 0x30                                       
134      - __le16                                     
135      - bg_used_dirs_count_hi                      
136      - Upper 16-bits of directory count.          
137    * - 0x32                                       
138      - __le16                                     
139      - bg_itable_unused_hi                        
140      - Upper 16-bits of unused inode count.       
141    * - 0x34                                       
142      - __le32                                     
143      - bg_exclude_bitmap_hi                       
144      - Upper 32-bits of location of snapshot e    
145    * - 0x38                                       
146      - __le16                                     
147      - bg_block_bitmap_csum_hi                    
148      - Upper 16-bits of the block bitmap check    
149    * - 0x3A                                       
150      - __le16                                     
151      - bg_inode_bitmap_csum_hi                    
152      - Upper 16-bits of the inode bitmap check    
153    * - 0x3C                                       
154      - __u32                                      
155      - bg_reserved                                
156      - Padding to 64 bytes.                       
157                                                   
158 .. _bgflags:                                      
159                                                   
160 Block group flags can be any combination of th    
161                                                   
162 .. list-table::                                   
163    :widths: 16 64                                 
164    :header-rows: 1                                
165                                                   
166    * - Value                                      
167      - Description                                
168    * - 0x1                                        
169      - inode table and bitmap are not initiali    
170    * - 0x2                                        
171      - block bitmap is not initialized (EXT4_B    
172    * - 0x4                                        
173      - inode table is zeroed (EXT4_BG_INODE_ZE    
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php