Documented in 1 files:

Defined in 1 files as a function:

Referenced in 26 files:

Smatch caller information:

fs/afs/security.c afs_put_permits() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &afs_permits_lock
HALF_LOCKED2 &vnode->cb_lock.lock
HALF_LOCKED2 rcu_read

drivers/infiniband/hw/irdma/cm.c irdma_rem_ref_cm_node() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cm_core->ht_lock
LOCK2 flags
HALF_LOCKED2 &cm_node->retrans_list_lock
HALF_LOCKED2 &dev->puda_cq_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct irdma_cm_core)->ht_lock

net/l2tp/l2tp_core.c l2tp_session_collision_del() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->pprev 1-u64max
PREEMPT_ADD
NOCHECK_CALL
LOCK2 &pn->l2tp_session_idr_lock
LOCK2 &tunnel->list_lock
LOCK2 bh
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2tp_net)->l2tp_session_idr_lock
TYPE_LOCK (struct l2tp_tunnel)->list_lock

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

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &esw->offloads.decap_tbl_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &priv->mdev->priv.eswitch->mode_lock
HALF_LOCKED2 &rpriv->unready_flows_lock
TYPE_LOCK (struct mlx5_esw_offload)->decap_tbl_lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_detach_decap() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &esw->offloads.decap_tbl_lock
HALF_LOCKED2 &priv->mdev->priv.eswitch->mode_lock
TYPE_LOCK (struct mlx5_esw_offload)->decap_tbl_lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_detach_decap_route() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &esw->offloads.encap_tbl_lock
HALF_LOCKED2 &priv->mdev->priv.eswitch->mode_lock
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_detach_encap() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &esw->offloads.encap_tbl_lock
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_detach_encap_route() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &esw->offloads.encap_tbl_lock
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

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

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 &esw->offloads.encap_tbl_lock
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_encap_put_locked() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &esw->offloads.encap_tbl_lock
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

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

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 &esw->offloads.encap_tbl_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c mlx5e_route_put_locked() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &esw->offloads.encap_tbl_lock
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

drivers/net/ethernet/mellanox/mlx5/core/en/htb.c mlx5e_htb_node_delete() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &priv->state_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct mlx5e_priv)->state_lock

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c create_process() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->pprev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &kfd_processes_mutex

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c kfd_cleanup_processes() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 global &kfd_processes_mutex

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c kfd_process_table_remove() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &kfd_processes_mutex
HALF_LOCKED2 global &srcu

drivers/net/ethernet/intel/ixgbevf/ipsec.c ixgbevf_ipsec_del_sa() -> hash_del_rcu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bond->ipsec_lock
HALF_LOCKED2 &xs->lock
HALF_LOCKED2 bh
HALF_LOCKED2 global &uld_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c vmw_cmdbuf_res_free() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c vmw_cmdbuf_res_remove() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

net/sched/sch_api.c qdisc_hash_del() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/vmwgfx/ttm_object.c ttm_ref_object_release() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tfile->lock
TYPE_LOCK (struct ttm_object_file)->lock

drivers/gpu/drm/vmwgfx/vmwgfx_validation.c vmw_validation_add_resource() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->pprev 4096-ptr_max
RX_PATH
NOCHECK_CALL
HALF_LOCKED2 &dev_priv->binding_mutex
HALF_LOCKED2 &dev_priv->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_validation.c vmw_validation_drop_ht() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_validation.c vmw_validation_drop_ht() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_validation.c vmw_validation_drop_ht() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

io_uring/napi.c __io_napi_del_id() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &ctx->napi_lock
LOCK2 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->napi_lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

io_uring/napi.c __io_napi_remove_stale() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &ctx->napi_lock
HALF_LOCKED2 &sqd->lock
TYPE_LOCK (struct io_ring_ctx)->napi_lock

io_uring/napi.c io_napi_free() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &ctx->napi_lock
HALF_LOCKED2 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->napi_lock

net/rxrpc/peer_object.c __rxrpc_put_peer() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &rxnet->peer_hash_lock
LOCK2 bh
HALF_LOCKED2 &rx->sk
TYPE_LOCK (struct rxrpc_net)->peer_hash_lock

drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c ixgbe_ipsec_del_sa() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &adapter->vfs_lock
HALF_LOCKED2 &bond->ipsec_lock
HALF_LOCKED2 &xs->lock
HALF_LOCKED2 bh
HALF_LOCKED2 global &uld_mutex

drivers/net/ethernet/marvell/octeontx2/nic/qos.c otx2_qos_sw_node_delete() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pfvf->qos.qos_lock

drivers/infiniband/core/device.c add_ndev_hash() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->pprev 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 global &ndev_hash_lock
HALF_LOCKED2 &esw->offloads.reps_lock
HALF_LOCKED2 global &be_adapter_list_lock
HALF_LOCKED2 global &bnxt_re_mutex
HALF_LOCKED2 global &link_ops_rwsem
HALF_LOCKED2 global &pvrdma_device_list_lock
HALF_LOCKED2 global &qedr_dev_list_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &usnic_ib_ibdev_list_lock

drivers/infiniband/core/device.c free_netdevs() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &pdata->netdev_lock
LOCK2 flags
LOCK2 global &ndev_hash_lock
HALF_LOCKED2 &ib_dev->unregistration_lock
TYPE_LOCK (struct ib_port_data)->netdev_lock

kernel/trace/rv/monitors/nomiss/nomiss.c da_destroy_storage() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 rcu_read

kernel/trace/rv/monitors/nomiss/nomiss.c da_monitor_destroy() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 _T->lock

net/sched/cls_api.c tcf_proto_signal_destroyed() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->pprev 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &block->proto_destroy_lock
TYPE_LOCK (struct tcf_block)->proto_destroy_lock

drivers/vhost/vsock.c vhost_vsock_dev_release() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &vhost_vsock_mutex

drivers/vhost/vsock.c vhost_vsock_set_cid() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
NOCHECK_CALL
LOCK2 global &vhost_vsock_mutex

drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.c mlx5_vxlan_del_port() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &vxlan->sync_lock
HALF_LOCKED2 &dev->intf_state_mutex
TYPE_LOCK (struct mlx5_vxlan)->sync_lock

net/mac802154/llsec.c mac802154_llsec_dev_del() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sdata->sec_mtx
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
TYPE_LOCK (struct ieee802154_sub_if_data)->sec_mtx

net/mac802154/llsec.c mac802154_llsec_dev_del() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sdata->sec_mtx
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
TYPE_LOCK (struct ieee802154_sub_if_data)->sec_mtx

drivers/net/ethernet/intel/ice/ice_sriov.c ice_free_vf_entries() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pdev->dev.mutex
HALF_LOCKED2 &pf->vfs.table_lock
HALF_LOCKED2 &vfs->table_lock
HALF_LOCKED2 global &pci_rescan_remove_lock
TYPE_LOCK (struct ice_vfs)->table_lock

fs/ceph/dir.c ceph_async_unlink_cb() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &fsc->async_unlink_conflict_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_fs_client)->async_unlink_conflict_lock

fs/ceph/dir.c ceph_unlink() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->pprev 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fsc->async_unlink_conflict_lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_sb->s_vfs_rename_mutex
HALF_LOCKED2 &dir->d_inode->i_rwsem
HALF_LOCKED2 &dir->i_rwsem
HALF_LOCKED2 &dn->d_lockref.lock
HALF_LOCKED2 &target->i_rwsem
TYPE_LOCK (struct ceph_fs_client)->async_unlink_conflict_lock
TYPE_LOCK (struct inode)->i_rwsem

net/netfilter/nf_flow_table_xdp.c nf_flowtable_by_dev_remove() -> hash_del_rcu()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &nf_xdp_hashtable_lock
HALF_LOCKED2 &nft_net->commit_mutex