Changeset 9c0c0e1 in mainline for uspace/lib/ext4/libext4_superblock.h
- Timestamp:
- 2011-10-04T12:18:44Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a23297c
- Parents:
- 01ab41b
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ext4/libext4_superblock.h
r01ab41b r9c0c0e1 41 41 */ 42 42 typedef struct ext4_superblock { 43 uint32_t s_inodes_count; // Inodes count43 uint32_t inodes_count; // Inodes count 44 44 uint32_t s_blocks_count_lo; // Blocks count 45 45 uint32_t s_r_blocks_count_lo; // Reserved blocks count 46 uint32_t s_free_blocks_count_lo; // Free blocks count47 uint32_t s_free_inodes_count; // Free inodes count48 uint32_t s_first_data_block; // First Data Block49 uint32_t s_log_block_size; // Block size46 uint32_t free_blocks_count_lo; // Free blocks count 47 uint32_t free_inodes_count; // Free inodes count 48 uint32_t first_data_block; // First Data Block 49 uint32_t log_block_size; // Block size 50 50 uint32_t s_obso_log_frag_size; // Obsoleted fragment size 51 51 uint32_t s_blocks_per_group; // Number of blocks per group … … 54 54 uint32_t s_mtime; // Mount time 55 55 uint32_t s_wtime; // Write time 56 uint16_t s_mnt_count; // Mount count57 uint16_t s_max_mnt_count; // Maximal mount count58 uint16_t s_magic; // Magic signature59 uint16_t s _state; // File system state60 uint16_t s_errors; // Behaviour when detecting errors61 uint16_t s_minor_rev_level; // Minor revision level62 uint32_t s_lastcheck; // Time of last check63 uint32_t s_checkinterval; // Maximum time between checks64 uint32_t s_creator_os; // Creator OS65 uint32_t s_rev_level; // Revision level56 uint16_t mount_count; // Mount count 57 uint16_t max_mount_count; // Maximal mount count 58 uint16_t magic; // Magic signature 59 uint16_t state; // File system state 60 uint16_t errors; // Behaviour when detecting errors 61 uint16_t minor_rev_level; // Minor revision level 62 uint32_t last_check; // Time of last check 63 uint32_t checkinterval; // Maximum time between checks 64 uint32_t creator_os; // Creator OS 65 uint32_t rev_level; // Revision level 66 66 uint16_t s_def_resuid; // Default uid for reserved blocks 67 67 uint16_t s_def_resgid; // Default gid for reserved blocks … … 71 71 uint16_t s_inode_size; // Size of inode structure 72 72 uint16_t s_block_group_nr; // Block group number of this superblock 73 uint32_t s_feature_compat; // Compatible feature set74 uint32_t s_feature_incompat; // Incompatible feature set75 uint32_t s_feature_ro_compat; // Readonly-compatible feature set73 uint32_t features_compatible; // Compatible feature set 74 uint32_t features_incompatible; // Incompatible feature set 75 uint32_t features_read_only; // Readonly-compatible feature set 76 76 uint8_t s_uuid[16]; // 128-bit uuid for volume 77 77 char s_volume_name[16]; // Volume name … … 122 122 uint64_t s_snapshot_r_blocks_count; /* reserved blocks for active snapshot's future use */ 123 123 uint32_t s_snapshot_list; // inode number of the head of the on-disk snapshot list 124 125 //#define EXT4_S_ERR_START offsetof(struct ext4_super_block, s_error_count)126 124 uint32_t s_error_count; // number of fs errors 127 125 uint32_t s_first_error_time; // First time an error happened … … 135 133 uint64_t s_last_error_block; /* block involved of last error */ 136 134 uint8_t s_last_error_func[32]; /* function where the error happened */ 137 //#define EXT4_S_ERR_END offsetof(struct ext4_super_block, s_mount_opts)138 135 uint8_t s_mount_opts[64]; 139 136 uint32_t s_reserved[112]; // Padding to the end of the block … … 141 138 } __attribute__((packed)) ext4_superblock_t; 142 139 143 // TODO constants144 140 #define EXT4_SUPERBLOCK_MAGIC 0xEF53 145 141 #define EXT4_SUPERBLOCK_SIZE 1024 146 142 #define EXT4_SUPERBLOCK_OFFSET 1024 147 143 144 extern uint16_t ext4_superblock_get_magic(ext4_superblock_t *); 145 extern uint32_t ext4_superblock_get_first_block(ext4_superblock_t *); 148 146 extern uint32_t ext4_superblock_get_block_size_log2(ext4_superblock_t *); 149 147 extern uint32_t ext4_superblock_get_block_size(ext4_superblock_t *); 148 extern uint32_t ext4_superblock_get_rev_level(ext4_superblock_t *); 149 extern uint32_t ext4_superblock_get_features_compatible(ext4_superblock_t *); 150 extern uint32_t ext4_superblock_get_features_incompatible(ext4_superblock_t *); 151 extern uint32_t ext4_superblock_get_features_read_only(ext4_superblock_t *); 150 152 151 153 extern int ext4_superblock_read_direct(service_id_t, ext4_superblock_t **);
Note:
See TracChangeset
for help on using the changeset viewer.