Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/fat/namei_vfat.c vfat_rename() -> vfat_update_dotdot_de()

Type Parameter Key Value
PARAM_VALUE 0 dir 4096-ptr_max
PARAM_VALUE 0 dir->i_io_list.next->next 4096-ptr_max
PARAM_VALUE 0 dir->i_io_list.next->prev 4096-ptr_max
PARAM_VALUE 0 dir->i_io_list.prev->next 4096-ptr_max
PARAM_VALUE 0 dir->i_io_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 dir->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_lru.next->prev 4096-ptr_max
PARAM_VALUE 0 dir->i_sb 4096-ptr_max
PARAM_VALUE 0 dir->i_sb->s_fs_info->fat_lock.osq.tail.counter s32min-s32max
PARAM_VALUE 0 dir->i_sb->s_fs_info->free_clus_valid 1
PARAM_VALUE 0 dir->i_wb->b_attached.next 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_attached.next->next 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_attached.next->prev 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_dirty.next 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_dirty.next->next 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_dirty.next->prev 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_dirty_time.next 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_dirty_time.next->next 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->b_dirty_time.next->prev 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->dwork.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 dir->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_wb->refcnt.data 0,4096-ptr_max
PARAM_VALUE 0 dir->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.prev->next 4096-ptr_max
PARAM_VALUE 1 inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info->dir_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb->s_fs_info->inode_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh 0,4096-ptr_max
PARAM_VALUE 3 dotdot_de 4096-ptr_max
CAPPED_DATA 0 dir 1
DATA_SOURCE 0 dir $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dir->i_size (-9223372036854775807)-(-2),0-s64max
USER_DATA 1 inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/fat/namei_vfat.c vfat_rename() -> vfat_update_dotdot_de()

Type Parameter Key Value
PARAM_VALUE 0 dir 4096-ptr_max
PARAM_VALUE 0 dir->i_flctx->flc_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_op 4096-ptr_max
PARAM_VALUE 0 dir->i_op->rename 4096-ptr_max
PARAM_VALUE 0 dir->i_sb 4096-ptr_max
PARAM_VALUE 0 dir->i_sb->s_export_op->fh_to_parent 0,5297,148606482432692224,436469935444291584,467281172929331200
PARAM_VALUE 0 dir->i_sb->s_export_op->get_parent 0,8931,264940071972966400,291591359766798336,565128213429456896
PARAM_VALUE 0 dir->i_sb->s_fs_info->options.isvfat 0-1
PARAM_VALUE 0 dir->i_sb->s_fs_info->options.nocase 0-1
PARAM_VALUE 1 inode 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.prev->next 4096-ptr_max
PARAM_VALUE 1 inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info->dir_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb->s_fs_info->inode_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_assoc_buffers.next 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_io_list.next 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_io_list.prev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 dotdot_de 4096-ptr_max
CAPPED_DATA 0 dir 1
CAPPED_DATA 0 dir->i_sb->s_time_max 1
DATA_SOURCE 0 dir $0
PARAM_COMPARE 0 dir->i_sb->s_time_max >= $0->i_sb->s_time_min
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/fat/namei_vfat.c vfat_rename_exchange() -> vfat_update_dotdot_de()

Type Parameter Key Value
PARAM_VALUE 0 dir 4096-ptr_max
PARAM_VALUE 0 dir->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_sb 4096-ptr_max
PARAM_VALUE 1 inode 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.prev->next 4096-ptr_max
PARAM_VALUE 1 inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info->dir_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb->s_fs_info->inode_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh 0,4096-ptr_max
PARAM_VALUE 3 dotdot_de 4096-ptr_max
CAPPED_DATA 0 dir 1
DATA_SOURCE 0 dir $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/fat/namei_vfat.c vfat_rename_exchange() -> vfat_update_dotdot_de()

Type Parameter Key Value
PARAM_VALUE 0 dir 4096-ptr_max
PARAM_VALUE 0 dir->i_flctx->flc_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_op 4096-ptr_max
PARAM_VALUE 0 dir->i_op->rename 4096-ptr_max
PARAM_VALUE 0 dir->i_sb 4096-ptr_max
PARAM_VALUE 1 inode 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.prev->next 4096-ptr_max
PARAM_VALUE 1 inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info->dir_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb->s_fs_info->inode_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh 0,4096-ptr_max
PARAM_VALUE 3 dotdot_de 4096-ptr_max
CAPPED_DATA 0 dir 1
CAPPED_DATA 0 dir->i_sb->s_time_max 1
DATA_SOURCE 0 dir $0
PARAM_COMPARE 0 dir->i_sb->s_time_max >= $0->i_sb->s_time_min
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/fat/namei_vfat.c vfat_rename_exchange() -> vfat_update_dotdot_de()

Type Parameter Key Value
PARAM_VALUE 0 dir 4096-ptr_max
PARAM_VALUE 0 dir->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_sb 4096-ptr_max
PARAM_VALUE 1 inode 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.prev->next 4096-ptr_max
PARAM_VALUE 1 inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info->dir_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb->s_fs_info->inode_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_assoc_buffers.next 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_io_list.next 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_io_list.prev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 dotdot_de 4096-ptr_max
CAPPED_DATA 0 dir 1
DATA_SOURCE 0 dir $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/fat/namei_vfat.c vfat_rename_exchange() -> vfat_update_dotdot_de()

Type Parameter Key Value
PARAM_VALUE 0 dir 4096-ptr_max
PARAM_VALUE 0 dir->i_flctx->flc_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dir->i_op 4096-ptr_max
PARAM_VALUE 0 dir->i_op->rename 4096-ptr_max
PARAM_VALUE 0 dir->i_sb 4096-ptr_max
PARAM_VALUE 1 inode 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_io_list.prev->next 4096-ptr_max
PARAM_VALUE 1 inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info 4096-ptr_max
PARAM_VALUE 1 inode->i_sb->s_fs_info->dir_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_sb->s_fs_info->inode_hash_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 1 inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_assoc_buffers.next 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_io_list.next 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_io_list.prev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 2 dotdot_bh->b_folio->mapping->host->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 dotdot_de 4096-ptr_max
CAPPED_DATA 0 dir 1
CAPPED_DATA 0 dir->i_sb->s_time_max 1
DATA_SOURCE 0 dir $0
PARAM_COMPARE 0 dir->i_sb->s_time_max >= $0->i_sb->s_time_min
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem