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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8CF78C677C4 for ; Tue, 10 Jun 2025 18:45:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0D2476B007B; Tue, 10 Jun 2025 14:45:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 05BB36B0088; Tue, 10 Jun 2025 14:45:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E66286B0089; Tue, 10 Jun 2025 14:45:27 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id C75A66B007B for ; Tue, 10 Jun 2025 14:45:27 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 3D82D1013D3 for ; Tue, 10 Jun 2025 18:45:27 +0000 (UTC) X-FDA: 83540369094.25.92789E6 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) by imf21.hostedemail.com (Postfix) with ESMTP id 10F961C000D for ; Tue, 10 Jun 2025 18:45:24 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=gHzkqnn5; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=JMmAAnF+; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=gHzkqnn5; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=JMmAAnF+; spf=pass (imf21.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.130 as permitted sender) smtp.mailfrom=osalvador@suse.de; dmarc=pass (policy=none) header.from=suse.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749581125; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=sr7TxE0fMIVJqY4goPJsfGRsQqTX+JqGpVwsxM5JubI=; b=6jiHT+RRnepf3KXLLbO9723pr5AfPnctXG43pTJs9Q/gm+OclpGOLoCVZmr5Vd8EDX9Xg2 mTgUCfVh5DytDkncMCENaNQIepZOvyDa4kGXb34UwWjVGbwFxF4nkTuHkMvDodvVH7Le8I cH2eiVnnI3rGBBrBt0FMXPqDGcew494= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749581125; a=rsa-sha256; cv=none; b=fRRfe8iKOaWfwm+kRUoKWbA2hsPZj9hnnv4tUamUGLEx6ndlFxWIerTMbXB6/tCEm7WOu1 PHTbMCD05H7FMyjDf+nt78wTpnIYkYT59XDImwVV2Pb1T3+uPdFnMhCI3ei8nDJobXRnz1 iUwZlIwkFzik5c+u4FGdmS7LdLSVFrI= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=gHzkqnn5; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=JMmAAnF+; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=gHzkqnn5; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=JMmAAnF+; spf=pass (imf21.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.130 as permitted sender) smtp.mailfrom=osalvador@suse.de; dmarc=pass (policy=none) header.from=suse.de Received: from imap1.dmz-prg2.suse.org (unknown [10.150.64.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 5EFD1211A3; Tue, 10 Jun 2025 18:45:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1749581123; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sr7TxE0fMIVJqY4goPJsfGRsQqTX+JqGpVwsxM5JubI=; b=gHzkqnn5ZtWckU9ajahns7moKGuKJwCcKc2k/fS3XkIC53bYHF1/+hdbMhiuoS+8b0U06w 8ZBrEWk0jdxauhYNrXSsrZDyfYVwFRYF00k8N45cLlLlKBGHW1aA/ZMzRmV+XpkD1bjPMq a3eZyv7SnIx2l/qOiR/ZlzMuUtYuyYo= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1749581123; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sr7TxE0fMIVJqY4goPJsfGRsQqTX+JqGpVwsxM5JubI=; b=JMmAAnF+71wDkIwsn+OciphIa4oNVjF6oRbCCF9C4H9d6ZrhySqWVIgqG3u6IMFG+oBvqj qrgYk0r46xLHsFCA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1749581123; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sr7TxE0fMIVJqY4goPJsfGRsQqTX+JqGpVwsxM5JubI=; b=gHzkqnn5ZtWckU9ajahns7moKGuKJwCcKc2k/fS3XkIC53bYHF1/+hdbMhiuoS+8b0U06w 8ZBrEWk0jdxauhYNrXSsrZDyfYVwFRYF00k8N45cLlLlKBGHW1aA/ZMzRmV+XpkD1bjPMq a3eZyv7SnIx2l/qOiR/ZlzMuUtYuyYo= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1749581123; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sr7TxE0fMIVJqY4goPJsfGRsQqTX+JqGpVwsxM5JubI=; b=JMmAAnF+71wDkIwsn+OciphIa4oNVjF6oRbCCF9C4H9d6ZrhySqWVIgqG3u6IMFG+oBvqj qrgYk0r46xLHsFCA== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 0D4AF139E2; Tue, 10 Jun 2025 18:45:23 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id ckdrAEN9SGgpCwAAD6G6ig (envelope-from ); Tue, 10 Jun 2025 18:45:23 +0000 Date: Tue, 10 Jun 2025 20:45:21 +0200 From: Oscar Salvador To: Li Zhijian Cc: linux-mm@kvack.org, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, Ying Huang Subject: Re: [PATCH] mm/memory-tier: Fix abstract distance calculation overflow Message-ID: References: <20250610062751.2365436-1-lizhijian@fujitsu.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250610062751.2365436-1-lizhijian@fujitsu.com> X-Rspam-User: X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 10F961C000D X-Stat-Signature: syx5qtrg4453f11g1xorhdhfuwqaqdcm X-HE-Tag: 1749581124-768932 X-HE-Meta: U2FsdGVkX1+TN2hxCijfQjWbgBZDtM1OgYhtXvskm9xUqrChd0r+/IiqaDNXxvb1xP0kzZURHJDFCWLEbK0LAtMXp3HhZHBjd2OsqBVx6E4qUa2b+28tmqr+KP/XlILGwZLdRSf1Qv4nAqenLsqR2o+mO/OpsskbP0APECBGa2f968oIpSfmJ6v16/t+a6dXncddKcUHSrTjO/okI5d92h4uXNDmExZUAQc+mwTBs/xOoBhAk2ckGDDwySqIhzExrMtrH5Ckfkyqjfls9g7RR9K0cjV4fs3TrrIOLxPjHc3SSJg5TXkGxHOX77Z7CVHL5z6gNfJulAxcFnTReg8jYTA97mSRh3vJEKrHHKwQbH+vxUHquhIvjLPN97UxeQmdSOqQaBVPXVzWm7caEqrZXb7xy5BrHxAFyrWdyZ4qnVGmo1PoqeERCmweYkrMCIE9XYqxrQFpz57xHWvWGo6swlxv450F2y8stpBC9l+ffZhkdrEN0x7XRl7nv6zvKiuiTXcjxSsJPmJYpYKGfMMzi5GRaT3jMwUJ+HyFvBsiDIjilxhhBEREf0mW1sZIFpELRNVzpMd8qTcyvKHVz0fba9UekDuxlYsYxOM9NrkWiP9PH8ELnJUzUujI5IyrrCkW4y7OrOFFtfTSXXAl1UYvM8xqHiJwejduTNV7h9YxPaZJXVH8rUSnuZSKrGu339ovIY+m9R7XvtuBbEavHySrF+6bxfj1PoaqIuU8Q6Kk7wCACRJ2nY/2LsO+ZL7IGWbfdw5RqS4BH0rhYiDWt8UUxDG1ATcTXfM4pABFoVW9XRUyimwF5EbDvelyOqkl8C4i8QUy0EARaek+OxVzmI67fNNcu1vQkJ6pTwveNveJrojLhemWN9NIzCm29dELnOAGkDWFOvpMXeDbrFtQzTqBFYu8KTwy5aFeqpTDvqRLOev//dhkCnLL23BCcF0f39WO0PqIa1IWLA6Eb9gVgdd wdWx7o0K dRmJEWhkTBfKpjcS0KUSVrwjR7n3iF6ILMTYRB6NCx01rDdVPmSsni64Jro1VIYHefz1YWehWrQNB1vxO+qTRxbc3dbakPOsYs7Zxo6sMfgNI6/AnR1J5sWDmWVHgmMM98Wa8RJ7JuIlComrCIxULW+JuWg/zYMznpzqt+pIaIWOZtrdMSiZd5C718mq5tme6Lg5uOH19ndMzQrV10PG/5s7dkK2h3UAJ6sivNcwuAGkXcMcczS3oaj5kaenYs3YC3VuySft05MfY8GT1Z6x5tFi0jmdX0G/cUYiHAo8QT2eOImaFEXzyoMolH9Zm0Sfhyr5FeOz99AM3UxuDxGGZFSGsTO6O3naxg59lpLagM5eSLlnXYFP/OL3cSqqN6C5AFhpI X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Tue, Jun 10, 2025 at 02:27:51PM +0800, Li Zhijian wrote: > In mt_perf_to_adistance(), the calculation of abstract distance (adist) > involves multiplying several int values including MEMTIER_ADISTANCE_DRAM. > ``` > *adist = MEMTIER_ADISTANCE_DRAM * > (perf->read_latency + perf->write_latency) / > (default_dram_perf.read_latency + default_dram_perf.write_latency) * > (default_dram_perf.read_bandwidth + default_dram_perf.write_bandwidth) / > (perf->read_bandwidth + perf->write_bandwidth); > ``` > Since these values can be large, the multiplication may exceed the maximum > value of an int (INT_MAX) and overflow (Our platform did), leading to an > incorrect adist. > > Change MEMTIER_ADISTANCE_DRAM to be a long constant by writing it with the > 'L' suffix. This prevents the overflow because the multiplication will then > be done in the long type which has a larger range. > > Fixes: 3718c02dbd4c ("acpi, hmat: calculate abstract distance with HMAT") > Cc: Ying Huang > Signed-off-by: Li Zhijian Reviewed-by: Oscar Salvador -- Oscar Salvador SUSE Labs