summaryrefslogtreecommitdiffstats
path: root/sys/dev/isp/isp_freebsd.h
diff options
context:
space:
mode:
authormjacob <mjacob@FreeBSD.org>2011-08-12 19:51:28 +0000
committermjacob <mjacob@FreeBSD.org>2011-08-12 19:51:28 +0000
commitab2936096f3cdae594ff8d8fae7bf0f33d9d3286 (patch)
treead8ead30bd42b3c175b3831cfbc735d37959f497 /sys/dev/isp/isp_freebsd.h
parentc33150a2f079dce042e79044a48e03cec65832f6 (diff)
downloadFreeBSD-src-ab2936096f3cdae594ff8d8fae7bf0f33d9d3286.zip
FreeBSD-src-ab2936096f3cdae594ff8d8fae7bf0f33d9d3286.tar.gz
Fixes zombie device and loop down timers so that they work more than
once. Use taskqueues to do the actual work. Fix an offset line. Fix isp_prt so that prints from just one buffer, which makes it appear cleanly cleanly in logs on SMP systems. Approved by: re (kib) MFC after: 1 month
Diffstat (limited to 'sys/dev/isp/isp_freebsd.h')
-rw-r--r--sys/dev/isp/isp_freebsd.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/dev/isp/isp_freebsd.h b/sys/dev/isp/isp_freebsd.h
index 0d67630..cfa2fd5 100644
--- a/sys/dev/isp/isp_freebsd.h
+++ b/sys/dev/isp/isp_freebsd.h
@@ -41,6 +41,7 @@
#include <sys/proc.h>
#include <sys/bus.h>
+#include <sys/taskqueue.h>
#include <machine/bus.h>
#include <machine/cpu.h>
@@ -182,6 +183,8 @@ struct isp_fc {
ready : 1;
struct callout ldt; /* loop down timer */
struct callout gdt; /* gone device timer */
+ struct task ltask;
+ struct task gtask;
#ifdef ISP_TARGET_MODE
struct tslist lun_hash[LUN_HASH_SIZE];
#ifdef ISP_INTERNAL_TARGET
OpenPOWER on IntegriCloud