Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/ext4/inode.c ext4_block_page_mkwrite() -> ext4_block_write_begin()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 2 pos 0
BUF_SIZE 0 handle (-1),1-s32max
BUF_SIZE 0 handle (-1),1-s32max
CAPPED_DATA 1 folio->mapping 1
DATA_SOURCE 0 handle r __ext4_journal_start
DATA_SOURCE 1 folio $1
DATA_SOURCE 4 get_block $2

fs/ext4/inode.c ext4_da_write_begin() -> ext4_block_write_begin()

Type Parameter Key Value
PARAM_VALUE 0 handle 0
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 4 get_block 8399888114700869632
DATA_SOURCE 1 folio r write_begin_get_folio
DATA_SOURCE 2 pos $2
DATA_SOURCE 3 len $3 [m]
NOSPEC 2 pos
NOSPEC 3 len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 folio->mapping->writeback_index 0-524287[c]
USER_DATA 2 pos s64min-s64max
USER_DATA 3 len 0-s32max[c]
UNITS 2 pos unit_byte
UNITS 3 len unit_byte
HALF_LOCKED2 &inode->i_rwsem

fs/ext4/inode.c ext4_write_begin() -> ext4_block_write_begin()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_superblock->s_errno 0-4294967187,4294967189-u32max
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 4 get_block 8366312295871995904
BUF_SIZE 0 handle (-1),1-s32max
BUF_SIZE 0 handle (-1),1-s32max
DATA_SOURCE 0 handle r __ext4_journal_start
DATA_SOURCE 1 folio r write_begin_get_folio
DATA_SOURCE 2 pos $2
DATA_SOURCE 3 len $3 [m]
NOSPEC 2 pos
NOSPEC 3 len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 folio->mapping->writeback_index 0-524287[c]
USER_DATA 2 pos s64min-s64max
USER_DATA 3 len 0-s32max[c]
UNITS 2 pos unit_byte
UNITS 3 len unit_byte
HALF_LOCKED2 &inode->i_rwsem

fs/ext4/inode.c ext4_write_begin() -> ext4_block_write_begin()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_superblock->s_errno 0-4294967187,4294967189-u32max
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 4 get_block 4610956903071682560
BUF_SIZE 0 handle (-1),1-s32max
BUF_SIZE 0 handle (-1),1-s32max
DATA_SOURCE 0 handle r __ext4_journal_start
DATA_SOURCE 1 folio r write_begin_get_folio
DATA_SOURCE 2 pos $2
DATA_SOURCE 3 len $3 [m]
NOSPEC 2 pos
NOSPEC 3 len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 folio->mapping->writeback_index 0-524287[c]
USER_DATA 2 pos s64min-s64max
USER_DATA 3 len 0-s32max[c]
UNITS 2 pos unit_byte
UNITS 3 len unit_byte
HALF_LOCKED2 &inode->i_rwsem

fs/ext4/inline.c ext4_convert_inline_data_to_extent() -> ext4_block_write_begin()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_revoke_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.owner (-1)
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.owner_cpu u32max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.raw_lock.cnts.counter 0-s32max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.raw_lock.wlocked 0
PARAM_VALUE 0 handle->h_transaction->t_journal->j_superblock->s_checksum_type 4
PARAM_VALUE 0 handle->h_transaction->t_journal->j_superblock->s_errno 0-4294967187,4294967189-u32max
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 2 pos 0
PARAM_VALUE 3 len 0-u16max
PARAM_VALUE 4 get_block 8366312295871995904
BUF_SIZE 0 handle (-1),1-s32max
BUF_SIZE 0 handle (-1),1-s32max
CAPPED_DATA 3 len 1
DATA_SOURCE 0 handle r __ext4_journal_start
DATA_SOURCE 1 folio r __filemap_get_folio
DATA_SOURCE 3 len r ext4_get_inline_size
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem

fs/ext4/inline.c ext4_convert_inline_data_to_extent() -> ext4_block_write_begin()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 handle->h_transaction->t_journal->j_abort_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_revoke_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.dep_map->name 0-255
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.owner (-1)
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.owner_cpu u32max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.raw_lock.cnts.counter 0-s32max
PARAM_VALUE 0 handle->h_transaction->t_journal->j_state_lock.raw_lock.wlocked 0
PARAM_VALUE 0 handle->h_transaction->t_journal->j_superblock->s_checksum_type 4
PARAM_VALUE 0 handle->h_transaction->t_journal->j_superblock->s_errno 0-4294967187,4294967189-u32max
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 2 pos 0
PARAM_VALUE 3 len 0-u16max
PARAM_VALUE 4 get_block 4610956903071682560
BUF_SIZE 0 handle (-1),1-s32max
BUF_SIZE 0 handle (-1),1-s32max
CAPPED_DATA 3 len 1
DATA_SOURCE 0 handle r __ext4_journal_start
DATA_SOURCE 1 folio r __filemap_get_folio
DATA_SOURCE 3 len r ext4_get_inline_size
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem

fs/ext4/inline.c ext4_da_convert_inline_data_to_extent() -> ext4_block_write_begin()

Type Parameter Key Value
PARAM_VALUE 0 handle 0
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 2 pos 0
PARAM_VALUE 3 len 0-u16max
PARAM_VALUE 4 get_block 8399888114700869632
DATA_SOURCE 1 folio r __filemap_get_folio
DATA_SOURCE 3 len r ext4_get_inline_size
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem