Skip to content

Commit db44b13

Browse files
committed
doc: posix: mark posix signals supported with undefined behaviour
Mark the POSIX_SIGNALS Option Group as supported to the extent possible under Zephyr, as Zephyr does not yet support processes. Signed-off-by: Chris Friedt <[email protected]>
1 parent 87062af commit db44b13

File tree

2 files changed

+19
-14
lines changed

2 files changed

+19
-14
lines changed

doc/services/portability/posix/aep/index.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ The *Minimal Realtime System Profile* (PSE51) includes all of the
5151
:ref:`POSIX_C_LANG_JUMP <posix_option_group_c_lang_jump>`, yes,
5252
:ref:`POSIX_C_LANG_SUPPORT <posix_option_group_c_lang_support>`, yes,
5353
:ref:`POSIX_DEVICE_IO <posix_option_group_device_io>`,, :kconfig:option:`CONFIG_POSIX_DEVICE_IO`
54-
:ref:`POSIX_SIGNALS <posix_option_group_signals>`,, :kconfig:option:`CONFIG_POSIX_SIGNALS`
54+
:ref:`POSIX_SIGNALS <posix_option_group_signals>`, yes, :kconfig:option:`CONFIG_POSIX_SIGNALS` :ref:`†<posix_undefined_behaviour>`
5555
:ref:`POSIX_SINGLE_PROCESS <posix_option_group_single_process>`, yes, :kconfig:option:`CONFIG_POSIX_SINGLE_PROCESS`
5656
:ref:`XSI_THREADS_EXT <posix_option_group_xsi_threads_ext>`, yes, :kconfig:option:`CONFIG_XSI_THREADS_EXT`
5757

doc/services/portability/posix/option_groups/index.rst

+18-13
Original file line numberDiff line numberDiff line change
@@ -450,31 +450,36 @@ POSIX_SIGNAL_JUMP
450450
POSIX_SIGNALS
451451
+++++++++++++
452452

453-
Signal services are a basic mechanism within POSIX-based systems and are
454-
required for error and event handling.
455-
456453
Enable this option group with :kconfig:option:`CONFIG_POSIX_SIGNALS`.
457454

455+
.. note::
456+
As processes are not yet supported in Zephyr, the ISO C functions ``abort()``, ``signal()``,
457+
and ``raise()``, as well as the other POSIX functions listed below, may exhibit undefined
458+
behaviour. The POSIX functions ``kill()``, ``pause()``, ``sigaction()``, ``sigpending()``,
459+
``sigsuspend()``, and ``sigwait()`` are implemented to ensure that conformant applications can
460+
link, but they are expected to fail, setting errno to ``ENOSYS``
461+
:ref:`†<posix_undefined_behaviour>`.
462+
458463
.. csv-table:: POSIX_SIGNALS
459464
:header: API, Supported
460465
:widths: 50,10
461466

462-
abort(),yes
463-
alarm(),
464-
kill(),
465-
pause(),
466-
raise(),
467-
sigaction(),
467+
abort(),yes :ref:`†<posix_undefined_behaviour>`
468+
alarm(),yes :ref:`†<posix_undefined_behaviour>`
469+
kill(),yes :ref:`†<posix_undefined_behaviour>`
470+
pause(),yes :ref:`†<posix_undefined_behaviour>`
471+
raise(),yes :ref:`†<posix_undefined_behaviour>`
472+
sigaction(),yes :ref:`†<posix_undefined_behaviour>`
468473
sigaddset(),yes
469474
sigdelset(),yes
470475
sigemptyset(),yes
471476
sigfillset(),yes
472477
sigismember(),yes
473-
signal(),
474-
sigpending(),
478+
signal(),yes :ref:`†<posix_undefined_behaviour>`
479+
sigpending(),yes :ref:`†<posix_undefined_behaviour>`
475480
sigprocmask(),yes
476-
sigsuspend(),
477-
sigwait(),
481+
sigsuspend(),yes :ref:`†<posix_undefined_behaviour>`
482+
sigwait(),yes :ref:`†<posix_undefined_behaviour>`
478483
strsignal(),yes
479484

480485
.. _posix_option_group_single_process:

0 commit comments

Comments
 (0)