[PATCH 0/2] sparc64: add seccomp filter support

From: Stian Halseth

Date: Tue Sep 01 2026 - 18:08:42 EST


This adds SECCOMP_FILTER support for sparc64.

The arch prerequisites have been in place for years, so patch 1 is
mostly about the missing piece: letting seccomp veto a syscall, and
returning to user space with the return value the seccomp core set in
pt_regs rather than the -ENOSYS the assembler stubs used to force on
any denied syscall. Patch 2 teaches the seccomp_bpf selftest to
drive sparc64's registers.

Tested on an UltraSPARC T4-1 (sun4v):

- tools/testing/selftests/seccomp/seccomp_bpf: 95 passed, 0 failed,
16 skipped (uprobes and other optional features)
- libseccomp with its pending SPARC support (libseccomp PR #471)
passes its full suite, 5190 of 5190, including the live tests
that require kernel SECCOMP_FILTER
- docker containers run confined by the default profile, and a
custom SCMP_ACT_ERRNO profile denies as expected

The libseccomp side is https://github.com/seccomp/libseccomp/pull/471,
and the tracking issue is https://github.com/sparclinux/issues/issues/11.

Stian Halseth (2):
sparc64: add seccomp filter support
selftests/seccomp: add sparc64 support

arch/sparc/Kconfig | 2 +-
arch/sparc/include/asm/seccomp.h | 15 ++++++++
arch/sparc/include/asm/syscall.h | 11 +++---
arch/sparc/kernel/entry.h | 2 +-
arch/sparc/kernel/ptrace_64.c | 28 ++++++++++-----
arch/sparc/kernel/syscalls.S | 28 +++++++++++----
tools/testing/selftests/seccomp/seccomp_bpf.c | 35 +++++++++++++++++++
7 files changed, 98 insertions(+), 23 deletions(-)

--
2.45