Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/thunderbolt/switch.c tb_switch_remove() -> tb_switch_remove()

Type Parameter Key Value
PARAM_VALUE 0 sw->dev.power.wakeirq->status 0-4294967295
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tb->lock

drivers/thunderbolt/icm.c icm_stop() -> tb_switch_remove()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tb->lock
HALF_LOCKED2 &dev->mutex
TYPE_LOCK (struct tb)->lock

drivers/thunderbolt/icm.c remove_switch() -> tb_switch_remove()

Type Parameter Key Value
PARAM_VALUE 0 sw 4096-ptr_max
PARAM_VALUE 0 sw->dev.parent->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 sw->dev.power.wakeirq->status 0-4294967295
DATA_SOURCE 0 sw $0
NOCHECK_CALL
LOCK2 &tb->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tb)->lock

drivers/thunderbolt/icm.c remove_unplugged_switch() -> tb_switch_remove()

Type Parameter Key Value
PARAM_VALUE 0 sw 4096-ptr_max
PARAM_VALUE 0 sw->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 sw->is_unplugged 1
DATA_SOURCE 0 sw $0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &tb->lock

drivers/thunderbolt/tb.c tb_free_unplugged_children() -> tb_switch_remove()

Type Parameter Key Value
PARAM_VALUE 0 sw 4096-ptr_max
PARAM_VALUE 0 sw->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 sw->is_unplugged 1
CAPPED_DATA 0 sw 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tb->lock

drivers/thunderbolt/tb.c tb_handle_hotplug() -> tb_switch_remove()

Type Parameter Key Value
PARAM_VALUE 0 sw 4096-ptr_max
PARAM_VALUE 0 sw->tb 4096-ptr_max
CAPPED_DATA 0 sw 1
NOCHECK_CALL
LOCK2 &tb->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tb)->lock

drivers/thunderbolt/tb.c tb_stop() -> tb_switch_remove()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tb->lock
HALF_LOCKED2 &dev->mutex
TYPE_LOCK (struct tb)->lock