hyperv/vmbus: Add function to drain channel interrupt task.

MFC after:	1 week
Sponsored by:	Microsoft
Differential Revision:	https://reviews.freebsd.org/D8045
This commit is contained in:
sephe 2016-09-28 04:25:25 +00:00
parent 5a11788829
commit 2b56b359d5
2 changed files with 8 additions and 0 deletions

View File

@ -133,6 +133,7 @@ int vmbus_chan_open_br(struct vmbus_channel *chan,
const struct vmbus_chan_br *cbr, const void *udata,
int udlen, vmbus_chan_callback_t cb, void *cbarg);
void vmbus_chan_close(struct vmbus_channel *chan);
void vmbus_chan_intr_drain(struct vmbus_channel *chan);
int vmbus_chan_gpadl_connect(struct vmbus_channel *chan,
bus_addr_t paddr, int size, uint32_t *gpadl);

View File

@ -756,6 +756,13 @@ vmbus_chan_close(struct vmbus_channel *chan)
vmbus_chan_close_internal(chan);
}
void
vmbus_chan_intr_drain(struct vmbus_channel *chan)
{
taskqueue_drain(chan->ch_tq, &chan->ch_task);
}
int
vmbus_chan_send(struct vmbus_channel *chan, uint16_t type, uint16_t flags,
void *data, int dlen, uint64_t xactid)