X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=drivers%2Fhv%2Fhv_util.c;h=3fe1ce222854c5069e3befffed7f4330bdc2072e;hp=55d58f21e6d47eb53c56eb4453683095dcf932f2;hb=a0228da004e96c3569466e19d13c920d9f61e79b;hpb=8f86f36284547fdd873769a5f190549f3ab69cca diff --git a/drivers/hv/hv_util.c b/drivers/hv/hv_util.c index 55d58f21e6d4..3fe1ce222854 100644 --- a/drivers/hv/hv_util.c +++ b/drivers/hv/hv_util.c @@ -229,10 +229,14 @@ static void heartbeat_onchannelcallback(void *context) struct heartbeat_msg_data *heartbeat_msg; u8 *hbeat_txf_buf = util_heartbeat.recv_buffer; - vmbus_recvpacket(channel, hbeat_txf_buf, - PAGE_SIZE, &recvlen, &requestid); + while (1) { + + vmbus_recvpacket(channel, hbeat_txf_buf, + PAGE_SIZE, &recvlen, &requestid); + + if (!recvlen) + break; - if (recvlen > 0) { icmsghdrp = (struct icmsg_hdr *)&hbeat_txf_buf[ sizeof(struct vmbuspipe_hdr)];