Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jan 2014 01:06:32 +0000 (UTC)
From:      Pyun YongHyeon <yongari@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r260429 - head/sys/dev/ale
Message-ID:  <201401080106.s0816Wru095078@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yongari
Date: Wed Jan  8 01:06:32 2014
New Revision: 260429
URL: http://svnweb.freebsd.org/changeset/base/260429

Log:
  m_defrag(9) does not touch original mbuf chain when it can't
  allocate new mbuf.  Free original mbuf chain when driver is not
  able to send the packet.

Modified:
  head/sys/dev/ale/if_ale.c

Modified: head/sys/dev/ale/if_ale.c
==============================================================================
--- head/sys/dev/ale/if_ale.c	Tue Jan  7 23:51:41 2014	(r260428)
+++ head/sys/dev/ale/if_ale.c	Wed Jan  8 01:06:32 2014	(r260429)
@@ -1660,6 +1660,7 @@ ale_encap(struct ale_softc *sc, struct m
 		    (mtod(m, intptr_t) & 3) != 0) {
 			m = m_defrag(*m_head, M_NOWAIT);
 			if (m == NULL) {
+				m_freem(*m_head);
 				*m_head = NULL;
 				return (ENOBUFS);
 			}



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