Commits
Peter Ujfalusi committed af1a60721bf
crypto: sa2ul: Make sure that dst buffer size is correct for sa_aead The crypto testmgr generates tests for out of place operations when the destination sgl is not correctly set up to the exact size we will need for the transfer. The reason for this is that the last sg which is needed to cover the transfer length is not aligned with the transfer. This can lead to an error within sa2ul or we can hit a 'feature' in UDMA. sa2ul sends back the same amount of data it has received, if the dst length ends up more than what is needed then UDMA will complete the packet and we will see that not the whole requested rx bytes has been received (short packet). Works most of the cases with UDMA, but would fail with other DMAs... But, if the diff between the requested length and the real length is the same as the sg_dma_len of the _last_ sg in the list then the packet for this sg remains in the ring while the transfer is completed. First part of the next RX is going to go into this stale buffer and things can not be predicted from this point. Use split_sg to split out the important part of the sg list for src and dst to ensure that the length are matching and we have correct setup. While here, fix a memory leak due to non implemented cleanup for sa_aead Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>