STRUCT NILFS_SUPER_BLOCK(9)
π NAME π
okay so this is the struct nilfs_super_block(9) page from the Kernel API Manual, bestie β and itβs literally the structure of the super block on disk. no cap, thatβs the whole vibe. π«Ά
πΈ SYNOPSIS πΈ
hereβs the struct in all its on-disk glory, every field kept exactly in order:
struct nilfs_super_block {
__le32 s_rev_level;
__le16 s_minor_rev_level;
__le16 s_magic;
__le16 s_bytes;
__le16 s_flags;
__le32 s_crc_seed;
__le32 s_sum;
__le32 s_log_block_size;
__le64 s_nsegments;
__le64 s_dev_size;
__le64 s_first_data_block;
__le32 s_blocks_per_segment;
__le32 s_r_segments_percentage;
__le64 s_last_cno;
__le64 s_last_pseg;
__le64 s_last_seq;
__le64 s_free_blocks_count;
__le64 s_ctime;
__le64 s_mtime;
__le64 s_wtime;
__le16 s_mnt_count;
__le16 s_max_mnt_count;
__le16 s_state;
__le16 s_errors;
__le64 s_lastcheck;
__le32 s_checkinterval;
__le32 s_creator_os;
__le16 s_def_resuid;
__le16 s_def_resgid;
__le32 s_first_ino;
__le16 s_inode_size;
__le16 s_dat_entry_size;
__le16 s_checkpoint_size;
__le16 s_segment_usage_size;
__u8 s_uuid[16];
char s_volume_name[80] __kernel_nonstring;
__le32 s_c_interval;
__le32 s_c_block_max;
__le64 s_feature_compat;
__le64 s_feature_compat_ro;
__le64 s_feature_incompat;
__u32 s_reserved[186];
};
π Members π
field-by-field vibe check, bestie β same order, all the lore π
s_rev_levelβ revision level, periodt.s_minor_rev_levelβ minor revision level, the little sibling energy.s_magicβ magic signature, iconic.s_bytesβ bytes count of CRC calculation for this structure.s_reservedis excluded. noted, fr fr.s_flagsβ flags. thatβs it, flags.s_crc_seedβ seed value of CRC calculation.s_sumβ check sum of super block.s_log_block_sizeβ block size represented as follows:blocksize = 1 << (s_log_block_size + 10).s_nsegmentsβ number of segments in filesystem.s_dev_sizeβ block device size in bytes.s_first_data_blockβ 1st seg disk block number.s_blocks_per_segmentβ number of blocks per full segment.s_r_segments_percentageβ reserved segments percentage.s_last_cnoβ last checkpoint number.s_last_psegβ disk block addr pseg written last.s_last_seqβ seq. number of seg written last.s_free_blocks_countβ free blocks count.s_ctimeβ creation time (execution time ofnewfs).s_mtimeβ mount time.s_wtimeβ write time.s_mnt_countβ mount count.s_max_mnt_countβ maximal mount count.s_stateβ file system state.s_errorsβ behaviour when detecting errors.s_lastcheckβ time of last check.s_checkintervalβ max. time between checks.s_creator_osβ OS.s_def_resuidβ default uid for reserved blocks.s_def_resgidβ default gid for reserved blocks.s_first_inoβ first non-reserved inode.s_inode_sizeβ size of an inode.s_dat_entry_sizeβ size of a dat entry.s_checkpoint_sizeβ size of a checkpoint.s_segment_usage_sizeβ size of a segment usage.s_uuidβ 128-bit uuid for volume.s_volume_nameβ volume name.s_c_intervalβ commit interval of segment.s_c_block_maxβ threshold of data amount for the segment construction.s_feature_compatβ compatible feature set.s_feature_compat_roβ read-only compatible feature set.s_feature_incompatβ incompatible feature set.s_reservedβ padding to the end of the block.
π¦ SEE ALSO π¦
go read these too, iykyk π
- Kernel file
./include/uapi/linux/nilfs2_ondisk.h struct nilfs_inode(9)struct nilfs_super_root(9)struct nilfs_finfo(9)struct nilfs_binfo_v(9)struct nilfs_binfo_dat(9)union nilfs_binfo(9)struct nilfs_segment_summary(9)struct nilfs_btree_node(9)struct nilfs_direct_node(9)struct nilfs_palloc_group_desc(9)struct nilfs_dat_entry(9)struct nilfs_snapshot_list(9)struct nilfs_checkpoint(9)struct nilfs_cpfile_header(9)struct nilfs_segment_usage(9)struct nilfs_sufile_header(9)
mwah π β source/version: ./include/uapi/linux, date: October 2026, page: struct nilfs_super_block(9). byeee π«Άβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms