That's the wrong fix; ethernet drivers should always call

                        etheriq(edev, block, 1);

The sole exception is in devether.c.
--- Begin Message ---
Is anybody else currently using the ethervgbe driver? I'm had some
problems with it which don't seem to be caused by my hardware.

After receiving 256 packets I was getting:
panic: freeb: ref -1; caller pc 0xf01b1754
panic: freeb: ref -1; caller pc 0xf01b1754

Turns out calling freeb was messing things up (so the second time through
the block list the data went to bung blocks) and the workaround simple:

537c537
<                       etheriq(edev, block, 1);
---
>                       etheriq(edev, block, 0);

Now, those of you who know more about this than I, are there any
side-effects of that? It seems to be working now... I also discovered
(from the chipset manual) that the RX ring is apparently limited to 252
entries, but I'vn't made sure those 4 packets were indeed being dropped.

I came across the missing PHY message in 9fans, and just wanted to put
out there that I've only had the problem in the transition from Linux to
Plan 9 (like when I was fetching docs for it), at which point removing
power from the computer before booting fixed it.

enjoy,
tristan

-- 
All original matter is hereby placed immediately under the public domain.

--- End Message ---

Reply via email to