Page MenuHomeFreeBSD

D19468.diff
No OneTemporary

D19468.diff

Index: head/sys/net/iflib.c
===================================================================
--- head/sys/net/iflib.c
+++ head/sys/net/iflib.c
@@ -3276,9 +3276,14 @@
txq->ift_mbuf_defrag++;
m_head = m_defrag(*m_headp, M_NOWAIT);
}
- remap++;
- if (__predict_false(m_head == NULL))
+ /*
+ * remap should never be >1 unless bus_dmamap_load_mbuf_sg
+ * failed to map an mbuf that was run through m_defrag
+ */
+ MPASS(remap <= 1);
+ if (__predict_false(m_head == NULL || remap > 1))
goto defrag_failed;
+ remap++;
*m_headp = m_head;
goto retry;
break;

File Metadata

Mime Type
text/plain
Expires
Mon, May 18, 1:42 AM (5 h, 59 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33228111
Default Alt Text
D19468.diff (604 B)

Event Timeline