• Antonio Borneo's avatar
    dmaengine: k3dma: fix double free of descriptor · 132b473c
    Antonio Borneo authored
    Commit 36387a2b ("k3dma: Fix
    memory handling in preparation for cyclic mode") adds code
    to free the descriptor in ds_done.
    
    In cyclic mode, ds_done is never used and it's always NULL,
    so the added code is not executed.
    
    In non-cyclic mode, ds_done is used as a flag: when not NULL
    it signals that the descriptor has been consumed. No need to
    free it because it would be free by vchan_complete().
    
    The fix takes back the code changed by the commit above:
    - remove the free on the descriptor;
    - initialize ds_done to NULL for the next run.
    Signed-off-by: default avatarAntonio Borneo <borneo.antonio@gmail.com>
    Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
    132b473c
k3dma.c 23.8 KB