[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 061/109] virtiofsd: Add ID to the log with FUSE_LOG_DEBUG leve
From: |
Dr. David Alan Gilbert (git) |
Subject: |
[PATCH v2 061/109] virtiofsd: Add ID to the log with FUSE_LOG_DEBUG level |
Date: |
Tue, 21 Jan 2020 12:23:45 +0000 |
From: Masayoshi Mizuma <address@hidden>
virtiofsd has some threads, so we see a lot of logs with debug option.
It would be useful for debugging if we can identify the specific thread
from the log.
Add ID, which is got by gettid(), to the log with FUSE_LOG_DEBUG level
so that we can grep the specific thread.
The log is like as:
]# ./virtiofsd -d -o vhost_user_socket=/tmp/vhostqemu0 -o source=/tmp/share0
-o cache=auto
...
[ID: 00000097] unique: 12696, success, outsize: 120
[ID: 00000097] virtio_send_msg: elem 18: with 2 in desc of length 120
[ID: 00000003] fv_queue_thread: Got queue event on Queue 1
[ID: 00000003] fv_queue_thread: Queue 1 gave evalue: 1 available: in: 65552
out: 80
[ID: 00000003] fv_queue_thread: Waiting for Queue 1 event
[ID: 00000071] fv_queue_worker: elem 33: with 2 out desc of length 80
bad_in_num=0 bad_out_num=0
[ID: 00000071] unique: 12694, opcode: READ (15), nodeid: 2, insize: 80, pid:
2014
[ID: 00000071] lo_read(ino=2, size=65536, off=131072)
Signed-off-by: Masayoshi Mizuma <address@hidden>
Signed-off-by: Dr. David Alan Gilbert <address@hidden>
added rework as suggested by Daniel P. Berrangé during review
---
tools/virtiofsd/passthrough_ll.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/tools/virtiofsd/passthrough_ll.c b/tools/virtiofsd/passthrough_ll.c
index 20b5a242cb..991de69334 100644
--- a/tools/virtiofsd/passthrough_ll.c
+++ b/tools/virtiofsd/passthrough_ll.c
@@ -42,6 +42,7 @@
#include <cap-ng.h>
#include <dirent.h>
#include <errno.h>
+#include <glib.h>
#include <inttypes.h>
#include <limits.h>
#include <pthread.h>
@@ -2267,10 +2268,17 @@ static void setup_nofile_rlimit(void)
static void log_func(enum fuse_log_level level, const char *fmt, va_list ap)
{
+ g_autofree char *localfmt = NULL;
+
if (current_log_level < level) {
return;
}
+ if (current_log_level == FUSE_LOG_DEBUG) {
+ localfmt = g_strdup_printf("[ID: %08ld] %s", syscall(__NR_gettid),
fmt);
+ fmt = localfmt;
+ }
+
if (use_syslog) {
int priority = LOG_ERR;
switch (level) {
--
2.24.1
- [PATCH v2 056/109] virtiofsd: fix libfuse information leaks, (continued)
- [PATCH v2 056/109] virtiofsd: fix libfuse information leaks, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 057/109] docs: Add docs/tools, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 058/109] virtiofsd: add security guide document, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 059/109] virtiofsd: add --syslog command-line option, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 060/109] virtiofsd: print log only when priority is high enough, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 062/109] virtiofsd: Add timestamp to the log with FUSE_LOG_DEBUG level, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 063/109] virtiofsd: Handle reinit, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 061/109] virtiofsd: Add ID to the log with FUSE_LOG_DEBUG level,
Dr. David Alan Gilbert (git) <=
- [PATCH v2 065/109] virtiofsd: Kill threads when queues are stopped, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 064/109] virtiofsd: Handle hard reboot, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 066/109] vhost-user: Print unexpected slave message types, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 067/109] contrib/libvhost-user: Protect slave fd with mutex, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 068/109] virtiofsd: passthrough_ll: add renameat2 support, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 069/109] virtiofsd: passthrough_ll: disable readdirplus on cache=never, Dr. David Alan Gilbert (git), 2020/01/21
- [PATCH v2 071/109] virtiofsd: rename unref_inode() to unref_inode_lolocked(), Dr. David Alan Gilbert (git), 2020/01/21