MLK-11911-2 mxc IPUv3: device: Correct bailout path for the ioctrl IPU_ALLOC
We should do the bailout dance correctly for the ioctrl IPU_ALLOC:
- Free the mem pointer.
- Free the DMA.
- Delete the mem->list from the ipu_alloc_list.
The potential memory leakage issue on the mem pointer is reported by Coverity:
if (get_user(size, argp))
Resource leak (RESOURCE_LEAK)
leaked_storage: Variable mem going out of scope leaks the storage it points to.
return -EFAULT;
Signed-off-by: Liu Ying <Ying.Liu@freescale.com>