summaryrefslogtreecommitdiffstats
path: root/sys/netinet/libalias
diff options
context:
space:
mode:
authorglebius <glebius@FreeBSD.org>2013-01-30 18:40:19 +0000
committerglebius <glebius@FreeBSD.org>2013-01-30 18:40:19 +0000
commite916257b91a6b70ac800386da93d28eff378d98b (patch)
tree9dc4095f00c1404c3f6eff63a05d8d85d870d235 /sys/netinet/libalias
parent0b25d373a75742682f17e2f421c6b856c8e24e5a (diff)
downloadFreeBSD-src-e916257b91a6b70ac800386da93d28eff378d98b.zip
FreeBSD-src-e916257b91a6b70ac800386da93d28eff378d98b.tar.gz
Utilize m_get2() to get mbuf of appropriate size.
Diffstat (limited to 'sys/netinet/libalias')
-rw-r--r--sys/netinet/libalias/alias.c16
1 files changed, 1 insertions, 15 deletions
diff --git a/sys/netinet/libalias/alias.c b/sys/netinet/libalias/alias.c
index da28b22..3b2068b 100644
--- a/sys/netinet/libalias/alias.c
+++ b/sys/netinet/libalias/alias.c
@@ -1760,21 +1760,7 @@ m_megapullup(struct mbuf *m, int len) {
if (m->m_next == NULL && M_WRITABLE(m) && M_TRAILINGSPACE(m) >= RESERVE)
return (m);
- if (len <= MCLBYTES - RESERVE) {
- mcl = m_getcl(M_NOWAIT, MT_DATA, M_PKTHDR);
- } else if (len < MJUM16BYTES) {
- int size;
- if (len <= MJUMPAGESIZE - RESERVE) {
- size = MJUMPAGESIZE;
- } else if (len <= MJUM9BYTES - RESERVE) {
- size = MJUM9BYTES;
- } else {
- size = MJUM16BYTES;
- };
- mcl = m_getjcl(M_NOWAIT, MT_DATA, M_PKTHDR, size);
- } else {
- goto bad;
- }
+ mcl = m_get2(M_NOWAIT, MT_DATA, M_PKTHDR, len + RESERVE);
if (mcl == NULL)
goto bad;
OpenPOWER on IntegriCloud