diff options
author | scottl <scottl@FreeBSD.org> | 2005-04-26 13:38:29 +0000 |
---|---|---|
committer | scottl <scottl@FreeBSD.org> | 2005-04-26 13:38:29 +0000 |
commit | 5e7fbbbdc299d1d4b4b81375f830eee4a057c7ff (patch) | |
tree | b2b8b64c1d793ee9820d8f341e73aa533a326fe3 /sys/dev/ips | |
parent | d465b82a7cbc1ed36ac41fae336caa8f18963ae1 (diff) | |
download | FreeBSD-src-5e7fbbbdc299d1d4b4b81375f830eee4a057c7ff.zip FreeBSD-src-5e7fbbbdc299d1d4b4b81375f830eee4a057c7ff.tar.gz |
Remove an extra mutex unlock in the morpheus interrupt handler.
PR: 80246
Submitted by: Dean Strik
MFC After: 3 days
Diffstat (limited to 'sys/dev/ips')
-rw-r--r-- | sys/dev/ips/ips.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/ips/ips.c b/sys/dev/ips/ips.c index f80dc8f..9229857 100644 --- a/sys/dev/ips/ips.c +++ b/sys/dev/ips/ips.c @@ -512,7 +512,6 @@ static __inline int ips_morpheus_check_intr(ips_softc_t *sc) PRINTF(9, "interrupt registers out:%x\n", oisr); if(!(oisr & MORPHEUS_BIT_CMD_IRQ)){ DEVICE_PRINTF(2,sc->dev, "got a non-command irq\n"); - mtx_unlock(&sc->queue_mtx); return (0); } while((status.value = ips_read_4(sc, MORPHEUS_REG_OQPR)) != 0xffffffff){ @@ -540,6 +539,10 @@ void ips_morpheus_poll(ips_command_t *command) { uint32_t ts; + /* + * Locks are not used here because this is only called during + * crashdumps. + */ ts = time_second + command->timeout; while ((command->timeout != 0) && (ips_morpheus_check_intr(command->sc) == 0) |