Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[SCSI] lpfc: Move a dereference below a NULL test

In each case, if the NULL test is necessary, then the dereference should be
moved below the NULL test.

The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
type T;
expression E;
identifier i,fld;
statement S;
@@

- T i = E->fld;
+ T i;
... when != E
when != i
if (E == NULL) S
+ i = E->fld;
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: James Smart <James.Smart@Emulex.Com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>

authored by

Julia Lawall and committed by
James Bottomley
372bd282 b99b4c67

+2 -1
+2 -1
drivers/scsi/lpfc/lpfc_init.c
··· 1795 1795 int 1796 1796 lpfc_online(struct lpfc_hba *phba) 1797 1797 { 1798 - struct lpfc_vport *vport = phba->pport; 1798 + struct lpfc_vport *vport; 1799 1799 struct lpfc_vport **vports; 1800 1800 int i; 1801 1801 1802 1802 if (!phba) 1803 1803 return 0; 1804 + vport = phba->pport; 1804 1805 1805 1806 if (!(vport->fc_flag & FC_OFFLINE_MODE)) 1806 1807 return 0;