Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 5 files:
- fs/ceph/dir.c
- fs/ceph/inode.c, line 1818
- fs/configfs/dir.c
- fs/dcache.c, line 2969
- fs/nfs/dir.c, line 2706
Smatch caller information:
fs/configfs/dir.c configfs_register_subsystem() -> d_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | entry | 4096-ptr_max |
| PARAM_VALUE | 1 | inode | 0 |
| DATA_SOURCE | 0 | entry | r d_alloc_name |
| NOCHECK_CALL |
fs/configfs/dir.c create_default_group() -> d_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | entry | 4096-ptr_max |
| PARAM_VALUE | 1 | inode | 0 |
| DATA_SOURCE | 0 | entry | r d_alloc_name |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/nfs/dir.c nfs_link() -> d_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | entry | 4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_hash.pprev | 0 |
| PARAM_VALUE | 0 | entry->d_inode | 0 |
| PARAM_VALUE | 0 | entry->d_inode->i_flctx->flc_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | entry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_fs_info->nfs_client->cl_nfs_mod->owner->refcnt.counter | 0-s32max |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_work.flags | 0-4294967295 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_work.is_hard | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_work.is_lazy | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_work.is_queued | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_work.is_soft | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_umount.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_umount.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent | 4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_flctx->flc_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->active.counter | s32min-s32max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_cons_state | (-12),(-4),0-s32max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_count.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_exchange_flags | 0-4294967295 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_net->refcnt_tracker.dead | 1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_ns_tracker->dead | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_shutdown | 1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_work.flags | 0-4294967295 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcwaitq.nr | 0-255 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcwaitq.priority | 0-255 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_fs_info->nfs_client->cl_slot_tbl->max_slots | 0-4294967295 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_umount.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_umount.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_wb->dwork.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_wb->dwork.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_wb->dwork.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 0 | *entry->d_inode->i_sb->s_fs_info->nfs_client->cl_rpcclient->cl_cred->security | (-4611686018427387904)-4611686018427387903 |
| PARAM_VALUE | 1 | inode | 4096-ptr_max |
| BUF_SIZE | 0 | entry | (-1),1-s32max |
| BUF_SIZE | 0 | entry | (-1),1-s32max |
| DATA_SOURCE | 0 | entry | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ceph/dir.c ceph_finish_lookup() -> d_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | entry | 4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_hash.pprev | 0 |
| PARAM_VALUE | 0 | entry->d_inode | 0 |
| PARAM_VALUE | 0 | entry->d_inode->i_data.host->i_sb->s_export_op->encode_fh | 0,2,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_inode->i_mapping->host->i_sb->s_export_op->encode_fh | 0,2,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->dq_op->alloc_dquot | 4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_bdev->bd_holder_ops->freeze | 7536128971011219456 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_bdev->bd_holder_ops->sync | 8235259936313790464 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648,2712 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_export_op->encode_fh | 0,2,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_export_op->flags | 0,127 |
| PARAM_VALUE | 0 | entry->d_op->d_automount | 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016 |
| PARAM_VALUE | 0 | entry->d_op->d_compare | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_delete | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_dname | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_hash | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_init | 0,2385819921126617088,7057831443282669568,7824184004865302528 |
| PARAM_VALUE | 0 | entry->d_op->d_iput | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_manage | 0,1859587847549206528 |
| PARAM_VALUE | 0 | entry->d_op->d_prune | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_real | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_release | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_revalidate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_unalias_trylock | 0,6635409759016140800 |
| PARAM_VALUE | 0 | entry->d_op->d_unalias_unlock | 0,6336447517789900800 |
| PARAM_VALUE | 0 | entry->d_op->d_weak_revalidate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->dq_op->alloc_dquot | 4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_cop->empty_dir | 0,86,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_cop->get_context | 0,706,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->s_cop->set_context | 0,67,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_automount | 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_init | 0,2385819921126617088,7057831443282669568,7824184004865302528 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_iput | 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_manage | 0,1859587847549206528 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_prune | 0,2225594340392566784,7225953709177749504 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_real | 0,4509355519306412032 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_unalias_trylock | 0,6635409759016140800 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_unalias_unlock | 0,6336447517789900800 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_weak_revalidate | 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_automount | 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_init | 0,2385819921126617088,7057831443282669568,7824184004865302528 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_iput | 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_manage | 0,1859587847549206528 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_prune | 0,2225594340392566784,7225953709177749504 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_real | 0,4509355519306412032 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_unalias_trylock | 0,6635409759016140800 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_unalias_unlock | 0,6336447517789900800 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_weak_revalidate | 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328 |
| PARAM_VALUE | 1 | inode | 0 |
| BUF_SIZE | 0 | entry | (-1)-s32max |
| BUF_SIZE | 0 | entry | (-1)-s32max |
| BUF_SIZE | 0 | entry->d_parent | s32min,(-1)-s32max |
| CAPPED_DATA | 0 | entry | 1 |
| DATA_SOURCE | 0 | entry | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | entry->__d_name.hash | 0-u32max[c] |
| USER_DATA | 0 | entry->d_inode->i_mode | 0-u16max |
| USER_DATA | 0 | entry->d_inode->i_size | (-9223372036854775807)-(-4),0-s64max |
| USER_DATA | 0 | entry->d_parent->__d_name.hash | 0-u32max[c] |
| USER_DATA | 0 | entry->d_sb->s_flags | 0-u64max[c] |
| USER_DATA | 0 | *entry->__d_name.name | 0-255 |
| USER_DATA | 0 | *entry->d_parent->__d_name.name | 0-255 |
| NO_OVERFLOW_SIMPLE | 0 | entry->d_inode->i_blkbits | |
| NO_OVERFLOW_SIMPLE | 0 | entry->d_sb->s_blocksize | |
| NO_OVERFLOW_SIMPLE | 0 | entry->d_sb->s_blocksize_bits | |
| UNITS | 0 | entry | unit_jiffy |
| USER_PTR | 0 | entry->__d_name.name | |
| HALF_LOCKED2 | 0 | &entry->d_lockref.lock |
fs/ceph/dir.c ceph_lookup() -> d_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | entry | 4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_hash.pprev | 0 |
| PARAM_VALUE | 0 | entry->d_inode | 0 |
| PARAM_VALUE | 0 | entry->d_inode->i_data.host->i_sb->s_export_op->encode_fh | 0,2,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->dq_op->alloc_dquot | 2264300779669417984,3441108896091467776 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648,2704,2712 |
| PARAM_VALUE | 0 | entry->d_inode->i_sb->s_export_op->flags | 0,127 |
| PARAM_VALUE | 0 | entry->d_name.len | 0-255 |
| PARAM_VALUE | 0 | entry->d_op->d_automount | 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016 |
| PARAM_VALUE | 0 | entry->d_op->d_compare | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_delete | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_dname | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_hash | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_init | 0,2385819921126617088,7057831443282669568,7824184004865302528 |
| PARAM_VALUE | 0 | entry->d_op->d_iput | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_manage | 0,1859587847549206528 |
| PARAM_VALUE | 0 | entry->d_op->d_prune | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_real | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_release | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_revalidate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_op->d_unalias_trylock | 0,6635409759016140800 |
| PARAM_VALUE | 0 | entry->d_op->d_unalias_unlock | 0,6336447517789900800 |
| PARAM_VALUE | 0 | entry->d_op->d_weak_revalidate | 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | entry->d_parent->d_inode->i_sb->dq_op->alloc_dquot | 4096-ptr_max |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_automount | 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_init | 0,2385819921126617088,7057831443282669568,7824184004865302528 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_iput | 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_manage | 0,1859587847549206528 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_prune | 0,2225594340392566784,7225953709177749504 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_real | 0,4509355519306412032 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_unalias_trylock | 0,6635409759016140800 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_unalias_unlock | 0,6336447517789900800 |
| PARAM_VALUE | 0 | entry->d_parent->d_sb->__s_d_op->d_weak_revalidate | 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_automount | 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_init | 0,2385819921126617088,7057831443282669568,7824184004865302528 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_iput | 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_manage | 0,1859587847549206528 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_prune | 0,2225594340392566784,7225953709177749504 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_real | 0,4509355519306412032 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_unalias_trylock | 0,6635409759016140800 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_unalias_unlock | 0,6336447517789900800 |
| PARAM_VALUE | 0 | entry->d_sb->__s_d_op->d_weak_revalidate | 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328 |
| PARAM_VALUE | 1 | inode | 0 |
| BUF_SIZE | 0 | entry | (-1)-s32max |
| BUF_SIZE | 0 | entry | (-1)-s32max |
| BUF_SIZE | 0 | entry->d_parent | s32min,(-1)-s32max |
| DATA_SOURCE | 0 | entry | $1 |
| FUZZY_MAX | 0 | entry->d_name.len | 255 |
| STR_LEN | 0 | entry->d_parent | (-1),1-24,26-27,31-34,63,99,115,254-255 |
| HARD_MAX | 0 | entry->d_name.len | 255 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | entry->__d_name.hash | 0-u32max[c] |
| USER_DATA | 0 | entry->d_inode->i_mode | 0-u16max |
| USER_DATA | 0 | entry->d_inode->i_size | (-9223372036854775807)-(-4),0-s64max |
| USER_DATA | 0 | entry->d_parent->__d_name.hash | 0-u32max[c] |
| USER_DATA | 0 | entry->d_parent->d_inode->i_mode | 0-u16max |
| USER_DATA | 0 | entry->d_parent->d_inode->i_size | (-9223372036854775807)-(-4),0-s64max |
| USER_DATA | 0 | entry->d_parent->d_sb->s_flags | 0-u64max[c] |
| USER_DATA | 0 | entry->d_sb->s_flags | 0-u64max[c] |
| USER_DATA | 0 | *entry->__d_name.name | 0-255 |
| USER_DATA | 0 | *entry->d_parent->__d_name.name | 0-255 |
| NO_OVERFLOW_SIMPLE | 0 | entry->d_sb->s_blocksize | |
| NO_OVERFLOW_SIMPLE | 0 | entry->d_sb->s_blocksize_bits | |
| USER_PTR | 0 | entry->__d_name.name | |
| USER_PTR | 0 | entry->d_parent->__d_name.name | |
| HALF_LOCKED2 | &dir->i_rwsem | ||
| HALF_LOCKED2 | 0 | &entry->d_lockref.lock |