mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 23:22:31 +02:00
Since commit 0c43094f8c ("eventpoll: Replace rwlock with spinlock"),
epoll_wait is real-time-safe syscall for sleeping.
Add epoll_wait to the list of rt-safe sleeping APIs.
Signed-off-by: Nam Cao <namcao@linutronix.de>
Reviewed-by: Gabriele Monaco <gmonaco@redhat.com>
Link: https://lore.kernel.org/r/20260401130828.3115428-1-namcao@linutronix.de
Signed-off-by: Gabriele Monaco <gmonaco@redhat.com>
24 lines
768 B
Plaintext
24 lines
768 B
Plaintext
RULE = always ((RT and SLEEP) imply (RT_FRIENDLY_SLEEP or ALLOWLIST))
|
|
|
|
RT_FRIENDLY_SLEEP = (RT_VALID_SLEEP_REASON or KERNEL_THREAD)
|
|
and ((not WAKE) until RT_FRIENDLY_WAKE)
|
|
|
|
RT_VALID_SLEEP_REASON = FUTEX_WAIT
|
|
or RT_FRIENDLY_NANOSLEEP
|
|
or EPOLL_WAIT
|
|
|
|
RT_FRIENDLY_NANOSLEEP = CLOCK_NANOSLEEP
|
|
and NANOSLEEP_TIMER_ABSTIME
|
|
and (NANOSLEEP_CLOCK_MONOTONIC or NANOSLEEP_CLOCK_TAI)
|
|
|
|
RT_FRIENDLY_WAKE = WOKEN_BY_EQUAL_OR_HIGHER_PRIO
|
|
or WOKEN_BY_HARDIRQ
|
|
or WOKEN_BY_NMI
|
|
or ABORT_SLEEP
|
|
or KTHREAD_SHOULD_STOP
|
|
|
|
ALLOWLIST = BLOCK_ON_RT_MUTEX
|
|
or FUTEX_LOCK_PI
|
|
or TASK_IS_RCU
|
|
or TASK_IS_MIGRATION
|