svn commit: r284800 - stable/10/sys/dev/isp
Alexander Motin
mav at FreeBSD.org
Thu Jun 25 07:23:36 UTC 2015
Author: mav
Date: Thu Jun 25 07:23:35 2015
New Revision: 284800
URL: https://svnweb.freebsd.org/changeset/base/284800
Log:
MFC r284540:
In case of target mode disable at least ISP2532 return invalid zero
ct_rxid value on CTIO completion. Try to workaround that using tag_id
from the CCB, pointed by still valid ct_syshandle.
I don't know whether this is valid fix or dirty hack, but considering that
alternative is indefinitely stuck command -- it worth trying.
Modified:
stable/10/sys/dev/isp/isp_freebsd.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/dev/isp/isp_freebsd.c
==============================================================================
--- stable/10/sys/dev/isp/isp_freebsd.c Thu Jun 25 07:22:37 2015 (r284799)
+++ stable/10/sys/dev/isp/isp_freebsd.c Thu Jun 25 07:23:35 2015 (r284800)
@@ -2914,6 +2914,14 @@ isp_handle_platform_ctio(ispsoftc_t *isp
atp = isp_find_atpd(isp, tptr, ((ct_entry_t *)arg)->ct_fwhandle);
}
if (atp == NULL) {
+ /*
+ * In case of target mode disable at least ISP2532 return
+ * invalid zero ct_rxid value. Try to workaround that using
+ * tag_id from the CCB, pointed by valid ct_syshandle.
+ */
+ atp = isp_find_atpd(isp, tptr, ccb->csio.tag_id);
+ }
+ if (atp == NULL) {
rls_lun_statep(isp, tptr);
isp_prt(isp, ISP_LOGERR, "%s: cannot find adjunct for %x after I/O", __func__, ccb->csio.tag_id);
return;
More information about the svn-src-stable
mailing list