[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <36786fc5-c34d-2847-edbb-71e49302ef80@gmail.com>
Date: Sat, 29 Dec 2018 10:33:18 +0100
From: Heiner Kallweit <hkallweit1@...il.com>
To: Florian Fainelli <f.fainelli@...il.com>,
Andrew Lunn <andrew@...n.ch>,
David Miller <davem@...emloft.net>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"Rafael J. Wysocki" <rafael@...nel.org>
Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Norbert Jurkeit <norbert.jurkeit@....de>,
Frank Crawford <frank@...wford.emu.id.au>
Subject: Re: [PATCH net] net: phy: replace preliminary fix for PHY driver
sometimes not binding to the device
On 29.12.2018 03:42, Florian Fainelli wrote:
> Le 12/24/18 à 3:21 AM, Heiner Kallweit a écrit :
>> phy_device_create() uses request_module() to load the PHY driver module
>> based on the PHY ID of the device. There is some timing issue which
>> sometimes prevents the PHY driver to bind to the device. In such cases
>> the genphy driver is used what can cause problems if genphy isn't
>> compatible with the respective PHY.
>> It turned out that the first fix can fix the issue in some but not all
>> cases. Moving the call to device_initialize() before the call to
>> request_module() was reported to fix the issue.
>> I can't explain where the root cause of the issue is and why this fix
>> works. AFAICS device_initialize() just initializes the device struct
>> w/o doing anything that could interfere with e.g. bus_add_driver().
>> This patch removes the first preliminary fix attempt.
>
> Humm but phy_device is comprised of a mdio_device on which the actual
> matching is done, so you do have to call device_initialize() first in
> order for the phy_device instance to have its companion mdio_device's
> kobject to be properly initialized.
>
> Out of curiosity, do any of the people who tested that change have the
> ability to run a kernel with list/kobject debugging enabled so we can
> learn a bit more about the problematic code path?
>>
One or two can build a kernel and test if they are given a patch and
instructions. The other option is to ask Hans from Redhat to build a
test kernel and distribute it as rpm to users who want to test.
See also history of the bug ticket.
Last status is that I provided a patch which creates some debug output
and Hans built a test kernel. However most likely we will get feedback
only beginning of January when more people are back from holidays.
>> Reference:
>> https://bugzilla.redhat.com/show_bug.cgi?id=1650984
>>
Powered by blists - more mailing lists