mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-28 23:55:20 -04:00
Add errata section with code examples for querying errata and a warning that most applications should not check errata. Use kernel-doc directives to include errata descriptions from the header files instead of manual links. Also enhance existing DOC sections in security/landlock/errata/abi-*.h files with Impact sections, and update the code comment in syscalls.c to remind developers to update errata documentation when applicable. This addresses the gap where the kernel implements errata tracking but provides no user-facing documentation on how to use it, while improving the existing technical documentation in-place rather than duplicating it. Signed-off-by: Samasth Norway Ananda <samasth.norway.ananda@oracle.com> Reviewed-by: Günther Noack <gnoack3000@gmail.com> Link: https://lore.kernel.org/r/20260128031814.2945394-3-samasth.norway.ananda@oracle.com [mic: Cosmetic fix] Signed-off-by: Mickaël Salaün <mic@digikod.net>
30 lines
1.3 KiB
C
30 lines
1.3 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
|
|
/**
|
|
* DOC: erratum_2
|
|
*
|
|
* Erratum 2: Scoped signal handling
|
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
*
|
|
* This fix addresses an issue where signal scoping was overly restrictive,
|
|
* preventing sandboxed threads from signaling other threads within the same
|
|
* process if they belonged to different domains. Because threads are not
|
|
* security boundaries, user space might assume that all threads within the same
|
|
* process can send signals between themselves (see :manpage:`nptl(7)` and
|
|
* :manpage:`libpsx(3)`). Consistent with :manpage:`ptrace(2)` behavior, direct
|
|
* interaction between threads of the same process should always be allowed.
|
|
* This change ensures that any thread is allowed to send signals to any other
|
|
* thread within the same process, regardless of their domain.
|
|
*
|
|
* Impact:
|
|
*
|
|
* This problem only manifests when the userspace process is itself using
|
|
* :manpage:`libpsx(3)` or an equivalent mechanism to enforce a Landlock policy
|
|
* on multiple already-running threads at once. Programs which enforce a
|
|
* Landlock policy at startup time and only then become multithreaded are not
|
|
* affected. Without this fix, signal scoping could break multi-threaded
|
|
* applications that expect threads within the same process to freely signal
|
|
* each other.
|
|
*/
|
|
LANDLOCK_ERRATUM(2)
|