powerpc/perf: Optimize clearing the pending PMI and remove WARN_ON for PMI check in power_pmu_disable
In the Linux kernel, the following vulnerability has been resolved: powerpc/perf: Optimize clearing the pending PMI and remove WARN_ON for PMI check in power_pmu_disable commit 2c9ac51b850d ("powerpc/perf: Fix PMU callbacks to clear pending PMI before resetting an overflown PMC") added a new function "pmi_irq_pending" in hw_irq.h. This function is to check if there is a PMI marked as pending in Paca (PACA_IRQ_PMI).This is used in power_pmu_disable in a WARN_ON. The intention here is to provide a warning if there is PMI pending, but no counter is found overflown. During some of the perf runs, below warning is hit: WARNING: CPU: 36 PID: 0 at arch/powerpc/perf/core-book3s.c:1332 power_pmu_disable+0x25c/0x2c0 Modules linked in: ----- NIP [c000000000141c3c] power_pmu_disable+0x25c/0x2c0 LR [c000000000141c8c] power_pmu_disable+0x2ac/0x2c0 Call Trace: [c000000baffcfb90] [c000000000141c8c] power_pmu_disable+0x2ac/0x2c0 (unreliable) [c000000baffcfc10] [c0000000003e2f8c] perf_pmu_disable+0x4c/0x60 [c000000baffcfc30] [c0000000003e3344] group_sched_out.part.124+0x44/0x100 [c000000baffcfc80] [c0000000003e353c] __perf_event_disable+0x13c/0x240 [c000000baffcfcd0] [c0000000003dd334] event_function+0xc4/0x140 [c000000baffcfd20] [c0000000003d855c] remote_function+0x7c/0xa0 [c000000baffcfd50] [c00000000026c394] flush_smp_call_function_queue+0xd4/0x300 [c000000baffcfde0] [c000000000065b24] smp_ipi_demux_relaxed+0xa4/0x100 [c000000baffcfe20] [c0000000000cb2b0] xive_muxed_ipi_action+0x20/0x40 [c00
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 5.10.137, 5.15.61, 5.18.18, 5.19.2
- CVEs
- CVE-2022-50118
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 13:31 UTC · Revision 1
Source evidence
powerpc/perf: Optimize clearing the pending PMI and remove WARN_ON for PMI check in power_pmu_disable
core-osv · Original sourcePublished 18 Jun 2025, 11:02 UTC
In the Linux kernel, the following vulnerability has been resolved: powerpc/perf: Optimize clearing the pending PMI and remove WARN_ON for PMI check in power_pmu_disable commit 2c9ac51b850d ("powerpc/perf: Fix PMU callbacks to clear pending PMI before resetting an overflown PMC") added a new function "pmi_irq_pending" in hw_irq.h. This function is to check if there is a PMI marked as pending in Paca (PACA_IRQ_PMI).This is used in power_pmu_disable in a WARN_ON. The intention here is to provide a warning if there is PMI pending, but no counter is found overflown. During some of the perf runs, below warning is hit: WARNING: CPU: 36 PID: 0 at arch/powerpc/perf/core-book3s.c:1332 power_pmu_disable+0x25c/0x2c0 Modules linked in: ----- NIP [c000000000141c3c] power_pmu_disable+0x25c/0x2c0 LR [c000000000141c8c] power_pmu_disable+0x2ac/0x2c0 Call Trace: [c000000baffcfb90] [c000000000141c8c] power_pmu_disable+0x2ac/0x2c0 (unreliable) [c000000baffcfc10] [c0000000003e2f8c] perf_pmu_disable+0x4c/0x60 [c000000baffcfc30] [c0000000003e3344] group_sched_out.part.124+0x44/0x100 [c000000baffcfc80] [c0000000003e353c] __perf_event_disable+0x13c/0x240 [c000000baffcfcd0] [c0000000003dd334] event_function+0xc4/0x140 [c000000baffcfd20] [c0000000003d855c] remote_function+0x7c/0xa0 [c000000baffcfd50] [c00000000026c394] flush_smp_call_function_queue+0xd4/0x300 [c000000baffcfde0] [c000000000065b24] smp_ipi_demux_relaxed+0xa4/0x100 [c000000baffcfe20] [c0000000000cb2b0] xive_muxed_ipi_action+0x20/0x40 [c00
osv:CVE-2022-50118
Kernel
Fixed versions: 5.10.137, 5.15.61, 5.18.18, 5.19.2
Complete source record
{
"id": "ed0531c073783548bcb704846c67f154da4b2eef0a705ad733d13a7c4e89dc56",
"url": "https://osv.dev/vulnerability/CVE-2022-50118",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "powerpc/perf: Optimize clearing the pending PMI and remove WARN_ON for PMI check in power_pmu_disable",
"summary": "In the Linux kernel, the following vulnerability has been resolved: powerpc/perf: Optimize clearing the pending PMI and remove WARN_ON for PMI check in power_pmu_disable commit 2c9ac51b850d (\"powerpc/perf: Fix PMU callbacks to clear pending PMI before resetting an overflown PMC\") added a new function \"pmi_irq_pending\" in hw_irq.h. This function is to check if there is a PMI marked as pending in Paca (PACA_IRQ_PMI).This is used in power_pmu_disable in a WARN_ON. The intention here is to provide a warning if there is PMI pending, but no counter is found overflown. During some of the perf runs, below warning is hit: WARNING: CPU: 36 PID: 0 at arch/powerpc/perf/core-book3s.c:1332 power_pmu_disable+0x25c/0x2c0 Modules linked in: ----- NIP [c000000000141c3c] power_pmu_disable+0x25c/0x2c0 LR [c000000000141c8c] power_pmu_disable+0x2ac/0x2c0 Call Trace: [c000000baffcfb90] [c000000000141c8c] power_pmu_disable+0x2ac/0x2c0 (unreliable) [c000000baffcfc10] [c0000000003e2f8c] perf_pmu_disable+0x4c/0x60 [c000000baffcfc30] [c0000000003e3344] group_sched_out.part.124+0x44/0x100 [c000000baffcfc80] [c0000000003e353c] __perf_event_disable+0x13c/0x240 [c000000baffcfcd0] [c0000000003dd334] event_function+0xc4/0x140 [c000000baffcfd20] [c0000000003d855c] remote_function+0x7c/0xa0 [c000000baffcfd50] [c00000000026c394] flush_smp_call_function_queue+0xd4/0x300 [c000000baffcfde0] [c000000000065b24] smp_ipi_demux_relaxed+0xa4/0x100 [c000000baffcfe20] [c0000000000cb2b0] xive_muxed_ipi_action+0x20/0x40 [c00",
"evidence": "osv:CVE-2022-50118",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "5.10.137",
"evidence": "/affected/1/ranges"
},
{
"value": "5.15.61",
"evidence": "/affected/1/ranges"
},
{
"value": "5.18.18",
"evidence": "/affected/1/ranges"
},
{
"value": "5.19.2",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CVE-2022-50118",
"aliases": [
"CVE-2022-50118"
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "ef798cd035f316a537fee8ed170c127f12407085"
},
{
"fixed": "875b2bf469d094754ac2ba9af91dcd529eb12bf6"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "fadcafa3959281ce2d96feedece8c75c3f95f8a5"
},
{
"fixed": "87b1a9175f08313f40fcb6d6dc536dbe451090eb"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "2c9ac51b850d84ee496b0a5d832ce66d411ae552"
},
{
"fixed": "0a24ea26c3278216642a43291df7976a73a0a7ee"
},
{
"fixed": "7e83af3dd4a3afca8f83ffde518cafd52f45b830"
},
{
"fixed": "890005a7d98f7452cfe86dcfb2aeeb7df01132ce"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "5.10.94"
},
{
"fixed": "5.10.137"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "5.15.17"
},
{
"fixed": "5.15.61"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "5.16.3"
},
{
"fixed": "5.17"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "215a90ce3754fe509efbce6b73a4bb643c7e7528"
}
]
}
],
"versions": [
"v5.10.136",
"v5.10.135",
"v5.10.134",
"v5.10.133",
"v5.10.132",
"v5.10.131",
"v5.10.130",
"v5.10.129",
"v5.10.128",
"v5.10.127",
"v5.10.126",
"v5.10.125",
"v5.10.124",
"v5.10.123",
"v5.10.122",
"v5.10.121",
"v5.10.120",
"v5.10.119",
"v5.10.118",
"v5.10.117",
"v5.10.116",
"v5.10.115",
"v5.10.114",
"v5.10.113",
"v5.10.112",
"v5.10.111",
"v5.10.110",
"v5.10.109",
"v5.10.108",
"v5.10.107",
"v5.10.106",
"v5.10.105",
"v5.10.104",
"v5.10.103",
"v5.10.102",
"v5.10.101",
"v5.10.100",
"v5.10.99",
"v5.10.98",
"v5.10.97",
"v5.10.96",
"v5.10.95",
"v5.10.94",
"v5.15.60",
"v5.15.59",
"v5.15.58",
"v5.15.57",
"v5.15.56",
"v5.15.55",
"v5.15.54",
"v5.15.53",
"v5.15.52",
"v5.15.51",
"v5.15.50",
"v5.15.49",
"v5.15.48",
"v5.15.47",
"v5.15.46",
"v5.15.45",
"v5.15.44",
"v5.15.43",
"v5.15.42",
"v5.15.41",
"v5.15.40",
"v5.15.39",
"v5.15.38",
"v5.15.37",
"v5.15.36",
"v5.15.35",
"v5.15.34",
"v5.15.33",
"v5.15.32",
"v5.15.31",
"v5.15.30",
"v5.15.29",
"v5.15.28",
"v5.15.27",
"v5.15.26",
"v5.15.25",
"v5.15.24",
"v5.15.23",
"v5.15.22",
"v5.15.21",
"v5.15.20",
"v5.15.19",
"v5.15.18",
"v5.15.17",
"v5.16.20",
"v5.16.19",
"v5.16.18",
"v5.16.17",
"v5.16.16",
"v5.16.15",
"v5.16.14",
"v5.16.13",
"v5.16.12",
"v5.16.11",
"v5.16.10",
"v5.16.9",
"v5.16.8",
"v5.16.7",
"v5.16.6",
"v5.16.5",
"v5.16.4",
"v5.16.3"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-50118.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "5.10.137"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.11.0"
},
{
"fixed": "5.15.61"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.16.0"
},
{
"fixed": "5.18.18"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.17.0"
},
{
"fixed": "5.19.2"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-50118.json"
}
}
],
"modified": "2026-10-28T02:30:36.149488355Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/0a24ea26c3278216642a43291df7976a73a0a7ee",
"https://git.kernel.org/stable/c/7e83af3dd4a3afca8f83ffde518cafd52f45b830",
"https://git.kernel.org/stable/c/875b2bf469d094754ac2ba9af91dcd529eb12bf6",
"https://git.kernel.org/stable/c/87b1a9175f08313f40fcb6d6dc536dbe451090eb",
"https://git.kernel.org/stable/c/890005a7d98f7452cfe86dcfb2aeeb7df01132ce",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/50xxx/CVE-2022-50118.json",
"https://nvd.nist.gov/vuln/detail/CVE-2022-50118",
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
],
"provider_metadata": {
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/50xxx/CVE-2022-50118.json"
}
},
"related_cves": [
{
"value": "CVE-2022-50118",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 503136,
"published_at": "2025-06-18T11:02:48.672+00:00"
}