Received: by 2002:a05:7412:b101:b0:e2:908c:2ebd with SMTP id az1csp3273766rdb; Thu, 16 Nov 2023 05:26:49 -0800 (PST) X-Google-Smtp-Source: AGHT+IFOwURTJKEg3c8KefiTb70TLPmG4dWEdWvqbmz2m97GoXWYWdu1ufBjQKrSTN08q1axnhaX X-Received: by 2002:a17:903:41cc:b0:1cc:e36a:8bb with SMTP id u12-20020a17090341cc00b001cce36a08bbmr10704789ple.25.1700141209076; Thu, 16 Nov 2023 05:26:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700141209; cv=none; d=google.com; s=arc-20160816; b=KWcL6xt1ms+tlg+4x+gilUK7cQ/3D22jdVjkEc9DDnfqk0Ta2bLhoePnGIJT7o5zpZ +h3ZUhTNrtsoTp3jD4dBAv9sYS9TfVT1Gi3VkHXeu3exkkckFCwgwABIkwTin/3edYRQ R8fTPJZHOsb8fdSSXyM4LVy0NHb0P0NLGOesPYbb3YkNDljwZN6zmimvFed9/7ucsYe1 PrTZFVPn5aiMq7D1U7DpF4oFn5c4nkRjX8zXRSH/WUW+0oXsT6w+WhnWqwz+fITAwsoT K+MDr5DR6MdR06Ajd7p/GmICKMGpbMhXWC1Tal/Xx3VljVUt+UMBQ9T9njJi+UsU4T8V OVcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from :dkim-signature; bh=y1Rm5jlVn5t0id/m/TPD/9lVjA4G13LLAk8j5q37gsw=; fh=XLUw+Qmyqf67WSfF+p20/hMc7YWrs7a5PuysFKuIL0I=; b=UPvE810HD1oeRhNoA6Ynqc8DDyglVSTaPGwA6QHWdCNH30wNYb6twuUcVi+5QIocHo JIrxHR5bB437TeoCO+Xk797CVFHyhE1xQSo7bJ/vuR2hPxrn6dkD5TbE4A3Bw1nQRmgp hAkBLVjuFdfEV91fcX7Bw8P4oUu+3Nl4Cl2o+mih44Fnp0jEofQSHHRyIDbnz/zdJ+xR 1iNukcBoi3U4ITqqcRyxOx7Wz760pIZUGKINvX5riy7fmkq3v30D28v+lbrDo7prJiKS 7TxLFoH4HQ/dOiTOK7BKTNMjmF9Qt6Y8fZ9g/B3eiX73b+YPgehDlNttaILH4LrMlpRf K8VA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=qwo0KZcq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Return-Path: Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id j10-20020a17090276ca00b001bb3406a5f7si11943894plt.11.2023.11.16.05.26.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Nov 2023 05:26:49 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=qwo0KZcq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id EE1E881D2AC7; Thu, 16 Nov 2023 05:26:47 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345043AbjKPN0j (ORCPT + 99 others); Thu, 16 Nov 2023 08:26:39 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59122 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230348AbjKPN0i (ORCPT ); Thu, 16 Nov 2023 08:26:38 -0500 Received: from mailgw02.mediatek.com (unknown [210.61.82.184]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 84BCD1A5; Thu, 16 Nov 2023 05:26:31 -0800 (PST) X-UUID: bec66c48848311ee8051498923ad61e6-20231116 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=y1Rm5jlVn5t0id/m/TPD/9lVjA4G13LLAk8j5q37gsw=; b=qwo0KZcqGzBreHoIaewzH3LX/RwJRuN7riv7yL2UvJlJGkEVTqgywAjt1GT2lySvGo+wb9VRVAJDA2MH0HeUFdpPm9FT0Sj+Q6hDe0wgdGsZWvhULoWAc/VgicTRrdOuYULJjC7KIDoknWs/hSOv/+vXAIBLL2eyB1h0NYnjrAQ=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.33,REQID:04cc521c-c76a-4815-a28f-b6e785132362,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:0 X-CID-META: VersionHash:364b77b,CLOUDID:6d8c2360-c89d-4129-91cb-8ebfae4653fc,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:11|1,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES:1,SPR: NO,DKR:0,DKP:0,BRR:0,BRE:0 X-CID-BVR: 0,NGT X-CID-BAS: 0,NGT,0,_ X-CID-FACTOR: TF_CID_SPAM_ULN,TF_CID_SPAM_SNR X-UUID: bec66c48848311ee8051498923ad61e6-20231116 Received: from mtkmbs13n1.mediatek.inc [(172.21.101.193)] by mailgw02.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 413711698; Thu, 16 Nov 2023 21:26:27 +0800 Received: from mtkmbs11n1.mediatek.inc (172.21.101.185) by mtkmbs10n2.mediatek.inc (172.21.101.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Thu, 16 Nov 2023 21:26:25 +0800 Received: from mcddlt001.gcn.mediatek.inc (10.19.240.15) by mtkmbs11n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Thu, 16 Nov 2023 21:26:24 +0800 From: Bo Ye To: "Rafael J. Wysocki" , Daniel Lezcano , Matthias Brugger , AngeloGioacchino Del Regno CC: , mtk24676 , "bo . ye" , , , , Subject: [PATCH] cpuidle: idle exit_latency overflow Date: Thu, 16 Nov 2023 21:26:19 +0800 Message-ID: <20231116132619.69500-1-bo.ye@mediatek.com> X-Mailer: git-send-email 2.17.0 MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-Product-Ver: SMEX-14.0.0.3152-9.1.1006-23728.005 X-TM-AS-Result: No-10--2.336600-8.000000 X-TMASE-MatchedRID: q6Mcoqip180V3w3L8QuNEG3NvezwBrVmgRykyfrH1xlaW2Ktn+I8/hjt AEYMnZ1a+a6+c8HVVTTkY5jnILkv8QfOsX0b+fZzA9lly13c/gF9LQinZ4QefPcjNeVeWlqY+gt Hj7OwNO2mZ396Gt5HhbRDDFNIh3eVt7VBaHOUXTmiHbKhgq+wjecLkJ18YygSpmkWtXcgBB8O5f DUOrhTJDcG0AuzN2tmcPptgJdP32/rxtqtWRjZinZrUbEZipAEiWT09mQz7szw9kH8zAy44aOuV Lnx3A74 X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No X-TMASE-Result: 10--2.336600-8.000000 X-TMASE-Version: SMEX-14.0.0.3152-9.1.1006-23728.005 X-TM-SNTS-SMTP: 4E0647C9374209A165167659E1BEC95B48EA7C03306E9BBFA04062C7CE3E4B892000:8 X-MTK: N X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,RDNS_NONE,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 16 Nov 2023 05:26:48 -0800 (PST) From: mtk24676 In detail: In kernel-6.1, in the __cpuidle_driver_init function in driver/cpuidle/driver.c, there is a line of code that causes an overflow. The line is s->exit_latency_ns = s->exit_latency * NSEC_PER_USEC. The overflow occurs because the product of an int type and a constant exceeds the range of the int type. In C language, when you perform a multiplication operation, if both operands are of int type, the multiplication operation is performed on the int type, and then the result is converted to the target type. This means that if the product of int type multiplication exceeds the range that int type can represent, an overflow will occur even if you store the result in a variable of int64_t type. Signed-off-by: mtk24676 Signed-off-by: bo.ye --- diff --git a/drivers/cpuidle/driver.c b/drivers/cpuidle/driver.c index d9cda7f..631ca16 100644 --- a/drivers/cpuidle/driver.c +++ b/drivers/cpuidle/driver.c @@ -187,7 +187,7 @@ s->target_residency = div_u64(s->target_residency_ns, NSEC_PER_USEC); if (s->exit_latency > 0) - s->exit_latency_ns = s->exit_latency * NSEC_PER_USEC; + s->exit_latency_ns = (u64)s->exit_latency * NSEC_PER_USEC; else if (s->exit_latency_ns < 0) s->exit_latency_ns = 0; else