Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 30 files:

Smatch caller information:

drivers/gpu/drm/nouveau/nvkm/engine/fifo/uchan.c nvkm_uchan_object_fini_1() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max

drivers/infiniband/hw/efa/efa_ah_cache.c efa_ah_cache_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
PARAM_VALUE 1 lock->osq.tail.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/host1x/context.c host1x_memory_context_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fpriv->lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_decap_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->refs.counter (-1073741824),0-s32max
PARAM_VALUE 1 lock 4096-ptr_max
PARAM_VALUE 1 lock->osq.tail.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &priv->mdev->priv.eswitch->mode_lock
HALF_LOCKED2 &rpriv->unready_flows_lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_encap_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &pool->lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_route_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
HALF_LOCKED2 &pool->lock

kernel/trace/trace_events_user.c user_event_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 6378390342831353856
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &group->reg_mutex
HALF_LOCKED2 global &dyn_event_ops_mutex

net/qrtr/af_qrtr.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 6494806661699817472
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 sk

drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.c nvkm_chan_cctx_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max

drivers/infiniband/hw/hns/hns_roce_hem.c hns_roce_table_mhop_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/infiniband/hw/hns/hns_roce_hem.c hns_roce_table_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs_hmfs.c mlx5_ct_fs_hmfs_matcher_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/mellanox/mlx5/core/en/tc/int_port.c mlx5e_tc_int_port_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c nv50_instobj_release() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cgrp->mutex
HALF_LOCKED2 &chan->cgrp->mutex
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &fifo->lock
HALF_LOCKED2 &gr->fecs.mutex
HALF_LOCKED2 &mmu->ptc.mutex
HALF_LOCKED2 &subdev->use.mutex
HALF_LOCKED2 &vmm->mutex.vmm
HALF_LOCKED2 flags
HALF_LOCKED2 irq

drivers/gpu/host1x/syncpt.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 1-u64max
PARAM_VALUE 1 lock 4096-ptr_max
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &device->clients_lock
HALF_LOCKED2 &file->lock

net/can/j1939/main.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 3673383663677685760
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 sk
HALF_LOCKED2 sock->sk

fs/btrfs/scrub.c scrub_workers_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max

drivers/net/phy/phy_package.c phy_package_leave() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &pool->lock

fs/lockd/svclock.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 1-u64max
PARAM_VALUE 1 lock 4096-ptr_max
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING

fs/lockd/host.c nlmclnt_release_host() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 472343407686127616
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/tee/amdtee/core.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 8213426055265841152
PARAM_VALUE 1 lock->osq.tail.counter 0-s32max
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING

drivers/net/pse-pd/pse_core.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 3172319655459680256
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 global &pse_pw_d_mutex

drivers/soc/qcom/qcom_pd_mapper.c qcom_pdm_remove() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 1-u64max
PARAM_VALUE 1 lock 584355691364741120
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex

net/netfilter/xt_hashlimit.c htable_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 6253559017164922880
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/mellanox/mlx5/core/en_tc.c mlx5e_hairpin_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

kernel/events/core.c perf_mmap_close() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

kernel/events/core.c perf_mmap_close() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/i2c/busses/i2c-gpio.c i2c_gpio_cleanup_scl() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 8322884537616781312
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &_dev->mutex

drivers/gpu/drm/nouveau/nvkm/core/subdev.c nvkm_subdev_unref() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

net/sched/cls_api.c __tcf_block_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

net/sched/act_api.c __tcf_action_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/mellanox/mlx5/core/en/tc/ct_fs_smfs.c mlx5_ct_fs_smfs_matcher_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/vfio/group.c vfio_device_remove_group() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 6143122596409851920
RX_PATH
TASK_NOT_RUNNING

drivers/net/phy/sfp-bus.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 5268778645702705152
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING

drivers/opp/core.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
DATA_SOURCE 1 lock $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &gpd_list_lock

drivers/net/ethernet/mellanox/mlx5/core/en/mod_hdr.c mlx5e_mod_hdr_detach() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/drm_gpuvm.c kref_put_mutex() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
DATA_SOURCE 1 lock $2
RX_PATH
TASK_NOT_RUNNING

drivers/block/nbd.c nbd_config_put() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cmd->lock
HALF_LOCKED2 &disk->open_mutex
HALF_LOCKED2 &nbd->config_lock

net/core/rtnetlink.c refcount_dec_and_rtnl_lock() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 8962684584107487232
DATA_SOURCE 0 r $0
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex

drivers/gpu/drm/panthor/panthor_mmu.c panthor_vm_idle() -> refcount_dec_and_mutex_lock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 1 lock 4096-ptr_max
LOCK2 &sched->lock
LOCK2 global &drm_unplug_srcu
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct panthor_scheduler)->lock