probably we should do something.  like reap the descriptors. i am afk but the 
usual strategy is to treat these kinds of interrupts just like normal rx. after 
that you should ack the interrupt of course. 

Sent from my iPhone

> On Oct 1, 2016, at 6:31 PM, Saso Kiselkov <skiselkov...@gmail.com> wrote:
> 
>> On 10/2/16 12:23 AM, Robert Mustacchi wrote:
>>> On 10/1/16 15:15 , Saso Kiselkov wrote:
>>>> On 10/1/16 11:45 PM, Dale Ghent wrote:
>>>> 
>>>>> On Oct 1, 2016, at 3:36 PM, Saso Kiselkov <skiselkov...@gmail.com> wrote:
>>>>> 
>>>>> So I'm playing around with a box that has an on-board Realtek NIC and
>>>>> periodically, about once every 2-5 minutes, the network just goes out to
>>>>> lunch and stops responding to ping or attempts to send anything from
>>>>> the box. I noticed that while doing so, the box is getting floored by
>>>>> interrupts from the NIC, so I see tons of rge_intr activity and one CPU
>>>>> core receiving about 160000 interrupts per second (other cores are idle).
>>>> 
>>>> One core getting all the interrupts is expected, as both these chips and 
>>>> the driver do not support RSS.
>>>> 
>>>> The key thing here is to see what rge_intr() is actually doing. It has 2 
>>>> outcomes: It identifies the interrupt type, processes it, then returns to 
>>>> the DDI that it was claimed. IF it doesn't identify the interrupt, 
>>>> rge_intr() returns and reports unclaimed to the DDI.
>>>> 
>>>> Knowing this info would be a good first step in figuring out what's going 
>>>> on.
>>> 
>>> Gah, I'm an idiot, it's actually a bitmask of two things:
>>> 
>>> RX_FIFO_OVERFLOW_INT | NO_RXDESC_INT
>>> 
>>> Apparently, we don't give it enough rx descriptors. Trying to now figure
>>> out where to change that...
>> 
>> There'll always be cases where we don't have enough rx descriptors for
>> devices. Presumably we shouldn't actually care about receiving that
>> interrupt. Do you happen to have a specification for the device handy?
>> 
>> Given that we're not doing anything with the NO_RXDESC_INT, we probably
>> should just mask it on the device if possible.
> 
> Just as a general FYI, I'm dealing with 8168G version of the MAC.
> FreeBSD does have a driver that supports it, but since the driver there
> appears home-grown (similar to ours), trying to transplant it would be a
> major undertaking. I'll try to identify the major differences between
> the versions we support and the 8168G, but of course, this being
> hardware, they are many and few of them make any logical sense.
> 
> --
> Saso
> 


-------------------------------------------
illumos-discuss
Archives: https://www.listbox.com/member/archive/182180/=now
RSS Feed: https://www.listbox.com/member/archive/rss/182180/21175430-2e6923be
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=21175430&id_secret=21175430-6a77cda4
Powered by Listbox: http://www.listbox.com

Reply via email to