Commit c3baa9a26c5ac7e8d801093d55d33620d8bc2fe2

Authored by Martin Peschke
Committed by James Bottomley
1 parent e891bffe92

[SCSI] zfcp: Add information about interrupt to trace.

Store the index of the buffer in the inbound queue used to report
request completion in trace record for request coompletion.
This piece of information allows to better compare qdio and zfcp traces.

Signed-off-by: Martin Peschke <mp3@de.ibm.com>
Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>

Showing 4 changed files with 7 additions and 2 deletions Side-by-side Diff

drivers/s390/scsi/zfcp_dbf.c
... ... @@ -187,6 +187,7 @@
187 187 response->fsf_req_status = fsf_req->status;
188 188 response->sbal_first = fsf_req->sbal_first;
189 189 response->sbal_last = fsf_req->sbal_last;
  190 + response->sbal_response = fsf_req->sbal_response;
190 191 response->pool = fsf_req->pool != NULL;
191 192 response->erp_action = (unsigned long)fsf_req->erp_action;
192 193  
... ... @@ -355,6 +356,7 @@
355 356 zfcp_dbf_out(p, "fsf_req_status", "0x%08x", r->fsf_req_status);
356 357 zfcp_dbf_out(p, "sbal_first", "0x%02x", r->sbal_first);
357 358 zfcp_dbf_out(p, "sbal_last", "0x%02x", r->sbal_last);
  359 + zfcp_dbf_out(p, "sbal_response", "0x%02x", r->sbal_response);
358 360 zfcp_dbf_out(p, "pool", "0x%02x", r->pool);
359 361  
360 362 switch (r->fsf_command) {
drivers/s390/scsi/zfcp_dbf.h
... ... @@ -98,6 +98,7 @@
98 98 u32 fsf_req_status;
99 99 u8 sbal_first;
100 100 u8 sbal_last;
  101 + u8 sbal_response;
101 102 u8 pool;
102 103 u64 erp_action;
103 104 union {
drivers/s390/scsi/zfcp_def.h
... ... @@ -856,6 +856,7 @@
856 856 this reuest */
857 857 u8 sbale_curr; /* current SBALE during creation
858 858 of request */
  859 + u8 sbal_response; /* SBAL used in interrupt */
859 860 wait_queue_head_t completion_wq; /* can be used by a routine
860 861 to wait for completion */
861 862 volatile u32 status; /* status of this request */
drivers/s390/scsi/zfcp_qdio.c
... ... @@ -235,7 +235,7 @@
235 235 * zfcp_qdio_reqid_check - checks for valid reqids.
236 236 */
237 237 static void zfcp_qdio_reqid_check(struct zfcp_adapter *adapter,
238   - unsigned long req_id)
  238 + unsigned long req_id, int sbal)
239 239 {
240 240 struct zfcp_fsf_req *fsf_req;
241 241 unsigned long flags;
... ... @@ -255,6 +255,7 @@
255 255 atomic_dec(&adapter->reqs_active);
256 256 spin_unlock_irqrestore(&adapter->req_list_lock, flags);
257 257  
  258 + fsf_req->sbal_response = sbal;
258 259 /* finish the FSF request */
259 260 zfcp_fsf_req_complete(fsf_req);
260 261 }
... ... @@ -321,7 +322,7 @@
321 322 /* look for QDIO request identifiers in SB */
322 323 buffere = &buffer->element[buffere_index];
323 324 zfcp_qdio_reqid_check(adapter,
324   - (unsigned long) buffere->addr);
  325 + (unsigned long) buffere->addr, i);
325 326  
326 327 /*
327 328 * A single used SBALE per inbound SBALE has been