[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 08/20] virtiofsd: use GDateTime for formatting timestamp for debug
From: |
Dr. David Alan Gilbert (git) |
Subject: |
[PULL 08/20] virtiofsd: use GDateTime for formatting timestamp for debug messages |
Date: |
Thu, 1 Jul 2021 15:15:33 +0100 |
From: Daniel P. Berrangé <berrange@redhat.com>
The GDateTime APIs provided by GLib avoid portability pitfalls, such
as some platforms where 'struct timeval.tv_sec' field is still 'long'
instead of 'time_t'. When combined with automatic cleanup, GDateTime
often results in simpler code too.
Localtime is changed to UTC to avoid the need to grant extra seccomp
permissions for GLib's access of the timezone database.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Message-Id: <20210611164319.67762-1-berrange@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
---
tools/virtiofsd/passthrough_ll.c | 25 ++++---------------------
1 file changed, 4 insertions(+), 21 deletions(-)
diff --git a/tools/virtiofsd/passthrough_ll.c b/tools/virtiofsd/passthrough_ll.c
index 49c21fd855..9858e961d9 100644
--- a/tools/virtiofsd/passthrough_ll.c
+++ b/tools/virtiofsd/passthrough_ll.c
@@ -3559,10 +3559,6 @@ static void setup_nofile_rlimit(unsigned long
rlimit_nofile)
static void log_func(enum fuse_log_level level, const char *fmt, va_list ap)
{
g_autofree char *localfmt = NULL;
- struct timespec ts;
- struct tm tm;
- char sec_fmt[sizeof "2020-12-07 18:17:54"];
- char zone_fmt[sizeof "+0100"];
if (current_log_level < level) {
return;
@@ -3574,23 +3570,10 @@ static void log_func(enum fuse_log_level level, const
char *fmt, va_list ap)
localfmt = g_strdup_printf("[ID: %08ld] %s", syscall(__NR_gettid),
fmt);
} else {
- /* try formatting a broken-down timestamp */
- if (clock_gettime(CLOCK_REALTIME, &ts) != -1 &&
- localtime_r(&ts.tv_sec, &tm) != NULL &&
- strftime(sec_fmt, sizeof sec_fmt, "%Y-%m-%d %H:%M:%S",
- &tm) != 0 &&
- strftime(zone_fmt, sizeof zone_fmt, "%z", &tm) != 0) {
- localfmt = g_strdup_printf("[%s.%02ld%s] [ID: %08ld] %s",
- sec_fmt,
- ts.tv_nsec / (10L * 1000 * 1000),
- zone_fmt, syscall(__NR_gettid),
- fmt);
- } else {
- /* fall back to a flat timestamp */
- localfmt = g_strdup_printf("[%" PRId64 "] [ID: %08ld] %s",
- get_clock(), syscall(__NR_gettid),
- fmt);
- }
+ g_autoptr(GDateTime) now = g_date_time_new_now_utc();
+ g_autofree char *nowstr = g_date_time_format(now, "%Y-%m-%d
%H:%M:%S.%f%z");
+ localfmt = g_strdup_printf("[%s] [ID: %08ld] %s",
+ nowstr, syscall(__NR_gettid), fmt);
}
fmt = localfmt;
}
--
2.31.1
- [PULL 00/20] migration queue, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 01/20] tests: migration-test: Still run the rest even if uffd missing, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 02/20] tests: migration-test: Add dirty ring test, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 03/20] migration: fix the memory overwriting risk in add_to_iovec, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 04/20] migration: Move yank outside qemu_start_incoming_migration(), Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 05/20] migration: Allow reset of postcopy_recover_triggered when failed, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 06/20] migration: move wait-unplug loop to its own function, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 07/20] migration: failover: continue to wait card unplug on error, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 08/20] virtiofsd: use GDateTime for formatting timestamp for debug messages,
Dr. David Alan Gilbert (git) <=
- [PULL 09/20] docs: describe the security considerations with virtiofsd xattr mapping, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 10/20] virtiofsd: Don't allow file creation with FUSE_OPEN, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 11/20] virtiofsd: Fix fuse setxattr() API change issue, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 12/20] virtiofsd: Fix xattr operations overwriting errno, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 13/20] virtiofsd: Add support for extended setxattr, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 14/20] virtiofsd: Add umask to seccom allow list, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 15/20] virtiofsd: Add capability to change/restore umask, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 16/20] virtiofsd: Switch creds, drop FSETID for system.posix_acl_access xattr, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 17/20] virtiofsd: Add an option to enable/disable posix acls, Dr. David Alan Gilbert (git), 2021/07/01
- [PULL 18/20] tests/migration: parse the thread-id key of CpuInfoFast, Dr. David Alan Gilbert (git), 2021/07/01