STRUCT NILFS_INODE_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct nilfs_inode_info(9) πŸ’–

okay so this is from the Kernel API Manual and it's literally the whole entire struct nilfs_inode_info β€” the in-memory inode data for nilfs. yes bestie, we're going in the kernel today 🫢


✨ NAME ✨

struct nilfs_inode_info β€” nilfs inode data in memory πŸ’Ύ


🌸 SYNOPSIS 🌸

struct nilfs_inode_info {
    __u32 i_flags;
    unsigned int i_state;
    unsigned long  i_state;
    struct nilfs_bmap *i_bmap;
    struct nilfs_bmap i_bmap_data;
    __u64 i_xattr;
    __u32 i_dir_start_lookup;
    __u64 i_cno;
    struct inode *i_assoc_inode;
    struct list_head i_dirty;
  #ifdef CONFIG_NILFS_XATTR;
    struct rw_semaphore xattr_sem;
  #endif;
    struct buffer_head *i_bh;
    struct nilfs_root *i_root;
    struct inode vfs_inode;
 };
wait, the real one is below, don't copy the mess above β€” actual verbatim struct coming at you πŸ‘‡
struct nilfs_inode_info {
    __u32 i_flags;
    unsigned int i_type;
    unsigned long  i_state;
    struct nilfs_bmap *i_bmap;
    struct nilfs_bmap i_bmap_data;
    __u64 i_xattr;
    __u32 i_dir_start_lookup;
    __u64 i_cno;
    struct inode *i_assoc_inode;
    struct list_head i_dirty;
  #ifdef CONFIG_NILFS_XATTR;
    struct rw_semaphore xattr_sem;
  #endif;
    struct buffer_head *i_bh;
    struct nilfs_root *i_root;
    struct inode vfs_inode;
 };

πŸŽ€ Members πŸŽ€

like a tour of every single field, no skips, we're doing all of them πŸ’…

  • i_flags β€” inode flags ✨
  • i_type β€” inode type (a combo of flags that indicate usage) πŸ”₯
  • i_state β€” dynamic state flags ✨
  • i_bmap β€” pointer on i_bmap_data πŸ‘€
  • i_bmap_data β€” the raw block mapping πŸ—ΊοΈ
  • i_xattr β€” <TODO> 😭 (yep, that's genuinely what the docs say, bestie β€” it's giving unfinished homework)
  • i_dir_start_lookup β€” page index of the last successful search πŸ”
  • i_cno β€” checkpoint number for GC inode 🧚
  • i_assoc_inode β€” associated inode (B-tree node cache holder or back pointer) πŸ¦‹
  • i_dirty β€” list for connecting dirty files πŸ’€
  • xattr_sem β€” semaphore for extended attributes processing πŸ”’ (only there when CONFIG_NILFS_XATTR is set, iykyk)
  • i_bh β€” buffer contains disk inode πŸ“¦
  • i_root β€” root object of the current filesystem tree 🌳
  • vfs_inode β€” VFS inode object πŸ‘‘

🌈 SEE ALSO 🌈

periodt, that's the whole page, go read the header file if you want more tea β˜•


and that's a wrap, bestie! πŸŽ€ this one lives in ./fs/nilfs2, dated October 2026, and it's literally titled struct nilfs_inode_info(9) β€” slay, go forth and read your inodes πŸ’–βœ¨πŸ‘‘

πŸ“¦ where this page comes from