]> git.ipfire.org Git - thirdparty/kernel/linux.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)
committerHelge Deller <deller@gmx.de>
Wed, 15 Oct 2025 23:37:39 +0000 (01:37 +0200)
commit5fb1d3ce3e74a4530042795e1e065422295f1371
tree61ec943219b8853f617cfaa9a3dc550301735b2b
parent3631b9cb2a34983e0f5962e542b428a66036d689
parisc: entry: set W bit for !compat tasks in syscall_restore_rfi()

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>
arch/parisc/kernel/asm-offsets.c
arch/parisc/kernel/entry.S