Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

kernel/bpf/bpf_local_storage.c __bpf_local_storage_insert_cache() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_local_storage.c bpf_local_storage_alloc() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/bpf_local_storage.c bpf_local_storage_alloc() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/bpf_local_storage.c bpf_local_storage_update() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 b_flags
LOCK2 flags

kernel/bpf/bpf_local_storage.c bpf_local_storage_update() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_local_storage.c bpf_selem_link_map() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 rcu_read
HALF_LOCKED2 &newsk->sk_lock.slock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

kernel/bpf/bpf_local_storage.c bpf_selem_unlink() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_local_storage.c bpf_selem_unlink_map() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
LOCK2 flags

kernel/bpf/bpf_local_storage.c bpf_selem_unlink_nofail() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 rcu_read

kernel/bpf/bpf_local_storage.c bpf_selem_unlink_nofail() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 rcu_read

kernel/bpf/rqspinlock.c bpf_res_spin_unlock() -> res_spin_unlock()

Type Parameter Key Value
DATA_SOURCE 0 lock $0
NOCHECK_CALL

kernel/bpf/rqspinlock.c bpf_res_spin_unlock_irqrestore() -> res_spin_unlock()

Type Parameter Key Value
DATA_SOURCE 0 lock $0
NOCHECK_CALL

kernel/locking/locktorture.c torture_raw_res_spin_write_unlock() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 3025735878643646464
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 global &torture_mutex
HALF_LOCKED2 global &torture_raw_spinlock
HALF_LOCKED2 global &torture_rwlock
HALF_LOCKED2 global &torture_rwsem
HALF_LOCKED2 global &torture_spinlock

kernel/locking/locktorture.c torture_raw_res_spin_write_unlock_irq() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 3025735878643646464
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 global &torture_mutex
HALF_LOCKED2 global &torture_raw_spinlock
HALF_LOCKED2 global &torture_rwlock
HALF_LOCKED2 global &torture_rwsem
HALF_LOCKED2 global &torture_spinlock

kernel/bpf/queue_stack_maps.c __queue_map_get() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/queue_stack_maps.c __stack_map_get() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/queue_stack_maps.c queue_stack_map_push_elem() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 irq_flags

kernel/bpf/arena.c arena_alloc_pages() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/arena.c arena_alloc_pages() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/arena.c arena_alloc_pages() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/arena.c arena_free_pages() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/arena.c arena_free_worker() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 &pool->lock

kernel/bpf/arena.c arena_reserve_pages() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/arena.c arena_vm_fault() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags

kernel/bpf/arena.c arena_vm_fault() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags

kernel/bpf/lpm_trie.c trie_delete_elem() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 irq_flags
HALF_LOCKED2 rcu_read

kernel/bpf/lpm_trie.c trie_update_elem() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 irq_flags

kernel/bpf/percpu_freelist.c ___pcpu_freelist_pop() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/percpu_freelist.c ___pcpu_freelist_pop() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/percpu_freelist.c ___pcpu_freelist_push() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/percpu_freelist.c __pcpu_freelist_push() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_lru_list.c bpf_common_lru_pop_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_lru_list.c bpf_common_lru_pop_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_lru_list.c bpf_common_lru_pop_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PARAM_VALUE 0 lock->locked 0-1
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_lru_list.c bpf_common_lru_push_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/bpf_lru_list.c bpf_common_lru_push_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/bpf_lru_list.c bpf_lru_list_pop_free_to_local() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_lru_list.c bpf_lru_list_push_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/bpf_lru_list.c bpf_percpu_lru_pop_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/bpf_lru_list.c bpf_percpu_lru_push_free() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/ringbuf.c __bpf_ringbuf_reserve() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/ringbuf.c __bpf_ringbuf_reserve() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags

kernel/bpf/hashtab.c htab_unlock_bucket() -> res_spin_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock 4096-ptr_max
PREEMPT_ADD
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read