Index: sys/dev/hyperv/netvsc/hn_nvs.c =================================================================== --- sys/dev/hyperv/netvsc/hn_nvs.c +++ sys/dev/hyperv/netvsc/hn_nvs.c @@ -109,10 +109,8 @@ vmbus_xact_deactivate(xact); return (NULL); } - if (HN_CAN_SLEEP(sc)) - hdr = vmbus_xact_wait(xact, &resplen); - else - hdr = vmbus_xact_busywait(xact, &resplen); + hdr = vmbus_chan_xact_wait(sc->hn_prichan, xact, &resplen, + HN_CAN_SLEEP(sc)); /* * Check this NVS response message. Index: sys/dev/hyperv/netvsc/hn_rndis.c =================================================================== --- sys/dev/hyperv/netvsc/hn_rndis.c +++ sys/dev/hyperv/netvsc/hn_rndis.c @@ -232,10 +232,8 @@ if_printf(sc->hn_ifp, "RNDIS ctrl send failed: %d\n", error); return (NULL); } - if (HN_CAN_SLEEP(sc)) - return (vmbus_xact_wait(xact, comp_len)); - else - return (vmbus_xact_busywait(xact, comp_len)); + return (vmbus_chan_xact_wait(sc->hn_prichan, xact, comp_len, + HN_CAN_SLEEP(sc))); } static const void *