summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/io/warlock/isp.wlcmd
blob: 1a2c4b11f103bea644bdef5fbde63c0c8e63d504 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#
# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
#
#ident	"%Z%%M%	%I%	%E% SMI"

### Warlock commands for analyzing the isp driver alone.

### Tell warlock there's only one isp struct, so that it will complain
### if the lock is acquired when it is already locked.

one isp 

### Tell warlock that isp_scsi_reset_notify(), which gets called from
### the scsa stuff through the transport table, is a root function.

root isp_scsi_reset_notify isp_i_print_response

### Give warlock the lock order we use to prevent deadlocks.

assert order \
	isp::isp_response_mutex \
	isp::isp_request_mutex \
	isp::isp_waitq_mutex

### Tell warlock not to analyze this calling sequence, since it
### never really occurs.

disallow \
	isp_i_empty_waitQ \
	isp_scsi_start \
	isp_i_polled_cmd_start

root isp_kmem_cache_constructor isp_kmem_cache_destructor

### Tell warlock where calls through pkt_comp go.

add scsi_pkt::pkt_comp targets \
	isp_scsi_start \
	isp_scsi_abort \
	isp_scsi_reset \
	isp_scsi_getcap \
	isp_scsi_setcap \
	isp_scsi_dmafree \
	isp_scsi_sync_pkt \
	isp_scsi_destroy_pkt \
	isp_scsi_init_pkt

add notify_entry::callback target warlock_dummy


for ptr in `funcptrs | grep '^scsi_hba_tran::'`
do
        add $ptr target warlock_dummy
done 
root	scsi_hba_bus_power