Re: [PATCH v7 2/4] KVM: stats: Add fd-based API to read binary stats data

Jing Zhang
2021-06-10T22:47:57Z

Hi Paolo,

On Thu, Jun 10, 2021 at 11:23 AM Paolo Bonzini <pbonzini@redhat.com> wrote:
>
> On 03/06/21 23:14, Jing Zhang wrote:
> > +#define DEFINE_VM_STATS_DESC(...) { \
> > + STATS_DESC_COUNTER("remote_tlb_flush"), \
> > + ## __VA_ARGS__ \
> > +}
> > +
> > +#define DEFINE_VCPU_STATS_DESC(...) { \
> > + STATS_DESC_COUNTER("halt_successful_poll"), \
> > + STATS_DESC_COUNTER("halt_attempted_poll"), \
> > + STATS_DESC_COUNTER("halt_poll_invalid"), \
> > + STATS_DESC_COUNTER("halt_wakeup"), \
> > + STATS_DESC_TIME_NSEC("halt_poll_success_ns"), \
> > + STATS_DESC_TIME_NSEC("halt_poll_fail_ns"), \
> > + ## __VA_ARGS__ \
>
> Let's instead put this (note it's without braces) in macros like these
>
> #define KVM_GENERIC_VM_STATS() \
> STATS_DESC_COUNTER("remote_tlb_flush"),
>
> #define KVM_GENERIC_VCPU_STATS(...) \
> STATS_DESC_COUNTER("halt_successful_poll"), \
> STATS_DESC_COUNTER("halt_attempted_poll"), \
> STATS_DESC_COUNTER("halt_poll_invalid"), \
> STATS_DESC_COUNTER("halt_wakeup"), \
> STATS_DESC_TIME_NSEC("halt_poll_success_ns"), \
> STATS_DESC_TIME_NSEC("halt_poll_fail_ns"),
>
> and it can be used in the arch files. In fact it can even be added in patch 1 and
> switched to STATS_DESC_* here.
>
> Paolo
>
I just remember that the reason I used braces is due to following
error from checkpatch.pl:
ERROR: Macros with complex values should be enclosed in parentheses

So, just keep it as it is?

Thanks,
Jing