summaryrefslogtreecommitdiffstats
path: root/sys/dev/ips
diff options
context:
space:
mode:
authorscottl <scottl@FreeBSD.org>2005-04-26 13:38:29 +0000
committerscottl <scottl@FreeBSD.org>2005-04-26 13:38:29 +0000
commit5e7fbbbdc299d1d4b4b81375f830eee4a057c7ff (patch)
treeb2b8b64c1d793ee9820d8f341e73aa533a326fe3 /sys/dev/ips
parentd465b82a7cbc1ed36ac41fae336caa8f18963ae1 (diff)
downloadFreeBSD-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.c5
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)
OpenPOWER on IntegriCloud