[OmniOS-discuss] [discuss] Re: [networking] rge_intr troubles

Saso Kiselkov skiselkov.ml at gmail.com
Sun Oct 2 19:45:15 UTC 2016


Thanks for the suggestions! Results below:

On 10/2/16 7:20 PM, Garrett D'Amore wrote:
> But as a first test, you can try calling rge_receive().  The simplest
> way I can see to do that is to OR in the value of RGE_NO_RXDESC_INT in
> the check at 1495. (Btw the ordering of the checks at 1488 and 1495 are
> suboptimal, as the rx interrupt should be the *hot* code path.

Sadly, this won't help. RGE_RX_INT is already a composite of
RX_OK_INT | RX_ERR_INT | NO_RXDESC_INT

> One thing you might also try doing is changing the value in rge.h for
> RGE_RECV_COPY_SIZE from 256 to something much larger — 8000 will be
> larger than the largest possible rge frame.  I have a theory that part
> of the problem you are encountering may be due to being out of buffers
> to loan up, and the screwy handling for that case.

Tried this, but to no avail. It still goes into the sad place. Sadly,
this stupid box doesn't even have a serial port with which I could
provide you access. And I'm out of PCI-e slots to shove in an Intel NIC,
so the on-board Realtek POS is my last option. Well that, or using Linux
with Illumos as a KVM on top of it, but even saying that out loud leaves
a bad taste in my mouth...

Cheers,
-- 
Saso


More information about the OmniOS-discuss mailing list