On Sun, Apr 18, 2021 at 08:14:41AM +0000, Alexander Egorenkov wrote: > If CONFIG_NEED_SG_DMA_LENGTH is NOT enabled then sg_dma_len() is an alias > for the length field in a SGL. In that case sg_split() wrongly resets > the length of split SGLs to zero after it was set correctly before.
Why is this routine messing with sg_dma_address and sg_dma_lensg_dma_lensg_dma_len at all? This whole sg_spli() routine seems rather dangerous because ownership and state of the DMA mapping is entirely unclear.

