From nobody Mon Nov 17 22:44:21 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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; dmarc=pass(p=quarantine dis=none) header.from=swemel.ru ARC-Seal: i=1; a=rsa-sha256; t=1726560633; cv=none; d=zohomail.com; s=zohoarc; b=bsRTmUgI5oPX10D2vFoX5MxAJ0gTnOPh6oMLzw9XVguigIEYbpDKAfFS/PUJ4PeuFnc67XoSDBXzGE2Hk9WvMDS9sSHzQoeAwpZqOdwfxx/IqgQ0gl+UU/CFSvKb045bIe6/oBy7sKIylxxOevBh3HuM0BI2nr1ukaae5zGLjZM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1726560633; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=bD3PljUXA5AgbaFwmp771Sub/ppxgBtrHoC3nWQ7cXo=; b=fSSlS3qnlQn6BOlzmT/6r38M+TVZ9Mq4gkVzHfNwUt9IvDNMYOXtQRzwrp6F/gNxg0aqY5ypOU8Tt5N13ZgTZ392aJubqEaE7KBcokIyl0sCN4LDLD9edAe9Lqoz57lOd6V3cyqJkb8fFzdhS3yYDS8H7MQYNGUMu5C10iPIBVk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1726560633551895.9936228450342; Tue, 17 Sep 2024 01:10:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sqTHn-0004q6-3E; Tue, 17 Sep 2024 04:10:11 -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 1sqTHi-0004Y2-Ci for qemu-devel@nongnu.org; Tue, 17 Sep 2024 04:10:07 -0400 Received: from mx.swemel.ru ([95.143.211.150]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sqTHf-0002rX-SJ for qemu-devel@nongnu.org; Tue, 17 Sep 2024 04:10:05 -0400 From: Dmitry Frolov DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=swemel.ru; s=mail; t=1726560600; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=bD3PljUXA5AgbaFwmp771Sub/ppxgBtrHoC3nWQ7cXo=; b=rT7oXXmnzWFpd4aSrLQ1iOdWEag/3VpICuJq8spkL86oENmMXkS3JjxWtTFfQAQn4ZfFL0 +Lwh4BJreHb78Kz0b8rWaqmmKSfotQI9sP6+CW6HO4em0GjjqEbtQiaBkOXjBjz8X8nqLG 82En6znONMO/bypDhENiaf59wXljaMA= To: jonathan.cameron@huawei.com Cc: sdl.qemu@linuxtesting.org, qemu-devel@nongnu.org, fan.ni@samsung.com, Dmitry Frolov Subject: [PATCH] hw/cxl: fix uint32 overflow cxl-mailbox-utils.c Date: Tue, 17 Sep 2024 11:09:16 +0300 Message-ID: <20240917080925.270597-2-frolov@swemel.ru> 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=95.143.211.150; envelope-from=frolov@swemel.ru; helo=mx.swemel.ru X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-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-ZohoMail-DKIM: pass (identity @swemel.ru) X-ZM-MESSAGEID: 1726560634635116600 Content-Type: text/plain; charset="utf-8" The sum offset + length may overflow uint32. Since this sum is compared with uint64_t return value of get_lsa_size(), it makes sense to choose uint64_t type for offset and length. Found by Linux Verification Center (linuxtesting.org) with SVACE. Signed-off-by: Dmitry Frolov --- hw/cxl/cxl-mailbox-utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/cxl/cxl-mailbox-utils.c b/hw/cxl/cxl-mailbox-utils.c index 9258e48f95..9f794e4655 100644 --- a/hw/cxl/cxl-mailbox-utils.c +++ b/hw/cxl/cxl-mailbox-utils.c @@ -1445,7 +1445,7 @@ static CXLRetCode cmd_ccls_get_lsa(const struct cxl_c= md *cmd, } QEMU_PACKED *get_lsa; CXLType3Dev *ct3d =3D CXL_TYPE3(cci->d); CXLType3Class *cvc =3D CXL_TYPE3_GET_CLASS(ct3d); - uint32_t offset, length; + uint64_t offset, length; =20 get_lsa =3D (void *)payload_in; offset =3D get_lsa->offset; --=20 2.43.0