Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Jan 2010 00:53:00 +0000 (UTC)
From:      Pyun YongHyeon <yongari@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject:   svn commit: r202730 - stable/8/sys/dev/bge
Message-ID:  <201001210053.o0L0r0Cn068804@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yongari
Date: Thu Jan 21 00:53:00 2010
New Revision: 202730
URL: http://svn.freebsd.org/changeset/base/202730

Log:
  MFC r202406:
    Don't free mbuf chains when bge(4) fails to collapse the mbuf
    chains. This part of code is to enhance performance so failing the
    collapsing should not free TX frames. Otherwise bge(4) will
    unnecessarily drop frames which in turn can freeze the network
    connection.
  
    Reported by:	Igor Sysoev (is <> rambler-co dot ru)
    Tested by:	Igor Sysoev (is <> rambler-co dot ru)

Modified:
  stable/8/sys/dev/bge/if_bge.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)

Modified: stable/8/sys/dev/bge/if_bge.c
==============================================================================
--- stable/8/sys/dev/bge/if_bge.c	Thu Jan 21 00:50:46 2010	(r202729)
+++ stable/8/sys/dev/bge/if_bge.c	Thu Jan 21 00:53:00 2010	(r202730)
@@ -3948,11 +3948,8 @@ bge_encap(struct bge_softc *sc, struct m
 			m = m_defrag(m, M_DONTWAIT);
 		else
 			m = m_collapse(m, M_DONTWAIT, sc->bge_forced_collapse);
-		if (m == NULL) {
-			m_freem(*m_head);
-			*m_head = NULL;
-			return (ENOBUFS);
-		}
+		if (m == NULL)
+			m = *m_head;
 		*m_head = m;
 	}
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001210053.o0L0r0Cn068804>