The DRM pipeline handling code uses the entity's pipe list head to check
whether the entity is already included in a pipeline. This method is a
bit fragile in the sense that it uses list_empty() on a list_head that
is a list member. Replace it by a simpler check for the entity pipe
pointer.
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
* Remove the RPF from the pipe and the list of BRU
* inputs.
*/
- WARN_ON(list_empty(&rpf->entity.list_pipe));
+ WARN_ON(!rpf->entity.pipe);
rpf->entity.pipe = NULL;
- list_del_init(&rpf->entity.list_pipe);
+ list_del(&rpf->entity.list_pipe);
pipe->inputs[i] = NULL;
bru->inputs[rpf->bru_input].rpf = NULL;
continue;
}
- if (list_empty(&rpf->entity.list_pipe)) {
+ if (!rpf->entity.pipe) {
rpf->entity.pipe = pipe;
list_add_tail(&rpf->entity.list_pipe, &pipe->entities);
}
VI6_DPR_NODE_UNUSED);
entity->pipe = NULL;
- list_del_init(&entity->list_pipe);
+ list_del(&entity->list_pipe);
continue;
}