STRUCT NILFS_SEGMENT_SUMMARY(9)
π struct nilfs_segment_summary(9) β the kernel API manual, bestie edition π
okay so bestie, we're deep in the kernel API docs rn (the Kernel API Manual, no big deal) and today's main character is struct nilfs_segment_summary β literally the segment summary header. it's giving "the receipt at the top of the file, but make it NILFS2" β¨
πΈ NAME πΈ
struct nilfs_segment_summary β the segment summary header, periodt π
β¨ SYNOPSIS β¨
here's the whole vibe, character for character, don't touch a single underscore:
struct nilfs_segment_summary {
__le32 ss_datasum;
__le32 ss_sumsum;
__le32 ss_magic;
__le16 ss_bytes;
__le16 ss_flags;
__le64 ss_seq;
__le64 ss_create;
__le64 ss_next;
__le32 ss_nblocks;
__le32 ss_nfinfo;
__le32 ss_sumbytes;
__le32 ss_pad;
__le64 ss_cno;
};
look at all those __le32s and __le64s β endianness queen π ngl the __le16 girlies are doing the most with the least and I respect it π«Ά
π¦ Members π¦
okay let's go member by member, no skipping, no cap:
ss_datasumβ the checksum of the data π§Ύ so like, the data's little fingerprint, iconicss_sumsumβ the checksum of the segment summary. yes bestie, a checksum for the summary itself, she contains multitudes πss_magicβ the magic number β¨ obviouslyss_bytesβ how big this structure is, in bytes. it knows its own size, self-aware king πss_flagsβ the flags π© (the good kind, hopefully)ss_seqβ the sequence number, keeping everything in order fr frss_createβ the creation timestamp π°οΈ born at a specific moment, we love a timestamped queenss_nextβ the next segment, pointing the way forward β‘οΈss_nblocksβ the number of blocks π§± count them, bestiess_nfinfoβ the number of finfo structures β yes that's the literal word from the docs,finfo, and I'm obsessed with how unbothered it is πss_sumbytesβ the total size of the segment summary in bytes. "total" is doing heavy lifting there, so don't confuse her withss_bytesβ they're different girlies, iykyk πss_padβ padding, the structural equivalent of "this meeting could have been an email" but make it alignment πΈss_cnoβ the checkpoint number π
π SEE ALSO π
Kernel file ./include/uapi/linux/nilfs2_ondisk.h, plus the whole entire NILFS2 friend group β like, the full group chat:
- struct
nilfs_inode(9) - struct
nilfs_super_root(9) - struct
nilfs_super_block(9) - struct
nilfs_finfo(9) - struct
nilfs_binfo_v(9) - struct
nilfs_binfo_dat(9) - union
nilfs_binfo(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)
that's the whole page bestie, you ate it up π this lil' gem lives in ./include/uapi/linux, dated October 2026, and it's formatted as a Kernel API Manual page β go forth and read structs responsibly π§ββοΈπ
π¦ 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