Messages in this thread |  | | Date | Sat, 28 Jan 2023 20:56:42 +0100 | From | Oleg Nesterov <> | Subject | Re: [PATCH v4] posix-timers: Prefer delivery of signals to the current thread |
| |
Dmitry,
I agree with what you said, just one note...
On 01/27, Dmitry Vyukov wrote: > > After this change the test passes quickly (within a second for me).
yet perhaps it makes sense to slightly change it? It does
+static void *distribution_thr(void *arg) { + while (__atomic_load_n(&remain, __ATOMIC_RELAXED)); + return NULL; +}
so distribution_thr() eats CPU even after this thread gets a signal and thus (in theory) it can "steal" cpu_timer_fire() from other threads unpredictably long ? How about
- while (__atomic_load_n(&remain, __ATOMIC_RELAXED)); + while (__atomic_load_n(&got_signal, __ATOMIC_RELAXED));
?
Oleg.
|  |