From nobody Fri May 17 06:43:40 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1681283874093217.69898550267408; Wed, 12 Apr 2023 00:17:54 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pmUiy-0005Gc-PJ; Wed, 12 Apr 2023 03:17:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmUiv-0005Fz-6j for qemu-devel@nongnu.org; Wed, 12 Apr 2023 03:16:57 -0400 Received: from mailgw.kylinos.cn ([124.126.103.232]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmUit-0002eL-BX for qemu-devel@nongnu.org; Wed, 12 Apr 2023 03:16:56 -0400 Received: from zdzh5-qitianm428-a376.. [(116.128.244.169)] by mailgw (envelope-from ) (Generic MTA) with ESMTP id 1775056606; Wed, 12 Apr 2023 15:16:43 +0800 X-UUID: 8d41a86644074cf2bee6c47b4c009e0b-20230412 X-CID-O-RULE: Release_Ham X-CID-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.22, REQID:2f274e48-76c1-41b0-885a-06e8411c4ecb, IP:5, U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:-15,FILE:0,BULK:0,RULE:Release_Ham,ACTIO N:release,TS:-10 X-CID-INFO: VERSION:1.1.22, REQID:2f274e48-76c1-41b0-885a-06e8411c4ecb, IP:5, URL :0,TC:0,Content:0,EDM:0,RT:0,SF:-15,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:-10 X-CID-META: VersionHash:120426c, CLOUDID:f6ec0fa1-8fcb-430b-954a-ba3f00fa94a5, B ulkID:230412151645VCI6ZDN8,BulkQuantity:0,Recheck:0,SF:19|44|38|24|17|102, TC:nil,Content:0,EDM:-3,IP:-2,URL:0,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0 ,OSI:0,OSA:0,AV:0 X-CID-BVR: 0,NGT X-CID-BAS: 0,NGT,0,_ X-UUID: 8d41a86644074cf2bee6c47b4c009e0b-20230412 X-User: zenghao@kylinos.cn From: Hao Zeng To: jonathan.cameron@huawei.com, fan.ni@samsung.com, peter.maydell@linaro.org, qemu-devel@nongnu.org Cc: Hao Zeng , Xie Ming Subject: [PATCH v2 1/2] cxl-cdat:Fix open file not closed in ct3_load_cdat Date: Wed, 12 Apr 2023 15:16:32 +0800 Message-Id: <20230412071633.2660412-2-zenghao@kylinos.cn> X-Mailer: git-send-email 2.37.2 In-Reply-To: <20230412071633.2660412-1-zenghao@kylinos.cn> References: <20230412071633.2660412-1-zenghao@kylinos.cn> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=124.126.103.232; envelope-from=zenghao@kylinos.cn; helo=mailgw.kylinos.cn X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZM-MESSAGEID: 1681283877196100003 Content-Type: text/plain; charset="utf-8" opened file processor not closed,May cause file processor leaks Fixes:aba578bdace5303a441f8a37aad781b5cb06f38c Signed-off-by: Zeng Hao Suggested-by: Xie Ming Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/cxl/cxl-cdat.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/cxl/cxl-cdat.c b/hw/cxl/cxl-cdat.c index 137abd0992..ba7ed1aafd 100644 --- a/hw/cxl/cxl-cdat.c +++ b/hw/cxl/cxl-cdat.c @@ -128,6 +128,7 @@ static void ct3_load_cdat(CDATObject *cdat, Error **err= p) =20 if (fread(cdat->buf, file_size, 1, fp) =3D=3D 0) { error_setg(errp, "CDAT: File read failed"); + fclose(fp); return; } =20 --=20 2.37.2 No virus found Checked by Hillstone Network AntiVirus From nobody Fri May 17 06:43:40 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1681283876917440.9138886468779; Wed, 12 Apr 2023 00:17:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pmUiw-0005G7-4i; Wed, 12 Apr 2023 03:16:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmUiu-0005Fc-0Z for qemu-devel@nongnu.org; Wed, 12 Apr 2023 03:16:56 -0400 Received: from mailgw.kylinos.cn ([124.126.103.232]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmUis-0002eB-1k for qemu-devel@nongnu.org; Wed, 12 Apr 2023 03:16:55 -0400 Received: from zdzh5-qitianm428-a376.. [(116.128.244.169)] by mailgw (envelope-from ) (Generic MTA) with ESMTP id 42150297; Wed, 12 Apr 2023 15:16:47 +0800 X-UUID: 18e3f834c3d54ce59e137300d1af7e38-20230412 X-CID-O-RULE: Release_Ham X-CID-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.22, REQID:1d6addd8-d1fb-4c48-aeef-bf43621b88cd, IP:5, U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:-15,FILE:0,BULK:0,RULE:Release_Ham,ACTIO N:release,TS:-10 X-CID-INFO: VERSION:1.1.22, REQID:1d6addd8-d1fb-4c48-aeef-bf43621b88cd, IP:5, URL :0,TC:0,Content:0,EDM:0,RT:0,SF:-15,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:-10 X-CID-META: VersionHash:120426c, CLOUDID:4fee0fa1-8fcb-430b-954a-ba3f00fa94a5, B ulkID:23041215164874MVKLGL,BulkQuantity:0,Recheck:0,SF:44|38|24|17|19|102, TC:nil,Content:0,EDM:-3,IP:-2,URL:0,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0 ,OSI:0,OSA:0,AV:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-UUID: 18e3f834c3d54ce59e137300d1af7e38-20230412 X-User: zenghao@kylinos.cn From: Hao Zeng To: jonathan.cameron@huawei.com, fan.ni@samsung.com, peter.maydell@linaro.org, qemu-devel@nongnu.org Cc: Hao Zeng Subject: [PATCH v2 2/2] cxl-cdat:Fix the check on the return value of fread() Date: Wed, 12 Apr 2023 15:16:33 +0800 Message-Id: <20230412071633.2660412-3-zenghao@kylinos.cn> X-Mailer: git-send-email 2.37.2 In-Reply-To: <20230412071633.2660412-1-zenghao@kylinos.cn> References: <20230412071633.2660412-1-zenghao@kylinos.cn> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=124.126.103.232; envelope-from=zenghao@kylinos.cn; helo=mailgw.kylinos.cn X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZM-MESSAGEID: 1681283877206100004 Content-Type: text/plain; charset="utf-8" The bug in this code (CID 1507822) is that the check on the return value of fread() is wrong. fread() returns the number of items read or written, so checking for =3D=3D 0 only catches "no data read at all", not "only read half the data". Signed-off-by: Zeng Hao Suggested-by: Peter Maydell --- hw/cxl/cxl-cdat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/cxl/cxl-cdat.c b/hw/cxl/cxl-cdat.c index ba7ed1aafd..130531a9cd 100644 --- a/hw/cxl/cxl-cdat.c +++ b/hw/cxl/cxl-cdat.c @@ -126,7 +126,7 @@ static void ct3_load_cdat(CDATObject *cdat, Error **err= p) fseek(fp, 0, SEEK_SET); cdat->buf =3D g_malloc0(file_size); =20 - if (fread(cdat->buf, file_size, 1, fp) =3D=3D 0) { + if (fread(cdat->buf, file_size, 1, fp) !=3D file_size) { error_setg(errp, "CDAT: File read failed"); fclose(fp); return; --=20 2.37.2 No virus found Checked by Hillstone Network AntiVirus