Re: [PATCH 2/3] lpfc: fix misleading indentation

From: Ewan Milne
Date: Mon Mar 14 2016 - 11:48:18 EST


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 <emilne@xxxxxxxxxx>

> >
> > 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 <hare@xxxxxxxx>
>
> Cheers,
>
> Hannes