title: ksoftirqd consumes >80% CPU on embedded platform
body: <p>we're designing SOHO router based on MIPS processor, wired up with 24-ports switch. The CPU runs NAT (configured with iptables), iptables rules, dhcp etc. it doesn't have any H/W acceleration for these functions. When testing NAT in full-mesh mode (i.e. one WAN port and others are LAN port), we observe the significant system's slowdown, especially console responds very slowly, and there is also packets loss.</p>
  
  <p>The 'top' shows that ksoftirqd consumes over 80% of CPU.</p>
  
  <p>What can be the reason of such behaviour? Does the Linux NAT run in userland?</p>