On 7/9/2018 6:19 AM, Tvrtko Ursulin wrote:
From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>
Now that we scale timestamps to get better timeline granularity, the hacky
hand rolled micro-second time to HTML date conversion does no longer cut
it.
Use perl built-in gmtime to handle things properly.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>
Cc: John Harrison <John.C.Harrison@xxxxxxxxx>
---
scripts/trace.pl | 15 ++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/scripts/trace.pl b/scripts/trace.pl
index e2978e5382c2..aeaf2392162e 100755
--- a/scripts/trace.pl
+++ b/scripts/trace.pl
@@ -346,24 +346,17 @@ sub sanitize_ctx
sub ts
{
my ($us) = @_;
- my ($d, $h, $m, $s);
+ my ($y, $mo, $d, $h, $m, $s);
$us *= 1000 unless $no_timeline_scaling;
$s = int($us / 1000000);
$us = $us % 1000000;
- $m = int($s / 60);
- $s = $s % 60;
+ ($s, $m, $h, $d, $mo, $y) = gmtime($s);
- $h = int($m / 60);
- $m = $m % 60;
-
- $d = 1 + int($h / 24);
- $h = $h % 24;
-
- return sprintf('2017-01-%02u %02u:%02u:%02u.%06u',
- int($d), int($h), int($m), int($s), int($us));
+ return sprintf('%04u-%02u-%02u %02u:%02u:%02u.%06u',
+ 1970 + $y, 1 + $mo, $d, $h, $m, $s, int($us));
Maybe not bother with the +1970 in the scaling case given that the whole
date thing is meaningless when microseconds become milliseconds?
Actually, even in the non-scaling case the epoch is actually whenever
the traced system was last booted and not some specific calendar date.
So maybe leaving out the offset regardless would make sense?
Again, a minor point so...
Reviewed-by: John Harrison <John.C.Harrison@xxxxxxxxx>
}
# Main input loop - parse lines and build the internal representation of the
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx