Documented in 1 files:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

kernel/futex/core.c __futex_unqueue() -> plist_node_empty()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &hb->lock
HALF_LOCKED2 &pi_state->pi_mutex.wait_lock
HALF_LOCKED2 irq
HALF_LOCKED2 lock_ptr
HALF_LOCKED2 rcu_read

kernel/futex/core.c futex_unqueue_pi() -> plist_node_empty()

Type Parameter Key Value
PARAM_VALUE 0 node 7813435272794112,6287657923781144576
PREEMPT_ADD
RX_PATH
HALF_LOCKED2 &hb->lock

mm/swapfile.c swap_alloc_slow() -> plist_node_empty()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &swap_avail_lock

mm/swapfile.c swap_sync_discard() -> plist_node_empty()

Type Parameter Key Value
PARAM_VALUE 0 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &swap_lock

kernel/futex/waitwake.c futex_do_wait() -> plist_node_empty()

Type Parameter Key Value
PARAM_VALUE 0 node 5056291383298330624,6287657923781144576
RX_PATH

kernel/futex/requeue.c handle_early_requeue_pi_wakeup() -> plist_node_empty()

Type Parameter Key Value
PARAM_VALUE 0 node 6287657923781144576
PREEMPT_ADD
RX_PATH
LOCK2 &hb->lock
TYPE_LOCK (struct futex_hash_bucket)->lock

lib/plist.c plist_add() -> plist_node_empty()

Type Parameter Key Value
DATA_SOURCE 0 node $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 node->prio (-32766)-s32max
HALF_LOCKED2 &hb->lock
HALF_LOCKED2 &si->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &pm_qos_lock
HALF_LOCKED2 global &swap_avail_lock
HALF_LOCKED2 global &swap_lock

lib/plist.c plist_requeue() -> plist_node_empty()

Type Parameter Key Value
DATA_SOURCE 0 node $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &swap_avail_lock

lib/plist.c plist_test() -> plist_node_empty()

Type Parameter Key Value

lib/plist.c plist_test() -> plist_node_empty()

Type Parameter Key Value

lib/plist.c plist_test() -> plist_node_empty()

Type Parameter Key Value

lib/plist.c plist_test() -> plist_node_empty()

Type Parameter Key Value