Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 5 files:
- fs/ecryptfs/crypto.c, line 1002
- fs/ecryptfs/dentry.c, line 55
- fs/ecryptfs/file.c
- fs/ecryptfs/inode.c
- fs/stack.c, line 76
Smatch caller information:
fs/ecryptfs/dentry.c ecryptfs_d_revalidate() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/ecryptfs/inode.c ecryptfs_fileattr_set() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 1 | src | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ecryptfs/inode.c ecryptfs_getattr() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &iint->mutex | ||
| HALF_LOCKED2 | &lo->lo_mutex |
fs/ecryptfs/inode.c ecryptfs_inode_set() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->bmap | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->direct_IO | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->dirty_folio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->error_remove_folio | 0,373303432983703552,3650281484867371008,6933238642996355072,7934844886813757440 |
| PARAM_VALUE | 0 | dest->i_data.a_ops->free_folio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->invalidate_folio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->is_dirty_writeback | 0,7518438349615988736,8867638692533350400 |
| PARAM_VALUE | 0 | dest->i_data.a_ops->is_partially_uptodate | 0,1933474595957665792,7182876493439184896 |
| PARAM_VALUE | 0 | dest->i_data.a_ops->launder_folio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->migrate_folio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->read_folio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->readahead | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->release_folio | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->swap_activate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->swap_deactivate | 0,1546359495696728064,3888069641387622400,7359158453655175168,8604917376913055744 |
| PARAM_VALUE | 0 | dest->i_data.a_ops->swap_rw | 0,4986685196838862848,8487923053812363264 |
| PARAM_VALUE | 0 | dest->i_data.a_ops->write_begin | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->write_end | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_data.a_ops->writepages | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_mapping->a_ops->error_remove_folio | 0,373303432983703552,3650281484867371008,6933238642996355072,7934844886813757440 |
| PARAM_VALUE | 0 | dest->i_mapping->a_ops->free_folio | 0,87018317492477952,1576041750683152384,3223952723663937536,4787850423793061888 |
| PARAM_VALUE | 0 | dest->i_mapping->a_ops->is_dirty_writeback | 0,7518438349615988736,8867638692533350400 |
| PARAM_VALUE | 0 | dest->i_mapping->a_ops->is_partially_uptodate | 0,1933474595957665792,7182876493439184896 |
| PARAM_VALUE | 0 | dest->i_mapping->a_ops->launder_folio | 0,122107076755599360,327075084911996928,858079631894568960,7268098942548045824 |
| PARAM_VALUE | 0 | dest->i_mapping->a_ops->swap_deactivate | 0,1546359495696728064,3888069641387622400,7359158453655175168,8604917376913055744 |
| PARAM_VALUE | 0 | dest->i_mapping->a_ops->swap_rw | 0,4986685196838862848,8487923053812363264 |
| PARAM_VALUE | 0 | dest->i_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | dest->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | dest->i_op->atomic_open | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->create | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->fiemap | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->fileattr_get | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->fileattr_set | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->get_acl | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->get_inode_acl | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->get_link | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->get_offset_ctx | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->getattr | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->link | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->listxattr | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->lookup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->mkdir | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->mknod | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->permission | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->readlink | 0,1728600404483375104,2832489546165891072,2874824064778891264,3069732422725099520,4516337085607264256 |
| PARAM_VALUE | 0 | dest->i_op->rename | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->rmdir | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->set_acl | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->setattr | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->symlink | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->sync_lazytime | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->tmpfile | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->unlink | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->update_time | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_sb->s_cop->empty_dir | 0,661756434209751040,4392966320616476672,5234023279986843648,8614756098313990144 |
| PARAM_VALUE | 0 | dest->i_sb->s_cop->get_context | 0,17350455714160640,4513809449498124288,5149251875611672576,7067778626864828416 |
| PARAM_VALUE | 0 | dest->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | dest->i_sb->s_cop->set_context | 0,317457138841939968,3250154607523569664,5979066299606671360,6756104566897242112 |
| BUF_SIZE | 0 | dest | (-1),1-s32max |
| BUF_SIZE | 0 | dest | (-1),1-s32max |
| BUF_SIZE | 0 | dest->i_sb | (-1),80,2816,2880 |
| BUF_SIZE | 1 | src | (-1),4,8,16,24,32,176,352 |
| BUF_SIZE | 1 | src | (-1),4,8,16,24,32,176,352 |
| DATA_SOURCE | 0 | dest | $0 |
| DATA_SOURCE | 1 | src | $1 |
| STR_LEN | 0 | dest->i_sb | (-1),7-8 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | dest->i_mode | 0-u16max[c] |
| USER_DATA | 0 | dest->i_sb->s_flags | 0-u64max[c] |
| NO_OVERFLOW_SIMPLE | 0 | dest->i_blkbits | |
| NO_OVERFLOW_SIMPLE | 0 | dest->i_mapping->host->i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | dest->i_mapping->host->i_size | |
| NO_OVERFLOW_SIMPLE | 0 | dest->i_sb->s_blocksize | |
| NO_OVERFLOW_SIMPLE | 0 | dest->i_sb->s_blocksize_bits | |
| NO_OVERFLOW_SIMPLE | 0 | dest->i_size | |
| LOCK2 | global &inode_hash_lock |
fs/ecryptfs/inode.c ecryptfs_rename() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | dest->i_mode | 0-u16max |
| HALF_LOCKED2 | &source->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
fs/ecryptfs/inode.c ecryptfs_rename() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_sb | 4096-ptr_max |
| CAPPED_DATA | 0 | dest | 1 |
| DATA_SOURCE | 0 | dest | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &source->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
fs/ecryptfs/inode.c ecryptfs_rename() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_flctx->flc_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | dest->i_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | dest->i_op | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_op->rename | 4096-ptr_max |
| CAPPED_DATA | 0 | dest | 1 |
| DATA_SOURCE | 0 | dest | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &source->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
fs/ecryptfs/inode.c ecryptfs_set_acl() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 1 | src->i_fsnotify_marks | 0 |
| PARAM_VALUE | 1 | src->i_op | 0-1144202292485988351,1144202292485988353-u64max |
| PARAM_VALUE | 1 | src->i_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->type | 0-1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | dest->i_mode | 0-u16max |
| USER_DATA | 0 | dest->i_size | (-9223372036854775807)-(-4),0-s64max |
| HALF_LOCKED2 | &dentry->d_lockref.lock |
fs/ecryptfs/inode.c ecryptfs_setattr() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_mapping->host->i_sb->s_cop->empty_dir | 0,86,661756434209751040,4392966320616476672,5234023279986843648,8614756098313990144 |
| PARAM_VALUE | 0 | dest->i_mapping->host->i_sb->s_cop->get_context | 0,706,17350455714160640,4513809449498124288,5149251875611672576,7067778626864828416 |
| PARAM_VALUE | 0 | dest->i_mapping->host->i_sb->s_cop->set_context | 0,67,317457138841939968,3250154607523569664,5979066299606671360,6756104566897242112 |
| PARAM_VALUE | 0 | dest->i_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | dest->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| DATA_SOURCE | 1 | src | r ecryptfs_inode_to_lower |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | dest->i_mode | 0-u16max |
| USER_DATA | 0 | dest->i_size | (-9223372036854775807)-(-4),0-s64max |
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock |
fs/ecryptfs/inode.c ecryptfs_setxattr() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_opflags | 8-u16max |
| PARAM_VALUE | 0 | dest->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | dest->i_sb | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_sb->s_xattr | 1-u64max |
| PARAM_VALUE | 1 | src | 4096-ptr_max |
| PARAM_VALUE | 1 | src->i_flctx->flc_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | src->i_fsnotify_marks | 0 |
| PARAM_VALUE | 1 | src->i_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | src->i_op | 0-1144202292485988351,1144202292485988353-u64max |
| PARAM_VALUE | 1 | src->i_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->type | 0-1 |
| DATA_SOURCE | 0 | dest | $1 |
| STR_LEN | 0 | dest | (-1)-0 |
| STR_LEN | 0 | dest | (-1)-0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | dest->i_mode | 0-u16max |
| USER_DATA | 0 | dest->i_size | (-9223372036854775807)-(-4),0-s64max |
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | 0 | &dest->i_rwsem |
fs/ecryptfs/crypto.c ecryptfs_write_metadata_to_xattr() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dest | 4096-ptr_max |
| PARAM_VALUE | 0 | dest->i_sb | 4096-ptr_max |
| PARAM_VALUE | 1 | src | 4096-ptr_max |
| PARAM_VALUE | 1 | src->i_opflags | 8-u16max |
| PARAM_VALUE | 1 | src->i_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 1 | src->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | src->i_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | src->i_sb->s_xattr | 1-u64max |
| DATA_SOURCE | 0 | dest | $1 |
| BIT_INFO | 1 | src->i_opflags | 0x8,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 1 | &src->i_rwsem | |
| HALF_LOCKED2 | &crypt_stat->cs_mutex | ||
| HALF_LOCKED2 | &ecryptfs_dentry->d_lockref.lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ecryptfs/file.c ecryptfs_compat_ioctl() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
fs/ecryptfs/file.c ecryptfs_unlocked_ioctl() -> fsstack_copy_attr_all()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |