From 6e5b89e0561bf2436189205708253d91005021ab Mon Sep 17 00:00:00 2001 From: Ilya Verbin <iverbin@tarantool.org> Date: Fri, 10 Jun 2022 21:12:54 +0300 Subject: [PATCH] core: get rid of fiber_set_cancellable in gc_checkpoint_fiber_f Spurious wakeups are already handled correctly. Part of #7166 NO_DOC=refactoring NO_TEST=refactoring NO_CHANGELOG=refactoring --- src/box/gc.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/box/gc.c b/src/box/gc.c index 9ebe28421b..a9008bff45 100644 --- a/src/box/gc.c +++ b/src/box/gc.c @@ -573,12 +573,6 @@ gc_checkpoint_fiber_f(va_list ap) { (void)ap; - /* - * Make the fiber non-cancellable so as not to bother - * about spurious wakeups. - */ - fiber_set_cancellable(false); - struct checkpoint_schedule *sched = &gc.checkpoint_schedule; while (!fiber_is_cancelled()) { double timeout = checkpoint_schedule_timeout(sched, @@ -597,7 +591,8 @@ gc_checkpoint_fiber_f(va_list ap) if (!fiber_yield_timeout(timeout) && !gc.checkpoint_is_pending) { /* - * The checkpoint schedule has changed. + * The checkpoint schedule has changed or the fiber has + * been woken up spuriously. * Reschedule the next checkpoint. */ continue; -- GitLab