• A
    dmaengine: xilinx-vdma: add some sanity checks · f67c3bda
    Arnd Bergmann 提交于
    The newly added xilinx_dma_prep_dma_cyclic function sometimes causes
    a gcc warning about the use of the segment function in case
    we never run into the inner loop of the function:
    
    dma/xilinx/xilinx_vdma.c: In function 'xilinx_dma_prep_dma_cyclic':
    dma/xilinx/xilinx_vdma.c:1808:23: error: 'segment' may be used uninitialized in this function [-Werror=maybe-uninitialized]
       segment->hw.control |= XILINX_DMA_BD_SOP;
    
    This can only happen if the period len is zero (which would cause other
    problems earlier), or if the buffer is shorter than a period. Neither
    of them should ever happen, but by adding an explicit check for these two
    cases, we can abort in a more controlled way, and the compiler is
    able to see that we never use uninitialized data.
    Signed-off-by: NArnd Bergmann <arnd@arndb.de>
    Signed-off-by: NVinod Koul <vinod.koul@intel.com>
    f67c3bda
xilinx_vdma.c 66.6 KB