aboutsummaryrefslogtreecommitdiffstats
path: root/include/scsi/iscsi_if.h
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2006-06-28 13:00:32 -0400
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2006-06-29 11:14:42 -0400
commit53cb8a1f45e06a2627a6d89b151cccb95fa45cbf (patch)
tree272c8bfb7a3e8a9a9af55e2e6b76e0ecd757410b /include/scsi/iscsi_if.h
parent6a8a0d3621745279a131d95f0204dc9ddac60d55 (diff)
[SCSI] iscsi: add async notification of session events
This patch adds or modifies the transport class functions used to notify userspace of session state events. We modify the session addition up event and add a destruction event to notify userspace of session creation, relogin and destruction. And we modify the conn error event to be sent by broadcast since multiple listeners may want to listen for it. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'include/scsi/iscsi_if.h')
-rw-r--r--include/scsi/iscsi_if.h23
1 files changed, 5 insertions, 18 deletions
diff --git a/include/scsi/iscsi_if.h b/include/scsi/iscsi_if.h
index 8813f0f4c624..55ebf035e620 100644
--- a/include/scsi/iscsi_if.h
+++ b/include/scsi/iscsi_if.h
@@ -53,6 +53,7 @@ enum iscsi_uevent_e {
53 ISCSI_KEVENT_RECV_PDU = KEVENT_BASE + 1, 53 ISCSI_KEVENT_RECV_PDU = KEVENT_BASE + 1,
54 ISCSI_KEVENT_CONN_ERROR = KEVENT_BASE + 2, 54 ISCSI_KEVENT_CONN_ERROR = KEVENT_BASE + 2,
55 ISCSI_KEVENT_IF_ERROR = KEVENT_BASE + 3, 55 ISCSI_KEVENT_IF_ERROR = KEVENT_BASE + 3,
56 ISCSI_KEVENT_DESTROY_SESSION = KEVENT_BASE + 4,
56}; 57};
57 58
58enum iscsi_tgt_dscvr { 59enum iscsi_tgt_dscvr {
@@ -157,27 +158,13 @@ struct iscsi_uevent {
157 uint32_t cid; 158 uint32_t cid;
158 uint32_t error; /* enum iscsi_err */ 159 uint32_t error; /* enum iscsi_err */
159 } connerror; 160 } connerror;
161 struct msg_session_destroyed {
162 uint32_t host_no;
163 uint32_t sid;
164 } d_session;
160 struct msg_transport_connect_ret { 165 struct msg_transport_connect_ret {
161 uint64_t handle; 166 uint64_t handle;
162 } ep_connect_ret; 167 } ep_connect_ret;
163 struct msg_tgt_dscvr_ret {
164 /*
165 * session/connection pair used to reference
166 * the connection to server
167 */
168 uint32_t sid;
169 uint32_t cid;
170 union {
171 struct isns {
172 /* port # for conn to iSNS server */
173 uint16_t isns_port;
174 /* listening port to receive SCNs */
175 uint16_t scn_port;
176 /* listening port to receive ESIs */
177 uint16_t esi_port;
178 } isns_attrib;
179 } u;
180 } tgt_dscvr_ret;
181 } r; 168 } r;
182} __attribute__ ((aligned (sizeof(uint64_t)))); 169} __attribute__ ((aligned (sizeof(uint64_t))));
183 170