From 833e6c9b490098b9d91894c30afc8571358b6b77 Mon Sep 17 00:00:00 2001 From: zbb Date: Sun, 25 Oct 2015 22:17:10 +0000 Subject: 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 Differential revision: https://reviews.freebsd.org/D3903 --- sys/dev/mge/if_mgevar.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'sys/dev/mge') diff --git a/sys/dev/mge/if_mgevar.h b/sys/dev/mge/if_mgevar.h index 1888efb..31b9ac3 100644 --- a/sys/dev/mge/if_mgevar.h +++ b/sys/dev/mge/if_mgevar.h @@ -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) -- cgit v1.1