RE: [PATCH v3] Drivers: hv: vmbus: Expose counters for interrupts and full conditions

Michael Kelley
2019-01-17T16:04:39Z

From: Kimberly Brown <kimbrownkd@gmail.com> Sent: Wednesday, January 16, 2019 8:38 PM
>
> Counter values for per-channel interrupts and ring buffer full
> conditions are useful for investigating performance.
>
> Expose counters in sysfs for 2 types of guest to host interrupts:
> 1) Interrupts caused by the channel's outbound ring buffer transitioning
> from empty to not empty
> 2) Interrupts caused by the channel's inbound ring buffer transitioning
> from full to not full while a packet is waiting for enough buffer space to
> become available
>
> Expose 2 counters in sysfs for the number of times that write operations
> encountered a full outbound ring buffer:
> 1) The total number of write operations that encountered a full
> condition
> 2) The number of write operations that were the first to encounter a
> full condition
>
> I tested this patch by confirming that the sysfs files were created and
> observing the counter values. The values seemed to increase by a
> reasonable amount when the Hyper-v related drivers were in use.
>
> Signed-off-by: Kimberly Brown <kimbrownkd@gmail.com>
> ---
> Changes in v3:
> - Used the outbound ring buffer spinlock to protect the the full
> condition counters in set_channel_pending_send_size()
> - Corrected the KernelVersion values for the new entries in
> Documentation/ABI/stable/sysfs-bus-vmbus
>
> Changes in v2:
> - Added mailing lists to the cc list
> - Removed the host to guest interrupt counters proposed in v1 because
> they were not accurate
> - Added full condition counters for the channel's outbound ring buffer
>
> Documentation/ABI/stable/sysfs-bus-vmbus | 33 ++++++++++++++++++++
> drivers/hv/ring_buffer.c | 14 ++++++++-
> drivers/hv/vmbus_drv.c | 32 ++++++++++++++++++++
> include/linux/hyperv.h | 38 ++++++++++++++++++++++++
> 4 files changed, 116 insertions(+), 1 deletion(-)
>

Reviewed-by: Michael Kelley <mikelley@microsoft.com>