aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/kernel/sys.c
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2024-03-28 17:24:10 -0700
committerJakub Kicinski <kuba@kernel.org>2024-03-28 17:25:57 -0700
commit5e47fbe5cefe5d25d1fa4481c1b9fbe602b4a69f (patch)
treeb86edc39098cca1d0e53e46dceec6ca856183642 /kernel/sys.c
parentMerge tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next (diff)
parentMerge tag 'net-6.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net (diff)
downloadwireguard-linux-5e47fbe5cefe5d25d1fa4481c1b9fbe602b4a69f.tar.xz
wireguard-linux-5e47fbe5cefe5d25d1fa4481c1b9fbe602b4a69f.zip
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Cross-merge networking fixes after downstream PR. No conflicts, or adjacent changes. Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'kernel/sys.c')
-rw-r--r--kernel/sys.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/sys.c b/kernel/sys.c
index f8e543f1e38a..8bb106a56b3a 100644
--- a/kernel/sys.c
+++ b/kernel/sys.c
@@ -2408,8 +2408,11 @@ static inline int prctl_set_mdwe(unsigned long bits, unsigned long arg3,
if (bits & PR_MDWE_NO_INHERIT && !(bits & PR_MDWE_REFUSE_EXEC_GAIN))
return -EINVAL;
- /* PARISC cannot allow mdwe as it needs writable stacks */
- if (IS_ENABLED(CONFIG_PARISC))
+ /*
+ * EOPNOTSUPP might be more appropriate here in principle, but
+ * existing userspace depends on EINVAL specifically.
+ */
+ if (!arch_memory_deny_write_exec_supported())
return -EINVAL;
current_bits = get_current_mdwe();