aboutsummaryrefslogtreecommitdiffstats
path: root/include/scsi/scsi_transport_iscsi.h
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2011-07-25 14:48:50 -0400
committerJames Bottomley <JBottomley@Parallels.com>2011-08-27 10:36:21 -0400
commit90eeb01a038e5fec0efdea4df008f3c18f67b82c (patch)
tree9977dd9000374e1162f56934efcf0e5b8c7c7155 /include/scsi/scsi_transport_iscsi.h
parent6ac73e8cb02e65abeb2f8d43f0fe48e485444b44 (diff)
[SCSI] iscsi class: add bsg support to iscsi class
This patch adds bsg support to the iscsi class. There is only 1 request, the host vendor one, supported. It is expected that this would be used for things like flash updates. This patch is made over this one http://marc.info/?l=linux-scsi&m=131149780020992&w=2 Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'include/scsi/scsi_transport_iscsi.h')
-rw-r--r--include/scsi/scsi_transport_iscsi.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/scsi/scsi_transport_iscsi.h b/include/scsi/scsi_transport_iscsi.h
index 77e6dd60fb4b..4a3edeeae8f6 100644
--- a/include/scsi/scsi_transport_iscsi.h
+++ b/include/scsi/scsi_transport_iscsi.h
@@ -38,6 +38,7 @@ struct iscsi_conn;
38struct iscsi_task; 38struct iscsi_task;
39struct sockaddr; 39struct sockaddr;
40struct iscsi_iface; 40struct iscsi_iface;
41struct bsg_job;
41 42
42/** 43/**
43 * struct iscsi_transport - iSCSI Transport template 44 * struct iscsi_transport - iSCSI Transport template
@@ -141,9 +142,9 @@ struct iscsi_transport {
141 enum iscsi_param_type param_type, 142 enum iscsi_param_type param_type,
142 int param, char *buf); 143 int param, char *buf);
143 mode_t (*attr_is_visible)(int param_type, int param); 144 mode_t (*attr_is_visible)(int param_type, int param);
145 int (*bsg_request)(struct bsg_job *job);
144}; 146};
145 147
146
147/* 148/*
148 * transport registration upcalls 149 * transport registration upcalls
149 */ 150 */
@@ -227,8 +228,12 @@ struct iscsi_cls_session {
227struct iscsi_cls_host { 228struct iscsi_cls_host {
228 atomic_t nr_scans; 229 atomic_t nr_scans;
229 struct mutex mutex; 230 struct mutex mutex;
231 struct request_queue *bsg_q;
230}; 232};
231 233
234#define iscsi_job_to_shost(_job) \
235 dev_to_shost(_job->dev)
236
232extern void iscsi_host_for_each_session(struct Scsi_Host *shost, 237extern void iscsi_host_for_each_session(struct Scsi_Host *shost,
233 void (*fn)(struct iscsi_cls_session *)); 238 void (*fn)(struct iscsi_cls_session *));
234 239