summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2008-11-26 21:39:58 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2008-11-26 21:39:58 +0000
commit1df353ea76ac4b3d10cabbb363860357cbff0ff4 (patch)
tree091754d68b7cbb836733170c573b7c20f9e86c87 /sys
parent467ee9ea88f7f727bc76e9749e54c8640d07fb0c (diff)
only the pool_get() needs to be spl protected; ok claudio dlg
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/uipc_mbuf.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/kern/uipc_mbuf.c b/sys/kern/uipc_mbuf.c
index ffde4c32209..08ed4b4f154 100644
--- a/sys/kern/uipc_mbuf.c
+++ b/sys/kern/uipc_mbuf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uipc_mbuf.c,v 1.103 2008/11/25 19:09:34 claudio Exp $ */
+/* $OpenBSD: uipc_mbuf.c,v 1.104 2008/11/26 21:39:57 deraadt Exp $ */
/* $NetBSD: uipc_mbuf.c,v 1.15.4.1 1996/06/13 17:11:44 cgd Exp $ */
/*
@@ -187,6 +187,7 @@ m_get(int nowait, int type)
s = splvm();
m = pool_get(&mbpool, nowait == M_WAIT ? PR_WAITOK : 0);
+ splx(s);
if (m) {
m->m_type = type;
mbstat.m_mtypes[type]++;
@@ -195,7 +196,6 @@ m_get(int nowait, int type)
m->m_data = m->m_dat;
m->m_flags = 0;
}
- splx(s);
return (m);
}
@@ -211,6 +211,7 @@ m_gethdr(int nowait, int type)
s = splvm();
m = pool_get(&mbpool, nowait == M_WAIT ? PR_WAITOK : 0);
+ splx(s);
if (m) {
m->m_type = type;
mbstat.m_mtypes[type]++;
@@ -232,7 +233,6 @@ m_gethdr(int nowait, int type)
m->m_pkthdr.pf.flags = 0;
m->m_pkthdr.pf.routed = 0;
}
- splx(s);
return (m);
}