* CVE-2026-72154: openrisc: Fix jump_label smp syncing
@ 2026-08-15 6:03 Greg Kroah-Hartman
0 siblings, 0 replies; only message in thread
From: Greg Kroah-Hartman @ 2026-08-15 6:03 UTC (permalink / raw)
To: linux-cve-announce; +Cc: Greg Kroah-Hartman
From: Greg Kroah-Hartman <gregkh@kernel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
openrisc: Fix jump_label smp syncing
The original commit 8c30b0018f9d ("openrisc: Add jump label support")
copies from arm64 and does not properly consider how icache invalidation
on remote cores works in OpenRISC. On OpenRISC remote icaches need to
be invalidated otherwise static key's may remain state after updating.
Fix SMP cache syncing by:
1. Properly invalidate remote core icaches on SMP systems by using
icache_all_inv. The old code uses kick_all_cpus_sync() which runs a
no-op IPI function call on remote CPU's which does execute a lot of
code and flushes many cache lines in the process, but does not flush
all and it's not correct on OpenRISC.
2. For architectures that do not have WRITETHROUGH caches be sure
to flush the dcache after patching.
To test this I first reproduced the issue using a custom test module
[0]. The test confirmed that some icache lines maintained stale
static_key code sequences after calling static_branch_enable(). After
this patch there are no longer jump_label coherency issues.
[0] https://github.com/stffrdhrn/or1k-utils/tree/master/tests/smp_static_key_test
The Linux kernel CVE team has assigned CVE-2026-72154 to this issue.
Affected and fixed versions
===========================
Issue introduced in 6.18 with commit 8c30b0018f9d93391573e091960d257fd9de120a and fixed in 6.18.40 with commit 3fac46068fe4cea22ed373432b9173a915e8e60d
Issue introduced in 6.18 with commit 8c30b0018f9d93391573e091960d257fd9de120a and fixed in 7.1.5 with commit 57740658042daf591c57d6e700d9a304d5972552
Issue introduced in 6.18 with commit 8c30b0018f9d93391573e091960d257fd9de120a and fixed in 7.2-rc1 with commit aca063c9024522e4e5b9a9d1927433f6a01785a3
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2026-72154
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
arch/openrisc/kernel/jump_label.c
arch/openrisc/kernel/patching.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/3fac46068fe4cea22ed373432b9173a915e8e60d
https://git.kernel.org/stable/c/57740658042daf591c57d6e700d9a304d5972552
https://git.kernel.org/stable/c/aca063c9024522e4e5b9a9d1927433f6a01785a3
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-15 6:13 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-15 6:03 CVE-2026-72154: openrisc: Fix jump_label smp syncing Greg Kroah-Hartman
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.