]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
xsigo: UEK4-master:poor performance discovering 256 FC LUNs w/4 paths per LUN
authorPradeep Gopanapalli <pradeep.gopanapalli@oracle.com>
Mon, 5 Jun 2017 23:29:03 +0000 (16:29 -0700)
committerChuck Anderson <chuck.anderson@oracle.com>
Wed, 7 Jun 2017 04:15:51 +0000 (21:15 -0700)
Orabug: 26199177

Current sense_len checks for size of cp->sense_buffer which is of type
pointer. Passing truncated sense data(size of pointer) to upper scsi
layers(aula) is causing delay in discovering FC LUN's.
Fixed sense_len assignment to SCSI_SENSE_BUFFERSIZE, this resolved
delay in discovering FC LUN's.

Reviewed-by: sajid.zia@oracle.com
Signed-off-by: Pradeep Gopanapalli <pradeep.gopanapalli@oracle.com>
Signed-off-by: said.zia@oracle.com
drivers/infiniband/ulp/xsigo/xsvhba/vhba_init.c

index 2ae9a805d8d13d7710baa794865f942b2467d586..1a394a2fe917387ba4bfdbad002615b6c316c26c 100644 (file)
@@ -455,8 +455,8 @@ void process_status_entry(struct virtual_hba *vhba, struct sts_entry_24xx *sts)
                if (!(scsi_status & SS_SENSE_LEN_VALID))
                        break;
 
-               if (sense_len >= sizeof(cp->sense_buffer))
-                       sense_len = sizeof(cp->sense_buffer);
+               if (sense_len >= SCSI_SENSE_BUFFERSIZE)
+                       sense_len = SCSI_SENSE_BUFFERSIZE;
 
                sp->request_sense_length = sense_len;
                sp->request_sense_ptr = cp->sense_buffer;
@@ -505,8 +505,8 @@ void process_status_entry(struct virtual_hba *vhba, struct sts_entry_24xx *sts)
                        if (!(scsi_status & SS_SENSE_LEN_VALID))
                                break;
 
-                       if (sense_len >= sizeof(cp->sense_buffer))
-                               sense_len = sizeof(cp->sense_buffer);
+                       if (sense_len >= SCSI_SENSE_BUFFERSIZE)
+                               sense_len = SCSI_SENSE_BUFFERSIZE;
 
                        sp->request_sense_length = sense_len;
                        sp->request_sense_ptr = cp->sense_buffer;