Date: Mon, 15 Jan 2001 17:53:13 -0800 (PST) From: Bosko Milekic <bmilekic@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern uipc_mbuf.c Message-ID: <200101160153.f0G1rDh51434@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
bmilekic 2001/01/15 17:53:13 PST Modified files: sys/kern uipc_mbuf.c Log: Add some KASSERTs valid if WITNESS is defined to verify that the mbuf allocation routines are being called safely. Since we drop our relevant mbuf mutex and acquire Giant before we call kmem_malloc(), we have to make sure that this does not pave the way for a fatal lock order reversal. Check that either Giant is already held (in which case it's safe to grab it again and recurse on it) or, if Giant is not held, that no other locks are held before we try to acquire Giant. Similarily, add a KASSERT valid in the WITNESS case in m_reclaim() to nail callers who end up in m_reclaim() and hold a lock. Pointed out by: jhb Revision Changes Path 1.62 +40 -5 src/sys/kern/uipc_mbuf.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101160153.f0G1rDh51434>