Defined in 2 files as a function:

Referenced in 38 files:

Smatch caller information:

lib/rbtree_test.c erase_cached() -> rb_erase_cached()

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

block/blk-throttle.c throtl_rb_erase() -> rb_erase_cached()

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

fs/btrfs/volumes.c btrfs_mapping_tree_free() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs_info->mapping_tree_lock
TYPE_LOCK (struct btrfs_fs_info)->mapping_tree_lock

fs/btrfs/volumes.c btrfs_remove_chunk_map() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
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/btrfs/delayed-inode.c __btrfs_remove_delayed_item() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 1 root 16
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
HALF_LOCKED2 &delayed_node->mutex
HALF_LOCKED2 &node->mutex

fs/f2fs/segment.c __detach_discard_cmd() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
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 drm_sched_rq_remove_fifo_locked() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
NOCHECK_CALL
UNITS 0 node unit_byte

block/bfq-iosched.c bfq_weights_tree_remove() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
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 flags

kernel/sched/build_policy.c __dequeue_dl_entity() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte

kernel/sched/build_policy.c dequeue_pushable_dl_task() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 1 root 16
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 node unit_byte

kernel/locking/rtmutex_api.c rt_mutex_dequeue() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
LOCK2 &lock->wait_lock
HALF_LOCKED2 &task->pi_lock
HALF_LOCKED2 &waiter_task->pi_lock
HALF_LOCKED2 irq
TYPE_LOCK (struct rt_mutex_base)->wait_lock

kernel/locking/rtmutex_api.c rt_mutex_dequeue_pi() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
HALF_LOCKED2 &lock->wait_lock
HALF_LOCKED2 &task->pi_lock
HALF_LOCKED2 irq
TYPE_LOCK (struct rt_mutex_base)->wait_lock

drivers/gpu/drm/drm_mm.c rm_hole() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &i915->mm.stolen_lock
HALF_LOCKED2 &vm->mm_lock

lib/timerqueue.c timerqueue_del() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 1-u64max
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 btrfs_bitmap_cluster() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cluster->lock
LOCK2 &cluster->refill_lock
LOCK2 &ctl->tree_lock
LOCK2 &space_info->groups_sem
HALF_LOCKED2 &cluster->block_group->data_rwsem
HALF_LOCKED2 &fs_info->remap_mutex
HALF_LOCKED2 &root->objectid_mutex
TYPE_LOCK (struct btrfs_free_cluster)->lock
TYPE_LOCK (struct btrfs_free_cluster)->refill_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock
TYPE_LOCK (struct btrfs_space_info)->groups_sem

fs/btrfs/free-space-cache.c relink_bitmap_entry() -> rb_erase_cached()

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

fs/btrfs/free-space-cache.c setup_cluster_no_bitmap() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cluster->lock
LOCK2 &cluster->refill_lock
LOCK2 &ctl->tree_lock
LOCK2 &space_info->groups_sem
HALF_LOCKED2 &cluster->block_group->data_rwsem
HALF_LOCKED2 &fs_info->remap_mutex
HALF_LOCKED2 &root->objectid_mutex
TYPE_LOCK (struct btrfs_free_cluster)->lock
TYPE_LOCK (struct btrfs_free_cluster)->refill_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock
TYPE_LOCK (struct btrfs_space_info)->groups_sem

fs/btrfs/free-space-cache.c unlink_free_space() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &caching_ctl->mutex
HALF_LOCKED2 &ctl->cache_writeout_mutex
HALF_LOCKED2 &ctl->tree_lock
HALF_LOCKED2 &fs_info->commit_root_sem
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &tmp_ctl.tree_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock

fs/ceph/subvolume_metrics.c ceph_subvolume_metrics_clear_locked() -> rb_erase_cached()

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

fs/ceph/subvolume_metrics.c ceph_subvolume_metrics_snapshot() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &tracker->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_subvolume_metrics_tracker)->lock

fs/ceph/subvolume_metrics.c ceph_subvolume_metrics_snapshot() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &tracker->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_subvolume_metrics_tracker)->lock

fs/btrfs/block-group.c btrfs_free_block_groups() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PARAM_VALUE 1 root->rb_root.rb_node 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &info->block_group_cache_lock
TYPE_LOCK (struct btrfs_fs_info)->block_group_cache_lock

fs/btrfs/block-group.c btrfs_remove_block_group() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs_info->block_group_cache_lock
HALF_LOCKED2 &fs_info->reclaim_bgs_lock
TYPE_LOCK (struct btrfs_fs_info)->block_group_cache_lock
TYPE_LOCK (struct btrfs_fs_info)->reclaim_bgs_lock

drivers/gpu/drm/i915/gt/intel_execlists_submission.c execlists_dequeue() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 0 node 24
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sched_engine->lock
LOCK2 &ve->base.sched_engine->lock
LOCK2 irq
LOCK2 rcu_read
HALF_LOCKED2 bh
TYPE_LOCK (struct i915_sched_engine)->lock

drivers/gpu/drm/i915/gt/intel_execlists_submission.c execlists_dequeue() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sched_engine->lock
LOCK2 irq
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/gpu/drm/i915/gt/intel_execlists_submission.c execlists_reset_cancel() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &engine->sched_engine->lock
LOCK2 bh
LOCK2 flags
LOCK2 rcu_read
HALF_LOCKED2 &gt->reset.mutex
TYPE_LOCK (struct i915_sched_engine)->lock

drivers/gpu/drm/i915/gt/intel_execlists_submission.c execlists_reset_cancel() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 1-u64max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
LOCK2 &engine->sched_engine->lock
LOCK2 bh
LOCK2 flags
LOCK2 rcu_read
HALF_LOCKED2 &gt->reset.mutex

drivers/gpu/drm/i915/gt/intel_execlists_submission.c first_virtual_engine() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 1-u64max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
LOCK2 &sched_engine->lock
LOCK2 irq
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/gpu/drm/i915/gt/intel_execlists_submission.c rcu_virtual_context_destroy() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
BUF_SIZE 0 node 24
PARAM_COMPARE 0 node != $0->__rb_parent_color
PARAM_COMPARE 0 node != $0->__rb_parent_color
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
UNITS 0 node unit_byte
LOCK2 &sibling->sched_engine->lock
LOCK2 irq
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct i915_sched_engine)->lock

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

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
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

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

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
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_remove_epi() -> rb_erase_cached()

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

fs/btrfs/extent-tree.c btrfs_run_delayed_refs_for_head() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &locked_ref->lock
HALF_LOCKED2 &fs_info->reloc_mutex
TYPE_LOCK (struct btrfs_delayed_ref_head)->lock

net/sched/sch_etf.c timesortedlist_clear() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 1-u64max
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &priv->state_lock
HALF_LOCKED2 &sch->seqlock
HALF_LOCKED2 bh

net/sched/sch_etf.c timesortedlist_drop() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
HALF_LOCKED2 &sch->seqlock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/sched/sch_etf.c timesortedlist_remove() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sch->seqlock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c guc_cancel_sched_engine_requests() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sched_engine->lock
LOCK2 bh
LOCK2 flags
HALF_LOCKED2 &gt->reset.mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct i915_sched_engine)->lock

drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c guc_dequeue_one_context() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sched_engine->lock
LOCK2 flags
HALF_LOCKED2 bh
TYPE_LOCK (struct i915_sched_engine)->lock

drivers/infiniband/hw/hfi1/mmu_rb.c hfi1_mmu_rb_unregister() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 1-u64max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
LOCK2 &handler->lock
LOCK2 flags
TYPE_LOCK (struct mmu_rb_handler)->lock

fs/btrfs/tests/delayed-refs-tests.c delete_delayed_ref_node() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
NOCHECK_CALL

fs/btrfs/backref.c add_missing_keys() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 1-u64max
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 node unit_byte
HALF_LOCKED2 &fs_info->commit_root_sem

fs/btrfs/backref.c resolve_indirect_refs() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->fs_info->commit_root_sem

fs/btrfs/delayed-ref.c drop_delayed_ref() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 1-u64max
PARAM_VALUE 1 root 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &head->lock
HALF_LOCKED2 &delayed_refs->lock
HALF_LOCKED2 &delayed_refs->lock
HALF_LOCKED2 &head->mutex
TYPE_LOCK (struct btrfs_delayed_ref_head)->lock

fs/f2fs/extent_cache.c __detach_extent_node() -> rb_erase_cached()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &et->lock
HALF_LOCKED2 &eti->extent_tree_lock
HALF_LOCKED2 &sbi->umount_mutex
TYPE_LOCK (struct extent_tree)->lock

kernel/bpf/range_tree.c range_it_remove() -> rb_erase_cached()

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

kernel/bpf/helpers.c bpf_rbtree_remove() -> rb_erase_cached()

Type Parameter Key Value
BUF_SIZE 0 node 24
DATA_SOURCE 1 root $0
NOCHECK_CALL