On Mon, 2016-03-14 at 16:26 +0100, Hannes Reinecke wrote:
> On 03/14/2016 04:25 PM, Arnd Bergmann wrote:
> > On Monday 14 March 2016 16:19:58 Hannes Reinecke wrote:
> >>>       vports = lpfc_create_vport_work_array(phba);
> >>> -     if (vports != NULL)
> >>> +     if (vports != NULL) {
> >>>               for (i = 0; i <= phba->max_vports && vports[i] != NULL; 
> >>> i++) {
> >>>                       struct Scsi_Host *shost;
> >>>                       shost = lpfc_shost_from_vport(vports[i]);
> >>> @@ -2877,7 +2877,8 @@ lpfc_online(struct lpfc_hba *phba)
> >>>                       }
> >>>                       spin_unlock_irq(shost->host_lock);
> >>>               }
> >>> -             lpfc_destroy_vport_work_array(phba, vports);
> >>> +     }
> >>> +     lpfc_destroy_vport_work_array(phba, vports);
> >>>  
> >>>       lpfc_unblock_mgmt_io(phba);
> >>>       return 0;
> >>>
> >> Nope.
> >>
> >> vports is only valid from within the indentation block, so it should
> >> be moved into it.
> >>
> >>
> > 
> > Well, every other user of the function also looks like
> > 
> >     vports = lpfc_create_vport_work_array(phba);
> >     if (vports != NULL) {
> >             do_something(vports);
> >     }
> >     lpfc_destroy_vport_work_array(phba, vports);

Actually the lpfc code is inconsistent about whether the _destroy call
is within the (vports != NULL) test or not, but as you say below it
doesn't matter.

Reviewed-by: Ewan D. Milne <emi...@redhat.com>

> > 
> > and lpfc_destroy_vport_work_array() does nothing if its argument is NULL.
> > 
> > I still think my patch is the correct fix for the warning.
> > 
> Okay, good point.
> 
> Reviewed-by: Hannes Reinecke <h...@suse.com>
> 
> Cheers,
> 
> Hannes


--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to