diff options
author | brueffer <brueffer@FreeBSD.org> | 2012-07-18 09:06:07 +0000 |
---|---|---|
committer | brueffer <brueffer@FreeBSD.org> | 2012-07-18 09:06:07 +0000 |
commit | 5f97d83a2bb253e5fadfc217cb66c65542557a91 (patch) | |
tree | df08c9aff9e794273e273645387ed244808655da | |
parent | 3b4ff3bafbbc7b96119d505dbddfd3d69f62bf51 (diff) | |
download | FreeBSD-src-5f97d83a2bb253e5fadfc217cb66c65542557a91.zip FreeBSD-src-5f97d83a2bb253e5fadfc217cb66c65542557a91.tar.gz |
Fix a small memory leak in mpssas_get_sata_identify(). The change has been
submitted upstream as well.
Reviewed by: ken, scottl
Obtained from: DragonFly BSD (change df8658e030226dd015cff9749452666d8fe1e87b)
MFC after: 5 days
-rw-r--r-- | sys/dev/mps/mps_sas_lsi.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/mps/mps_sas_lsi.c b/sys/dev/mps/mps_sas_lsi.c index 9cedcd3..4763192 100644 --- a/sys/dev/mps/mps_sas_lsi.c +++ b/sys/dev/mps/mps_sas_lsi.c @@ -796,8 +796,10 @@ mpssas_get_sata_identify(struct mps_softc *sc, u16 handle, if (!buffer) return ENOMEM; - if ((cm = mps_alloc_command(sc)) == NULL) + if ((cm = mps_alloc_command(sc)) == NULL) { + free(buffer, M_MPT2); return (EBUSY); + } mpi_request = (MPI2_SATA_PASSTHROUGH_REQUEST *)cm->cm_req; bzero(mpi_request,sizeof(MPI2_SATA_PASSTHROUGH_REQUEST)); mpi_request->Function = MPI2_FUNCTION_SATA_PASSTHROUGH; |