Date: Mon, 22 Jun 2009 19:35:39 +0000 (UTC) From: Andre Oppermann <andre@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r194643 - head/sys/kern Message-ID: <200906221935.n5MJZdLJ050266@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: andre Date: Mon Jun 22 19:35:39 2009 New Revision: 194643 URL: http://svn.freebsd.org/changeset/base/194643 Log: Update m_demote: - remove HT_HEADER test (MT_HEADER == MT_DATA for some time now) - be more pedantic about m_nextpkt in other than first mbuf - update m_flags to be retained Modified: head/sys/kern/uipc_mbuf.c Modified: head/sys/kern/uipc_mbuf.c ============================================================================== --- head/sys/kern/uipc_mbuf.c Mon Jun 22 19:09:48 2009 (r194642) +++ head/sys/kern/uipc_mbuf.c Mon Jun 22 19:35:39 2009 (r194643) @@ -320,11 +320,13 @@ m_demote(struct mbuf *m0, int all) m->m_flags &= ~M_PKTHDR; bzero(&m->m_pkthdr, sizeof(struct pkthdr)); } - if (m->m_type == MT_HEADER) - m->m_type = MT_DATA; - if (m != m0 && m->m_nextpkt != NULL) + if (m != m0 && m->m_nextpkt != NULL) { + KASSERT(m->m_nextpkt == NULL, + ("%s: m_nextpkt not NULL", __func__)); + m_freem(m->m_nextpkt); m->m_nextpkt = NULL; - m->m_flags = m->m_flags & (M_EXT|M_EOR|M_RDONLY|M_FREELIST); + } + m->m_flags = m->m_flags & (M_EXT|M_RDONLY|M_FREELIST|M_NOFREE); } }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906221935.n5MJZdLJ050266>