High CPU interrupt load on intel I350T4 with igb on 8.3

Eugene Grosbein egrosbein at rdtc.ru
Fri May 10 12:57:06 UTC 2013


On 10.05.2013 05:16, Barney Cordoba wrote:

>>>> Network device driver is not guilty here, that's
>> just pf's
>>>> contention
>>>> running in igb's context.
>>>
>>> They're both at play. Single threadedness aggravates
>> subsystems that 
>>> have too many lock points.
>>>
>>> It can also be "solved" with using 1 queue, because
>> then you don't
>>> have 4 queues going into a single thread.
>>
>> Again, the problem is within pf(4)'s global lock, not in the
>> igb(4).
>>
> 
> Again, you're wrong. It's not the bottleneck's fault; it's the fault of 
> the multi-threaded code for only working properly when there are no
> bottlenecks.

In practice, the problem is easily solved without any change in the igb code.
The same problem will occur for other NIC drivers too -
if several NICs were combined within one lagg(4). So, driver is not guilty and
solution would be same - eliminate bottleneck and you will be fine and capable
to spread the load on several CPU cores.

Therefore, I don't care of CS theory for this particular case.

Eugene Grosbein



More information about the freebsd-net mailing list