[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 07/19] virtiofsd: use GDateTime for formatting timestamp for debug
From: |
Dr. David Alan Gilbert (git) |
Subject: |
[PULL 07/19] virtiofsd: use GDateTime for formatting timestamp for debug messages |
Date: |
Mon, 5 Jul 2021 11:02:23 +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 v2 00/19] migration queue, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 01/19] tests: migration-test: Add dirty ring test, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 02/19] migration: fix the memory overwriting risk in add_to_iovec, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 03/19] migration: Move yank outside qemu_start_incoming_migration(), Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 04/19] migration: Allow reset of postcopy_recover_triggered when failed, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 06/19] migration: failover: continue to wait card unplug on error, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 05/19] migration: move wait-unplug loop to its own function, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 07/19] virtiofsd: use GDateTime for formatting timestamp for debug messages,
Dr. David Alan Gilbert (git) <=
- [PULL 08/19] docs: describe the security considerations with virtiofsd xattr mapping, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 09/19] virtiofsd: Don't allow file creation with FUSE_OPEN, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 10/19] virtiofsd: Fix fuse setxattr() API change issue, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 11/19] virtiofsd: Fix xattr operations overwriting errno, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 12/19] virtiofsd: Add support for extended setxattr, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 13/19] virtiofsd: Add umask to seccom allow list, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 14/19] virtiofsd: Add capability to change/restore umask, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 15/19] virtiofsd: Switch creds, drop FSETID for system.posix_acl_access xattr, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 16/19] virtiofsd: Add an option to enable/disable posix acls, Dr. David Alan Gilbert (git), 2021/07/05
- [PULL 17/19] tests/migration: parse the thread-id key of CpuInfoFast, Dr. David Alan Gilbert (git), 2021/07/05