From f2cbea88a15c9edb122a3b95c092afec524cb175 Mon Sep 17 00:00:00 2001
From: Florian Pose <fp@igh-essen.com>
Date: Mon, 9 Nov 2009 10:29:29 +0100
Subject: [PATCH] Fixed receiving multiple frames in generic device.

---
 devices/generic.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/devices/generic.c b/devices/generic.c
index 4e266b8b..afef6e4d 100644
--- a/devices/generic.c
+++ b/devices/generic.c
@@ -314,11 +314,11 @@ void ec_gen_device_poll(
     struct kvec iov;
     int ret, budget = 10; // FIXME
 
-    iov.iov_base = dev->rx_buf;
-    iov.iov_len = EC_GEN_RX_BUF_SIZE;
-    memset(&msg, 0, sizeof(msg));
-
     do {
+        iov.iov_base = dev->rx_buf;
+        iov.iov_len = EC_GEN_RX_BUF_SIZE;
+        memset(&msg, 0, sizeof(msg));
+
         ret = kernel_recvmsg(dev->socket, &msg, &iov, 1, iov.iov_len,
                 MSG_DONTWAIT);
         if (ret > 0) {
-- 
GitLab