diff --git a/sys/cam/scsi/scsi_xpt.c b/sys/cam/scsi/scsi_xpt.c --- a/sys/cam/scsi/scsi_xpt.c +++ b/sys/cam/scsi/scsi_xpt.c @@ -2034,9 +2034,9 @@ printf( "scsi_scan_bus: xpt_create_path failed with status %#x, bus scan halted\n", status); + xpt_free_ccb((union ccb *)scan_info->cpi); free(scan_info, M_CAMXPT); request_ccb->ccb_h.status = status; - xpt_free_ccb(work_ccb); xpt_done(request_ccb); break; }