Message ID | 20230315145112.186603-4-leo.yan@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | perf kvm: Support histograms and TUI mode | expand |
Em Wed, Mar 15, 2023 at 10:50:59PM +0800, Leo Yan escreveu: > This patch moves up the helper functions of event's metrics for later > adding code to call them. > > No any functionality changes, but has a function renaming from > compare_kvm_event_{metric}() to cmp_event_{metric}(). Those helper functions are only used if this is true: if defined(HAVE_KVM_STAT_SUPPORT) && defined(HAVE_LIBTRACEEVENT) So keep them enclosed with that. Did it here diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c index 62c097a37da9b9fe..c11f5454f35c544a 100644 --- a/tools/perf/builtin-kvm.c +++ b/tools/perf/builtin-kvm.c @@ -49,6 +49,7 @@ #include <math.h> #include <perf/mmap.h> +#if defined(HAVE_KVM_STAT_SUPPORT) && defined(HAVE_LIBTRACEEVENT) #define GET_EVENT_KEY(func, field) \ static u64 get_event_ ##func(struct kvm_event *event, int vcpu) \ { \ @@ -84,6 +85,7 @@ static struct kvm_event_key keys[] = { DEF_SORT_NAME_KEY(time, mean), { NULL, NULL } }; +#endif // defined(HAVE_KVM_STAT_SUPPORT) && defined(HAVE_LIBTRACEEVENT) static const char *get_filename_for_perf_kvm(void) { > Signed-off-by: Leo Yan <leo.yan@linaro.org> > Reviewed-by: James Clark <james.clark@arm.com> > --- > tools/perf/builtin-kvm.c | 72 ++++++++++++++++++++-------------------- > 1 file changed, 36 insertions(+), 36 deletions(-) > > diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c > index 3d2560ec6b37..62c097a37da9 100644 > --- a/tools/perf/builtin-kvm.c > +++ b/tools/perf/builtin-kvm.c > @@ -49,6 +49,42 @@ > #include <math.h> > #include <perf/mmap.h> > > +#define GET_EVENT_KEY(func, field) \ > +static u64 get_event_ ##func(struct kvm_event *event, int vcpu) \ > +{ \ > + if (vcpu == -1) \ > + return event->total.field; \ > + \ > + if (vcpu >= event->max_vcpu) \ > + return 0; \ > + \ > + return event->vcpu[vcpu].field; \ > +} > + > +#define COMPARE_EVENT_KEY(func, field) \ > +GET_EVENT_KEY(func, field) \ > +static int cmp_event_ ## func(struct kvm_event *one, \ > + struct kvm_event *two, int vcpu) \ > +{ \ > + return get_event_ ##func(one, vcpu) > \ > + get_event_ ##func(two, vcpu); \ > +} > + > +GET_EVENT_KEY(time, time); > +GET_EVENT_KEY(max, stats.max); > +GET_EVENT_KEY(min, stats.min); > +COMPARE_EVENT_KEY(count, stats.n); > +COMPARE_EVENT_KEY(mean, stats.mean); > + > +#define DEF_SORT_NAME_KEY(name, compare_key) \ > + { #name, cmp_event_ ## compare_key } > + > +static struct kvm_event_key keys[] = { > + DEF_SORT_NAME_KEY(sample, count), > + DEF_SORT_NAME_KEY(time, mean), > + { NULL, NULL } > +}; > + > static const char *get_filename_for_perf_kvm(void) > { > const char *filename; > @@ -461,42 +497,6 @@ static bool handle_kvm_event(struct perf_kvm_stat *kvm, > return true; > } > > -#define GET_EVENT_KEY(func, field) \ > -static u64 get_event_ ##func(struct kvm_event *event, int vcpu) \ > -{ \ > - if (vcpu == -1) \ > - return event->total.field; \ > - \ > - if (vcpu >= event->max_vcpu) \ > - return 0; \ > - \ > - return event->vcpu[vcpu].field; \ > -} > - > -#define COMPARE_EVENT_KEY(func, field) \ > -GET_EVENT_KEY(func, field) \ > -static int compare_kvm_event_ ## func(struct kvm_event *one, \ > - struct kvm_event *two, int vcpu)\ > -{ \ > - return get_event_ ##func(one, vcpu) > \ > - get_event_ ##func(two, vcpu); \ > -} > - > -GET_EVENT_KEY(time, time); > -COMPARE_EVENT_KEY(count, stats.n); > -COMPARE_EVENT_KEY(mean, stats.mean); > -GET_EVENT_KEY(max, stats.max); > -GET_EVENT_KEY(min, stats.min); > - > -#define DEF_SORT_NAME_KEY(name, compare_key) \ > - { #name, compare_kvm_event_ ## compare_key } > - > -static struct kvm_event_key keys[] = { > - DEF_SORT_NAME_KEY(sample, count), > - DEF_SORT_NAME_KEY(time, mean), > - { NULL, NULL } > -}; > - > static bool select_key(struct perf_kvm_stat *kvm) > { > int i; > -- > 2.34.1 >
diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c index 3d2560ec6b37..62c097a37da9 100644 --- a/tools/perf/builtin-kvm.c +++ b/tools/perf/builtin-kvm.c @@ -49,6 +49,42 @@ #include <math.h> #include <perf/mmap.h> +#define GET_EVENT_KEY(func, field) \ +static u64 get_event_ ##func(struct kvm_event *event, int vcpu) \ +{ \ + if (vcpu == -1) \ + return event->total.field; \ + \ + if (vcpu >= event->max_vcpu) \ + return 0; \ + \ + return event->vcpu[vcpu].field; \ +} + +#define COMPARE_EVENT_KEY(func, field) \ +GET_EVENT_KEY(func, field) \ +static int cmp_event_ ## func(struct kvm_event *one, \ + struct kvm_event *two, int vcpu) \ +{ \ + return get_event_ ##func(one, vcpu) > \ + get_event_ ##func(two, vcpu); \ +} + +GET_EVENT_KEY(time, time); +GET_EVENT_KEY(max, stats.max); +GET_EVENT_KEY(min, stats.min); +COMPARE_EVENT_KEY(count, stats.n); +COMPARE_EVENT_KEY(mean, stats.mean); + +#define DEF_SORT_NAME_KEY(name, compare_key) \ + { #name, cmp_event_ ## compare_key } + +static struct kvm_event_key keys[] = { + DEF_SORT_NAME_KEY(sample, count), + DEF_SORT_NAME_KEY(time, mean), + { NULL, NULL } +}; + static const char *get_filename_for_perf_kvm(void) { const char *filename; @@ -461,42 +497,6 @@ static bool handle_kvm_event(struct perf_kvm_stat *kvm, return true; } -#define GET_EVENT_KEY(func, field) \ -static u64 get_event_ ##func(struct kvm_event *event, int vcpu) \ -{ \ - if (vcpu == -1) \ - return event->total.field; \ - \ - if (vcpu >= event->max_vcpu) \ - return 0; \ - \ - return event->vcpu[vcpu].field; \ -} - -#define COMPARE_EVENT_KEY(func, field) \ -GET_EVENT_KEY(func, field) \ -static int compare_kvm_event_ ## func(struct kvm_event *one, \ - struct kvm_event *two, int vcpu)\ -{ \ - return get_event_ ##func(one, vcpu) > \ - get_event_ ##func(two, vcpu); \ -} - -GET_EVENT_KEY(time, time); -COMPARE_EVENT_KEY(count, stats.n); -COMPARE_EVENT_KEY(mean, stats.mean); -GET_EVENT_KEY(max, stats.max); -GET_EVENT_KEY(min, stats.min); - -#define DEF_SORT_NAME_KEY(name, compare_key) \ - { #name, compare_kvm_event_ ## compare_key } - -static struct kvm_event_key keys[] = { - DEF_SORT_NAME_KEY(sample, count), - DEF_SORT_NAME_KEY(time, mean), - { NULL, NULL } -}; - static bool select_key(struct perf_kvm_stat *kvm) { int i;