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