STRUCT JBD2_INODE(9)
π NAME π
okay so bestie, welcome to struct jbd2_inode(9) from the Kernel API Manual β and it's giving βthe little struct that keeps ordered-mode inodes linked inside a transaction so commit can sync themβ energy. π
The jbd_inode type β yes, that's literally how the NAME text says it β is the structure linking inodes in ordered mode present in a transaction so that we can sync them during commit. β¨
π¦ SYNOPSIS π¦
struct jbd2_inode {
transaction_t *i_transaction;
transaction_t *i_next_transaction;
struct list_head i_list;
struct inode *i_vfs_inode;
unsigned long i_flags;
pgoff_t i_dirty_start_page;
pgoff_t i_dirty_end_page;
};
π Members π
i_transactionβ which transaction does this inode belong to? Either the running transaction or the committing one. Tagged[j_list_lock]. πi_next_transactionβ pointer to the running transaction modifying the inode's data in case there is already a committing transaction touching it. Tagged[j_list_lock]. πi_listβ list of inodes in thei_transaction. Tagged[j_list_lock]. πi_vfs_inodeβ the VFS inode this inode belongs to;[constant for lifetime of structure]. π¦i_flagsβ flags of the inode. Tagged[j_list_lock]. π©i_dirty_start_pageβ dirty range start inPAGE_SIZEunits. The dirty range is empty ifi_dirty_start_pageis greater than or equal toi_dirty_end_page. Tagged[j_list_lock]. πΈi_dirty_end_pageβ dirty range end inPAGE_SIZEunits (exclusive). Tagged[j_list_lock]. π₯
π SEE ALSO π
the manpage points you at the kernel file ./include/linux/jbd2.h, plus these iconic little references:
handle_t(9)journal_t(9)struct jbd2_journal_handle(9)struct journal_s(9)
source/version: ./include/linux Β· date: October 2026 Β· page: struct jbd2_inode(9) β bye bestie, go sync those inodes ππ¦
π¦ 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