Subject: CVE-2024-26602: sched/membarrier: reduce the ability to hammer on sys_membarrier

From: Greg Kroah-Hartman <[email-masked]>

Description
===========

In the Linux kernel, the following vulnerability has been resolved:

sched/membarrier: reduce the ability to hammer on sys_membarrier

On some systems, sys_membarrier can be very expensive, causing overall
slowdowns for everything.  So put a lock on the path in order to
serialize the accesses to prevent the ability for this to be called at
too high of a frequency and saturate the machine.

The Linux kernel CVE team has assigned CVE-2024-26602 to this issue.

Affected and fixed versions
===========================

	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 4.19.307 with commit 3cd139875e9a
	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 5.4.269 with commit 2441a64070b8
	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 5.10.210 with commit db896bbe4a9c
	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 5.15.149 with commit 50fb4e17df31
	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 6.1.79 with commit 24ec7504a08a
	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 6.6.18 with commit b6a2a9cbb675
	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 6.7.6 with commit c5b2063c65d0
	Issue introduced in 4.14 with commit 22e4ebb97582 and fixed in 6.8 with commit 944d5fe50f3f

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-2024-26602
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:
	kernel/sched/membarrier.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/3cd139875e9a7688b3fc715264032620812a5fa3
	https://git.kernel.org/stable/c/2441a64070b85c14eecc3728cc87e883f953f265
	https://git.kernel.org/stable/c/db896bbe4a9c67cee377e5f6a743350d3ae4acf6
	https://git.kernel.org/stable/c/50fb4e17df319bb33be6f14e2a856950c1577dee
	https://git.kernel.org/stable/c/24ec7504a08a67247fbe798d1de995208a8c128a
	https://git.kernel.org/stable/c/b6a2a9cbb67545c825ec95f06adb7ff300a2ad71
	https://git.kernel.org/stable/c/c5b2063c65d05e79fad8029324581d86cfba7eea
	https://git.kernel.org/stable/c/944d5fe50f3f03daacfea16300e656a1691c4a23