Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/jbd2/transaction.c __dispose_buffer() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_cp_transaction 1-u64max
PARAM_VALUE 0 jh->b_jlist 0
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_transaction 0,4096-ptr_max
PARAM_VALUE 1 transaction 1-u64max
PARAM_VALUE 2 jlist 2
BUF_SIZE 0 jh 32,352,520
BUF_SIZE 0 jh 32,352,520
CAPPED_DATA 0 jh 1
CAPPED_DATA 1 transaction 1
DATA_SOURCE 0 jh $0
DATA_SOURCE 1 transaction $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &journal->j_list_lock
LOCK2 &journal->j_state_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock
TYPE_LOCK (struct journal_s)->j_state_lock

fs/jbd2/transaction.c __jbd2_journal_refile_buffer() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_frozen_triggers->t_abort 4096-ptr_max
PARAM_VALUE 0 jh->b_jlist 0
PARAM_VALUE 0 jh->b_next_transaction 0
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_transaction 1-u64max
PARAM_VALUE 1 transaction 1-u64max
PARAM_VALUE 2 jlist 1-2,4
CAPPED_DATA 0 jh 1
DATA_SOURCE 0 jh $0
FUZZY_MAX 2 jlist 4
HARD_MAX 2 jlist 4
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 jh unit_byte
LOCK2 &journal->j_list_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock

fs/jbd2/transaction.c do_get_write_access() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_modified 0
PARAM_VALUE 0 jh->b_next_transaction 0
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_transaction 0
PARAM_VALUE 1 transaction 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 jlist 4
BUF_SIZE 0 jh 32,352,520
BUF_SIZE 0 jh 32,352,520
DATA_SOURCE 0 jh $1
PARAM_COMPARE 0 jh->b_next_transaction != $1
PARAM_COMPARE 0 jh->b_transaction < $1
PARAM_COMPARE 1 transaction != $0->b_next_transaction
PARAM_COMPARE 1 transaction > $0->b_transaction
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &journal->j_list_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock

fs/jbd2/transaction.c jbd2_journal_dirty_metadata() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_frozen_data 0
PARAM_VALUE 0 jh->b_jlist 0,2-u32max
PARAM_VALUE 0 jh->b_modified 1-u32max
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_transaction 4096-ptr_max
PARAM_VALUE 1 transaction 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 jlist 1
BUF_SIZE 0 jh 32,352,520
BUF_SIZE 0 jh 32,352,520
CAPPED_DATA 0 jh->b_transaction 1
CAPPED_DATA 1 transaction 1
FUZZY_MAX 0 jh->b_modified 1
PARAM_COMPARE 0 jh->b_transaction == $1
PARAM_COMPARE 1 transaction == $0->b_transaction
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 jh unit_byte
LOCK2 &journal->j_list_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock

fs/jbd2/transaction.c jbd2_journal_file_buffer() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_bh 4096-ptr_max
PARAM_VALUE 0 jh->b_frozen_triggers->t_abort 4096-ptr_max
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 transaction 4096-ptr_max
PARAM_VALUE 1 transaction->t_buffers 0
PARAM_VALUE 1 transaction->t_buffers->b_frozen_triggers->t_abort 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_op->readlink 0,1728600404483375104,2832489546165891072,2874824064778891264,3069732422725099520,4516337085607264256
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 1 transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 transaction->t_journal->j_sb_buffer->b_folio->mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 transaction->t_journal->j_superblock->s_errno 0-4294967187,4294967189-u32max
PARAM_VALUE 1 transaction->t_reserved_list 0
PARAM_VALUE 1 transaction->t_shadow_list 4096-ptr_max
PARAM_VALUE 1 transaction->t_shadow_list->b_tprev 4096-ptr_max
PARAM_VALUE 1 transaction->t_shadow_list->b_tprev->b_bh 4096-ptr_max
PARAM_VALUE 1 transaction->t_state 5
PARAM_VALUE 2 jlist 2
CAPPED_DATA 1 transaction 1
DATA_SOURCE 0 jh $0
DATA_SOURCE 1 transaction $1
DATA_SOURCE 2 jlist $2
CONSTRAINT 1 transaction <=4136
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 jh unit_byte
LOCK2 0 &jh->b_state_lock
LOCK2 1 &transaction->t_journal->j_list_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock

fs/jbd2/transaction.c jbd2_journal_forget() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_committed_data 0
PARAM_VALUE 0 jh->b_cp_transaction 1-u64max
PARAM_VALUE 0 jh->b_frozen_data 0
PARAM_VALUE 0 jh->b_jlist 0
PARAM_VALUE 0 jh->b_modified 0
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_transaction 4096-ptr_max
PARAM_VALUE 1 transaction 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 jlist 2
BUF_SIZE 0 jh 32,352,520
BUF_SIZE 0 jh 32,352,520
CAPPED_DATA 0 jh 1
CAPPED_DATA 0 jh->b_transaction 1
CAPPED_DATA 1 transaction 1
DATA_SOURCE 0 jh r jbd2_journal_grab_journal_head
PARAM_COMPARE 0 jh->b_transaction == $1
PARAM_COMPARE 1 transaction == $0->b_transaction
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &journal->j_list_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock

fs/jbd2/transaction.c jbd2_journal_forget() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_committed_data 0
PARAM_VALUE 0 jh->b_cp_transaction 1-u64max
PARAM_VALUE 0 jh->b_modified 0
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_transaction 0
PARAM_VALUE 1 transaction 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 jlist 2
BUF_SIZE 0 jh 32,352,520
BUF_SIZE 0 jh 32,352,520
DATA_SOURCE 0 jh r jbd2_journal_grab_journal_head
PARAM_COMPARE 0 jh->b_transaction != $1
PARAM_COMPARE 1 transaction != $0->b_transaction
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &journal->j_list_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock

fs/jbd2/transaction.c jbd2_journal_get_create_access() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_jlist 2
PARAM_VALUE 0 jh->b_modified 0
PARAM_VALUE 0 jh->b_next_transaction 0
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_transaction 0
PARAM_VALUE 1 transaction 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal->j_committing_transaction 1-u64max
PARAM_VALUE 1 transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 jlist 4
BUF_SIZE 0 jh 32,352,520
BUF_SIZE 0 jh 32,352,520
CAPPED_DATA 1 transaction 1
DATA_SOURCE 0 jh r jbd2_journal_add_journal_head
PARAM_COMPARE 0 jh->b_transaction < $1
PARAM_COMPARE 1 transaction > $0->b_transaction
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &journal->j_list_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock

fs/jbd2/journal.c jbd2_journal_write_metadata_buffer() -> __jbd2_journal_file_buffer()

Type Parameter Key Value
PARAM_VALUE 0 jh 4096-ptr_max
PARAM_VALUE 0 jh->b_bh->b_size 0-9223372036854775807
PARAM_VALUE 0 jh->b_frozen_data 0,4096-ptr_max
PARAM_VALUE 0 jh->b_frozen_triggers 0,4096-ptr_max
PARAM_VALUE 0 jh->b_frozen_triggers->t_abort 4096-ptr_max
PARAM_VALUE 0 jh->b_state_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 jh->b_triggers 0,4096-ptr_max
PARAM_VALUE 0 jh->b_triggers->t_abort 4877725388703375360
PARAM_VALUE 1 transaction 4096-ptr_max
PARAM_VALUE 1 transaction->t_buffers 4096-ptr_max
PARAM_VALUE 1 transaction->t_buffers->b_frozen_triggers->t_abort 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal 4096-ptr_max
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_op->readlink 0,1728600404483375104,2832489546165891072,2874824064778891264,3069732422725099520,4516337085607264256
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 transaction->t_journal->j_inode->i_mapping->host->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 1 transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 transaction->t_journal->j_sb_buffer->b_folio->mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 transaction->t_journal->j_superblock->s_errno 0-4294967187,4294967189-u32max
PARAM_VALUE 1 transaction->t_reserved_list 0
PARAM_VALUE 1 transaction->t_state 4
PARAM_VALUE 2 jlist 3
BUF_SIZE 0 jh->b_frozen_data 0-u64max
CAPPED_DATA 0 jh->b_frozen_data 1
CAPPED_DATA 1 transaction 1
CAPPED_DATA 1 transaction->t_requested 1
CAPPED_DATA 1 transaction->t_start 1
DATA_SOURCE 0 jh $1
DATA_SOURCE 1 transaction $0
CONSTRAINT 1 transaction <=4136
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &journal->j_list_lock
LOCK2 0 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock
TYPE_LOCK (struct journal_s)->j_list_lock