From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7F6764315A; Mon, 23 Jun 2025 21:42:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750714931; cv=none; b=GhCq9lNuEsX8MPPdbhOdB0M+RidvVmkFTjoQ4Asdo8clphdKVYCHmV1X5jX3oVH784Dl1TzfZJ/uNwg4dXBKwCLPrSUtidcdKTiJJ5Iga0RwSKJHmNcvTbzXacogtoZe5I6wRjkzogdSu5LeFgjLWmyUfUz4qJHZUJRBEAaQM1Q= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750714931; c=relaxed/simple; bh=rQZJHsp5LCekWbfwsm9373SsLUusTxe42V1s//S6KO4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=P4D33acO1AVWFzUsntjaT3hnyKyqgz75ylPVLg1Z1o+nrmGyl5C2v8OvwSkCc7EkuoH2l7408SZgZN0L+yYBeVuMhGYHSZAVV47Z9Ho3YIgw/vhVSnpGK8wUCUDKUeLI5BO949OvXkwic96FcPpPFoLWH5inYwy3UcgDYCppNzw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=I06ABZ/c; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="I06ABZ/c" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 167C2C4CEEA; Mon, 23 Jun 2025 21:42:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1750714931; bh=rQZJHsp5LCekWbfwsm9373SsLUusTxe42V1s//S6KO4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=I06ABZ/c76jQtd5DskYhUIBbLh/78MhFwfVaUZTpwWIU4ptZ56V7vx993Y4Wcw5Fi NtjnpHKIlZDX5fq0B2bK/zJV3fDat3ZIV2HGoeX6Ne0BfJQj1chB7BhKoDFwNhsVOz qaqUuvfsLE0+QhvpOZe27lDi8bZKauSHdLF6r4qk= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Nicolas Dufresne , Hans Verkuil , Sasha Levin Subject: [PATCH 5.10 235/355] media: rkvdec: Initialize the m2m context before the controls Date: Mon, 23 Jun 2025 15:07:16 +0200 Message-ID: <20250623130633.815639326@linuxfoundation.org> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623130626.716971725@linuxfoundation.org> References: <20250623130626.716971725@linuxfoundation.org> User-Agent: quilt/0.68 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 5.10-stable review patch. If anyone has any objections, please let me know. ------------------ From: Nicolas Dufresne [ Upstream commit d43d7db3c8a1868dcbc6cb8de90a3cdf309d6cbb ] Setting up the control handler calls into .s_ctrl ops. While validating the controls the ops may need to access some of the context state, which could lead to a crash if not properly initialized. Signed-off-by: Nicolas Dufresne Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/staging/media/rkvdec/rkvdec.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c index a5eca08ff2597..3266f1d78e882 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -827,24 +827,24 @@ static int rkvdec_open(struct file *filp) rkvdec_reset_decoded_fmt(ctx); v4l2_fh_init(&ctx->fh, video_devdata(filp)); - ret = rkvdec_init_ctrls(ctx); - if (ret) - goto err_free_ctx; - ctx->fh.m2m_ctx = v4l2_m2m_ctx_init(rkvdec->m2m_dev, ctx, rkvdec_queue_init); if (IS_ERR(ctx->fh.m2m_ctx)) { ret = PTR_ERR(ctx->fh.m2m_ctx); - goto err_cleanup_ctrls; + goto err_free_ctx; } + ret = rkvdec_init_ctrls(ctx); + if (ret) + goto err_cleanup_m2m_ctx; + filp->private_data = &ctx->fh; v4l2_fh_add(&ctx->fh); return 0; -err_cleanup_ctrls: - v4l2_ctrl_handler_free(&ctx->ctrl_hdl); +err_cleanup_m2m_ctx: + v4l2_m2m_ctx_release(ctx->fh.m2m_ctx); err_free_ctx: kfree(ctx); -- 2.39.5