Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c relay_reserve() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->chan 4096-ptr_max
PARAM_VALUE 0 buf->chan->subbuf_size 0-18446744073709551614
PARAM_VALUE 1 length 0-s32max,18446744071562067968-u64max
CAPPED_DATA 0 buf->chan->subbuf_size 1
DATA_SOURCE 1 length $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 length unit_byte
LOCK2 &lock
LOCK2 flags
HALF_LOCKED2 rcu_read

drivers/net/wwan/iosm/iosm_ipc_trace.c relay_write() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
DATA_SOURCE 1 length $2
UNITS 1 length unit_byte
LOCK2 flags

drivers/net/wireless/mediatek/mt76/mt7996/debugfs.c relay_reserve() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->chan 4096-ptr_max
PARAM_VALUE 0 buf->chan->subbuf_size 0-18446744073709551614
PARAM_VALUE 1 length 0-s32max,18446744071562067968-u64max
CAPPED_DATA 0 buf->chan->subbuf_size 1
DATA_SOURCE 1 length $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 length 0-65547[c]
UNITS 1 length unit_byte
LOCK2 &lock
LOCK2 flags
HALF_LOCKED2 rcu_read

drivers/net/wwan/t7xx/t7xx_port_trace.c relay_write() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
DATA_SOURCE 1 length $2
RX_PATH
UNITS 1 length unit_byte
LOCK2 &pool->lock
LOCK2 flags

drivers/net/wireless/ath/ath9k/common-spectral.c relay_write() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 1 length 3-65538
DATA_SOURCE 1 length $2
RX_PATH
TASK_NOT_RUNNING
UNITS 1 length unit_byte
LOCK2 flags
HALF_LOCKED2 &priv->rx.rxbuflock
HALF_LOCKED2 bh
HALF_LOCKED2 flags

drivers/net/wireless/ath/ath10k/spectral.c relay_write() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 1 length 93-285
DATA_SOURCE 1 length $2
RX_PATH
TASK_NOT_RUNNING
UNITS 1 length unit_byte
LOCK2 flags

kernel/trace/blktrace.c relay_reserve() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->chan 4096-ptr_max
PARAM_VALUE 0 buf->chan->subbuf_size 0-18446744073709551614
CAPPED_DATA 0 buf->chan->subbuf_size 1
DATA_SOURCE 1 length $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 length unit_byte
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/wireless/ath/ath11k/cfr.c relay_write() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
DATA_SOURCE 1 length $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 length unit_byte
LOCK2 &cfr->lut_lock
LOCK2 bh
LOCK2 flags
HALF_LOCKED2 &ab->core_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &srng->lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct ath11k_cfr)->lut_lock

kernel/relay.c relay_flush() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 length 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &cfr->lut_lock
HALF_LOCKED2 &ipc_trace->trc_mutex
HALF_LOCKED2 &lock
HALF_LOCKED2 &log->relay.lock
HALF_LOCKED2 &q->debugfs_mutex
HALF_LOCKED2 bh
HALF_LOCKED2 flags

kernel/relay.c relay_flush() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 length 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &relay_channels_mutex
HALF_LOCKED2 &cfr->lut_lock
HALF_LOCKED2 &ipc_trace->trc_mutex
HALF_LOCKED2 &lock
HALF_LOCKED2 &log->relay.lock
HALF_LOCKED2 &q->debugfs_mutex
HALF_LOCKED2 bh
HALF_LOCKED2 flags

drivers/net/wireless/ath/ath11k/spectral.c relay_write() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 1 length 38-32789
CAPPED_DATA 1 length 1
CAPPED_DATA 1 length 1
DATA_SOURCE 1 length $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 length unit_byte
LOCK2 &ar->spectral.lock
LOCK2 &srng->lock
LOCK2 bh
LOCK2 flags
LOCK2 rcu_read
HALF_LOCKED2 &ab->core_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ath11k_spectral)->lock
TYPE_LOCK (struct hal_srng)->lock

drivers/gpu/drm/i915/gt/uc/intel_guc_log.c relay_reserve() -> relay_switch_subbuf()

Type Parameter Key Value
PARAM_VALUE 0 buf 4096-ptr_max
PARAM_VALUE 0 buf->chan 4096-ptr_max
PARAM_VALUE 0 buf->chan->subbuf_size 0-18446744073709551614
CAPPED_DATA 0 buf->chan->subbuf_size 1
DATA_SOURCE 1 length $1
PREEMPT_ADD <- disables preempt
UNITS 1 length unit_byte
LOCK2 &log->relay.lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct intel_guc_log)->relay.lock