Re: [PATCH 3/4] dpaa_eth: change device used

From: David Miller
Date: Wed Oct 11 2017 - 17:02:11 EST


From: Madalin Bucur <madalin.bucur@xxxxxxx>
Date: Tue, 10 Oct 2017 17:10:17 +0300

> @@ -2696,7 +2681,13 @@ static int dpaa_eth_probe(struct platform_device *pdev)
> int err = 0, i, channel;
> struct device *dev;
>
> - dev = &pdev->dev;
> + /* device used for DMA mapping */
> + dev = pdev->dev.parent;
> + err = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(40));
> + if (err) {
> + dev_err(dev, "dma_coerce_mask_and_coherent() failed\n");
> + goto dev_mask_failed;
> + }
>
> /* Allocate this early, so we can store relevant information in
> * the private area

Since you are moving this code up before the netdev allocation, you must
adjust the failure path goto label used.

Your change as-is will cause an OOPS because we'll pass a NULL pointer
to free_netdev().