From 99adc698c1889950d1ff2b747f52de00fd69a8b1 Mon Sep 17 00:00:00 2001 From: Luigi Rizzo Date: Fri, 14 Dec 2001 17:31:58 +0000 Subject: [PATCH] Let M_LEADINGSPACE write into non-shared mbufs. A similar thing has been in -stable for weeks and is completely safe. This has very good performance implications as it saves some data copying, and sometimes avoids triggering performance bugs in devices (such as the "dc" and other Tulip clones) which do not like scattered data. --- sys/sys/mbuf.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/mbuf.h b/sys/sys/mbuf.h index 1f18173ba11..e563f05d3f9 100644 --- a/sys/sys/mbuf.h +++ b/sys/sys/mbuf.h @@ -360,7 +360,7 @@ struct mbstat { */ #define M_LEADINGSPACE(m) \ ((m)->m_flags & M_EXT ? \ - /* (m)->m_data - (m)->m_ext.ext_buf */ 0 : \ + (M_WRITABLE(m) ? (m)->m_data - (m)->m_ext.ext_buf : 0): \ (m)->m_flags & M_PKTHDR ? (m)->m_data - (m)->m_pktdat : \ (m)->m_data - (m)->m_dat)