]> git.ipfire.org Git - thirdparty/man-pages.git/commit - man2/timerfd_create.2
clock_nanosleep.2, timer_create.2, timerfd_create.2: Add various missing errors
authorMichael Kerrisk <mtk.manpages@gmail.com>
Thu, 2 Apr 2020 06:39:08 +0000 (08:39 +0200)
committerMichael Kerrisk <mtk.manpages@gmail.com>
Thu, 2 Apr 2020 10:57:25 +0000 (12:57 +0200)
commit96d951a401c65525bec0f973946b8dfb24afd670
tree2fe50346ad1715ba4eda916e86d5333e080a3cf7
parent04e2e313fc6e83224319910dd958ef0ad5e49aff
clock_nanosleep.2, timer_create.2, timerfd_create.2: Add various missing errors

Mostly verified by testing and reading the code.

There is unfortunately quite a bit of inconsistency across API~s:

                  clock_gettime  clock_settime  clock_nanosleep  timer_create  timerfd_create

CLOCK_BOOTTIME            y        n (EINVAL)     y                y             y
CLOCK_BOOTTIME_ALARM      y        n (EINVAL)     y [1]            y [1]         y [1]
CLOCK_MONOTONIC           y        n (EINVAL)     y                y             y
CLOCK_MONOTONIC_COARSE    y        n (EINVAL)     n (ENOTSUP)      n (ENOTSUP)   n (EINVAL)
CLOCK_MONOTONIC_RAW       y        n (EINVAL)     n (ENOTSUP)      n (ENOTSUP)   n (EINVAL)
CLOCK_REALTIME            y        y              y                y             y
CLOCK_REALTIME_ALARM      y        n (EINVAL)     y [1]            y [1]         y [1]
CLOCK_REALTIME_COARSE     y        n (EINVAL)     n (ENOTSUP)      n (ENOTSUP)   n (EINVAL)
CLOCK_TAI                 y        n (EINVAL)     y                y             n (EINVAL)
CLOCK_PROCESS_CPUTIME_ID  y        n (EINVAL)     y                y             n (EINVAL)
CLOCK_THREAD_CPUTIME_ID   y        n (EINVAL)     n (EINVAL [2])   y             n (EINVAL)
pthread_getcpuclockid()   y        n (EINVAL)     y                y             n (EINVAL)

[1] The caller must have CAP_WAKE_ALARM, or the error EPERM results.

[2] This error is generated in the glibc wrapper.

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
man2/clock_nanosleep.2
man2/timer_create.2
man2/timerfd_create.2