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
_______________________________________________
kvmarm mailing list
[email protected]
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm