Change improper locking assertion in mge
Assertion used here was invalid. If current thread helds any of locks, we never want to recurse on them. Obtained from: Semihalf Submitted by: Bartosz Szczepanek <bsz@semihalf.com> Differential revision: https://reviews.freebsd.org/D3903
This commit is contained in:
parent
5420071d39
commit
446892110d
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=289948
@ -137,10 +137,8 @@ struct mge_softc {
|
||||
#define MGE_RECEIVE_LOCK_ASSERT(sc) mtx_assert(&(sc)->receive_lock, MA_OWNED)
|
||||
|
||||
#define MGE_GLOBAL_LOCK(sc) do { \
|
||||
if ((mtx_owned(&(sc)->transmit_lock) ? 1 : 0) != \
|
||||
(mtx_owned(&(sc)->receive_lock) ? 1 : 0)) { \
|
||||
panic("mge deadlock possibility detection!"); \
|
||||
} \
|
||||
mtx_assert(&(sc)->transmit_lock, MA_NOTOWNED); \
|
||||
mtx_assert(&(sc)->receive_lock, MA_NOTOWNED); \
|
||||
mtx_lock(&(sc)->transmit_lock); \
|
||||
mtx_lock(&(sc)->receive_lock); \
|
||||
} while (0)
|
||||
|
Loading…
Reference in New Issue
Block a user