Documented in 2 files:

Defined in 2 files as a function:

Referenced in 7 files:

Smatch caller information:

mm/compaction.c move_freelist_tail() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 4481026996197900288
PARAM_VALUE 0 list->next 4481026996197900288
PARAM_VALUE 0 list->prev 4481026996197900288
PARAM_VALUE 1 head 4096-ptr_max
BUF_SIZE 1 head 80
BUF_SIZE 1 head 80
CAPPED_DATA 1 head 1
DATA_SOURCE 1 head $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cc->zone->lock
LOCK2 flags
TYPE_LOCK (struct zone)->lock

io_uring/cancel.c io_cancel_defer_files() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8223844522081214464
PARAM_VALUE 0 list->next 8223844522081214464
PARAM_VALUE 0 list->prev 8223844522081214464
PARAM_VALUE 1 head 4096-ptr_max
PARAM_COMPARE 1 head != $2
PARAM_COMPARE 2 entry != $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ctx->uring_lock
HALF_LOCKED2 &sqd->lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

drivers/char/virtio_console.c reclaim_dma_bufs() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 5808214653698146304
PARAM_VALUE 0 list->next 5808214653698146304
PARAM_VALUE 0 list->prev 5808214653698146304
PARAM_VALUE 1 head 4909761421572722688
PARAM_VALUE 1 head->next 0-4909761421572722687,4909761421572722689-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 global &dma_bufs_lock

drivers/acpi/nfit/core.c acpi_nfit_init() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8641545589330354176
PARAM_VALUE 0 list->next 8641545589330354176
PARAM_VALUE 0 list->prev 8641545589330354176
PARAM_VALUE 1 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &acpi_desc->init_mutex
LOCK2 _T->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct acpi_nfit_desc)->init_mutex

drivers/acpi/nfit/core.c acpi_nfit_init() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8641545589330354192
PARAM_VALUE 0 list->next 8641545589330354192
PARAM_VALUE 0 list->prev 8641545589330354192
PARAM_VALUE 1 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &acpi_desc->init_mutex
LOCK2 _T->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct acpi_nfit_desc)->init_mutex

drivers/acpi/nfit/core.c acpi_nfit_init() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8641545589330354208
PARAM_VALUE 0 list->next 8641545589330354208
PARAM_VALUE 0 list->prev 8641545589330354208
PARAM_VALUE 1 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &acpi_desc->init_mutex
LOCK2 _T->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct acpi_nfit_desc)->init_mutex

drivers/acpi/nfit/core.c acpi_nfit_init() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8641545589330354224
PARAM_VALUE 0 list->next 8641545589330354224
PARAM_VALUE 0 list->prev 8641545589330354224
PARAM_VALUE 1 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &acpi_desc->init_mutex
LOCK2 _T->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct acpi_nfit_desc)->init_mutex

drivers/acpi/nfit/core.c acpi_nfit_init() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8641545589330354240
PARAM_VALUE 0 list->next 8641545589330354240
PARAM_VALUE 0 list->prev 8641545589330354240
PARAM_VALUE 1 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &acpi_desc->init_mutex
LOCK2 _T->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct acpi_nfit_desc)->init_mutex

drivers/acpi/nfit/core.c acpi_nfit_init() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8641545589330354256
PARAM_VALUE 0 list->next 8641545589330354256
PARAM_VALUE 0 list->prev 8641545589330354256
PARAM_VALUE 1 head 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &acpi_desc->init_mutex
LOCK2 _T->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct acpi_nfit_desc)->init_mutex

drivers/net/wireless/ath/ath9k/xmit.c ath_drain_txq_list() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 2533430896725532672
PARAM_VALUE 1 head 4096-ptr_max
CAPPED_DATA 1 head 1
DATA_SOURCE 1 head $2
PARAM_COMPARE 1 head != $1->next
PARAM_COMPARE 1 head != $1->next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &txq->axq_lock
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &sc->mutex
HALF_LOCKED2 &sc->sc_pcu_lock
TYPE_LOCK (struct ath_txq)->axq_lock

drivers/net/wireless/ath/ath9k/xmit.c ath_tx_edma_tasklet() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8402199836754231296
PARAM_VALUE 0 list->next 8402199836754231296
PARAM_VALUE 0 list->prev 8402199836754231296
PARAM_VALUE 1 head 4096-ptr_max
CAPPED_DATA 1 head 1
PARAM_COMPARE 1 head != $1->next
PARAM_COMPARE 1 head != $1->next
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sc->sc_pcu_lock
LOCK2 &txq->axq_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct ath_softc)->sc_pcu_lock
TYPE_LOCK (struct ath_txq)->axq_lock

drivers/net/wireless/ath/ath9k/xmit.c ath_tx_processq() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 7740918543882878976
PARAM_VALUE 0 list->next 7740918543882878976
PARAM_VALUE 0 list->prev 7740918543882878976
PARAM_VALUE 1 head 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sc->sc_pcu_lock
LOCK2 &txq->axq_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct ath_softc)->sc_pcu_lock
TYPE_LOCK (struct ath_txq)->axq_lock

lib/tests/list-test.c list_test_list_cut_position() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 7789292345379028992
PARAM_VALUE 0 list->next 7789292345379028992
PARAM_VALUE 0 list->prev 7789292345379028992
PARAM_VALUE 1 head 7347130496985055232
PARAM_VALUE 1 head->next 7347130496985055232
PARAM_VALUE 1 head->prev 7347130496985055232,7986880187324342272,7986880187324342280,7986880187324342288
PARAM_VALUE 2 entry 7986880187324342280
BUF_SIZE 2 entry 32
NOCHECK_CALL

drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c destroy_work() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 4366544874641027072
PARAM_VALUE 0 list->next 4366544874641027072
PARAM_VALUE 0 list->prev 4366544874641027072
PARAM_VALUE 1 head 4096-ptr_max
PARAM_VALUE 2 entry 4096-ptr_max
NOCHECK_CALL
LOCK2 &pool->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx5e_tls_tx_pool)->lock

drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c mlx5e_tls_tx_pool_list_cleanup() -> list_cut_position()

Type Parameter Key Value
PARAM_VALUE 0 list 8962575542774693888
PARAM_VALUE 0 list->next 8962575542774693888
PARAM_VALUE 0 list->prev 8962575542774693888
PARAM_VALUE 1 head 4096-ptr_max
PARAM_VALUE 2 entry 4096-ptr_max
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &esw->offloads.reps_lock