svn commit: r306389 - in head/sys/dev/hyperv: include vmbus

Sepherosa Ziehau sephe at FreeBSD.org
Wed Sep 28 04:25:26 UTC 2016


Author: sephe
Date: Wed Sep 28 04:25:25 2016
New Revision: 306389
URL: https://svnweb.freebsd.org/changeset/base/306389

Log:
  hyperv/vmbus: Add function to drain channel interrupt task.
  
  MFC after:	1 week
  Sponsored by:	Microsoft
  Differential Revision:	https://reviews.freebsd.org/D8045

Modified:
  head/sys/dev/hyperv/include/vmbus.h
  head/sys/dev/hyperv/vmbus/vmbus_chan.c

Modified: head/sys/dev/hyperv/include/vmbus.h
==============================================================================
--- head/sys/dev/hyperv/include/vmbus.h	Wed Sep 28 04:22:06 2016	(r306388)
+++ head/sys/dev/hyperv/include/vmbus.h	Wed Sep 28 04:25:25 2016	(r306389)
@@ -133,6 +133,7 @@ int		vmbus_chan_open_br(struct vmbus_cha
 		    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);

Modified: head/sys/dev/hyperv/vmbus/vmbus_chan.c
==============================================================================
--- head/sys/dev/hyperv/vmbus/vmbus_chan.c	Wed Sep 28 04:22:06 2016	(r306388)
+++ head/sys/dev/hyperv/vmbus/vmbus_chan.c	Wed Sep 28 04:25:25 2016	(r306389)
@@ -756,6 +756,13 @@ vmbus_chan_close(struct vmbus_channel *c
 	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)


More information about the svn-src-head mailing list