Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_ae_cood() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 42496
PARAM_VALUE 2 val 0
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_ae_cood() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 42500
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_ae_wt() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 42504
PARAM_VALUE 2 val 0
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_ae_wt() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 42508
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_ae_wt() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 42508
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_af_cood() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 41408
PARAM_VALUE 2 val 0
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_af_cood() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 41412
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_awb_cood() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 43520
PARAM_VALUE 2 val 0
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_awb_cood() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 43524
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_awb_wt() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 43528
PARAM_VALUE 2 val 0
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_awb_wt() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 43532
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_awb_wt() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 43532
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_cfg_blc() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 1 reg 16424
DATA_SOURCE 0 isp $0
BIT_INFO 2 val 0x0,0xffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_cfg_blc() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 16428
DATA_SOURCE 0 isp $0
BIT_INFO 2 val 0x0,0xffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_cfg_pst_gamma() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 1 reg 24780
PARAM_VALUE 2 val 0,128-256
DATA_SOURCE 0 isp $0
BIT_INFO 2 val 0x0,0x180
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_cfg_pst_gamma() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 24784
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_cfg_pst_gamma() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 24784
PARAM_VALUE 2 val 0-u16max
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &params->buff_lock
LOCK2 irq
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct c3_isp_params)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_pre_cfg() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 16452
PARAM_VALUE 2 val 2415890431
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-params.c c3_isp_params_pre_cfg() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 16456
PARAM_VALUE 2 val 2415890431
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_lut() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 512,2560
BIT_INFO 2 val 0x200,0xe00
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_lut() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0-134217727
BIT_INFO 2 val 0x0,0x7ff07ff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_lut() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0-134217727
BIT_INFO 2 val 0x0,0x7ff07ff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_lut() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 512,2560
BIT_INFO 2 val 0x200,0xe00
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_lut() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0-134217727
BIT_INFO 2 val 0x0,0x7ff07ff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_lut() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0-134217727
BIT_INFO 2 val 0x0,0x7ff07ff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_size() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0-s32max
BIT_INFO 2 val 0x0,0xfffff000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_pps_size() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0-s32max
BIT_INFO 2 val 0x0,0xfffff000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_start() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_start() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-resizer.c c3_isp_rsz_start() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-capture.c c3_isp_cap_wrmifx3_buff() -> c3_isp_write()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cap->buff_lock
LOCK2 irq
TYPE_LOCK (struct c3_isp_capture)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-capture.c c3_isp_cap_wrmifx3_buff() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cap->buff_lock
LOCK2 irq
TYPE_LOCK (struct c3_isp_capture)->buff_lock

drivers/media/platform/amlogic/c3/isp/c3-isp-capture.c c3_isp_cap_wrmifx3_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 q->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-capture.c c3_isp_cap_wrmifx3_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0,65536-4294901760
BIT_INFO 2 val 0x0,0xffff0000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 q->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-capture.c c3_isp_cap_wrmifx3_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0,65536-4294901760
BIT_INFO 2 val 0x0,0xffff0000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 q->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-capture.c c3_isp_cap_wrmifx3_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0,65536-4294901760
BIT_INFO 2 val 0x0,0xffff0000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 q->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-capture.c c3_isp_cap_wrmifx3_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 2 val 0,65536-4294901760
BIT_INFO 2 val 0x0,0xffff0000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 q->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-dev.c c3_isp_irq_handler() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 132
DATA_SOURCE 0 isp $1
DATA_SOURCE 2 val r c3_isp_read
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 val 0-u32max
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags

drivers/media/platform/amlogic/c3/isp/c3-isp-dev.c c3_isp_update_bits() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
DATA_SOURCE 0 isp $0
DATA_SOURCE 1 reg $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 val 0-u32max
HALF_LOCKED2 &params->buff_lock
HALF_LOCKED2 &stats->buff_lock
HALF_LOCKED2 irq

drivers/media/platform/amlogic/c3/isp/c3-isp-core.c c3_isp_core_cfg_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 0
CAPPED_DATA 0 isp->pipe.start_count 1
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-core.c c3_isp_core_cfg_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 4
CAPPED_DATA 0 isp->pipe.start_count 1
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-core.c c3_isp_core_cfg_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 41036
CAPPED_DATA 0 isp->pipe.start_count 1
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-core.c c3_isp_core_cfg_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 42084
CAPPED_DATA 0 isp->pipe.start_count 1
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock

drivers/media/platform/amlogic/c3/isp/c3-isp-core.c c3_isp_core_cfg_format() -> c3_isp_write()

Type Parameter Key Value
PARAM_VALUE 0 isp 4096-ptr_max
PARAM_VALUE 1 reg 43068
CAPPED_DATA 0 isp->pipe.start_count 1
DATA_SOURCE 0 isp $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &stream->isys->stream_mutex
HALF_LOCKED2 &stream->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 sd->active_state->lock