Re: [PATCH v28 0/8] Timestamp synchronization of host - guest tracing session

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 9 Feb 2021 19:01:04 +0200
Tzvetomir Stoyanov <tz.stoyanov@xxxxxxxxx> wrote:

> > Ok, is there a WiP already, or someone working on it? I'm asking
> > because maybe I can help.  
> 
> None is working on that yet, any help is highly appreciated :) I just
> created an issue in Bugzilla  for that:
> https://bugzilla.kernel.org/show_bug.cgi?id=211657

I had the below patch locally for some time now. It's a somewhat a hack, but
should work. But this should be done properly. The hack below works if you
include only two files, the host first followed by the guest:

 trace-cmd report -i trace-host.dat -i trace-guest.dat

Also, the following patch should be applied as well:

 https://patchwork.kernel.org/project/linux-trace-devel/patch/20210210164543.5ecd9dbd@xxxxxxxxxxxxxxxxxx/

-- Steve

Index: trace-cmd.git/tracecmd/trace-read.c
===================================================================
--- trace-cmd.git.orig/tracecmd/trace-read.c
+++ trace-cmd.git/tracecmd/trace-read.c
@@ -339,6 +339,9 @@ static void add_input(const char *file)
 	last_input_file = item;
 }
 
+static struct tracecmd_input *host;
+static struct tracecmd_input *guest;
+
 static void add_handle(struct tracecmd_input *handle, const char *file)
 {
 	struct handle_list *item;
@@ -358,6 +361,12 @@ static void add_handle(struct tracecmd_i
 			max_file_size = strlen(item->file);
 	}
 	list_add_tail(&item->list, &handle_list);
+	if (handle_list.next != &item->list) {
+		item = container_of(handle_list.next,
+				    struct handle_list, list);
+		host = item->handle;
+		guest = handle;
+	}
 }
 
 static void free_inputs(void)
@@ -1283,6 +1292,8 @@ static void read_data_info(struct list_h
 		}
 	}
 
+	tracecmd_pair_peer(guest, host);
+
 	if (otype != OUTPUT_NORMAL)
 		return;
 



[Index of Archives]     [Linux USB Development]     [Linux USB Development]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux