On 8/5/13 2:53 AM, Xiao Guangrong wrote:
On 08/03/2013 04:05 AM, David Ahern wrote:
Expected to have missing events for each vcpu when perf is
started. After that should not have missing events.

Sorry, i can not understand what's this info used for.

For debugging. Things that should not happen do seem to happen -- rarely, but it does



Signed-off-by: David Ahern <[email protected]>
Cc: Arnaldo Carvalho de Melo <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Frederic Weisbecker <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Xiao Guangrong <[email protected]>
Cc: Runzhen Wang <[email protected]>
---
  tools/perf/builtin-kvm.c |   15 +++++++++++++--
  1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c
index 28afc05d..41dd25a 100644
--- a/tools/perf/builtin-kvm.c
+++ b/tools/perf/builtin-kvm.c
@@ -568,11 +568,22 @@ static bool handle_kvm_event(struct perf_kvm_stat *kvm,
            (kvm->trace_vcpu != vcpu_record->vcpu_id))
                return true;

-       if (kvm->events_ops->is_begin_event(evsel, sample, &key))
+       if (kvm->events_ops->is_begin_event(evsel, sample, &key)) {
+               if (vcpu_record->start_time) {
+                       pr_debug("consecutive begin events (%s) for pid %d, vcpu 
%d\n",
+                                evsel->name, sample->pid, 
vcpu_record->vcpu_id);
+               }

This is not true, the ->start_time is set in handle_begin_event() for the new 
alloced
vcpu_record.

If you just want to know the point where is the first event lost, you can track
it in:

static bool handle_end_event(struct perf_kvm_stat *kvm,
                             struct vcpu_event_record *vcpu_record,
                             struct event_key *key,
                             u64 timestamp)
{
        ......

        /* The begin event is not caught. */
        if (!time_begin)                       <======
                return true;


Ok. I'll drop the patch. I added it for a reason, but can't remember why at the moment.

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
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