|
@@ -491,6 +491,12 @@ struct vmbus_channel_rescind_offer {
|
|
|
u32 child_relid;
|
|
|
} __packed;
|
|
|
|
|
|
+static inline u32
|
|
|
+hv_ringbuffer_pending_size(const struct hv_ring_buffer_info *rbi)
|
|
|
+{
|
|
|
+ return rbi->ring_buffer->pending_send_sz;
|
|
|
+}
|
|
|
+
|
|
|
/*
|
|
|
* Request Offer -- no parameters, SynIC message contains the partition ID
|
|
|
* Set Snoop -- no parameters, SynIC message contains the partition ID
|
|
@@ -1148,6 +1154,17 @@ static inline void *hv_get_drvdata(struct hv_device *dev)
|
|
|
return dev_get_drvdata(&dev->device);
|
|
|
}
|
|
|
|
|
|
+struct hv_ring_buffer_debug_info {
|
|
|
+ u32 current_interrupt_mask;
|
|
|
+ u32 current_read_index;
|
|
|
+ u32 current_write_index;
|
|
|
+ u32 bytes_avail_toread;
|
|
|
+ u32 bytes_avail_towrite;
|
|
|
+};
|
|
|
+
|
|
|
+void hv_ringbuffer_get_debuginfo(const struct hv_ring_buffer_info *ring_info,
|
|
|
+ struct hv_ring_buffer_debug_info *debug_info);
|
|
|
+
|
|
|
/* Vmbus interface */
|
|
|
#define vmbus_driver_register(driver) \
|
|
|
__vmbus_driver_register(driver, THIS_MODULE, KBUILD_MODNAME)
|