Date: Wed, 29 Sep 2004 16:07:38 -0500 From: Mark Gooderum <mgooderum@netscape.net> To: bugbusters@FreeBSD.org Subject: FreeBSD PR Message-ID: <415B241A.4030509@netscape.net>
next in thread | raw e-mail | index | archive | help
Just filed a PR with the subject:
"em driver em_poll doesn't start send if pending packets"
the subject should be:
"em driver em_intr doesn't start send if pending packets"
I believe this may be the problem (and fix) to the if_em problems noted
in the 5.3 TODO list. The following patch to em_intr() has fixed the
problem for us. We basically would see an em interface hang after 5-10
minutes of throughput testing GigE-GigE with an Ixia.
-=-
Mark
--- /tmp/tmp.44554.0 Wed Sep 29 15:52:32 2004
+++
/data/work/mark/5.3B4A1.i386/usr/build/ambit2/freebsd5/sys/dev/em/if_em.c
Wed Sep 29 15:51:31 2004
@@ -986,11 +986,11 @@
em_clean_transmit_interrupts(adapter);
}
loop_cnt--;
}
- if (ifp->if_flags & IFF_RUNNING && IFQ_DRV_IS_EMPTY(&ifp->if_snd))
+ if (ifp->if_flags & IFF_RUNNING && !IFQ_DRV_IS_EMPTY(&ifp->if_snd))
em_start_locked(ifp);
EM_UNLOCK(adapter);
return;
}
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?415B241A.4030509>
