Defined in 2 files as a function:
- include/linux/rbtree.h, line 141 (as a function)
- tools/include/linux/rbtree.h, line 129 (as a function)
Referenced in 23 files:
- block/bfq-iosched.c, line 961
- block/blk-throttle.c, line 427
- drivers/gpu/drm/drm_mm.c, line 239
- drivers/gpu/drm/i915/gt/intel_execlists_submission.c, line 3873
- drivers/gpu/drm/i915/i915_scheduler.c, line 114
- fs/ceph/subvolume_metrics.c, line 98
- fs/eventpoll.c, line 1654
- fs/f2fs/extent_cache.c, line 307
- fs/f2fs/gc.c, line 512
- fs/f2fs/segment.c, line 1428
- include/linux/rbtree.h
- kernel/bpf/helpers.c, line 2754
- kernel/bpf/range_tree.c, line 103
- lib/rbtree_test.c, line 67
- net/sched/sch_etf.c, line 189
- tools/include/linux/rbtree.h, line 196
- tools/perf/builtin-kwork.c, line 357
- tools/perf/builtin-sched.c
- tools/perf/util/hist.c
- tools/perf/util/machine.c, line 278
- tools/perf/util/rblist.c
- tools/perf/util/srcline.c
- tools/perf/util/symbol.c, line 429
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 |