Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/acpi/ec.c __acpi_ec_enable_event() -> advance_transaction()

Type Parameter Key Value
PARAM_VALUE 0 ec 4096-ptr_max
PARAM_VALUE 1 interrupt 0
BUF_SIZE 0 ec s32min-(-1),1-s32max
BUF_SIZE 0 ec s32min-(-1),1-s32max
DATA_SOURCE 0 ec $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ec unit_byte
LOCK2 flags
LOCK2 0 &ec->lock
TYPE_LOCK (struct acpi_ec)->lock

drivers/acpi/ec.c acpi_ec_enable_gpe() -> advance_transaction()

Type Parameter Key Value
PARAM_VALUE 0 ec 4096-ptr_max
PARAM_VALUE 0 ec->gpe 0-s32max
PARAM_VALUE 0 ec->reference_count 1-u64max
PARAM_VALUE 1 interrupt 0
BUF_SIZE 0 ec s32min-(-1),1-s32max
BUF_SIZE 0 ec s32min-(-1),1-s32max
CAPPED_DATA 0 ec 1
DATA_SOURCE 0 ec $0
FUZZY_MAX 0 ec->gpe 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ec unit_byte
USER_PTR 0 ec->curr->wdata
HALF_LOCKED2 0 &ec->lock
HALF_LOCKED2 0 &ec->mutex

drivers/acpi/ec.c acpi_ec_event_handler() -> advance_transaction()

Type Parameter Key Value
PARAM_VALUE 0 ec 4096-ptr_max
PARAM_VALUE 0 ec->curr 0
PARAM_VALUE 0 ec->event_state 0,2-u32max
PARAM_VALUE 0 ec->events_to_process 0
PARAM_VALUE 0 ec->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 interrupt 0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 irq
LOCK2 0 &ec->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct acpi_ec)->lock

drivers/acpi/ec.c clear_gpe_and_advance_transaction() -> advance_transaction()

Type Parameter Key Value
PARAM_VALUE 0 ec 4096-ptr_max
PARAM_VALUE 1 interrupt 1
DATA_SOURCE 0 ec $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 global &first_ec->lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq
HALF_LOCKED2 0 &ec->lock
TYPE_LOCK (struct acpi_ec)->lock

drivers/acpi/ec.c ec_poll() -> advance_transaction()

Type Parameter Key Value
PARAM_VALUE 0 ec 4096-ptr_max
PARAM_VALUE 0 ec->curr 4096-ptr_max
PARAM_VALUE 0 ec->curr->command 16-17,70,89,128-132
PARAM_VALUE 0 ec->curr->rdata 0,4096-ptr_max
PARAM_VALUE 0 ec->curr->rlen 0-1
PARAM_VALUE 0 ec->curr->wlen 0-2
PARAM_VALUE 0 ec->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ec->mutex.dep_map->name 0-255
PARAM_VALUE 0 ec->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ec->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ec->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ec->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ec->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ec->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ec->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 interrupt 0
BUF_SIZE 0 ec s32min-(-1),1-s32max
BUF_SIZE 0 ec s32min-(-1),1-s32max
CAPPED_DATA 0 ec->curr->rlen 1
CAPPED_DATA 0 ec->curr->wlen 1
DATA_SOURCE 0 ec $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ec unit_byte
USER_PTR 0 ec->curr->wdata
LOCK2 flags
LOCK2 0 &ec->lock
LOCK2 0 &ec->mutex
TYPE_LOCK (struct acpi_ec)->lock
TYPE_LOCK (struct acpi_ec)->mutex