Re: [Patch] Dereference in drivers/scsi/lpfc/lpfc_ct.c

From: James Smart
Date: Mon Oct 02 2006 - 11:38:37 EST


ACK - good fix.

-- james s

Eric Sesterhenn wrote:
hi,

if we fail to allocate mp->virt during the first while
loop iteration, mlist is still uninitialized, therefore
we should check if before dereferencing.

Signed-off-by: Eric Sesterhenn <snakebyte@xxxxxx>

--- linux-2.6.18-git16/drivers/scsi/lpfc/lpfc_ct.c.orig 2006-10-01 22:28:37.000000000 +0200
+++ linux-2.6.18-git16/drivers/scsi/lpfc/lpfc_ct.c 2006-10-01 22:29:10.000000000 +0200
@@ -188,7 +188,8 @@ lpfc_alloc_ct_rsp(struct lpfc_hba * phba
if (!mp->virt) {
kfree(mp);
- lpfc_free_ct_rsp(phba, mlist);
+ if (mlist)
+ lpfc_free_ct_rsp(phba, mlist);
return NULL;
}




-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/