Documented in 1 files:
Defined in 1 files as a function:
Referenced in 35 files:
- block/blk-cgroup.h, line 343
- block/blk-core.c, line 414
- block/blk-mq.c
- drivers/block/nbd.c
- drivers/dma/idxd/submit.c
- drivers/infiniband/ulp/rtrs/rtrs-srv.c, line 175
- drivers/md/md-llbitmap.c, line 833
- drivers/md/md.c
- drivers/nvme/target/core.c
- drivers/nvme/target/nvmet.h, line 969
- drivers/pci/p2pdma.c
- drivers/scsi/scsi_lib.c, line 708
- drivers/target/target_core_alua.c, line 980
- drivers/target/target_core_pr.c
- drivers/target/target_core_transport.c
- drivers/target/target_core_xcopy.c, line 413
- fs/aio.c
- fs/nfsd/nfssvc.c, line 218
- include/linux/cgroup.h, line 959
- include/linux/cgroup_refcnt.h, line 79
- include/linux/memcontrol.h, line 789
- include/linux/memremap.h, line 307
- include/linux/swap.h, line 413
- include/rdma/rdmavt_mr.h, line 85
- io_uring/io_uring.c
- io_uring/msg_ring.c, line 80
- io_uring/tw.c, line 28
- io_uring/zcrx.c
- kernel/bpf/trampoline.c, line 1445
- lib/percpu-refcount.c
- mm/swapfile.c, line 1907
- mm/zswap.c, line 431
- net/core/devmem.h, line 144
- net/smc/smc_wr.c, line 384
- net/smc/smc_wr.h, line 70
Smatch caller information:
drivers/infiniband/hw/hfi1/verbs_txreq.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &qp->s_lock | ||
| HALF_LOCKED2 | &sde->head_lock.lock | ||
| HALF_LOCKED2 | &sde->tail_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | ps.flags |
mm/memcontrol.c obj_cgroup_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/md/md-llbitmap.c llbitmap_release_barrier() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &bio->bi_bdev->bd_queue->queue_lock | ||
| HALF_LOCKED2 | &cache->background_work_lock | ||
| HALF_LOCKED2 | &head->srcu | ||
| HALF_LOCKED2 | &ic->endio_wait.lock | ||
| HALF_LOCKED2 | &md->io_barrier | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &s->lock | ||
| HALF_LOCKED2 | &sdp->sd_log_flush_lock | ||
| HALF_LOCKED2 | global &bch_register_lock | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | lock.complete_slot | ||
| HALF_LOCKED2 | lock.pending_slot |
block/blk-throttle.c blkg_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &q->queue_lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | rcu_read | ||
| TYPE_LOCK | (struct request_queue)->queue_lock |
mm/userfaultfd.c put_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL | |||
| LOCK2 | &ctx->map_changing_lock | ||
| TYPE_LOCK | (struct userfaultfd_ctx)->map_changing_lock |
net/core/devmem.c net_devmem_dmabuf_binding_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/md/md.c md_end_clone_io() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/md/md.c md_handle_request() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &md->io_barrier |
drivers/md/md.c md_handle_request() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &md->io_barrier |
drivers/md/md.c md_write_end() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/md/md.c mddev_init() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 4096-18446744073709547523 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &disks_mutex |
mm/page_io.c obj_cgroup_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/swapfile.c get_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &ctx->map_changing_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &oldmm->mmap_lock | ||
| HALF_LOCKED2 | ptl | ||
| HALF_LOCKED2 | rcu_read |
mm/swapfile.c put_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &oldmm->mmap_lock | ||
| HALF_LOCKED2 | ptl |
mm/percpu.c obj_cgroup_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| PREEMPT_ADD | |||
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| LOCK2 | global &pcpu_lock |
drivers/infiniband/sw/rdmavt/qp.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &qp->r_lock | ||
| HALF_LOCKED2 | &qp->s_hlock | ||
| HALF_LOCKED2 | &qp->s_lock | ||
| HALF_LOCKED2 | &rq->kwq->c_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | rcu_read |
io_uring/msg_ring.c io_msg_tw_complete() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | _T->lock |
lib/percpu-refcount.c percpu_ref_call_confirm_rcu() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu |
lib/percpu-refcount.c percpu_ref_kill_and_confirm() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data->rcu.func | 1-u64max |
| PARAM_VALUE | 0 | ref->data->rcu.next | 0 |
| DATA_SOURCE | 0 | ref | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | ref->percpu_count_ptr | |
| LOCK2 | flags | ||
| LOCK2 | global &percpu_ref_switch_lock | ||
| HALF_LOCKED2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | &mddev->suspend_mutex | ||
| HALF_LOCKED2 | &pr->pr_sem | ||
| HALF_LOCKED2 | &priv->lock | ||
| HALF_LOCKED2 | &q->mq_freeze_lock | ||
| HALF_LOCKED2 | &q->queue_lock | ||
| HALF_LOCKED2 | &wq->wq_lock | ||
| HALF_LOCKED2 | global &cgwb_lock | ||
| HALF_LOCKED2 | global &nfsd_mutex | ||
| HALF_LOCKED2 | irq |
block/blk-mq.c blk_mq_dispatch_list() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
block/blk-mq.c blk_mq_hctx_notify_offline() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
drivers/infiniband/hw/hfi1/verbs.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
fs/aio.c __do_compat_sys_io_setup() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data | 0,4096-ptr_max |
| NOCHECK_CALL |
fs/aio.c __do_compat_sys_io_setup() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data | 0,4096-ptr_max |
| NOCHECK_CALL |
fs/aio.c __do_compat_sys_io_submit() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
fs/aio.c __do_compat_sys_io_submit() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_cancel() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_cancel() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_destroy() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_destroy() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_setup() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data | 0,4096-ptr_max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_setup() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data | 0,4096-ptr_max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_submit() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
fs/aio.c __do_sys_io_submit() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
fs/aio.c do_io_getevents() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL |
fs/aio.c free_ioctx_users() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->data | 0,4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &ctx->map_changing_lock | ||
| HALF_LOCKED2 | &packet->qp->r_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &q->queue_lock | ||
| HALF_LOCKED2 | &qp->s_lock | ||
| HALF_LOCKED2 | &tg_pt_gp->tg_pt_gp_lock | ||
| HALF_LOCKED2 | &tg_pt_gp->tg_pt_gp_transition_mutex | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &mf_mutex | ||
| HALF_LOCKED2 | global &pcpu_lock |
fs/aio.c iocb_destroy() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/scsi/scsi_lib.c scsi_end_request() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/bpf/syscall.c obj_cgroup_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
mm/zswap.c obj_cgroup_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/zswap.c put_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/zswap.c zswap_pool_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/memory_hotplug.c put_dev_pagemap() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &attr->mutex | ||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &split_debug_mutex | ||
| HALF_LOCKED2 | &vm->hotplug_mutex | ||
| HALF_LOCKED2 | &z->lock | ||
| HALF_LOCKED2 | &zone->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &mf_mutex | ||
| HALF_LOCKED2 | global &page_offline_rwsem | ||
| HALF_LOCKED2 | global &scan_mutex | ||
| HALF_LOCKED2 | irq |
fs/nfsd/nfssvc.c nfsd_net_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |
mm/shmem.c put_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/smc/smc_tx.c smc_wr_tx_link_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref->data | 0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | sk |
drivers/pci/p2pdma.c p2pdma_folio_free() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/pci/p2pdma.c p2pmem_alloc_mmap() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &of->mutex | ||
| HALF_LOCKED2 | &ipcp->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/pci/p2pdma.c p2pmem_alloc_mmap() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &of->mutex | ||
| HALF_LOCKED2 | &ipcp->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/pci/p2pdma.c pci_free_p2pmem() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/infiniband/sw/rdmavt/mr.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &rkt->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
io_uring/zcrx.c zcrx_notif_tw() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | _T->lock |
io_uring/zcrx.c zcrx_unregister_user() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | _T->lock | ||
| LOCK2 | bh | ||
| HALF_LOCKED2 | &ctx->uring_lock |
drivers/infiniband/sw/rdmavt/rc.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &qp->s_lock | ||
| HALF_LOCKED2 | &packet->qp->r_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | ps.flags | ||
| HALF_LOCKED2 | rcu_read | ||
| TYPE_LOCK | (struct rvt_qp)->s_lock |
drivers/nvme/target/core.c nvmet_pr_put_ns_pc_ref() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/nvme/target/core.c nvmet_put_namespace() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/nvme/target/core.c nvmet_req_complete() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/nvme/target/core.c nvmet_req_uninit() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/infiniband/hw/hfi1/ud.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &packet->qp->r_lock | ||
| HALF_LOCKED2 | &qp->r_lock | ||
| HALF_LOCKED2 | ps.flags | ||
| TYPE_LOCK | (struct rvt_qp)->r_lock |
io_uring/io_uring.c io_activate_pollwq() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ctx->completion_lock | ||
| HALF_LOCKED2 | &ctx->uring_lock | ||
| TYPE_LOCK | (struct io_ring_ctx)->completion_lock |
io_uring/io_uring.c io_activate_pollwq_cb() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu |
kernel/bpf/memalloc.c obj_cgroup_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NOCHECK_CALL |
drivers/dma/idxd/submit.c idxd_submit_desc() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/dma/idxd/submit.c idxd_submit_desc() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/target/target_core_alua.c core_alua_queue_state_change_ua() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &tg_pt_gp->tg_pt_gp_lock | ||
| LOCK2 | &tg_pt_gp->tg_pt_gp_transition_mutex | ||
| HALF_LOCKED2 | &buffer->mutex | ||
| HALF_LOCKED2 | &frag->frag_sem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct t10_alua_tg_pt_gp)->tg_pt_gp_lock | ||
| TYPE_LOCK | (struct t10_alua_tg_pt_gp)->tg_pt_gp_transition_mutex |
block/blk-core.c blk_queue_exit() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | ref->percpu_count_ptr | |
| HALF_LOCKED2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | &zwplug->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
net/smc/smc_cdc.c smc_wr_tx_link_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | sk |
mm/memory.c put_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &mm->mmap_lock |
drivers/infiniband/hw/hfi1/rc.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &packet->qp->r_lock | ||
| HALF_LOCKED2 | &qp->s_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
block/bio.c blkg_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &md->io_barrier |
kernel/bpf/cgroup.c cgroup_bpf_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NOCHECK_CALL |
kernel/cgroup/cgroup.c cgroup_bpf_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/cgroup/cgroup.c css_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &encl->lock | ||
| HALF_LOCKED2 | &lo->lo_work_lock | ||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &resv->lock | ||
| HALF_LOCKED2 | &seq->lock | ||
| HALF_LOCKED2 | &wb->bdi->cgwb_release_mutex | ||
| HALF_LOCKED2 | global &cgroup_mutex | ||
| HALF_LOCKED2 | global &cpuset_mutex | ||
| HALF_LOCKED2 | global &cpuset_top_mutex | ||
| HALF_LOCKED2 | global &freezer_mutex | ||
| HALF_LOCKED2 | global &hugetlb_lock | ||
| HALF_LOCKED2 | global &oom_lock | ||
| HALF_LOCKED2 | global &sched_domains_mutex | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | rcu_read |
drivers/target/target_core_xcopy.c xcopy_pt_undepend_remotedev() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/infiniband/ulp/rtrs/rtrs-srv.c rtrs_srv_put_ops_ids() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/mincore.c put_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | ptl |
mm/memory-failure.c put_dev_pagemap() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &mf_mutex | ||
| HALF_LOCKED2 | &attr->mutex | ||
| HALF_LOCKED2 | &of->mutex |
block/blk-cgroup.c blkg_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &q->blkcg_mutex | ||
| HALF_LOCKED2 | &q->queue_lock | ||
| HALF_LOCKED2 | irq |
drivers/target/target_core_transport.c target_free_cmd_counter() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/target/target_core_transport.c target_release_cmd_kref() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/target/target_core_transport.c transport_complete_task_attr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/target/target_core_transport.c transport_lun_remove_cmd() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/smc/smc_wr.c smc_wr_reg_send() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &lgr->llc_conf_mutex | ||
| HALF_LOCKED2 | &lgr->rmbs_lock | ||
| HALF_LOCKED2 | &lgr->sndbufs_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &smc->sk | ||
| HALF_LOCKED2 | global &smc_client_lgr_pending | ||
| HALF_LOCKED2 | global &smc_server_lgr_pending |
mm/memremap.c put_dev_pagemap() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &mdevice->devmem_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | global &list_lock |
net/smc/smc_llc.c smc_wr_tx_link_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &lgr->llc_conf_mutex | ||
| HALF_LOCKED2 | &lgr->rmbs_lock | ||
| HALF_LOCKED2 | &pool->lock |
net/smc/smc_core.c smc_wr_tx_link_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &lgr->llc_conf_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct smc_link_group)->llc_conf_mutex |
kernel/bpf/trampoline.c __bpf_tramp_exit() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NOCHECK_CALL |
io_uring/tw.c ctx_flush_and_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref->data | 0,4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &sqd->lock |
block/blk-iolatency.c blkg_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
drivers/block/nbd.c recv_work() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/block/nbd.c recv_work() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
mm/swap_state.c put_swap_device() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/memcontrol-v1.c obj_cgroup_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &(&mapping->i_pages)->xa_lock | ||
| HALF_LOCKED2 | &mapping->host->i_lock |
drivers/infiniband/hw/hfi1/uc.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &packet->qp->r_lock | ||
| LOCK2 | flags | ||
| LOCK2 | rcu_read | ||
| TYPE_LOCK | (struct rvt_qp)->r_lock |
block/bfq-cgroup.c blkg_put() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &q->elevator_lock | ||
| HALF_LOCKED2 | irq |
drivers/infiniband/hw/hfi1/tid_rdma.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &qp->s_lock | ||
| HALF_LOCKED2 | &packet->qp->r_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read | ||
| TYPE_LOCK | (struct rvt_qp)->s_lock |
drivers/target/target_core_pr.c __core_scsi3_alloc_registration() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/target/target_core_pr.c __core_scsi3_alloc_registration() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/target/target_core_pr.c __core_scsi3_alloc_registration() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &dev->se_port_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct se_device)->se_port_lock |
drivers/infiniband/hw/hfi1/qp.c rvt_put_mr() -> percpu_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &packet->qp->r_lock | ||
| HALF_LOCKED2 | &qp->r_lock | ||
| HALF_LOCKED2 | &qp->s_hlock | ||
| HALF_LOCKED2 | &qp->s_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | ps->flags | ||
| HALF_LOCKED2 | ps.flags | ||
| HALF_LOCKED2 | rcu_read |