Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/gpu/drm/vc4/vc4_irq.c vc4_irq_finish_render_job() -> vc4_first_render_job()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vc4->job_lock
HALF_LOCKED2 irqflags
TYPE_LOCK (struct vc4_dev)->job_lock

drivers/gpu/drm/vc4/vc4_irq.c vc4_irq_finish_render_job() -> vc4_first_render_job()

Type Parameter Key Value
PARAM_VALUE 0 vc4 4096-ptr_max
PARAM_COMPARE 0 &vc4->render_job_list != $0->render_job_list.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vc4->job_lock
HALF_LOCKED2 irqflags
TYPE_LOCK (struct vc4_dev)->job_lock

drivers/gpu/drm/vc4/vc4_gem.c vc4_hangcheck_elapsed() -> vc4_first_render_job()

Type Parameter Key Value
PARAM_VALUE 0 vc4 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 irqflags
LOCK2 0 &vc4->job_lock
TYPE_LOCK (struct vc4_dev)->job_lock

drivers/gpu/drm/vc4/vc4_gem.c vc4_queue_submit() -> vc4_first_render_job()

Type Parameter Key Value
PARAM_VALUE 0 vc4 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 irqflags
LOCK2 0 &vc4->job_lock
TYPE_LOCK (struct vc4_dev)->job_lock

drivers/gpu/drm/vc4/vc4_gem.c vc4_save_hang_state() -> vc4_first_render_job()

Type Parameter Key Value
PARAM_VALUE 0 vc4 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 irqflags
LOCK2 0 &vc4->job_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct vc4_dev)->job_lock

drivers/gpu/drm/vc4/vc4_gem.c vc4_submit_next_render_job() -> vc4_first_render_job()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vc4->job_lock
TYPE_LOCK (struct vc4_dev)->job_lock