diff options
author | emaste <emaste@FreeBSD.org> | 2007-12-19 14:33:40 +0000 |
---|---|---|
committer | emaste <emaste@FreeBSD.org> | 2007-12-19 14:33:40 +0000 |
commit | a9a3bcada9efd0ad2e0689e86570a02e74fc526d (patch) | |
tree | ae4ba74abbd56c0fb66b98fc46c498cb1cb875c5 /sys/dev/aac | |
parent | 33d15c75c62ba3cdcd67374ff3559fe1cddd87fa (diff) | |
download | FreeBSD-src-a9a3bcada9efd0ad2e0689e86570a02e74fc526d.zip FreeBSD-src-a9a3bcada9efd0ad2e0689e86570a02e74fc526d.tar.gz |
Do not recursively acquire aac_io_lock in aac_ioctl_event.
MFC After: 3 days
Diffstat (limited to 'sys/dev/aac')
-rw-r--r-- | sys/dev/aac/aac.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sys/dev/aac/aac.c b/sys/dev/aac/aac.c index 27949c8..37e13b5a 100644 --- a/sys/dev/aac/aac.c +++ b/sys/dev/aac/aac.c @@ -2980,15 +2980,13 @@ aac_ioctl_event(struct aac_softc *sc, struct aac_event *event, void *arg) switch (event->ev_type) { case AAC_EVENT_CMFREE: - mtx_lock(&sc->aac_io_lock); + mtx_assert(&sc->aac_io_lock, MA_OWNED); if (aac_alloc_command(sc, (struct aac_command **)arg)) { aac_add_event(sc, event); - mtx_unlock(&sc->aac_io_lock); return; } free(event, M_AACBUF); wakeup(arg); - mtx_unlock(&sc->aac_io_lock); break; default: break; |