lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 22 May 2019 15:26:09 -0400 From: Sasha Levin <sashal@...nel.org> To: linux-kernel@...r.kernel.org, stable@...r.kernel.org Cc: Anju T Sudhakar <anju@...ux.vnet.ibm.com>, Dan Carpenter <dan.carpenter@...cle.com>, Madhavan Srinivasan <maddy@...ux.vnet.ibm.com>, Michael Ellerman <mpe@...erman.id.au>, Sasha Levin <sashal@...nel.org>, linuxppc-dev@...ts.ozlabs.org Subject: [PATCH AUTOSEL 4.14 014/167] powerpc/perf: Return accordingly on invalid chip-id in From: Anju T Sudhakar <anju@...ux.vnet.ibm.com> [ Upstream commit a913e5e8b43be1d3897a141ce61c1ec071cad89c ] Nest hardware counter memory resides in a per-chip reserve-memory. During nest_imc_event_init(), chip-id of the event-cpu is considered to calculate the base memory addresss for that cpu. Return, proper error condition if the chip_id calculated is invalid. Reported-by: Dan Carpenter <dan.carpenter@...cle.com> Fixes: 885dcd709ba91 ("powerpc/perf: Add nest IMC PMU support") Reviewed-by: Madhavan Srinivasan <maddy@...ux.vnet.ibm.com> Signed-off-by: Anju T Sudhakar <anju@...ux.vnet.ibm.com> Signed-off-by: Michael Ellerman <mpe@...erman.id.au> Signed-off-by: Sasha Levin <sashal@...nel.org> --- arch/powerpc/perf/imc-pmu.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/powerpc/perf/imc-pmu.c b/arch/powerpc/perf/imc-pmu.c index b73961b95c345..994e4392cac5c 100644 --- a/arch/powerpc/perf/imc-pmu.c +++ b/arch/powerpc/perf/imc-pmu.c @@ -481,6 +481,11 @@ static int nest_imc_event_init(struct perf_event *event) * Get the base memory addresss for this cpu. */ chip_id = cpu_to_chip_id(event->cpu); + + /* Return, if chip_id is not valid */ + if (chip_id < 0) + return -ENODEV; + pcni = pmu->mem_info; do { if (pcni->id == chip_id) { -- 2.20.1
Powered by blists - more mailing lists