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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <174489608350.2694212.5228130661148329110.b4-ty@kernel.org>
Date: Thu, 17 Apr 2025 15:27:24 +0100
From: Will Deacon <will@...nel.org>
To: robin.murphy@....com,
	Hongbo Yao <andy.xu@...micro.com>
Cc: catalin.marinas@....com,
	kernel-team@...roid.com,
	Will Deacon <will@...nel.org>,
	mark.rutland@....com,
	linux-arm-kernel@...ts.infradead.org,
	linux-kernel@...r.kernel.org,
	allen.wang@...micro.com,
	peter.du@...micro.com
Subject: Re: [PATCH v3] perf: arm-ni: Unregister PMUs on probe failure

On Thu, 03 Apr 2025 15:09:18 +0800, Hongbo Yao wrote:
> When a resource allocation fails in one clock domain of an NI device,
> we need to properly roll back all previously registered perf PMUs in
> other clock domains of the same device.
> 
> Otherwise, it can lead to kernel panics.
> 
> Calling arm_ni_init+0x0/0xff8 [arm_ni] @ 2374
> arm-ni ARMHCB70:00: Failed to request PMU region 0x1f3c13000
> arm-ni ARMHCB70:00: probe with driver arm-ni failed with error -16
> list_add corruption: next->prev should be prev (fffffd01e9698a18),
> but was 0000000000000000. (next=ffff10001a0decc8).
> pstate: 6340009 (nZCv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--)
> pc : list_add_valid_or_report+0x7c/0xb8
> lr : list_add_valid_or_report+0x7c/0xb8
> Call trace:
>  __list_add_valid_or_report+0x7c/0xb8
>  perf_pmu_register+0x22c/0x3a0
>  arm_ni_probe+0x554/0x70c [arm_ni]
>  platform_probe+0x70/0xe8
>  really_probe+0xc6/0x4d8
>  driver_probe_device+0x48/0x170
>  __driver_attach+0x8e/0x1c0
>  bus_for_each_dev+0x64/0xf0
>  driver_add+0x138/0x260
>  bus_add_driver+0x68/0x138
>  __platform_driver_register+0x2c/0x40
>  arm_ni_init+0x14/0x2a [arm_ni]
>  do_init_module+0x36/0x298
> ---[ end trace 0000000000000000 ]---
> Kernel panic - not syncing: Oops - BUG: Fatal exception
> SMP: stopping secondary CPUs
> 
> [...]

Applied to will (for-next/perf), thanks!

[1/1] perf: arm-ni: Unregister PMUs on probe failure
      https://git.kernel.org/will/c/7f57afde6a44

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ