Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/overlayfs/inode.c ovl_get_nlink() -> ovl_getxattr_upper()

Type Parameter Key Value
PARAM_VALUE 0 ofs->whiteout->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->whiteout->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ofs->workbasedir->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->workbasedir->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ofs->workdir->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->workdir->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ofs->workdir->d_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648
PARAM_VALUE 1 upperdentry 4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_dname 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_iput 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_prune 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_real 0,4096-ptr_max
PARAM_VALUE 2 ox 4
PARAM_VALUE 3 value 1164334029402009600
PARAM_VALUE 4 size 12
BUF_SIZE 0 ofs 1-s32max
BUF_SIZE 0 ofs 1-s32max
BUF_SIZE 0 ofs->config.lowerdirs (-1),8
BUF_SIZE 0 ofs->workdir (-1),1-s32max
BUF_SIZE 1 upperdentry (-1),1-s32max
BUF_SIZE 1 upperdentry (-1),1-s32max
BUF_SIZE 3 value 13
DATA_SOURCE 0 ofs $0
DATA_SOURCE 1 upperdentry $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 ofs->workbasedir_trap->__i_nlink 1-u32max
USER_DATA 0 ofs->workbasedir_trap->i_blocks 0-u64max
USER_DATA 0 ofs->workbasedir_trap->i_bytes 0-511[c]
USER_DATA 0 ofs->workbasedir_trap->i_ino 0-u64max
USER_DATA 0 ofs->workbasedir_trap->i_rdev 0-u32max[c]
USER_DATA 0 ofs->workdir_trap->__i_nlink 1-u32max
USER_DATA 0 ofs->workdir_trap->i_blocks 0-u64max
USER_DATA 0 ofs->workdir_trap->i_bytes 0-511[c]
USER_DATA 0 ofs->workdir_trap->i_ino 0-u64max
USER_DATA 0 ofs->workdir_trap->i_rdev 0-u32max[c]
USER_DATA 1 upperdentry->d_inode->i_mode 0-u16max
USER_DATA 1 upperdentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 ofs->workbasedir_trap->i_bytes
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_bytes
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_size
UNITS 0 ofs unit_byte
UNITS 1 upperdentry unit_jiffy
UNITS 4 size unit_byte
HALF_LOCKED2 0 &ofs->workdir->d_lockref.lock
HALF_LOCKED2 1 &upperdentry->d_lockref.lock

fs/overlayfs/util.c ovl_check_protattr() -> ovl_getxattr_upper()

Type Parameter Key Value
PARAM_VALUE 0 ofs 4096-ptr_max
PARAM_VALUE 1 upperdentry 4096-ptr_max
PARAM_VALUE 2 ox 8
PARAM_VALUE 3 value 4515388495969271808
PARAM_VALUE 4 size 32
BUF_SIZE 0 ofs 1-s32max
BUF_SIZE 0 ofs 1-s32max
BUF_SIZE 3 value 33
DATA_SOURCE 1 upperdentry $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ofs unit_byte

fs/overlayfs/namei.c ovl_get_fh() -> ovl_getxattr_upper()

Type Parameter Key Value
PARAM_VALUE 0 ofs->whiteout->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->whiteout->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ofs->workbasedir->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->workbasedir->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ofs->workdir->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->workdir->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_mapping->host->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 1 upperdentry->d_inode->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 1 upperdentry->d_op->d_compare 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_delete 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_dname 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_hash 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 1 upperdentry->d_op->d_iput 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_manage 0,1859587847549206528
PARAM_VALUE 1 upperdentry->d_op->d_prune 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_real 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_release 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_revalidate 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 1 upperdentry->d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 1 upperdentry->d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 1 upperdentry->d_parent->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 upperdentry->d_parent->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 2 ox 2,5
PARAM_VALUE 3 value 0
PARAM_VALUE 4 size 0
BUF_SIZE 0 ofs (-1),1-s32max
BUF_SIZE 0 ofs (-1),1-s32max
BUF_SIZE 0 ofs->config.lowerdirs (-1),8
BUF_SIZE 0 ofs->workdir (-1),1-s32max
BUF_SIZE 1 upperdentry (-1),1-s32max
BUF_SIZE 1 upperdentry (-1),1-s32max
DATA_SOURCE 0 ofs $0
DATA_SOURCE 1 upperdentry $1
DATA_SOURCE 2 ox $2
HARD_MAX 2 ox 5
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 ofs->workbasedir_trap->__i_nlink 1-u32max
USER_DATA 0 ofs->workbasedir_trap->i_blocks 0-u64max
USER_DATA 0 ofs->workbasedir_trap->i_bytes 0-511[c]
USER_DATA 0 ofs->workbasedir_trap->i_ino 0-u64max
USER_DATA 0 ofs->workbasedir_trap->i_rdev 0-u32max[c]
USER_DATA 0 ofs->workdir_trap->__i_nlink 1-u32max
USER_DATA 0 ofs->workdir_trap->i_blocks 0-u64max
USER_DATA 0 ofs->workdir_trap->i_bytes 0-511[c]
USER_DATA 0 ofs->workdir_trap->i_ino 0-u64max
USER_DATA 0 ofs->workdir_trap->i_rdev 0-u32max[c]
USER_DATA 1 upperdentry->d_inode->i_mode 0-u16max
USER_DATA 1 upperdentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_size
NO_OVERFLOW_SIMPLE 1 upperdentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 1 upperdentry->d_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 1 upperdentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 1 upperdentry->moved->d_inode->i_size
UNITS 0 ofs unit_byte
HALF_LOCKED2 0 &ofs->workdir->d_lockref.lock
HALF_LOCKED2 1 &upperdentry->d_lockref.lock

fs/overlayfs/namei.c ovl_get_fh() -> ovl_getxattr_upper()

Type Parameter Key Value
PARAM_VALUE 0 ofs 4096-ptr_max
PARAM_VALUE 0 ofs->layers 4096-ptr_max
PARAM_VALUE 0 ofs->whiteout->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->whiteout->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ofs->workbasedir->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->workbasedir->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ofs->workdir->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ofs->workdir->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry 4096-ptr_max
PARAM_VALUE 1 upperdentry->d_inode->i_mapping->host->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry->d_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 1 upperdentry->d_inode->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 1 upperdentry->d_op->d_compare 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_delete 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_dname 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_hash 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 1 upperdentry->d_op->d_iput 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_manage 0,1859587847549206528
PARAM_VALUE 1 upperdentry->d_op->d_prune 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_real 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_release 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_revalidate 0,4096-ptr_max
PARAM_VALUE 1 upperdentry->d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 1 upperdentry->d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 1 upperdentry->d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 1 upperdentry->d_parent->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 upperdentry->d_parent->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 1 upperdentry->d_parent->d_sb->__s_d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 1 upperdentry->d_sb->__s_d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
PARAM_VALUE 2 ox 2,5
PARAM_VALUE 4 size 1-3999997
BUF_SIZE 0 ofs (-1),1-s32max
BUF_SIZE 0 ofs (-1),1-s32max
BUF_SIZE 0 ofs->config.lowerdirs (-1),8
BUF_SIZE 0 ofs->workdir (-1),1-s32max
BUF_SIZE 1 upperdentry (-1),1-s32max
BUF_SIZE 1 upperdentry (-1),1-s32max
DATA_SOURCE 0 ofs $0
DATA_SOURCE 1 upperdentry $1
DATA_SOURCE 2 ox $2
DATA_SOURCE 4 size r ovl_getxattr_upper
HARD_MAX 2 ox 5
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 ofs->workbasedir_trap->__i_nlink 1-u32max
USER_DATA 0 ofs->workbasedir_trap->i_blocks 0-u64max
USER_DATA 0 ofs->workbasedir_trap->i_bytes 0-511[c]
USER_DATA 0 ofs->workbasedir_trap->i_ino 0-u64max
USER_DATA 0 ofs->workbasedir_trap->i_rdev 0-u32max[c]
USER_DATA 0 ofs->workdir_trap->__i_nlink 1-u32max
USER_DATA 0 ofs->workdir_trap->i_blocks 0-u64max
USER_DATA 0 ofs->workdir_trap->i_bytes 0-511[c]
USER_DATA 0 ofs->workdir_trap->i_ino 0-u64max
USER_DATA 0 ofs->workdir_trap->i_rdev 0-u32max[c]
USER_DATA 1 upperdentry->d_inode->i_mode 0-u16max
USER_DATA 1 upperdentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 ofs->workdir_trap->i_size
NO_OVERFLOW_SIMPLE 1 upperdentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 1 upperdentry->d_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 1 upperdentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 1 upperdentry->moved->d_inode->i_size
UNITS 0 ofs unit_byte
HALF_LOCKED2 0 &ofs->workdir->d_lockref.lock
HALF_LOCKED2 1 &upperdentry->d_lockref.lock