Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/ext4/inode.c ext4_do_writepages() -> ext4_should_dioread_nolock()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->host 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->host->i_sb 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->i_pages.xa_flags 33554432-u32max
PARAM_VALUE 0 inode->i_mapping->nrpages 1-u64max
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

fs/ext4/inode.c ext4_page_mkwrite() -> ext4_should_dioread_nolock()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.dep_map->name 0-255
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.first_waiter->type 0-1
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 inode->i_sb->s_umount.first_waiter->type 0-1
CAPPED_DATA 0 inode 1
CAPPED_DATA 0 inode->i_sb 1
BIT_INFO 0 inode->i_flags 0x0,0xfffffff7
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

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

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.first_waiter->type 0-1
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2712
CAPPED_DATA 0 inode->i_sb 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem

fs/ext4/inode.c mpage_map_one_extent() -> ext4_should_dioread_nolock()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_ino 2-u32max
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 inode->i_mapping->invalidate_lock.first_waiter->type 0-1
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_bdev->bd_mapping->i_private_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_2orders.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_allocated.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_breaks.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_ex_scanned.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_goals.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_groups_scanned.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_len_goals.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_reqs.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_stream_goals.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_bal_success.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirs_counter.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirs_counter.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirs_counter.lock.raw_lock.locked 0-255
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirs_counter.lock.raw_lock.locked_pending 0-u16max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirs_counter.lock.raw_lock.pending 0-255
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirs_counter.lock.raw_lock.tail 0-u16max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirtyclusters_counter.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_dirtyclusters_counter.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_err_ratelimit_state.burst s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_err_ratelimit_state.flags 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_err_ratelimit_state.interval s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_err_ratelimit_state.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_err_ratelimit_state.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_err_ratelimit_state.missed.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_error_notify_mutex.osq.tail.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_lock.osq.tail.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_crc s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_cur_tag s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_current_pass s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_modified_inodes_size s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_modified_inodes_used s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_regions_size s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_regions_used s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_regions_valid s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_replay_expected_off s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_replay_state.fc_replay_num_tags s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_fc_subtid.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_freeclusters_counter.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_freeinodes_counter.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.release.cpu s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.release.timer.flags 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.state_add_uevent_sent 0-1
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.state_in_sysfs 0-1
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.state_initialized 0-1
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.state_remove_uevent_sent 0-1
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj.uevent_suppress 0-1
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj_unregister.done 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj_unregister.wait.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_kobj_unregister.wait.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_lock_busy.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_mb_buddies_generated.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_mb_discarded.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_mb_free_pending.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_mb_lost_chunks.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_mb_preallocated.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_msg_count.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_msg_ratelimit_state.burst s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_msg_ratelimit_state.flags 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_msg_ratelimit_state.interval s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_msg_ratelimit_state.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_msg_ratelimit_state.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_msg_ratelimit_state.missed.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_orphan_info.of_blocks s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_orphan_info.of_csum_seed 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_orphan_lock.osq.tail.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_resgid.val 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_resuid.val 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_retry_alloc_pending.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_warning_count.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_warning_ratelimit_state.burst s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_warning_ratelimit_state.flags 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_warning_ratelimit_state.interval s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_warning_ratelimit_state.lock.magic 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_warning_ratelimit_state.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_writepages_rwsem.block.counter s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_writepages_rwsem.rss.gp_count s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_fs_info->s_writepages_rwsem.rss.gp_state s32min-s32max
PARAM_VALUE 0 inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 inode->i_sb->s_umount.first_waiter->type 0-1
CAPPED_DATA 0 inode->i_ino 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem