From af80cb709474cac2eaae29bf33facdc9e13af20d Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 11 May 2019 07:50:22 +0000 Subject: notify.c: workaround epoll_pwait bug in current Linux 5.0/5.1 The bugfix should hit mainline and stable kernels, soon; but there's no reason for us to be caring if errno is EINTR, or not... https://lore.kernel.org/lkml/20190427093319.sgicqik2oqkez3wk@dcvr/ https://lore.kernel.org/lkml/20190507043954.9020-1-deepa.kernel@gmail.com/ --- notify.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/notify.c b/notify.c index 73e772a..1deed82 100644 --- a/notify.c +++ b/notify.c @@ -100,7 +100,14 @@ void mog_notify_wait(bool need_usage_file) mfd = mog_idleq_wait_intr(mog_notify_queue, timeout); if (mfd) notify_queue_step(mfd); - else if (errno == EINTR) + else + /* + * errno == EINTR, but epoll_pwait on some Linux v5.0+/v5.1+ + * fails to return EINTR. This should be fixed in Linux, + * soon: + * <20190427093319.sgicqik2oqkez3wk@dcvr> + * <20190507043954.9020-1-deepa.kernel@gmail.com> + */ note_run(); } -- cgit v1.2.3-24-ge0c7