To avoid the failure of dma_set_max_seg_size(), we should check the return value of the dma_set_max_seg_size(). Signed-off-by: Ma Ke <make_ruc2021@xxxxxxx> --- drivers/dma/mxs-dma.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/dma/mxs-dma.c b/drivers/dma/mxs-dma.c index cfb9962417ef..90cbb9b04b02 100644 --- a/drivers/dma/mxs-dma.c +++ b/drivers/dma/mxs-dma.c @@ -798,7 +798,9 @@ static int mxs_dma_probe(struct platform_device *pdev) mxs_dma->dma_device.dev = &pdev->dev; /* mxs_dma gets 65535 bytes maximum sg size */ - dma_set_max_seg_size(mxs_dma->dma_device.dev, MAX_XFER_BYTES); + ret = dma_set_max_seg_size(mxs_dma->dma_device.dev, MAX_XFER_BYTES); + if (ret) + return ret; mxs_dma->dma_device.device_alloc_chan_resources = mxs_dma_alloc_chan_resources; mxs_dma->dma_device.device_free_chan_resources = mxs_dma_free_chan_resources; -- 2.37.2