diff --git a/qla_isp/linux/isp_linux.c b/qla_isp/linux/isp_linux.c index e457c181f..f4822c623 100644 --- a/qla_isp/linux/isp_linux.c +++ b/qla_isp/linux/isp_linux.c @@ -1,4 +1,4 @@ -/* $Id: isp_linux.c,v 1.221 2008/01/16 20:33:48 mjacob Exp $ */ +/* $Id: isp_linux.c,v 1.222 2008/01/18 20:19:04 mjacob Exp $ */ /* * Copyright (c) 1997-2007 by Matthew Jacob * All rights reserved. @@ -3352,16 +3352,18 @@ isp_async(ispsoftc_t *isp, ispasync_t cmd, ...) } isp->isp_osinfo.nfreelist = ins->notify.nt_lreserved; MEMZERO(&ins->notify, sizeof (tmd_notify_t)); + lp = NULL; for (chan = 0; chan < isp->isp_nchan; chan++) { if (isp_find_pdb_by_loopid(isp, chan, abts->abts_nphdl, &lp)) { break; } } - if (chan == isp->isp_nchan) { + if (lp == NULL) { isp_prt(isp, ISP_LOGTINFO, "cannot find WWN for N-port handle 0x%x for ABTS", abts->abts_nphdl); ins->notify.nt_iid = INI_ANY; + } else { + ins->notify.nt_iid = lp->port_wwn; } - ins->notify.nt_iid = lp->port_wwn; MEMCPY(ins->qentry, qe, QENTRY_LEN); ins->qevalid = 1; ins->notify.nt_hba = isp; diff --git a/qla_isp/linux/scsi_target.c b/qla_isp/linux/scsi_target.c index 9dff5a890..d3e70c6c5 100644 --- a/qla_isp/linux/scsi_target.c +++ b/qla_isp/linux/scsi_target.c @@ -1,4 +1,4 @@ -/* $Id: scsi_target.c,v 1.78 2007/12/30 20:23:18 mjacob Exp $ */ +/* $Id: scsi_target.c,v 1.80 2008/01/18 20:18:02 mjacob Exp $ */ /* * Copyright (c) 1997-2007 by Matthew Jacob * All rights reserved. @@ -73,6 +73,7 @@ #include #include #include +#include #include #include #include