From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 50459C77B76 for ; Mon, 17 Apr 2023 08:02:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230193AbjDQICQ (ORCPT ); Mon, 17 Apr 2023 04:02:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48268 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230128AbjDQIBt (ORCPT ); Mon, 17 Apr 2023 04:01:49 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E2DAC46AB; Mon, 17 Apr 2023 01:01:34 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8194761408; Mon, 17 Apr 2023 08:01:34 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CDF9EC433EF; Mon, 17 Apr 2023 08:01:30 +0000 (UTC) Message-ID: <0341924c-7f0a-28aa-eeae-f7de69ab36d8@xs4all.nl> Date: Mon, 17 Apr 2023 10:01:29 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH] media: mediatek: vcodec: Move a variable assignment behind condition checks in vdec_vp9_slice_single_decode() Content-Language: en-US To: Markus Elfring , kernel-janitors@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org, Andrew-CT Chen , AngeloGioacchino Del Regno , Ezequiel Garcia , Guo Zhengkui , Haowen Bai , Matthias Brugger , Mauro Carvalho Chehab , Mingjia Zhang , Tiffany Lin , Xiaoyong Lu , Yunfei Dong Cc: cocci@inria.fr, LKML References: <40c60719-4bfe-b1a4-ead7-724b84637f55@web.de> <1a11455f-ab57-dce0-1677-6beb8492a257@web.de> From: Hans Verkuil In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 14/04/2023 20:30, Markus Elfring wrote: > Date: Fri, 14 Apr 2023 20:07:01 +0200 > > The address of a data structure member was determined before > a corresponding null pointer check in the implementation of > the function “vdec_vp9_slice_single_decode”. > > Thus avoid the risk for undefined behaviour by moving the assignment > for the variable “pfc” behind some condition checks. > > This issue was detected by using the Coccinelle software. > > Fixes: b0f407c19648ae9110c932c91d6e1b9381ec0aeb ("media: mediatek: vcodec: add vp9 decoder driver for mt8186") Not a fix, it was never broken. > Signed-off-by: Markus Elfring > --- > .../media/platform/mediatek/vcodec/vdec/vdec_vp9_req_lat_if.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/platform/mediatek/vcodec/vdec/vdec_vp9_req_lat_if.c b/drivers/media/platform/mediatek/vcodec/vdec/vdec_vp9_req_lat_if.c > index cf16cf2807f0..22b27f7b57bf 100644 > --- a/drivers/media/platform/mediatek/vcodec/vdec/vdec_vp9_req_lat_if.c > +++ b/drivers/media/platform/mediatek/vcodec/vdec/vdec_vp9_req_lat_if.c > @@ -1990,7 +1990,7 @@ static int vdec_vp9_slice_single_decode(void *h_vdec, struct mtk_vcodec_mem *bs, > struct vdec_fb *fb, bool *res_chg) > { > struct vdec_vp9_slice_instance *instance = h_vdec; Just drop these lines instead: if (!instance || !instance->ctx) return -EINVAL; That can never happen. Regards, Hans > - struct vdec_vp9_slice_pfc *pfc = &instance->sc_pfc; > + struct vdec_vp9_slice_pfc *pfc; > struct vdec_vp9_slice_vsi *vsi; > struct mtk_vcodec_ctx *ctx; > int ret; > @@ -2007,6 +2007,7 @@ static int vdec_vp9_slice_single_decode(void *h_vdec, struct mtk_vcodec_mem *bs, > if (!fb) > return -EBUSY; > > + pfc = &instance->sc_pfc; > vsi = &pfc->vsi; > > ret = vdec_vp9_slice_setup_single(instance, bs, fb, pfc); > -- > 2.40.0 > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3A60CC77B70 for ; Mon, 17 Apr 2023 08:02:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To: Subject:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=QEvlPW4eWT7U0D4W1xMdfwFNf+qtIFWWK93eQozzgUU=; b=vz3aKYStNkYMXO iIOWHizh82ehbIaCxcrq3PV9WauqIdYztibUF7i/WUXwuqgrIx2SYij7x2IEeGb+qpv8ApsqRI/CT Jeu+sDaBNu2tjMf00WMJFHdbyNtb62yodirKCefZpCdMD4AVDTtbfUBPOTQnnGXNt7rfD7+CKBkDi LNaj9w8+KqppekP/dFPNYT7Be1KXnGlrqtLeX0fSvRxpbTRmeK4ZRMmBSK8PwOFa/5LKG6+gyk7Id hhXJZEiKWtN0MyUuOyq4oHM7SnRq+LUenKjoaTNJ/M6r4hIz03tu0BDNzwAZgU3ChCJ6kDhZhQGuH pLn7JcvpbSAG/Z/ciIhQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1poJnt-00FJYp-0O; Mon, 17 Apr 2023 08:01:37 +0000 Received: from dfw.source.kernel.org ([139.178.84.217]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1poJnr-00FJXr-09; Mon, 17 Apr 2023 08:01:36 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8552761FAC; Mon, 17 Apr 2023 08:01:34 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CDF9EC433EF; Mon, 17 Apr 2023 08:01:30 +0000 (UTC) Message-ID: <0341924c-7f0a-28aa-eeae-f7de69ab36d8@xs4all.nl> Date: Mon, 17 Apr 2023 10:01:29 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH] media: mediatek: vcodec: Move a variable assignment behind condition checks in vdec_vp9_slice_single_decode() Content-Language: en-US To: Markus Elfring , kernel-janitors@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org, Andrew-CT Chen , AngeloGioacchino Del Regno , Ezequiel Garcia , Guo Zhengkui , Haowen Bai , Matthias Brugger , Mauro Carvalho Chehab , Mingjia Zhang , Tiffany Lin , Xiaoyong Lu , Yunfei Dong Cc: cocci@inria.fr, LKML References: <40c60719-4bfe-b1a4-ead7-724b84637f55@web.de> <1a11455f-ab57-dce0-1677-6beb8492a257@web.de> From: Hans Verkuil In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230417_010135_118767_1298D0B2 X-CRM114-Status: GOOD ( 21.29 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMTQvMDQvMjAyMyAyMDozMCwgTWFya3VzIEVsZnJpbmcgd3JvdGU6Cj4gRGF0ZTogRnJpLCAx NCBBcHIgMjAyMyAyMDowNzowMSArMDIwMAo+IAo+IFRoZSBhZGRyZXNzIG9mIGEgZGF0YSBzdHJ1 Y3R1cmUgbWVtYmVyIHdhcyBkZXRlcm1pbmVkIGJlZm9yZQo+IGEgY29ycmVzcG9uZGluZyBudWxs IHBvaW50ZXIgY2hlY2sgaW4gdGhlIGltcGxlbWVudGF0aW9uIG9mCj4gdGhlIGZ1bmN0aW9uIOKA nHZkZWNfdnA5X3NsaWNlX3NpbmdsZV9kZWNvZGXigJ0uCj4gCj4gVGh1cyBhdm9pZCB0aGUgcmlz ayBmb3IgdW5kZWZpbmVkIGJlaGF2aW91ciBieSBtb3ZpbmcgdGhlIGFzc2lnbm1lbnQKPiBmb3Ig dGhlIHZhcmlhYmxlIOKAnHBmY+KAnSBiZWhpbmQgc29tZSBjb25kaXRpb24gY2hlY2tzLgo+IAo+ IFRoaXMgaXNzdWUgd2FzIGRldGVjdGVkIGJ5IHVzaW5nIHRoZSBDb2NjaW5lbGxlIHNvZnR3YXJl Lgo+IAo+IEZpeGVzOiBiMGY0MDdjMTk2NDhhZTkxMTBjOTMyYzkxZDZlMWI5MzgxZWMwYWViICgi bWVkaWE6IG1lZGlhdGVrOiB2Y29kZWM6IGFkZCB2cDkgZGVjb2RlciBkcml2ZXIgZm9yIG10ODE4 NiIpCgpOb3QgYSBmaXgsIGl0IHdhcyBuZXZlciBicm9rZW4uCgo+IFNpZ25lZC1vZmYtYnk6IE1h cmt1cyBFbGZyaW5nIDxlbGZyaW5nQHVzZXJzLnNvdXJjZWZvcmdlLm5ldD4KPiAtLS0KPiAgLi4u L21lZGlhL3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy92ZGVjL3ZkZWNfdnA5X3JlcV9sYXRfaWYu YyAgfCAzICsrLQo+ICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9u KC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvdmNv ZGVjL3ZkZWMvdmRlY192cDlfcmVxX2xhdF9pZi5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9t ZWRpYXRlay92Y29kZWMvdmRlYy92ZGVjX3ZwOV9yZXFfbGF0X2lmLmMKPiBpbmRleCBjZjE2Y2Yy ODA3ZjAuLjIyYjI3ZjdiNTdiZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L21lZGlhdGVrL3Zjb2RlYy92ZGVjL3ZkZWNfdnA5X3JlcV9sYXRfaWYuYwo+ICsrKyBiL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvdmNvZGVjL3ZkZWMvdmRlY192cDlfcmVxX2xhdF9p Zi5jCj4gQEAgLTE5OTAsNyArMTk5MCw3IEBAIHN0YXRpYyBpbnQgdmRlY192cDlfc2xpY2Vfc2lu Z2xlX2RlY29kZSh2b2lkICpoX3ZkZWMsIHN0cnVjdCBtdGtfdmNvZGVjX21lbSAqYnMsCj4gIAkJ CQkJc3RydWN0IHZkZWNfZmIgKmZiLCBib29sICpyZXNfY2hnKQo+ICB7Cj4gIAlzdHJ1Y3QgdmRl Y192cDlfc2xpY2VfaW5zdGFuY2UgKmluc3RhbmNlID0gaF92ZGVjOwoKSnVzdCBkcm9wIHRoZXNl IGxpbmVzIGluc3RlYWQ6CgogICAgICAgIGlmICghaW5zdGFuY2UgfHwgIWluc3RhbmNlLT5jdHgp CiAgICAgICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKClRoYXQgY2FuIG5ldmVyIGhhcHBlbi4K ClJlZ2FyZHMsCgoJSGFucwoKPiAtCXN0cnVjdCB2ZGVjX3ZwOV9zbGljZV9wZmMgKnBmYyA9ICZp bnN0YW5jZS0+c2NfcGZjOwo+ICsJc3RydWN0IHZkZWNfdnA5X3NsaWNlX3BmYyAqcGZjOwo+ICAJ c3RydWN0IHZkZWNfdnA5X3NsaWNlX3ZzaSAqdnNpOwo+ICAJc3RydWN0IG10a192Y29kZWNfY3R4 ICpjdHg7Cj4gIAlpbnQgcmV0Owo+IEBAIC0yMDA3LDYgKzIwMDcsNyBAQCBzdGF0aWMgaW50IHZk ZWNfdnA5X3NsaWNlX3NpbmdsZV9kZWNvZGUodm9pZCAqaF92ZGVjLCBzdHJ1Y3QgbXRrX3Zjb2Rl Y19tZW0gKmJzLAo+ICAJaWYgKCFmYikKPiAgCQlyZXR1cm4gLUVCVVNZOwo+IAo+ICsJcGZjID0g Jmluc3RhbmNlLT5zY19wZmM7Cj4gIAl2c2kgPSAmcGZjLT52c2k7Cj4gCj4gIAlyZXQgPSB2ZGVj X3ZwOV9zbGljZV9zZXR1cF9zaW5nbGUoaW5zdGFuY2UsIGJzLCBmYiwgcGZjKTsKPiAtLQo+IDIu NDAuMAo+IAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5m cmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xp bnV4LWFybS1rZXJuZWwK