Defined in 2 files as a function:

Referenced in 23 files:

Smatch caller information:

lib/rbtree_test.c insert_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 8350103880887631872
DATA_SOURCE 1 root $1
NOCHECK_CALL

drivers/gpu/drm/i915/i915_scheduler.c i915_sched_lookup_priolist() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ce->guc_state.lock
HALF_LOCKED2 &engine->sched_engine->lock
HALF_LOCKED2 &sched_engine->lock
HALF_LOCKED2 &sched_engine->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &schedule_lock
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct i915_sched_engine)->lock

block/blk-throttle.c tg_service_queue_add() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 irq
HALF_LOCKED2 &q->queue_lock

fs/btrfs/volumes.c rb_find_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs_info->mapping_tree_lock
HALF_LOCKED2 &fs_info->chunk_mutex
TYPE_LOCK (struct btrfs_fs_info)->mapping_tree_lock

fs/f2fs/gc.c __insert_victim_entry() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 1 root 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dirty_i->seglist_lock
HALF_LOCKED2 &curseg->curseg_mutex
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sbi->io_order_lock.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
HALF_LOCKED2 &sbi->umount_mutex
HALF_LOCKED2 &sit_i->sentry_lock
TYPE_LOCK (struct dirty_seglist_info)->seglist_lock

fs/btrfs/delayed-inode.c rb_find_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 1 root 16
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &delayed_node->mutex
TYPE_LOCK (struct btrfs_delayed_node)->mutex

fs/f2fs/segment.c __insert_discard_cmd() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &curseg->curseg_mutex
HALF_LOCKED2 &dcc->cmd_lock
HALF_LOCKED2 &sit_i->sentry_lock

drivers/gpu/drm/scheduler/sched_rq.c rb_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->__rb_parent_color 1-u64max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &entity->lock
LOCK2 &rq->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct drm_sched_entity)->lock
TYPE_LOCK (struct drm_sched_rq)->lock

block/bfq-iosched.c bfq_weights_tree_add() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 1 root 16
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 irq

kernel/sched/build_policy.c rb_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte

kernel/locking/rtmutex_api.c rb_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &task->pi_lock
HALF_LOCKED2 &lock->wait_lock
HALF_LOCKED2 irq
TYPE_LOCK (struct rt_mutex_base)->wait_lock
TYPE_LOCK (struct task_struct)->pi_lock

drivers/gpu/drm/drm_mm.c insert_hole_size() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 1 root $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

lib/timerqueue.c rb_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
HALF_LOCKED2 &base->lock
HALF_LOCKED2 &group->lock
HALF_LOCKED2 &rtc->ops_lock
HALF_LOCKED2 irq

fs/btrfs/free-space-cache.c rb_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
HALF_LOCKED2 &cluster->lock
HALF_LOCKED2 &ctl->tree_lock

fs/ceph/subvolume_metrics.c __insert_entry() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tracker->lock
TYPE_LOCK (struct ceph_subvolume_metrics_tracker)->lock

fs/btrfs/block-group.c rb_find_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs_info->block_group_cache_lock
HALF_LOCKED2 &fs_info->chunk_mutex
TYPE_LOCK (struct btrfs_fs_info)->block_group_cache_lock

drivers/gpu/drm/i915/gt/intel_execlists_submission.c virtual_submission_tasklet() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
LOCK2 &sibling->sched_engine->lock
LOCK2 irq
HALF_LOCKED2 bh
TYPE_LOCK (struct i915_sched_engine)->lock

fs/eventpoll.c ep_rbtree_insert() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tep->mtx

net/sched/sch_etf.c etf_enqueue_timesortedlist() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

fs/btrfs/backref.c rb_find_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 7642796193401225216,7642796193401225240,7642796193401225264
BUF_SIZE 1 root 16
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fs_info->commit_root_sem

fs/btrfs/delayed-ref.c rb_find_add_cached() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 0 node 24
DATA_SOURCE 0 node $0
DATA_SOURCE 1 root $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &delayed_refs->lock
LOCK2 &href->lock
HALF_LOCKED2 &trans->fs_info->chunk_mutex
HALF_LOCKED2 &trans->fs_info->commit_root_sem
HALF_LOCKED2 &trans->fs_info->fs_devices->device_list_mutex
HALF_LOCKED2 &trans->fs_info->fs_roots_radix_lock
HALF_LOCKED2 &trans->fs_info->qgroup_ioctl_lock
HALF_LOCKED2 &trans->fs_info->qgroup_lock
HALF_LOCKED2 &trans->fs_info->unused_bg_unpin_mutex
HALF_LOCKED2 &trans->transaction->cache_write_mutex
HALF_LOCKED2 &trans->transaction->delayed_refs.lock
TYPE_LOCK (struct btrfs_delayed_ref_head)->lock
TYPE_LOCK (struct btrfs_delayed_ref_root)->lock

fs/f2fs/extent_cache.c __attach_extent_node() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 2 leftmost $5
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &et->lock
TYPE_LOCK (struct extent_tree)->lock

kernel/bpf/range_tree.c __range_size_insert() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
PARAM_VALUE 1 root 4096-ptr_max
DATA_SOURCE 1 root $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags

kernel/bpf/helpers.c __bpf_rbtree_add() -> rb_insert_color_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 0 node->rb_left 0
PARAM_VALUE 0 node->rb_right 0
BUF_SIZE 0 node 24
DATA_SOURCE 1 root $0
NOCHECK_CALL