Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/ceph/xattr.c __ceph_build_xattrs_blob() -> __get_required_blob_size()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
PARAM_VALUE 0 ci->i_xattrs.dirty 1
PARAM_VALUE 0 ci->netfs.inode.i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ci->netfs.inode.i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ci->netfs.inode.i_sb 4096-ptr_max
PARAM_VALUE 1 name_size 0
PARAM_VALUE 2 val_size 0
DATA_SOURCE 0 ci $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 0 &ci->i_ceph_lock

fs/ceph/xattr.c __ceph_setxattr() -> __get_required_blob_size()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
PARAM_VALUE 0 ci->i_auth_cap 0,4096-ptr_max
PARAM_VALUE 0 ci->i_caps.rb_node 0,4096-ptr_max
PARAM_VALUE 0 ci->i_ceph_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ci->netfs.inode.i_sb 4096-ptr_max
PARAM_VALUE 1 name_size 0-1010101
BUF_SIZE 0 ci->i_xattrs.prealloc_blob (-1),32
CAPPED_DATA 1 name_size 1
CAPPED_DATA 2 val_size 1
DATA_SOURCE 0 ci r ceph_inode
DATA_SOURCE 1 name_size r __fortify_strlen
DATA_SOURCE 2 val_size $3
NOSPEC 2 val_size
NOSPEC 2 val_size
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 val_size 0-4000000[c]
LOCK2 0 &ci->i_ceph_lock
HALF_LOCKED2 &mdsc->snap_rwsem
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock

fs/ceph/xattr.c __ceph_setxattr() -> __get_required_blob_size()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
PARAM_VALUE 0 ci->i_auth_cap 0,4096-ptr_max
PARAM_VALUE 0 ci->i_caps.rb_node 0,4096-ptr_max
PARAM_VALUE 0 ci->i_ceph_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ci->i_xattrs.version 1-u64max
PARAM_VALUE 0 ci->netfs.inode.i_sb 4096-ptr_max
PARAM_VALUE 1 name_size 0-1010101
BUF_SIZE 0 ci->i_xattrs.prealloc_blob (-1),32
CAPPED_DATA 1 name_size 1
CAPPED_DATA 2 val_size 1
DATA_SOURCE 0 ci r ceph_inode
DATA_SOURCE 1 name_size r __fortify_strlen
DATA_SOURCE 2 val_size $3
NOSPEC 2 val_size
NOSPEC 2 val_size
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 val_size 0-4000000[c]
LOCK2 0 &ci->i_ceph_lock
HALF_LOCKED2 &mdsc->snap_rwsem
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock