Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 8 files:
- drivers/iommu/iommufd/main.c, line 156
- drivers/md/dm.c
- drivers/nvme/host/tcp.c
- fs/file_table.c, line 606
- fs/nfsd/vfs.c, line 2571
- kernel/acct.c
- net/handshake/handshake-test.c, line 513
- net/sunrpc/xprtsock.c, line 1313
Smatch caller information:
net/sunrpc/xprtsock.c xs_reset_transport() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/iommu/iommufd/main.c iommufd_object_abort_and_destroy() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | file | 1-u64max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &idev->igroup->lock | ||
| HALF_LOCKED2 | &ioas->mutex | ||
| HALF_LOCKED2 | &viommu->veventqs_rwsem |
fs/nfsd/vfs.c nfsd_filp_close() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | file | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->rcu.func | 1-u64max |
| PARAM_VALUE | 0 | file->f_cred->rcu.next | 0 |
| PARAM_VALUE | 0 | file->f_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->security | 0 |
| PARAM_VALUE | 0 | file->f_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->user->uidhash_node.next | 0 |
| PARAM_VALUE | 0 | file->f_cred->user->uidhash_node.next->pprev | 1-u64max |
| PARAM_VALUE | 0 | file->f_cred->user->uidhash_node.pprev | 0 |
| PARAM_VALUE | 0 | file->f_cred->user_ns->work.entry.next | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_inode->i_mapping->host->i_sb->s_export_op->fh_to_dentry | 0,8684,447817974243774464,687732489194512384,742201802719268864 |
| PARAM_VALUE | 0 | file->f_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | file->f_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | file->f_mapping->host->i_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | file->f_mapping->host->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | file->f_mapping->host->i_sb->s_export_op->fh_to_dentry | 0,8684,447817974243774464,687732489194512384,742201802719268864 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_inode->i_sb->s_cop->empty_dir | 0,86,661756434209751040,4392966320616476672,5234023279986843648,8614756098313990144 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_inode->i_sb->s_cop->get_context | 0,706,17350455714160640,4513809449498124288,5149251875611672576,7067778626864828416 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_inode->i_sb->s_cop->inode_info_offs | 1632,1640,1720,1808,1816,2632,2640,2648,2704,2712 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_inode->i_sb->s_cop->set_context | 0,67,317457138841939968,3250154607523569664,5979066299606671360,6756104566897242112 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_parent->d_sb->__s_d_op->d_init | 0,2385819921126617088,7057831443282669568,7824184004865302528 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_parent->d_sb->__s_d_op->d_iput | 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_parent->d_sb->__s_d_op->d_manage | 0,1859587847549206528 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_parent->d_sb->__s_d_op->d_prune | 0,2225594340392566784,7225953709177749504 |
| PARAM_VALUE | 0 | file->f_path.dentry->d_parent->d_sb->__s_d_op->d_real | 0,4509355519306412032 |
| PARAM_VALUE | 0 | file->f_path.mnt->mnt_sb->s_export_op->flags | 0,127 |
| PARAM_VALUE | 0 | file->f_security | 0 |
| PARAM_VALUE | 0 | *file->f_cred->user->uidhash_node.next->pprev | 1-u64max |
| CAPPED_DATA | 0 | file | 1 |
| DATA_SOURCE | 0 | file | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | file->f_path.d_inode->i_size | |
| NO_OVERFLOW_SIMPLE | 0 | file->f_path.dentry->d_inode->i_size | |
| NO_OVERFLOW_SIMPLE | 0 | file->f_path.dentry->dentry->d_inode->i_size | |
| NO_OVERFLOW_SIMPLE | 0 | file->f_path.moved->d_inode->i_size |
drivers/md/dm.c close_table_device() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | &md->table_devices_lock | ||
| TYPE_LOCK | (struct mapped_device)->table_devices_lock |
drivers/md/dm.c open_table_device() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | file | 4096-ptr_max |
| PARAM_VALUE | 0 | file->__f_path.dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | file->__f_path.mnt | 0 |
| PARAM_VALUE | 0 | file->f_cred | 0,4096-ptr_max |
| PARAM_VALUE | 0 | file->f_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_ep | 0 |
| PARAM_VALUE | 0 | file->f_flags | 0,32768-u32max |
| PARAM_VALUE | 0 | file->f_inode | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_iocb_flags | 0,2,16,18,131072,131074,131088,131090 |
| PARAM_VALUE | 0 | file->f_mapping | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_mode | 0,64-u32max |
| PARAM_VALUE | 0 | file->f_op | 8212791493360840704 |
| PARAM_VALUE | 0 | file->f_owner | 0 |
| PARAM_VALUE | 0 | file->f_pos | 0 |
| PARAM_VALUE | 0 | file->f_pos_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | file->f_pos_lock.first_waiter | 0 |
| PARAM_VALUE | 0 | file->f_pos_lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_pos_lock.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | file->f_pos_lock.owner.counter | 0 |
| PARAM_VALUE | 0 | file->f_ra.async_size | 0 |
| PARAM_VALUE | 0 | file->f_ra.mmap_miss | 0 |
| PARAM_VALUE | 0 | file->f_ra.order | 0 |
| PARAM_VALUE | 0 | file->f_ra.prev_pos | 0 |
| PARAM_VALUE | 0 | file->f_ra.ra_pages | 0 |
| PARAM_VALUE | 0 | file->f_ra.size | 0 |
| PARAM_VALUE | 0 | file->f_ra.start | 0 |
| PARAM_VALUE | 0 | file->f_ref.refcnt.counter | 0 |
| PARAM_VALUE | 0 | file->f_sb_err | 0 |
| PARAM_VALUE | 0 | file->private_data | 3853282235247054848 |
| BUF_SIZE | 0 | file->private_data | 26 |
| CAPPED_DATA | 0 | file->f_cred | 1 |
| DATA_SOURCE | 0 | file | r bdev_file_open_by_dev |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | file->f_inode->i_blkbits | |
| NO_OVERFLOW_SIMPLE | 0 | file->f_inode->i_size | |
| LOCK2 | &md->table_devices_lock | ||
| HALF_LOCKED2 | global &dm_thin_pool_table.mutex | ||
| TYPE_LOCK | (struct mapped_device)->table_devices_lock |
net/handshake/handshake-test.c handshake_req_destroy_test1() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | file | 4096-ptr_max |
| PARAM_VALUE | 0 | file->__f_path.dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | file->__f_path.mnt | 0 |
| PARAM_VALUE | 0 | file->f_cred | 0,4096-ptr_max |
| PARAM_VALUE | 0 | file->f_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | file->f_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | file->f_ep | 0 |
| PARAM_VALUE | 0 | file->f_flags | 0-18433,32770 |
| PARAM_VALUE | 0 | file->f_inode | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_iocb_flags | 0,2,16,18,131072,131074,131088,131090 |
| PARAM_VALUE | 0 | file->f_mapping | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_mode | 0,67108864-u32max |
| PARAM_VALUE | 0 | file->f_op | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_owner | 0 |
| PARAM_VALUE | 0 | file->f_pos | 0 |
| PARAM_VALUE | 0 | file->f_pos_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | file->f_pos_lock.first_waiter | 0 |
| PARAM_VALUE | 0 | file->f_pos_lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_pos_lock.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | file->f_pos_lock.owner.counter | 0 |
| PARAM_VALUE | 0 | file->f_ra.async_size | 0 |
| PARAM_VALUE | 0 | file->f_ra.mmap_miss | 0 |
| PARAM_VALUE | 0 | file->f_ra.order | 0 |
| PARAM_VALUE | 0 | file->f_ra.prev_pos | 0 |
| PARAM_VALUE | 0 | file->f_ra.ra_pages | 0 |
| PARAM_VALUE | 0 | file->f_ra.size | 0 |
| PARAM_VALUE | 0 | file->f_ra.start | 0 |
| PARAM_VALUE | 0 | file->f_ref.refcnt.counter | 0 |
| PARAM_VALUE | 0 | file->f_sb_err | 0 |
| PARAM_VALUE | 0 | file->f_wb_err | 0 |
| PARAM_VALUE | 0 | file->private_data | 4096-ptr_max |
| CAPPED_DATA | 0 | file->f_cred | 1 |
| DATA_SOURCE | 0 | file | r sock_alloc_file |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | file->f_inode->i_blkbits | |
| NO_OVERFLOW_SIMPLE | 0 | file->f_inode->i_size |
kernel/acct.c __free_fput_sync() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | file | 1-ptr_max |
| CAPABLE | 0 | 20 | |
| BIT_INFO | 0 | file | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | file | 0x0,0x7fffffffffffffff |
| NOCHECK_CALL | |||
| LOCK2 | global &acct_on_mutex |
kernel/acct.c close_work() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | file | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_op | 4096-ptr_max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/nvme/host/tcp.c nvme_tcp_alloc_queue() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | file | 4096-ptr_max |
| PARAM_VALUE | 0 | file->__f_path.dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_ep | 0 |
| PARAM_VALUE | 0 | file->f_flags | 0-18433,32770 |
| PARAM_VALUE | 0 | file->f_inode | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_iocb_flags | 0,2,16,18,131072,131074,131088,131090 |
| PARAM_VALUE | 0 | file->f_mapping | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_mode | 167772160,168296448-705560583 |
| PARAM_VALUE | 0 | file->f_op | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_owner | 0 |
| PARAM_VALUE | 0 | file->f_pos_lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | file->f_ref.refcnt.counter | 0 |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | global &nvmf_dev_mutex |
drivers/nvme/host/tcp.c nvme_tcp_free_queue() -> __fput_sync()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |