Re: [PATCH] drm/gma500/oaktrail_lvds: replace continue with break

From: Dan Carpenter
Date: Sat Jun 19 2021 - 09:40:54 EST


On Fri, Jun 18, 2021 at 07:35:24PM +0100, Colin King wrote:
> From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>
> Currently a loop scans through the connector list checking
> for connectors that do not match a specific criteria. The
> use of the continue statement is a little unintuitive and
> can confuse static analysis checking. Invert the criteria
> matching logic and use a break to terminate the loop once
> the first suitable connector has been found.
>
> Thanks to Patrik Jakobsson for explaining the original
> intent of the code and suggesting this change.
>
> Addresses-Coverity: ("Continue has no effect")
> Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
> ---
> drivers/gpu/drm/gma500/oaktrail_lvds.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/gma500/oaktrail_lvds.c b/drivers/gpu/drm/gma500/oaktrail_lvds.c
> index 432bdcc57ac9..8541dcf237eb 100644
> --- a/drivers/gpu/drm/gma500/oaktrail_lvds.c
> +++ b/drivers/gpu/drm/gma500/oaktrail_lvds.c
> @@ -113,8 +113,8 @@ static void oaktrail_lvds_mode_set(struct drm_encoder *encoder,
>
> /* Find the connector we're trying to set up */
> list_for_each_entry(connector, &mode_config->connector_list, head) {
> - if (!connector->encoder || connector->encoder->crtc != crtc)
> - continue;
> + if (connector->encoder && connector->encoder->crtc == crtc)
> + break;
> }
>
> if (!connector) {

This test is wrong/impossible. It should be:

if (list_entry_is_head(connector, &mode_config->connector_list,
head)) {

regards,
dan carpenter