Subject: CVE-2024-38607: macintosh/via-macii: Fix "BUG: sleeping function called from invalid context"

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

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

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

macintosh/via-macii: Fix "BUG: sleeping function called from invalid context"

The via-macii ADB driver calls request_irq() after disabling hard
interrupts. But disabling interrupts isn't necessary here because the
VIA shift register interrupt was masked during VIA1 initialization.

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

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

	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 4.19.316 with commit e4ff8bcfb284
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 5.4.278 with commit 1e9c3f2caec5
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 5.10.219 with commit 280619bbdeac
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 5.15.161 with commit 010d4cb19bb1
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 6.1.93 with commit 787fb79efc15
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 6.6.33 with commit d43a8c7ec084
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 6.8.12 with commit 5900a88e897e
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 6.9.3 with commit 2907d409ce59
	Issue introduced in 2.6.12 with commit 1da177e4c3f4 and fixed in 6.10 with commit d301a71c76ee

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-38607
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:
	drivers/macintosh/via-macii.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/e4ff8bcfb2841fe4e17e5901578b632adb89036d
	https://git.kernel.org/stable/c/1e9c3f2caec548cfa7a65416ec4e6006e542f18e
	https://git.kernel.org/stable/c/280619bbdeac186fb320fab3d61122d2a085def8
	https://git.kernel.org/stable/c/010d4cb19bb13f423e3e746b824f314a9bf3e9a9
	https://git.kernel.org/stable/c/787fb79efc15b3b86442ecf079b8148f173376d7
	https://git.kernel.org/stable/c/d43a8c7ec0841e0ff91a968770aeca83f0fd4c56
	https://git.kernel.org/stable/c/5900a88e897e6deb1bdce09ee34167a81c2da89d
	https://git.kernel.org/stable/c/2907d409ce5946390f513976f0454888d37d1058
	https://git.kernel.org/stable/c/d301a71c76ee4c384b4e03cdc320a55f5cf1df05