summaryrefslogtreecommitdiffstats
path: root/sys/cam
diff options
context:
space:
mode:
authorgibbs <gibbs@FreeBSD.org>1999-05-04 19:24:21 +0000
committergibbs <gibbs@FreeBSD.org>1999-05-04 19:24:21 +0000
commit311e53d29452a8124431caa920f762e1e2aaab04 (patch)
tree15577c54bec754e1ee4056ff3085c00a6c0af179 /sys/cam
parentfe0b12fd7bd58b5a3d78ead12c62004e657d11fe (diff)
downloadFreeBSD-src-311e53d29452a8124431caa920f762e1e2aaab04.zip
FreeBSD-src-311e53d29452a8124431caa920f762e1e2aaab04.tar.gz
Don't touch a path after we've free'd it.
Diffstat (limited to 'sys/cam')
-rw-r--r--sys/cam/scsi/scsi_target.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/cam/scsi/scsi_target.c b/sys/cam/scsi/scsi_target.c
index 66028f1..bb2bf12 100644
--- a/sys/cam/scsi/scsi_target.c
+++ b/sys/cam/scsi/scsi_target.c
@@ -25,7 +25,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: scsi_target.c,v 1.8 1999/02/11 07:08:58 gibbs Exp $
+ * $Id: scsi_target.c,v 1.9 1999/03/05 23:25:10 gibbs Exp $
*/
#include <stddef.h> /* For offsetof */
@@ -638,9 +638,6 @@ targallocinstance(struct ioc_alloc_unit *alloc_unit)
0, &cpi);
fail:
- if (free_path_on_return != 0)
- xpt_free_path(path);
-
switch (status) {
case CAM_REQ_CMP:
{
@@ -668,6 +665,10 @@ fail:
error = ENODEV;
break;
}
+
+ if (free_path_on_return != 0)
+ xpt_free_path(path);
+
return (error);
}
OpenPOWER on IntegriCloud