Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/ceph/snap.c ceph_handle_snap() -> ceph_change_snap_realm()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 1 realm 4096-ptr_max
BUF_SIZE 1 realm (-1),296
BUF_SIZE 1 realm (-1),296
DATA_SOURCE 0 inode r ceph_find_inode
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &ci->i_ceph_lock
LOCK2 &mdsc->snap_rwsem
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem

fs/ceph/caps.c __ceph_put_cap_refs() -> ceph_change_snap_realm()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 realm 0
BUF_SIZE 0 inode 1160
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ci->i_ceph_lock
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock

fs/ceph/caps.c __ceph_remove_cap() -> ceph_change_snap_realm()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
PARAM_VALUE 1 realm 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ci->i_ceph_lock

fs/ceph/caps.c ceph_add_cap() -> ceph_change_snap_realm()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->bmap 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->direct_IO 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->dirty_folio 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->free_folio 0,87018317492477952,1576041750683152384,3223952723663937536,4787850423793061888
PARAM_VALUE 0 inode->i_data.a_ops->launder_folio 0,122107076755599360,327075084911996928,858079631894568960,7268098942548045824
PARAM_VALUE 0 inode->i_data.a_ops->migrate_folio 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->read_folio 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->readahead 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->release_folio 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->swap_activate 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->swap_rw 0,4986685196838862848,8487923053812363264
PARAM_VALUE 0 inode->i_data.a_ops->write_begin 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->write_end 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.a_ops->writepages 0,4096-ptr_max
PARAM_VALUE 0 inode->i_data.host->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->host->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 inode->i_op->atomic_open 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->create 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->fiemap 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->fileattr_get 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->fileattr_set 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->get_acl 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->get_inode_acl 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->get_link 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->get_offset_ctx 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->getattr 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->link 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->listxattr 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->lookup 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->mkdir 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->mknod 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->permission 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->readlink 0,1728600404483375104,2832489546165891072,2874824064778891264,3069732422725099520,4516337085607264256
PARAM_VALUE 0 inode->i_op->rename 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->rmdir 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->set_acl 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->setattr 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->symlink 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->sync_lazytime 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->tmpfile 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->unlink 0,4096-ptr_max
PARAM_VALUE 0 inode->i_op->update_time 0,4096-ptr_max
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_cop->empty_dir 0,86,661756434209751040,4392966320616476672,5234023279986843648,8614756098313990144
PARAM_VALUE 0 inode->i_sb->s_cop->get_context 0,706,17350455714160640,4513809449498124288,5149251875611672576,7067778626864828416
PARAM_VALUE 0 inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 0 inode->i_sb->s_cop->set_context 0,67,317457138841939968,3250154607523569664,5979066299606671360,6756104566897242112
PARAM_VALUE 0 inode->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 1 realm 4096-ptr_max
BUF_SIZE 0 inode (-1),1-s32max
BUF_SIZE 0 inode (-1),1-s32max
BUF_SIZE 0 inode->i_fop (-1),272
BUF_SIZE 0 inode->i_mapping->a_ops (-1),152
BUF_SIZE 0 inode->i_op (-1),256
CAPPED_DATA 1 realm->ino 1
DATA_SOURCE 0 inode $0
DATA_SOURCE 1 realm r ceph_lookup_snap_realm
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
USER_DATA 0 inode->i_ino 0-u64max
USER_DATA 0 inode->i_mode 0-u16max[c]
USER_DATA 0 inode->i_rdev 0-u32max[c]
USER_DATA 0 inode->i_sb->s_flags 0-u64max[c]
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 inode->i_size
HALF_LOCKED2 &ci->i_ceph_lock
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 &session->s_mutex
HALF_LOCKED2 &session->s_mutex

fs/ceph/inode.c ceph_evict_inode() -> ceph_change_snap_realm()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PARAM_VALUE 0 inode->i_data.i_pages.xa_head 0
PARAM_VALUE 0 inode->i_data.nrpages 0
PARAM_VALUE 0 inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 inode->i_lru.next 4096-ptr_max
PARAM_VALUE 0 inode->i_lru.next->prev 4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->host->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 0 inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 inode->i_op->sync_lazytime 0,6951464784224747520
PARAM_VALUE 0 inode->i_sb 4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_cop 4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_export_op->encode_fh 0,2,4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_inode_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 inode->i_sb->s_op 4096-ptr_max
PARAM_VALUE 0 inode->i_sb->s_op->evict_inode 4096-ptr_max
PARAM_VALUE 0 inode->i_sb_list.next 4096-ptr_max
PARAM_VALUE 0 inode->i_sb_list.next->next 4096-ptr_max
PARAM_VALUE 0 inode->i_sb_list.next->prev 4096-ptr_max
PARAM_VALUE 0 inode->i_sb_list.prev 4096-ptr_max
PARAM_VALUE 0 inode->i_sb_list.prev->next 4096-ptr_max
PARAM_VALUE 0 inode->i_sb_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 inode->i_state.__state 768
PARAM_VALUE 0 inode->i_wb_list.next 4096-ptr_max
PARAM_VALUE 1 realm 0
CAPPED_DATA 0 inode 1
CAPPED_DATA 0 inode->i_io_list.next 1
CAPPED_DATA 0 &inode->i_data 1
DATA_SOURCE 0 inode $0
PARAM_COMPARE 0 &inode->i_wb_list == $0->i_wb_list.next
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_bytes