FreeBSD PR

Mark Gooderum <[email protected]>
Newsgroups gmane.os.freebsd.bugbusters
Message-ID <[email protected]>
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;
 }



_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugbusters
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.