Re: [BUG bisect] Missing Micrel driver on VF50 (net: phy: check return code when requesting PHY driver module)

From: Heiner Kallweit
Date: Fri Jan 18 2019 - 16:30:34 EST


On 18.01.2019 21:58, Heiner Kallweit wrote:
> On 18.01.2019 09:48, Krzysztof Kozlowski wrote:
>> On Fri, 18 Jan 2019 at 09:39, Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:
>>>
>>> Hi,
>>>
>>> On today's next (next-20190118) my Colibri VF50 board fails to boot up
>>> from network (DHCP, NFSv4 root). Looks like missing network adapter.
>>> Expected:
>>> [ 3.041773] Micrel KSZ8041 400d1000.ethernet-1:00: attached PHY driver
>>> [Micrel KSZ8041] (mii_bus:phy_addr=400d1000.ethernet-1:00, irq=POLL)
>>>
>>> Result:
>>> [ 15.614964] Root-NFS: no NFS server address
>>> [ 15.619353] VFS: Unable to mount root fs via NFS, trying floppy.
>>> [ 15.626762] VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6
>>> [ 15.634252] Please append a correct "root=" boot option; here are the
>>> available partitions:
>>> [ 15.642791] 0100 16384 ram0
>>> [ 15.642804] (driver?)
>>> [ 15.649076] Kernel panic - not syncing: VFS: Unable to mount root fs
>>> on unknown-block(2,0)
>>> [ 15.657423] ---[ end Kernel panic - not syncing: VFS: Unable to mount
>>> root fs on unknown-block(2,0) ]---
>>>
>>> Bisect pointed to:
>>> net: phy: check return code when requesting PHY driver module
>>
>> I see now in the logs:
>> [ 2.436822] mdio_bus 400d1000.ethernet-1:00: error -2 loading PHY
>> driver module for ID 0x00221513
>> which is kind of misleading. There is no initramfs so there is no
>> usermod library at this point. It is not needed. This seems to break
>> all DHCP/NFS root boots without initrd/initramfs.
>>
> Thanks for the report. Could you please provide your kernel config
> and the syslog of a boot before or w/o the patch in question?
>
> If you boot via nfs then I'd expect that the PHY driver is built-in and
> not a module. Therefore it's not fully clear to me yet why
> request_module() returns -ENOENT.
>
OK, I see. The -ENOENT could refer to the modprobe binary, not the PHY
driver module. Still it would be helpful to see the kernel config and
the requested log.

>> Best regards,
>> Krzysztof
>>
> Heiner
>