aboutsummaryrefslogtreecommitdiff
path: root/util/log.c
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-04-17 11:29:41 -0700
committerRichard Henderson <richard.henderson@linaro.org>2022-04-20 10:51:11 -0700
commit54ee5b3da00cdbee836a06a7e6eb319c895f2a57 (patch)
tree2082efcdc464e602f73748a78048c5ce3902bf3a /util/log.c
parent40a4b96eb08b3a3e83895f46b2394748dac7a641 (diff)
downloadqemu-54ee5b3da00cdbee836a06a7e6eb319c895f2a57.zip
qemu-54ee5b3da00cdbee836a06a7e6eb319c895f2a57.tar.gz
qemu-54ee5b3da00cdbee836a06a7e6eb319c895f2a57.tar.bz2
util/log: Drop manual log buffering
This buffering was introduced during the Paleozoic: 9fa3e853531. There has never been an explanation as to why we may not allow glibc to allocate the file buffer itself. We certainly have many other uses of mmap and malloc during user-only startup, so presumably whatever the issue was, it has been fixed during the preceeding 18 years. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220417183019.755276-2-richard.henderson@linaro.org>
Diffstat (limited to 'util/log.c')
-rw-r--r--util/log.c21
1 files changed, 4 insertions, 17 deletions
diff --git a/util/log.c b/util/log.c
index 2ee1500..ffa66a2 100644
--- a/util/log.c
+++ b/util/log.c
@@ -72,8 +72,6 @@ static void qemu_logfile_free(QemuLogFile *logfile)
g_free(logfile);
}
-static bool log_uses_own_buffers;
-
/* enable or disable low levels log */
void qemu_set_log(int log_flags)
{
@@ -121,29 +119,18 @@ void qemu_set_log(int log_flags)
assert(!is_daemonized());
logfile->fd = stderr;
}
- /* must avoid mmap() usage of glibc by setting a buffer "by hand" */
- if (log_uses_own_buffers) {
- static char logfile_buf[4096];
- setvbuf(logfile->fd, logfile_buf, _IOLBF, sizeof(logfile_buf));
- } else {
#if defined(_WIN32)
- /* Win32 doesn't support line-buffering, so use unbuffered output. */
- setvbuf(logfile->fd, NULL, _IONBF, 0);
+ /* Win32 doesn't support line-buffering, so use unbuffered output. */
+ setvbuf(logfile->fd, NULL, _IONBF, 0);
#else
- setvbuf(logfile->fd, NULL, _IOLBF, 0);
+ setvbuf(logfile->fd, NULL, _IOLBF, 0);
#endif
- log_append = 1;
- }
+ log_append = 1;
qatomic_rcu_set(&qemu_logfile, logfile);
}
}
-void qemu_log_needs_buffers(void)
-{
- log_uses_own_buffers = true;
-}
-
/*
* Allow the user to include %d in their logfile which will be
* substituted with the current PID. This is useful for debugging many