if_muge: Use lock assertion instead of broken locking in lan78xx_chip_init
Previously lan78xx_chip_init locked the driver's mutex if not already locked, but unlocked it only in the case of error. This provided a fairly clear indication that the function is already called with the lock held, so just replace it with a lock assertion. Sponsored by: The FreeBSD Foundation
This commit is contained in:
parent
c0134460fc
commit
097f721b80
@ -953,13 +953,10 @@ static int
|
||||
lan78xx_chip_init(struct muge_softc *sc)
|
||||
{
|
||||
int err;
|
||||
int locked;
|
||||
uint32_t buf;
|
||||
uint32_t burst_cap;
|
||||
|
||||
locked = mtx_owned(&sc->sc_mtx);
|
||||
if (!locked)
|
||||
MUGE_LOCK(sc);
|
||||
MUGE_LOCK_ASSERT(sc, MA_OWNED);
|
||||
|
||||
/* Enter H/W config mode. */
|
||||
lan78xx_write_reg(sc, ETH_HW_CFG, ETH_HW_CFG_LRST_);
|
||||
@ -1132,9 +1129,6 @@ lan78xx_chip_init(struct muge_softc *sc)
|
||||
return (0);
|
||||
|
||||
init_failed:
|
||||
if (!locked)
|
||||
MUGE_UNLOCK(sc);
|
||||
|
||||
muge_err_printf(sc, "lan78xx_chip_init failed (err=%d)\n", err);
|
||||
return (err);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user