-
由 Pawel Laszczak 提交于
This function uses "One Function Cleans up Everything" style and that's basically impossible to do correctly. It's cleaner to write it with "clean up the most recent allocation". Patch fixes two isues: 1. If pdev->dcbaa = dma_alloc_coherent() fails then that leads to a NULL dereference inside the cdnsp_free_priv_device() function. 2. if cdnsp_alloc_priv_device() fails that leads to a double free because we free pdev->out_ctx.bytes in several places. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NPawel Laszczak <pawell@cadence.com> Reported-by: NDan Carpenter <dan.carpenter@oracle.com> Tested-by: NPawel Laszczak <pawell@cadence.com> Signed-off-by: NPeter Chen <peter.chen@nxp.com>
e2d60f8c