diff mbox

[RFT,net-next,0/4] via-rhine receive buffers rework

Message ID 20150407193110.GB24631@electric-eye.fr.zoreil.com
State RFC, archived
Delegated to: David Miller
Headers show

Commit Message

Francois Romieu April 7, 2015, 7:31 p.m. UTC
Nix <nix@esperi.org.uk> :
[...]
> No crashes in several hours of running: looks good!

Mildly. :o/

You may never notice if you don't resume and the reset work queue doesn't
run but patch #4 lacks the bits below.

(rx_head_desc should go away)


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Nix April 7, 2015, 7:41 p.m. UTC | #1
On 7 Apr 2015, Francois Romieu stated:

> Nix <nix@esperi.org.uk> :
> [...]
>> No crashes in several hours of running: looks good!
>
> Mildly. :o/
>
> You may never notice if you don't resume and the reset work queue doesn't
> run but patch #4 lacks the bits below.

I don't suspend this box, no, it uses only 5W of power and it's my link
to the internet so suspending it would be a bad move :)

> (rx_head_desc should go away)

I'll test this out on top of the other stuff tomorrow...
diff mbox

Patch

diff --git a/drivers/net/ethernet/via/via-rhine.c b/drivers/net/ethernet/via/via-rhine.c
index a54a9f4..7f31c3a 100644
--- a/drivers/net/ethernet/via/via-rhine.c
+++ b/drivers/net/ethernet/via/via-rhine.c
@@ -1244,6 +1244,7 @@  static void rhine_reset_rbufs(struct rhine_private *rp)
 	int i;
 
 	rp->cur_rx = 0;
+	rp->rx_head_desc = rp->rx_ring;
 
 	for (i = 0; i < RX_RING_SIZE; i++)
 		rp->rx_ring[i].rx_status = cpu_to_le32(DescOwn);
@@ -1268,7 +1269,6 @@  static int alloc_rbufs(struct net_device *dev)
 	int rc, i;
 
 	rp->rx_buf_sz = (dev->mtu <= 1500 ? PKT_BUF_SZ : dev->mtu + 32);
-	rp->rx_head_desc = &rp->rx_ring[0];
 	next = rp->rx_ring_dma;
 
 	/* Init the ring entries */