[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1258381819-10324-2-git-send-email-jie.zeng@soliton.com.cn>
Date: Mon, 16 Nov 2009 22:30:19 +0800
From: zealcook@...il.com
To: netdev@...r.kernel.org
Cc: ben@...tec.co.uk, davem@...emloft.net,
"jie.zeng" <jie.zeng@...iton.com.cn>
Subject: [PATCH 2/2] KS8695: fix ks8695_rx to block user space program.
From: jie.zeng <jie.zeng@...iton.com.cn>
ks8695_rx() will call refill_buffers() for every incoming packet.
Its not necessary. We just need do it after finishing receiving thing.
And the 'RX dma engine' is in the same situation.
This blocks our user space application. The following patch may fix it.
Signed-off-by: jie.zeng <jie.zeng@...iton.com.cn>
---
drivers/net/arm/ks8695net.c | 13 +++++++------
1 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/drivers/net/arm/ks8695net.c b/drivers/net/arm/ks8695net.c
index 64c683d..a99be26 100644
--- a/drivers/net/arm/ks8695net.c
+++ b/drivers/net/arm/ks8695net.c
@@ -547,13 +547,14 @@ rx_finished:
(last_rx_processed + 1) &
MAX_RX_DESC_MASK;
- /* And refill the buffers */
- ks8695_refill_rxbuffers(ksp);
-
- /* Kick the RX DMA engine, in case it became
- * suspended */
- ks8695_writereg(ksp, KS8695_DRSC, 0);
}
+
+ /* And refill the buffers */
+ ks8695_refill_rxbuffers(ksp);
+
+ /* Kick the RX DMA engine, in case it became
+ * suspended */
+ ks8695_writereg(ksp, KS8695_DRSC, 0);
return received;
}
--
1.4.4.4
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists