Re: Infinite recursion in device_reorder_to_tail() due to circular device links

From: Peter Chen
Date: Wed Jan 13 2021 - 20:47:42 EST


On 21-01-13 12:18:35, Stephan Gerhold wrote:
>
> Also, on a completely different note I looked again at the chipidea USB
> driver that produces this situation. To request the PHY (which ends up
> in the circular device link) it does:
>
> /* Look for a generic PHY first */
> ci->phy = devm_phy_get(dev->parent, "usb-phy");
>
> To me it doesn't really seem great to use the devm_* helpers on the
> parent device either, so I will check if I can refactor this somehow.
> Perhaps this situation can be prevented entirely.
>

Hi Stephan,

You could try to get the PHY at parent driver
(drivers/usb/chipidea/ci_hdrc_msm.c) to see the difference.

--

Thanks,
Peter Chen