Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 01a356fd authored by Dan Carpenter's avatar Dan Carpenter Committed by Dave Airlie
Browse files

drm/radeon/kms: small memory leak in atom exit code



This is an unlikely memory leak, but we may as well fix it.  It's easy
to fix and every static checker will complain if we don't.

Signed-off-by: default avatarDan Carpenter <error27@gmail.com>
Reviewed-by: default avatarMatt Turner <mattst88@gmail.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent ba1163de
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1136,6 +1136,7 @@ static int atom_execute_table_locked(struct atom_context *ctx, int index, uint32
	int len, ws, ps, ptr;
	unsigned char op;
	atom_exec_context ectx;
	int ret = 0;

	if (!base)
		return -EINVAL;
@@ -1168,7 +1169,8 @@ static int atom_execute_table_locked(struct atom_context *ctx, int index, uint32
		if (ectx.abort) {
			DRM_ERROR("atombios stuck executing %04X (len %d, WS %d, PS %d) @ 0x%04X\n",
				base, len, ws, ps, ptr - 1);
			return -EINVAL;
			ret = -EINVAL;
			goto free;
		}

		if (op < ATOM_OP_CNT && op > 0)
@@ -1183,9 +1185,10 @@ static int atom_execute_table_locked(struct atom_context *ctx, int index, uint32
	debug_depth--;
	SDEBUG("<<\n");

free:
	if (ws)
		kfree(ectx.ws);
	return 0;
	return ret;
}

int atom_execute_table(struct atom_context *ctx, int index, uint32_t * params)