From 034e9719ac1ba88a36b05da38c7aa98761d42c77 Mon Sep 17 00:00:00 2001 From: Benjamin Robin Date: Sun, 3 May 2020 18:37:21 +0200 Subject: [PATCH] journald: Increase stdout buffer size sooner, when almost full If the previous received buffer length is almost equal to the allocated buffer size, before this change the next read can only receive a couple of bytes (in the worst case only 1 byte), which is not efficient. --- src/journal/journald-stream.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/journal/journald-stream.c b/src/journal/journald-stream.c index 4dadbd62be..6c10bfc259 100644 --- a/src/journal/journald-stream.c +++ b/src/journal/journald-stream.c @@ -511,8 +511,8 @@ static int stdout_stream_process(sd_event_source *es, int fd, uint32_t revents, goto terminate; } - /* If the buffer is full already (discounting the extra NUL we need), add room for another 1K */ - if (s->length + 1 >= s->allocated) { + /* If the buffer is almost full, add room for another 1K */ + if (s->length + 512 >= s->allocated) { if (!GREEDY_REALLOC(s->buffer, s->allocated, s->length + 1 + 1024)) { log_oom(); goto terminate;