aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/mpt/mpt_cam.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/mpt/mpt_cam.c')
-rw-r--r--sys/dev/mpt/mpt_cam.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/dev/mpt/mpt_cam.c b/sys/dev/mpt/mpt_cam.c
index cd3048de6641..6e1dfa440d11 100644
--- a/sys/dev/mpt/mpt_cam.c
+++ b/sys/dev/mpt/mpt_cam.c
@@ -1245,7 +1245,10 @@ mpt_timeout(void *arg)
ccb = (union ccb *)arg;
mpt = ccb->ccb_h.ccb_mpt_ptr;
+#if __FreeBSD_version < 500000
MPT_LOCK(mpt);
+#endif
+ MPT_LOCK_ASSERT(mpt);
req = ccb->ccb_h.ccb_req_ptr;
mpt_prt(mpt, "request %p:%u timed out for ccb %p (req->ccb %p)\n", req,
req->serno, ccb, req->ccb);
@@ -1256,7 +1259,9 @@ mpt_timeout(void *arg)
req->state |= REQ_STATE_TIMEDOUT;
mpt_wakeup_recovery_thread(mpt);
}
+#if __FreeBSD_version < 500000
MPT_UNLOCK(mpt);
+#endif
}
/*