c
void vmbus_free_ring(struct vmbus_channel *channel)
{
    hv_ringbuffer_cleanup(&channel->outbound);
    hv_ringbuffer_cleanup(&channel->inbound);

    if (channel->ringbuffer_page) {
        if (channel->ringbuffer_page != NULL) {
            __free_pages(channel->ringbuffer_page,
                          get_order(channel->ringbuffer_pagecount
                                    << PAGE_SHIFT));
        }
        channel->ringbuffer_page = NULL;
    }
}
