1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-17 15:27:36 +00:00

m_mballoc_wait() had a spl/tsleep race. mbufs can be freed in interrupt

context, which can cause a wakeup.. which can race with this.
This commit is contained in:
Peter Wemm 2000-08-25 22:28:08 +00:00
parent 78be7a111a
commit 9579e8c145
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=65095

View File

@ -249,9 +249,11 @@ m_mballoc_wait(int caller, int type)
struct mbuf *p;
int s;
s = splimp();
m_mballoc_wid++;
if ((tsleep(&m_mballoc_wid, PVM, "mballc", mbuf_wait)) == EWOULDBLOCK)
m_mballoc_wid--;
splx(s);
/*
* Now that we (think) that we've got something, we will redo an