137 uint16_t ilport_rtpid; /* relative tpid */
138 uint16_t ilport_proxy_registered;
139 uint64_t ilport_reg_msgid;
140 uint8_t ilport_no_standby_lu;
141 uint32_t ilport_unexpected_comp;
142 stmf_event_handle_t ilport_event_hdl;
143 clock_t ilport_last_online_clock;
144 clock_t ilport_avg_interval;
145 uint32_t ilport_online_times;
146 uint32_t ilport_flags;
147 kstat_t *ilport_kstat_info;
148 kstat_t *ilport_kstat_io;
149 kmutex_t ilport_kstat_lock;
150 char ilport_kstat_tgt_name[STMF_TGT_NAME_LEN];
151 /* which target group this port belongs to in stmf_state.stmf_tg_list */
152 void *ilport_tg;
153 id_t ilport_instance;
154 /* XXX Need something to track all the remote ports also */
155 } stmf_i_local_port_t;
156
157 #define STMF_AVG_ONLINE_INTERVAL (30 * drv_usectohz(1000000))
158
159 #define MAX_IRPORT 0x10000
160
161 typedef struct stmf_i_remote_port {
162 struct scsi_devid_desc *irport_id;
163 kmutex_t irport_mutex;
164 int irport_refcnt;
165 id_t irport_instance;
166 avl_node_t irport_ln;
167 } stmf_i_remote_port_t;
168
169 /*
170 * ilport flags
171 */
172 #define ILPORT_FORCED_OFFLINE 0x01
173 #define ILPORT_SS_GOT_INITIAL_LUNS 0x02
174
175 typedef struct stmf_i_scsi_session {
176 stmf_scsi_session_t *iss_ss;
177 uint32_t iss_alloc_size;
|
137 uint16_t ilport_rtpid; /* relative tpid */
138 uint16_t ilport_proxy_registered;
139 uint64_t ilport_reg_msgid;
140 uint8_t ilport_no_standby_lu;
141 uint32_t ilport_unexpected_comp;
142 stmf_event_handle_t ilport_event_hdl;
143 clock_t ilport_last_online_clock;
144 clock_t ilport_avg_interval;
145 uint32_t ilport_online_times;
146 uint32_t ilport_flags;
147 kstat_t *ilport_kstat_info;
148 kstat_t *ilport_kstat_io;
149 kmutex_t ilport_kstat_lock;
150 char ilport_kstat_tgt_name[STMF_TGT_NAME_LEN];
151 /* which target group this port belongs to in stmf_state.stmf_tg_list */
152 void *ilport_tg;
153 id_t ilport_instance;
154 /* XXX Need something to track all the remote ports also */
155 } stmf_i_local_port_t;
156
157 #define STMF_AVG_ONLINE_INTERVAL drv_sectohz(30)
158
159 #define MAX_IRPORT 0x10000
160
161 typedef struct stmf_i_remote_port {
162 struct scsi_devid_desc *irport_id;
163 kmutex_t irport_mutex;
164 int irport_refcnt;
165 id_t irport_instance;
166 avl_node_t irport_ln;
167 } stmf_i_remote_port_t;
168
169 /*
170 * ilport flags
171 */
172 #define ILPORT_FORCED_OFFLINE 0x01
173 #define ILPORT_SS_GOT_INITIAL_LUNS 0x02
174
175 typedef struct stmf_i_scsi_session {
176 stmf_scsi_session_t *iss_ss;
177 uint32_t iss_alloc_size;
|