From: Kevin Kuehler Date: Tue, 19 Jun 2018 20:56:36 +0000 (-0700) Subject: journalctl: handle inotify exhaustion nicer X-Git-Tag: v239~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=321ed3643a898bcd736cee610209d1671ce8a0f9;p=thirdparty%2Fsystemd.git journalctl: handle inotify exhaustion nicer Instead of failing, log that inotify wds are exhausted and fallback to -n switch. Fixes #1296. --- diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index 2773d8554a9..56b1be530d6 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -2392,11 +2392,13 @@ int main(int argc, char *argv[]) { /* Opening the fd now means the first sd_journal_wait() will actually wait */ if (arg_follow) { r = sd_journal_get_fd(j); - if (r == -EMEDIUMTYPE) { + if (r == -EMFILE) { + log_warning("Insufficent watch descriptors available. Reverting to -n."); + arg_follow = false; + } else if (r == -EMEDIUMTYPE) { log_error_errno(r, "The --follow switch is not supported in conjunction with reading from STDIN."); goto finish; - } - if (r < 0) { + } else if (r < 0) { log_error_errno(r, "Failed to get journal fd: %m"); goto finish; }