Date: Thu, 9 Nov 2017 12:23:47 -0800 From: Michael Sierchio <kudzu@tenebras.com> To: lev@freebsd.org Cc: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, freebsd-stable <freebsd-stable@freebsd.org> Subject: =?UTF-8?Q?Re=3A_Intel_I210_=28igb=29_sometimes_consume_all_CPU_on_no?= =?UTF-8?Q?t=2Dso=2Dbig_traffic_=E2=80=94_need_help=21?= Message-ID: <CAHu1Y71VLvgW=GfzQ3M0T7_0og-M=tOdXD5f2zWhCuouvO6uFQ@mail.gmail.com> In-Reply-To: <8590fa5d-fd06-90c6-8d3e-34c155423720@FreeBSD.org> References: <8590fa5d-fd06-90c6-8d3e-34c155423720@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Is device polling enabled? - M On Thu, Nov 9, 2017 at 12:17 PM, Lev Serebryakov <lev@freebsd.org> wrote: > > I still have problems with my E-1220v3 server equipped with Intel I210 > adapter. It can not be loaded more than 100Mbit/s because it is > connection to internet. > > But sometimes four interrupt threads "intr{irqXXX: igb0:que Y}" consume > 100% CPU. Interrupt rate is very modest: > > % vmstat -i > interrupt total rate > ... > irq276: igb0:que 0 851899713 1193 > irq277: igb0:que 1 907338150 1271 > irq278: igb0:que 2 907538207 1271 > irq279: igb0:que 3 768217584 1076 > irq280: igb0:link 2 0 > % > > But CPU consumption is 90-100% per thread: > > PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND > 11 root -92 - 0K 544K CPU2 2 146:22 98.30% intr{irq278: > igb0:que 2} > 11 root -92 - 0K 544K WAIT 0 178:18 81.55% intr{irq276: > igb0:que 0} > 11 root -92 - 0K 544K WAIT 1 135:34 77.77% intr{irq277: > igb0:que 1} > 11 root -92 - 0K 544K CPU3 3 138:57 67.50% intr{irq279: > igb0:que 3} > > procstat -ak looks suspicious: > > % sudo procstat -ak | grep igb0:que > 11 100056 intr irq276: igb0:que 0 vm_page_scan_contig > vm_phys_scan_contig vm_page_reclaim_contig kmem_alloc_contig > mbuf_jumbo_alloc keg_alloc_slab keg_fetch_slab zone_fetch_slab > zone_import zone_alloc_item uma_zalloc_arg m_getjcl igb_refresh_mbufs > igb_rxeof igb_msix_que intr_event_execute_handlers ithread_loop fork_exit > 11 100058 intr irq277: igb0:que 1 mi_switch ithread_loop fork_exit > fork_trampoline > 11 100060 intr irq278: igb0:que 2 mi_switch ithread_loop fork_exit > fork_trampoline > 11 100062 intr irq279: igb0:que 3 mi_switch ithread_loop fork_exit > fork_trampoline > % > > -- > // Lev Serebryakov > > --=20 "Well," Brahma said, "even after ten thousand explanations, a fool is no wiser, but an intelligent person requires only two thousand five hundred." - The Mah=C4=81bh=C4=81rata
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAHu1Y71VLvgW=GfzQ3M0T7_0og-M=tOdXD5f2zWhCuouvO6uFQ>