diff options
author | Mike Christie <michaelc@cs.wisc.edu> | 2011-07-25 14:48:50 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2011-08-27 10:36:21 -0400 |
commit | 90eeb01a038e5fec0efdea4df008f3c18f67b82c (patch) | |
tree | 9977dd9000374e1162f56934efcf0e5b8c7c7155 /include/scsi/scsi_transport_iscsi.h | |
parent | 6ac73e8cb02e65abeb2f8d43f0fe48e485444b44 (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.h | 7 |
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; | |||
38 | struct iscsi_task; | 38 | struct iscsi_task; |
39 | struct sockaddr; | 39 | struct sockaddr; |
40 | struct iscsi_iface; | 40 | struct iscsi_iface; |
41 | struct 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 { | |||
227 | struct iscsi_cls_host { | 228 | struct 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 | |||
232 | extern void iscsi_host_for_each_session(struct Scsi_Host *shost, | 237 | extern 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 | ||