xref: /titanic_50/usr/src/uts/common/io/warlock/isp.wlcmd (revision 1886f67eb9de99edbcda88765f2c603a30c87fc2)
1#
2# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
3# Use is subject to license terms.
4#
5#ident	"%Z%%M%	%I%	%E% SMI"
6
7### Warlock commands for analyzing the isp driver alone.
8
9### Tell warlock there's only one isp struct, so that it will complain
10### if the lock is acquired when it is already locked.
11
12one isp
13
14### Tell warlock that isp_scsi_reset_notify(), which gets called from
15### the scsa stuff through the transport table, is a root function.
16
17root isp_scsi_reset_notify isp_i_print_response
18
19### Give warlock the lock order we use to prevent deadlocks.
20
21assert order \
22	isp::isp_response_mutex \
23	isp::isp_request_mutex \
24	isp::isp_waitq_mutex
25
26### Tell warlock not to analyze this calling sequence, since it
27### never really occurs.
28
29disallow \
30	isp_i_empty_waitQ \
31	isp_scsi_start \
32	isp_i_polled_cmd_start
33
34root isp_kmem_cache_constructor isp_kmem_cache_destructor
35
36### Tell warlock where calls through pkt_comp go.
37
38add scsi_pkt::pkt_comp targets \
39	isp_scsi_start \
40	isp_scsi_abort \
41	isp_scsi_reset \
42	isp_scsi_getcap \
43	isp_scsi_setcap \
44	isp_scsi_dmafree \
45	isp_scsi_sync_pkt \
46	isp_scsi_destroy_pkt \
47	isp_scsi_init_pkt
48
49add notify_entry::callback target warlock_dummy
50
51
52for ptr in `funcptrs | grep '^scsi_hba_tran::'`
53do
54        add $ptr target warlock_dummy
55done
56root	scsi_hba_bus_power
57