Date: Thu, 26 Sep 2019 23:27:24 +0000 (UTC) From: Alexander Motin <mav@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-releng@freebsd.org Subject: svn commit: r352779 - releng/12.1/sys/cam/scsi Message-ID: <201909262327.x8QNROan038579@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: mav Date: Thu Sep 26 23:27:24 2019 New Revision: 352779 URL: https://svnweb.freebsd.org/changeset/base/352779 Log: MFS r352772: MFC r349342 (by imp): Use the cam_ed copy of ata_params rather than malloc and freeing memory for it. This reaches into internal bits of xpt a little, and I'll clean that up later. Reviewed by: imp Approved by: re (gjb) Modified: releng/12.1/sys/cam/scsi/scsi_da.c Directory Properties: releng/12.1/ (props changed) Modified: releng/12.1/sys/cam/scsi/scsi_da.c ============================================================================== --- releng/12.1/sys/cam/scsi/scsi_da.c Thu Sep 26 21:12:47 2019 (r352778) +++ releng/12.1/sys/cam/scsi/scsi_da.c Thu Sep 26 23:27:24 2019 (r352779) @@ -64,6 +64,9 @@ __FBSDID("$FreeBSD$"); #include <cam/cam_ccb.h> #include <cam/cam_periph.h> #include <cam/cam_xpt_periph.h> +#ifdef _KERNEL +#include <cam/cam_xpt_internal.h> +#endif /* _KERNEL */ #include <cam/cam_sim.h> #include <cam/cam_iosched.h> @@ -3598,16 +3601,8 @@ out: break; } - ata_params = (struct ata_params*) - malloc(sizeof(*ata_params), M_SCSIDA,M_NOWAIT|M_ZERO); + ata_params = &periph->path->device->ident_data; - if (ata_params == NULL) { - xpt_print(periph->path, "Couldn't malloc ata_params " - "data\n"); - /* da_free_periph??? */ - break; - } - scsi_ata_identify(&start_ccb->csio, /*retries*/da_retry_count, /*cbfcnp*/dadone_probeata, @@ -5276,7 +5271,6 @@ dadone_probeata(struct cam_periph *periph, union ccb * } } - free(ata_params, M_SCSIDA); if ((softc->zone_mode == DA_ZONE_HOST_AWARE) || (softc->zone_mode == DA_ZONE_HOST_MANAGED)) { /*
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201909262327.x8QNROan038579>