Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/hwspinlock/hwspinlock_core.c radix_tree_deref_retry() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
DATA_SOURCE 0 ptr $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &syscon_list_lock

lib/radix-tree.c __radix_tree_create() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &blkcg->lock
HALF_LOCKED2 &cq_table->lock
HALF_LOCKED2 &ctx->lut_mutex
HALF_LOCKED2 &dmz->chunk_lock
HALF_LOCKED2 &eti->extent_tree_lock
HALF_LOCKED2 &fedata->socket_lock
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &im->ino_lock
HALF_LOCKED2 &ioc->lock
HALF_LOCKED2 &ipctl->mutex
HALF_LOCKED2 &iter->lock
HALF_LOCKED2 &log->tree_lock
HALF_LOCKED2 &log_ring->spin_lock
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 &mru->lock
HALF_LOCKED2 &nm_i->nat_tree_lock.internal_rwsem
HALF_LOCKED2 &nm_i->nid_list_lock
HALF_LOCKED2 &nullb->lock
HALF_LOCKED2 &pag->pag_ici_lock
HALF_LOCKED2 &q->queue_lock
HALF_LOCKED2 &qi->qi_tree_lock
HALF_LOCKED2 &qp_table->lock
HALF_LOCKED2 &ras_umc->bank_log_lock
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &srq_table->lock
HALF_LOCKED2 &subsys->lock
HALF_LOCKED2 &table->lock
HALF_LOCKED2 __flags
HALF_LOCKED2 flags
HALF_LOCKED2 global &cgwb_lock
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &qcom_tzmem_chunks_lock
HALF_LOCKED2 global &qrtr_nodes_lock
HALF_LOCKED2 global &radix_lock
HALF_LOCKED2 irq
HALF_LOCKED2 tl->hwsp_ggtt->obj->base.resv

lib/radix-tree.c __radix_tree_lookup() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/radix-tree.c __radix_tree_lookup() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 0-1025,1027-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/radix-tree.c idr_destroy() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &_d->mutex
HALF_LOCKED2 &_dev->mutex
HALF_LOCKED2 &ab->core_lock
HALF_LOCKED2 &ah->hw->wiphy->mtx
HALF_LOCKED2 &ar->conf_mutex
HALF_LOCKED2 &ar->data_lock
HALF_LOCKED2 &channel->intent_lock
HALF_LOCKED2 &ddev->filelist_mutex
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &file->table_lock
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 &info->protocols_mtx
HALF_LOCKED2 &ring->idr_lock
HALF_LOCKED2 &rx_ring->idr_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 global &intel_gvt_mutex
HALF_LOCKED2 global &kfd_processes_mutex
HALF_LOCKED2 global &pernet_ops_rwsem

lib/radix-tree.c idr_get_free() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &apm->lock
HALF_LOCKED2 &card->mutex
HALF_LOCKED2 &chip->reg_lock
HALF_LOCKED2 &clnt->lock
HALF_LOCKED2 &idrinfo->lock
HALF_LOCKED2 &pn->l2tp_session_idr_lock
HALF_LOCKED2 &pn->l2tp_tunnel_idr_lock
HALF_LOCKED2 &queue->idr_lock
HALF_LOCKED2 &queue->lock
HALF_LOCKED2 &tn->idr_lock
HALF_LOCKED2 &tp->lock
HALF_LOCKED2 &tunnel->list_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 bh
HALF_LOCKED2 irq

lib/radix-tree.c radix_tree_extend() -> radix_tree_is_internal_node()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

lib/radix-tree.c radix_tree_gang_lookup() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &fs_info->transaction_kthread_mutex
HALF_LOCKED2 &nm_i->nat_tree_lock.internal_rwsem
HALF_LOCKED2 &nullb->lock
HALF_LOCKED2 &qi->qi_tree_lock
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

lib/radix-tree.c radix_tree_gang_lookup_tag() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &fs_info->transaction_kthread_mutex
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 rcu_read

lib/radix-tree.c radix_tree_insert() -> radix_tree_is_internal_node()

Type Parameter Key Value
BUF_SIZE 0 ptr (-1)-s32max
BUF_SIZE 0 ptr (-1)-s32max
DATA_SOURCE 0 ptr $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_byte
HALF_LOCKED2 &blkcg->lock
HALF_LOCKED2 &cq_table->lock
HALF_LOCKED2 &ctx->lut_mutex
HALF_LOCKED2 &dmz->chunk_lock
HALF_LOCKED2 &eti->extent_tree_lock
HALF_LOCKED2 &fedata->socket_lock
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &im->ino_lock
HALF_LOCKED2 &ioc->lock
HALF_LOCKED2 &ipctl->mutex
HALF_LOCKED2 &iter->lock
HALF_LOCKED2 &log->tree_lock
HALF_LOCKED2 &log_ring->spin_lock
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 &mru->lock
HALF_LOCKED2 &nm_i->nat_tree_lock.internal_rwsem
HALF_LOCKED2 &nm_i->nid_list_lock
HALF_LOCKED2 &nullb->lock
HALF_LOCKED2 &pag->pag_ici_lock
HALF_LOCKED2 &q->queue_lock
HALF_LOCKED2 &qi->qi_tree_lock
HALF_LOCKED2 &qp_table->lock
HALF_LOCKED2 &ras_umc->bank_log_lock
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &srq_table->lock
HALF_LOCKED2 &subsys->lock
HALF_LOCKED2 &table->lock
HALF_LOCKED2 __flags
HALF_LOCKED2 flags
HALF_LOCKED2 global &cgwb_lock
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &qcom_tzmem_chunks_lock
HALF_LOCKED2 global &qrtr_nodes_lock
HALF_LOCKED2 global &radix_lock
HALF_LOCKED2 irq
HALF_LOCKED2 tl->hwsp_ggtt->obj->base.resv

lib/radix-tree.c radix_tree_load_root() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/radix-tree.c radix_tree_next_chunk() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->lut_mutex
HALF_LOCKED2 &ctx->mutex
HALF_LOCKED2 &fedata->socket_lock
HALF_LOCKED2 &ibdev->client_data_rwsem
HALF_LOCKED2 &pctldev->mutex
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 &subsys->lock
HALF_LOCKED2 &ufile->device->disassociate_srcu
HALF_LOCKED2 flags
HALF_LOCKED2 global &cgwb_lock
HALF_LOCKED2 global &clients_rwsem
HALF_LOCKED2 global &devices_rwsem
HALF_LOCKED2 global &pinctrldev_list_mutex
HALF_LOCKED2 global &pvcalls_back_global.frontends_lock
HALF_LOCKED2 global &qcom_tzmem_chunks_lock
HALF_LOCKED2 global &qrtr_nodes_lock
HALF_LOCKED2 irq
HALF_LOCKED2 mutex
HALF_LOCKED2 rcu_read

lib/radix-tree.c radix_tree_next_chunk() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-1025,1027-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->lut_mutex
HALF_LOCKED2 &ctx->mutex
HALF_LOCKED2 &fedata->socket_lock
HALF_LOCKED2 &ibdev->client_data_rwsem
HALF_LOCKED2 &pctldev->mutex
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 &subsys->lock
HALF_LOCKED2 &ufile->device->disassociate_srcu
HALF_LOCKED2 flags
HALF_LOCKED2 global &cgwb_lock
HALF_LOCKED2 global &clients_rwsem
HALF_LOCKED2 global &devices_rwsem
HALF_LOCKED2 global &pinctrldev_list_mutex
HALF_LOCKED2 global &pvcalls_back_global.frontends_lock
HALF_LOCKED2 global &qcom_tzmem_chunks_lock
HALF_LOCKED2 global &qrtr_nodes_lock
HALF_LOCKED2 irq
HALF_LOCKED2 mutex
HALF_LOCKED2 rcu_read

lib/radix-tree.c radix_tree_node_alloc() -> radix_tree_is_internal_node()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

lib/radix-tree.c radix_tree_shrink() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/radix-tree.c radix_tree_shrink() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/radix-tree.c radix_tree_shrink() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/radix-tree.c radix_tree_tag_clear() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fs_info->cleaner_mutex
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &fs_info->transaction_kthread_mutex
HALF_LOCKED2 &pag->pag_ici_lock
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &radix_lock

lib/radix-tree.c radix_tree_tag_clear() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fs_info->cleaner_mutex
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &fs_info->transaction_kthread_mutex
HALF_LOCKED2 &pag->pag_ici_lock
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &radix_lock

lib/radix-tree.c radix_tree_tag_get() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &radix_lock

lib/radix-tree.c radix_tree_tag_get() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 0-1025,1027-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &radix_lock

lib/radix-tree.c radix_tree_tag_set() -> radix_tree_is_internal_node()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &pag->pag_ici_lock
HALF_LOCKED2 &ras_umc->bank_log_lock
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &radix_lock

lib/radix-tree.c radix_tree_tag_set() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fs_info->fs_roots_radix_lock
HALF_LOCKED2 &pag->pag_ici_lock
HALF_LOCKED2 &ras_umc->bank_log_lock
HALF_LOCKED2 &ras_umc->tree_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &hwspinlock_tree_lock
HALF_LOCKED2 global &radix_lock

drivers/infiniband/core/uverbs_ioctl.c uapi_get_attr_for_method() -> radix_tree_is_internal_node()

Type Parameter Key Value
LOCK2 &ufile->device->disassociate_srcu
TYPE_LOCK (struct ib_uverbs_device)->disassociate_srcu

drivers/xen/pvcalls-back.c radix_tree_deref_retry() -> radix_tree_is_internal_node()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
DATA_SOURCE 0 ptr $0
TASK_NOT_RUNNING
LOCK2 &fedata->socket_lock
LOCK2 global &pvcalls_back_global.frontends_lock
HALF_LOCKED2 global &xenwatch_mutex
TYPE_LOCK (struct pvcalls_back_global)->frontends_lock
TYPE_LOCK (struct pvcalls_fedata)->socket_lock