]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
parisc: entry: set W bit for !compat tasks in syscall_restore_rfi()
authorSven Schnelle <svens@stackframe.org>
Wed, 15 Oct 2025 21:21:41 +0000 (23:21 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Jan 2026 09:17:01 +0000 (10:17 +0100)
commita66cd0e5e034e323d04083c1902cc471806b5a9a
tree02320a85b4c7db3da7778540514d9f8d0e5cef65
parent1d0cebc41d83a93655e0d507a8ee358d4c75d836
parisc: entry: set W bit for !compat tasks in syscall_restore_rfi()

commit 5fb1d3ce3e74a4530042795e1e065422295f1371 upstream.

When the kernel leaves to userspace via syscall_restore_rfi(), the
W bit is not set in the new PSW. This doesn't cause any problems
because there's no 64 bit userspace for parisc. Simple static binaries
are usually loaded at addresses way below the 32 bit limit so the W bit
doesn't matter.

Fix this by setting the W bit when TIF_32BIT is not set.

Signed-off-by: Sven Schnelle <svens@stackframe.org>
Cc: stable@vger.kernel.org
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/parisc/kernel/asm-offsets.c
arch/parisc/kernel/entry.S