Author: sbruno Date: Sun Feb 12 23:06:41 2017 New Revision: 313691 URL: https://svnweb.freebsd.org/changeset/base/313691
Log: Only trigger em_local_timer on queue index 0. This was causing continuous em_local_timer() executions during normal operation and was very likely to cause a lock up on igb(4) devices. Submitted by: Matt Macy (mm...@nextbsd.org) Reported by: jtl Reviewed by: gallatin Sponsored by: Limelight Networks & Netflix Modified: head/sys/dev/e1000/if_em.c Modified: head/sys/dev/e1000/if_em.c ============================================================================== --- head/sys/dev/e1000/if_em.c Sun Feb 12 21:05:44 2017 (r313690) +++ head/sys/dev/e1000/if_em.c Sun Feb 12 23:06:41 2017 (r313691) @@ -1625,6 +1625,11 @@ em_if_timer(if_ctx_t ctx, uint16_t qid) int i; int trigger = 0; + if (qid != 0) { + /* XXX all this stuff is per-adapter */ + return; + } + em_if_update_admin_status(ctx); em_update_stats_counters(adapter); _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"