ksoftirqd hitting 100% on interface with ixgbe driver

This is my driver information.

ethtool -i ethXX
driver: ixgbe
version: 3.9.15-NAPI
firmware-version: 0x800000a5
bus-info: 0000:04:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes

Now I have an average traffic of 1/1.5 Gbps (75k packets per second) hitting this interface and I can see one/or more of the ksoftirqd threads going to 100%.

I tried enabling the rx-usecs/rx-frames option, but no improvement. A bit of latency is not an issue for me. I just want the ksoftirqd usage to go down.

I see the limit of rx-usecs is 1022, which is the usecs after which the next interrupt should be fired (thats my understanding, please correct me if I am wrong). Though it doesn't solve my problem.

rx-frames on other hand are not supported on this driver. Neither is there any support for "adaptive-rx".

What should be the next step I should be looking at? Any help is greatly appreciated.


Turn on rx-flow-hash if not already turned on for tcp4/udp4/tcp6/udp6 e.g.

ethtool -N ethX rx-flow-hash udp4 sdfn