[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a8a3e849-bef9-4320-8b32-71d79afbab87@linux.dev>
Date: Mon, 23 Jun 2025 14:48:53 -0400
From: Sean Anderson <sean.anderson@...ux.dev>
To: Andrew Lunn <andrew@...n.ch>
Cc: Radhey Shyam Pandey <radhey.shyam.pandey@....com>,
Andrew Lunn <andrew+netdev@...n.ch>, "David S . Miller"
<davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
netdev@...r.kernel.org, Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Michal Simek <michal.simek@....com>, Saravana Kannan <saravanak@...gle.com>,
Leon Romanovsky <leon@...nel.org>, Dave Ertman <david.m.ertman@...el.com>,
linux-kernel@...r.kernel.org, Ira Weiny <ira.weiny@...el.com>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH net 4/4] net: axienet: Split into MAC and MDIO drivers
On 6/23/25 14:27, Andrew Lunn wrote:
> On Mon, Jun 23, 2025 at 11:16:08AM -0400, Sean Anderson wrote:
>> On 6/21/25 03:33, Andrew Lunn wrote:
>> > On Thu, Jun 19, 2025 at 04:05:37PM -0400, Sean Anderson wrote:
>> >> Returning EPROBE_DEFER after probing a bus may result in an infinite
>> >> probe loop if the EPROBE_DEFER error is never resolved.
>> >
>> > That sounds like a core problem. I also thought there was a time
>> > limit, how long the system will repeat probes for drivers which defer.
>> >
>> > This seems like the wrong fix to me.
>>
>> I agree. My first attempt to fix this did so by ignoring deferred probes
>> from child devices, which would prevent "recursive" loops like this one
>> [1]. But I was informed that failing with EPROBE_DEFER after creating a
>> bus was not allowed at all, hence this patch.
>
> O.K. So why not change the order so that you know you have all the
> needed dependencies before registering the MDIO bus?
>
> Quoting your previous email:
>
>> Returning EPROBE_DEFER after probing a bus may result in an infinite
>> probe loop if the EPROBE_DEFER error is never resolved. For example,
>> if the PCS is located on another MDIO bus and that MDIO bus is
>> missing its driver then we will always return EPROBE_DEFER.
>
> Why not get a reference on the PCS device before registering the MDIO
> bus?
Because the PCS may be on the MDIO bus. This is probably the most-common
case.
--Sean
Powered by blists - more mailing lists