25a40f12b0
Most often, hv_vmbus_post_message() doesn't fail. However, it fails intermittently when GPADLs of large shared memory is to be established with the host, e.g. on the hn(4) attach path: a GPADL of 15MB sendbuf is created, for which lots of messages will be flooded to the host. The host side tries to throttle the message rate by returning HV_STATUS_INSUFFICIENT_BUFFERS. Before this commit, we do several retries for failed messages, but the delay between each retry is pretty/too low, which will cause sporadic message posting failure. We now use large delay (>=1ms) between each retry to fix the message posting failure. Submitted by: Dexuan Cui <decui microsoft com> Reviewed by: sephe MFC after: 1 week Sponsored by: Microsoft OSTC Differential Revision: https://reviews.freebsd.org/D5715 |
||
---|---|---|
.. | ||
hv_channel_mgmt.c | ||
hv_channel.c | ||
hv_connection.c | ||
hv_et.c | ||
hv_hv.c | ||
hv_ring_buffer.c | ||
hv_vmbus_drv_freebsd.c | ||
hv_vmbus_priv.h |