From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1F9CE1A83AF; Tue, 16 Jul 2024 14:28:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721140087; cv=none; b=Ftn6XPlhSvE1+CMQ/w2x5wf89bGmnCSivT13/R+LrbzJ08nPqjn4HiQIkrIOTRpmAL/jG6AM/EjfuNng9H2/vyiveO7q0kp4+kgMljYtkXsx3AX3MZD5Degt+PhWkyBBJehvgNiILZerfvfMhPyRhIlNBoQafz1a58w1fhxc6Fk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721140087; c=relaxed/simple; bh=UmdbGtbmZQyJpfQmuKbnXS9oiiqIqVB3hhw2q72TWmI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fsBCvGPbJFahkuc9T/O/nrd7MkEBFhmyUj5TYC57M4oO1llhFKUGEAvMTLeMhpOJhUgfoGBbHsJlre8GCbF73fnALDSfFEa35MK296nS0g1z6QFWkX/kjYxDgkp1VD0G0T2onbJ9lS84dYq+rNVsezXl18cG2YIfr/Y0Igexg1M= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ZIWvjOZF; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ZIWvjOZF" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 04739C4AF0D; Tue, 16 Jul 2024 14:28:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1721140086; bh=UmdbGtbmZQyJpfQmuKbnXS9oiiqIqVB3hhw2q72TWmI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZIWvjOZFVsQYK2go7LVFtFBGTa56COoafmi7HNlD0eiu6v6ZFTMfmlsOeJKAyc8eR kR7fmZDZ9Gk7/idLO4KTvLoxoJkL6MhqDrsBpS0TSxMf+V9T+JqfLoSN+W0QDOE+Vo YQ58vdGU9fn4pTDF5dnsLzlLlMhESknxJUI4ydnSa9Iat+mDcKpGmLPN5gGS+fmUPo m8akOGynBtPiUBDmGTZmXTliRSNzmVxmvoLaa1tEXGdRppBhPH7Tn+zV8moQzmxqDP wj9GnQ6XJieE+A8N9PBkS4KmhQu/eJgAeG1PFMZliD3dz7c/QjT5u2SZraDHIFlP0x U6YgkcCf/1Orw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Samuel Holland , Atish Patra , Palmer Dabbelt , Sasha Levin , atishp@atishpatra.org, will@kernel.org, mark.rutland@arm.com, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, linux-riscv@lists.infradead.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH AUTOSEL 6.6 17/18] drivers/perf: riscv: Reset the counter to hpmevent mapping while starting cpus Date: Tue, 16 Jul 2024 10:26:52 -0400 Message-ID: <20240716142713.2712998-17-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240716142713.2712998-1-sashal@kernel.org> References: <20240716142713.2712998-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore X-stable-base: Linux 6.6.40 Content-Transfer-Encoding: 8bit From: Samuel Holland [ Upstream commit 7dd646cf745c34d31e7ed2a52265e9ca8308f58f ] Currently, we stop all the counters while a new cpu is brought online. However, the hpmevent to counter mappings are not reset. The firmware may have some stale encoding in their mapping structure which may lead to undesirable results. We have not encountered such scenario though. Signed-off-by: Samuel Holland Signed-off-by: Atish Patra Link: https://lore.kernel.org/r/20240628-misc_perf_fixes-v4-2-e01cfddcf035@rivosinc.com Signed-off-by: Palmer Dabbelt Signed-off-by: Sasha Levin --- drivers/perf/riscv_pmu_sbi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/perf/riscv_pmu_sbi.c b/drivers/perf/riscv_pmu_sbi.c index d80b4b09152df..ae16ecb15f2d9 100644 --- a/drivers/perf/riscv_pmu_sbi.c +++ b/drivers/perf/riscv_pmu_sbi.c @@ -611,7 +611,7 @@ static inline void pmu_sbi_stop_all(struct riscv_pmu *pmu) * which may include counters that are not enabled yet. */ sbi_ecall(SBI_EXT_PMU, SBI_EXT_PMU_COUNTER_STOP, - 0, pmu->cmask, 0, 0, 0, 0); + 0, pmu->cmask, SBI_PMU_STOP_FLAG_RESET, 0, 0, 0); } static inline void pmu_sbi_stop_hw_ctrs(struct riscv_pmu *pmu) -- 2.43.0