Changes in uspace/lib/minix/minix.h [9d58539:7d04324] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/minix/minix.h
r9d58539 r7d04324 39 39 #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) 40 40 #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) 41 #define S_IFDIR 0040000 /* Directory*/42 #define S_IFREG 0100000 /* Regular file*/41 #define S_IFDIR 0040000 /*Directory*/ 42 #define S_IFREG 0100000 /*Regular file*/ 43 43 #define S_IFMT 00170000 44 44 45 /* The following block sizes are valid only on V3 filesystem*/45 /*The following block sizes are valid only on V3 filesystem*/ 46 46 #define MFS_MIN_BLOCKSIZE 1024 47 47 #define MFS_MAX_BLOCKSIZE 4096 … … 88 88 #define MFS_ERROR_FS 0x0002 89 89 90 /* MFS V1/V2 superblock data on disk*/90 /*MFS V1/V2 superblock data on disk*/ 91 91 struct mfs_superblock { 92 /* Total number of inodes on the device*/92 /*Total number of inodes on the device*/ 93 93 uint16_t s_ninodes; 94 /* Total number of zones on the device*/94 /*Total number of zones on the device*/ 95 95 uint16_t s_nzones; 96 /* Number of inode bitmap blocks*/96 /*Number of inode bitmap blocks*/ 97 97 uint16_t s_ibmap_blocks; 98 /* Number of zone bitmap blocks*/98 /*Number of zone bitmap blocks*/ 99 99 uint16_t s_zbmap_blocks; 100 /* First data zone on device*/100 /*First data zone on device*/ 101 101 uint16_t s_first_data_zone; 102 /* Base 2 logarithm of the zone to block ratio*/102 /*Base 2 logarithm of the zone to block ratio*/ 103 103 uint16_t s_log2_zone_size; 104 /* Maximum file size expressed in bytes*/104 /*Maximum file size expressed in bytes*/ 105 105 uint32_t s_max_file_size; 106 106 /* … … 109 109 */ 110 110 uint16_t s_magic; 111 /* 111 /*Flag used to detect FS errors*/ 112 112 uint16_t s_state; 113 /* Total number of zones on the device (V2 only)*/113 /*Total number of zones on the device (V2 only)*/ 114 114 uint32_t s_nzones2; 115 115 } __attribute__ ((packed)); 116 116 117 117 118 /* MFS V3 superblock data on disk*/118 /*MFS V3 superblock data on disk*/ 119 119 struct mfs3_superblock { 120 /* Total number of inodes on the device*/120 /*Total number of inodes on the device*/ 121 121 uint32_t s_ninodes; 122 122 uint16_t s_pad0; 123 /* Number of inode bitmap blocks*/123 /*Number of inode bitmap blocks*/ 124 124 int16_t s_ibmap_blocks; 125 /* Number of zone bitmap blocks*/125 /*Number of zone bitmap blocks*/ 126 126 int16_t s_zbmap_blocks; 127 /* First data zone on device*/127 /*First data zone on device*/ 128 128 uint16_t s_first_data_zone; 129 /* Base 2 logarithm of the zone to block ratio*/129 /*Base 2 logarithm of the zone to block ratio*/ 130 130 int16_t s_log2_zone_size; 131 131 int16_t s_pad1; 132 /* Maximum file size expressed in bytes*/132 /*Maximum file size expressed in bytes*/ 133 133 uint32_t s_max_file_size; 134 /* Total number of zones on the device*/134 /*Total number of zones on the device*/ 135 135 uint32_t s_nzones; 136 136 /* … … 140 140 int16_t s_magic; 141 141 int16_t s_pad2; 142 /* Filesystem block size expressed in bytes*/142 /*Filesystem block size expressed in bytes*/ 143 143 uint16_t s_block_size; 144 /* Filesystem disk format version*/144 /*Filesystem disk format version*/ 145 145 int8_t s_disk_version; 146 146 } __attribute__ ((packed)); 147 147 148 /* MinixFS V1 inode structure as it is on disk*/148 /*MinixFS V1 inode structure as it is on disk*/ 149 149 struct mfs_inode { 150 150 uint16_t i_mode; … … 154 154 uint8_t i_gid; 155 155 uint8_t i_nlinks; 156 /* Block numbers for direct zones*/156 /*Block numbers for direct zones*/ 157 157 uint16_t i_dzone[V1_NR_DIRECT_ZONES]; 158 /* Block numbers for indirect zones*/158 /*Block numbers for indirect zones*/ 159 159 uint16_t i_izone[V1_NR_INDIRECT_ZONES]; 160 160 } __attribute__ ((packed)); 161 161 162 /* MinixFS V2 inode structure as it is on disk (also valid for V3).*/162 /*MinixFS V2 inode structure as it is on disk (also valid for V3).*/ 163 163 struct mfs2_inode { 164 164 uint16_t i_mode; … … 170 170 int32_t i_mtime; 171 171 int32_t i_ctime; 172 /* Block numbers for direct zones*/172 /*Block numbers for direct zones*/ 173 173 uint32_t i_dzone[V2_NR_DIRECT_ZONES]; 174 /* Block numbers for indirect zones*/174 /*Block numbers for indirect zones*/ 175 175 uint32_t i_izone[V2_NR_INDIRECT_ZONES]; 176 176 } __attribute__ ((packed)); 177 177 178 /* MinixFS V1/V2 directory entry on-disk structure*/178 /*MinixFS V1/V2 directory entry on-disk structure*/ 179 179 struct mfs_dentry { 180 180 uint16_t d_inum; … … 182 182 }; 183 183 184 /* MinixFS V3 directory entry on-disk structure*/184 /*MinixFS V3 directory entry on-disk structure*/ 185 185 struct mfs3_dentry { 186 186 uint32_t d_inum;
Note:
See TracChangeset
for help on using the changeset viewer.