[hyperv] Tear down NetVSC RX buffer GPADL after closing VMBus device
authorMichael Brown <mcb30@ipxe.org>
Fri, 19 Dec 2014 18:31:57 +0000 (18:31 +0000)
committerMichael Brown <mcb30@ipxe.org>
Sat, 20 Dec 2014 01:53:35 +0000 (01:53 +0000)
commitcd68d93b6edacb4903b81f3d94af6c3d9aaff6fe
treec348fb45f82ab68c07c336da796f310286c51e9a
parent4de0e273a78f22dbc62e79906c79fc4579aeac54
[hyperv] Tear down NetVSC RX buffer GPADL after closing VMBus device

On Windows Server 2012 R2, the receive buffer teardown completion
message seems to occasionally be deferred until after the VMBus
channel has been closed.  This happens even if there are no packets
currently in the receive buffer.

Work around this problem by separating the revocation and teardown of
the receive buffer, and deferring the teardown until after the VMBus
channel has been closed.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/drivers/net/netvsc.c