Change a very strange code in m_demote() to simple assertion.

Sponsored by:	Nginx, Inc.
This commit is contained in:
Gleb Smirnoff 2014-09-04 19:27:30 +00:00
parent a7c7f2a7e2
commit 7ee2d05890
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=271122

View File

@ -393,17 +393,13 @@ m_demote(struct mbuf *m0, int all)
struct mbuf *m;
for (m = all ? m0 : m0->m_next; m != NULL; m = m->m_next) {
KASSERT(m->m_nextpkt == NULL, ("%s: m_nextpkt in m %p, m0 %p",
__func__, m, m0));
if (m->m_flags & M_PKTHDR) {
m_tag_delete_chain(m, NULL);
m->m_flags &= ~M_PKTHDR;
bzero(&m->m_pkthdr, sizeof(struct pkthdr));
}
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_RDONLY|M_NOFREE);
}
}