Commit-ID:  acb61fc8ed73eb477a9044272d7a1b1f5a572f91
Gitweb:     http://git.kernel.org/tip/acb61fc8ed73eb477a9044272d7a1b1f5a572f91
Author:     Alexander Yarygin <yary...@linux.vnet.ibm.com>
AuthorDate: Wed, 9 Apr 2014 16:21:59 +0200
Committer:  Jiri Olsa <jo...@redhat.com>
CommitDate: Sun, 20 Apr 2014 00:14:08 +0200

perf kvm: Fix 'Min time' counting in report command

Every event in the perf-kvm has a 'stats' structure, which contains
max/min/average/etc times of handling this event.
The problem is that the 'perf-kvm stat report' command always shows
that 'min time' is 0us for every event. Example:

 # perf kvm stat report

 Analyze events for all VCPUs:

    VM-EXIT    Samples  Samples%     Time%   Min Time   Max Time Avg time
  [..]
  0xB2 MSCH         12     0.07%     0.00%        0us        8us 7.31us ( +-   
2.11% )
  0xB2 CHSC         12     0.07%     0.00%        0us       18us 9.39us ( +-   
9.49% )
  0xB2 STPX          8     0.05%     0.00%        0us        2us 1.88us ( +-   
7.18% )
  0xB2 STSI          7     0.04%     0.00%        0us       44us 16.49us ( +-  
38.20% )
  [..]

This happens because the 'stats' structure is not initialized and
stats->min equals to 0. Lets initialize the structure for every
event after its allocation using init_stats() function. This initializes
stats->min to -1 and makes 'Min time' statistics counting work:

 # perf kvm stat report

 Analyze events for all VCPUs:

    VM-EXIT    Samples  Samples%     Time%   Min Time   Max Time Avg time
  [..]
  0xB2 MSCH         12     0.07%     0.00%        6us        8us 7.31us ( +-   
2.11% )
  0xB2 CHSC         12     0.07%     0.00%        7us       18us 9.39us ( +-   
9.49% )
  0xB2 STPX          8     0.05%     0.00%        1us        2us 1.88us ( +-   
7.18% )
  0xB2 STSI          7     0.04%     0.00%        1us       44us 16.49us ( +-  
38.20% )
  [..]

Signed-off-by: Alexander Yarygin <yary...@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntrae...@de.ibm.com>
Reviewed-by: David Ahern <dsah...@gmail.com>
Link: 
http://lkml.kernel.org/r/1397053319-2130-3-git-send-email-borntrae...@de.ibm.com
[ Fixing the perf examples changelog output ]
Signed-off-by: Jiri Olsa <jo...@redhat.com>
---
 tools/perf/builtin-kvm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c
index 21c164b..0f1e5a2 100644
--- a/tools/perf/builtin-kvm.c
+++ b/tools/perf/builtin-kvm.c
@@ -404,6 +404,7 @@ static struct kvm_event *kvm_alloc_init_event(struct 
event_key *key)
        }
 
        event->key = *key;
+       init_stats(&event->total.stats);
        return event;
 }
 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to