Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/xfs/xfs_exchrange.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

net/core/net_namespace.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex

fs/xattr.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/infiniband/core/ucaps.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 &file->hw_destroy_rwsem
LOCK2 &file->ucontext_lock
LOCK2 global &ucaps_mutex
TYPE_LOCK (struct ib_uverbs_file)->hw_destroy_rwsem
TYPE_LOCK (struct ib_uverbs_file)->ucontext_lock

security/integrity/ima/ima_main.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/media/mc/mc-request.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 lock

fs/ocfs2/cluster/heartbeat.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &buffer->mutex
LOCK2 &frag->frag_sem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct configfs_buffer)->mutex
TYPE_LOCK (struct configfs_fragment)->frag_sem

fs/file_attr.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/splice.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

io_uring/msg_ring.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

io_uring/sqpoll.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/namei.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

fs/remap_range.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/bpf/syscall.c class_fd_destructor() -> fdput()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/readahead.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/utimes.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/read_write.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/read_write.c fdput_pos() -> fdput()

Type Parameter Key Value
DATA_SOURCE 0 fd $0
NOCHECK_CALL

security/landlock/syscalls.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

security/landlock/syscalls.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/watch_queue.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

io_uring/zcrx.c class_fd_destructor() -> fdput()

Type Parameter Key Value
CAPABLE 0 12
NOCHECK_CALL
LOCK2 &ctx->uring_lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

arch/x86/kvm/svm/sev.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/nsproxy.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/signalfd.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

mm/filemap.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/stat.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/statfs.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/virt/acrn/irqfd.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/taskstats.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

kernel/pid.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/fuse/dev.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/namespace.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/namespace.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

arch/x86/kvm/../../../virt/kvm/eventfd.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/readdir.c fdput_pos() -> fdput()

Type Parameter Key Value
DATA_SOURCE 0 fd $0
NOCHECK_CALL

fs/smb/client/ioctl.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/cgroup/cgroup.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cgroup_mutex

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_open_xrcd() -> fdput()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 &ibudev->xrcd_tree_mutex
HALF_LOCKED2 &file->device->disassociate_srcu
TYPE_LOCK (struct ib_uverbs_device)->xrcd_tree_mutex

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_open_xrcd() -> fdput()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 &ibudev->xrcd_tree_mutex
HALF_LOCKED2 &file->device->disassociate_srcu
TYPE_LOCK (struct ib_uverbs_device)->xrcd_tree_mutex

fs/eventfd.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &d->mutex
HALF_LOCKED2 &devx_event_table->event_xa_lock
HALF_LOCKED2 &fdata->lock
HALF_LOCKED2 &hpriv->notifier_event.lock
HALF_LOCKED2 &mdev_state->ops_lock
HALF_LOCKED2 &vdev->igate
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 _T->lock

arch/x86/kvm/../../../virt/kvm/vfio.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 _T->lock

kernel/events/core.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

sound/core/pcm_native.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 _T->lock

fs/fhandle.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/timerfd.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/xen/privcmd.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/vfio/virqfd.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &vdev->igate
HALF_LOCKED2 &vdev->ioeventfds_lock

arch/x86/kernel/cpu/sgx/main.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/eventpoll.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/ioctl.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

net/core/sock_map.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

net/socket.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/infiniband/core/ucma.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/notify/inotify/inotify_user.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/bpf/bpf_inode_storage.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 rcu_read

fs/locks.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/select.c class_fd_destructor() -> fdput()

Type Parameter Key Value
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/signal.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/xfs/xfs_healthmon.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/btrfs/ioctl.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/gpu/drm/drm_syncobj.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/bpf/btf.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/sys.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/f2fs/file.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/bpf/map_in_map.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/ext4/ioctl.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/vfio/group.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

io_uring/epoll.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/fadvise.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

security/loadpin/loadpin.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/quota/quota.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/fsopen.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/xfs/xfs_ioctl.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/kernel_read_file.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/bpf/verifier.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/media/rc/lirc_dev.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/trace/bpf_trace.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/notify/fanotify/fanotify_user.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/open.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/open.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/sync.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

security/selinux/hooks.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

mm/memcontrol-v1.c class_fd_destructor() -> fdput()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

kernel/bpf/token.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/xfs/xfs_handle.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

net/netlink/af_netlink.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

kernel/module/main.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

fs/fcntl.c class_fd_raw_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL

ipc/mqueue.c class_fd_destructor() -> fdput()

Type Parameter Key Value
NOCHECK_CALL