From d5e9860d132b64ad10722b021f2a1fc16bf3d171 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Tue, 27 Sep 2011 19:01:01 +0200 Subject: [PATCH] --- yaml --- r: 268578 b: refs/heads/master c: 210ceb4f68dcc7bede2e3af547abd6f661a7bfda h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/staging/nvec/nvec.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 1228cb4be4b5..7d47bce23370 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8da798634343de8dbb8c1593923f8368db69f838 +refs/heads/master: 210ceb4f68dcc7bede2e3af547abd6f661a7bfda diff --git a/trunk/drivers/staging/nvec/nvec.c b/trunk/drivers/staging/nvec/nvec.c index e845f58a8d77..8c01723d681a 100644 --- a/trunk/drivers/staging/nvec/nvec.c +++ b/trunk/drivers/staging/nvec/nvec.c @@ -439,11 +439,16 @@ static void nvec_tx_completed(struct nvec_chip *nvec) */ static void nvec_rx_completed(struct nvec_chip *nvec) { - if (nvec->rx->pos != nvec_msg_size(nvec->rx)) + if (nvec->rx->pos != nvec_msg_size(nvec->rx)) { dev_err(nvec->dev, "RX incomplete: Expected %u bytes, got %u\n", (uint) nvec_msg_size(nvec->rx), (uint) nvec->rx->pos); + nvec_msg_free(nvec, nvec->rx); + nvec->state = 0; + return; + } + spin_lock(&nvec->rx_lock); /* add the received data to the work list