crypto: qat - add check for null pointer

Add null pointer check when freeing the memory for firmware.

Signed-off-by: Jack Xu <jack.xu@intel.com>
Co-developed-by: Wojciech Ziemba <wojciech.ziemba@intel.com>
Signed-off-by: Wojciech Ziemba <wojciech.ziemba@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Jack Xu 2020-11-06 19:28:03 +08:00 committed by Herbert Xu
parent 4f1e941560
commit 912eebeb72

View File

@ -1233,11 +1233,15 @@ static int qat_uclo_simg_alloc(struct icp_qat_fw_loader_handle *handle,
static void qat_uclo_simg_free(struct icp_qat_fw_loader_handle *handle, static void qat_uclo_simg_free(struct icp_qat_fw_loader_handle *handle,
struct icp_firml_dram_desc *dram_desc) struct icp_firml_dram_desc *dram_desc)
{ {
dma_free_coherent(&handle->pci_dev->dev, if (handle && dram_desc && dram_desc->dram_base_addr_v) {
(size_t)(dram_desc->dram_size), dma_free_coherent(&handle->pci_dev->dev,
dram_desc->dram_base_addr_v, (size_t)(dram_desc->dram_size),
dram_desc->dram_bus_addr); dram_desc->dram_base_addr_v,
memset(dram_desc, 0, sizeof(*dram_desc)); dram_desc->dram_bus_addr);
}
if (dram_desc)
memset(dram_desc, 0, sizeof(*dram_desc));
} }
static void qat_uclo_ummap_auth_fw(struct icp_qat_fw_loader_handle *handle, static void qat_uclo_ummap_auth_fw(struct icp_qat_fw_loader_handle *handle,
@ -1245,12 +1249,14 @@ static void qat_uclo_ummap_auth_fw(struct icp_qat_fw_loader_handle *handle,
{ {
struct icp_firml_dram_desc dram_desc; struct icp_firml_dram_desc dram_desc;
dram_desc.dram_base_addr_v = *desc; if (*desc) {
dram_desc.dram_bus_addr = ((struct icp_qat_auth_chunk *) dram_desc.dram_base_addr_v = *desc;
(*desc))->chunk_bus_addr; dram_desc.dram_bus_addr = ((struct icp_qat_auth_chunk *)
dram_desc.dram_size = ((struct icp_qat_auth_chunk *) (*desc))->chunk_bus_addr;
(*desc))->chunk_size; dram_desc.dram_size = ((struct icp_qat_auth_chunk *)
qat_uclo_simg_free(handle, &dram_desc); (*desc))->chunk_size;
qat_uclo_simg_free(handle, &dram_desc);
}
} }
static int qat_uclo_map_auth_fw(struct icp_qat_fw_loader_handle *handle, static int qat_uclo_map_auth_fw(struct icp_qat_fw_loader_handle *handle,