[BUG] Ethernet broken on rockpro64 by commit 2d26f6e39afb ("net: stmmac: dwmac-rk: fix unbalanced pm_runtime_enable warnings")

Alexandru Elisei alexandru.elisei at arm.com
Tue Sep 28 02:25:59 PDT 2021


(Sorry I'm sending this to the wrong person, this is what I got
scripts/get_maintainer.pl for the file touched by the commit)

After commit 2d26f6e39afb ("net: stmmac: dwmac-rk: fix unbalanced
pm_runtime_enable warnings"), the network card on my rockpro64-v2 was left unable
to get a DHCP lease from the network. The offending commit was found by bisecting
the kernel; I tried reverting the commit from current master (commit 0513e464f900
("Merge tag 'perf-tools-fixes-for-v5.15-2021-09-27' of
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux")) and the network card
was working as expected.

It goes without saying that I can help with testing the fix and further diagnosing.

This is what I get with a kernel built from master (so with the commit *not*
reverted). Full dmesg at [1].

root at rockpro ~ # uname -a
Linux rockpro 5.15.0-rc3-00068-g0513e464f900 #82 SMP PREEMPT Tue Sep 28 10:01:18
BST 2021 aarch64 GNU/Linux
root at rockpro ~ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether ce:71:c1:ee:97:e8 brd ff:ff:ff:ff:ff:ff
root at rockpro ~ # ip l set eth0 up
[   30.325316] rk_gmac-dwmac fe300000.ethernet eth0: PHY [stmmac-0:00] driver
[Generic PHY] (irq=POLL)
[   30.330184] rk_gmac-dwmac fe300000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0
[   30.331626] rk_gmac-dwmac fe300000.ethernet eth0: No Safety Features support found
[   30.332312] rk_gmac-dwmac fe300000.ethernet eth0: PTP not supported by HW
[   30.333258] rk_gmac-dwmac fe300000.ethernet eth0: configuring for phy/rgmii
link mode
root at rockpro ~ # [   34.431526] rk_gmac-dwmac fe300000.ethernet eth0: Link is Up -
1Gbps/Full - flow control rx/tx

root at rockpro ~ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group
default qlen 1000
    link/ether ce:71:c1:ee:97:e8 brd ff:ff:ff:ff:ff:ff
root at rockpro ~ # dhclient --version
isc-dhclient-4.4.2-P1
root at rockpro ~ # dhclient -v eth0
Internet Systems Consortium DHCP Client 4.4.2-P1
Copyright 2004-2021 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/ce:71:c1:ee:97:e8
Sending on   LPF/eth0/ce:71:c1:ee:97:e8
Sending on   Socket/fallback
DHCPREQUEST for 192.168.0.43 on eth0 to 255.255.255.255 port 67
DHCPREQUEST for 192.168.0.43 on eth0 to 255.255.255.255 port 67
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 15
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 9
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 12
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 15
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 2
No DHCPOFFERS received.
Trying recorded lease 192.168.0.43
ping: socket: Address family not supported by protocol
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.

--- 192.168.0.1 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms

No working leases in persistent database - sleeping.

With the commit reverted:

root at rockpro ~ # uname -a
Linux rockpro 5.15.0-rc3-00069-g0fe5cad8ba7d #81 SMP PREEMPT Tue Sep 28 09:55:12
BST 2021 aarch64 GNU/Linux
root at rockpro ~ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether ce:71:c1:ee:97:e8 brd ff:ff:ff:ff:ff:ff
root at rockpro ~ # ip l set eth0 up
[   38.314593] rk_gmac-dwmac fe300000.ethernet eth0: PHY [stmmac-0:00] driver
[Generic PHY] (irq=POLL)
[   38.320569] rk_gmac-dwmac fe300000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0
[   38.321972] rk_gmac-dwmac fe300000.ethernet eth0: No Safety Features support found
[   38.322709] rk_gmac-dwmac fe300000.ethernet eth0: PTP not supported by HW
[   38.323696] rk_gmac-dwmac fe300000.ethernet eth0: configuring for phy/rgmii
link mode
root at rockpro ~ # [   42.399684] rk_gmac-dwmac fe300000.ethernet eth0: Link is Up -
1Gbps/Full - flow control rx/tx

root at rockpro ~ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group
default qlen 1000
    link/ether ce:71:c1:ee:97:e8 brd ff:ff:ff:ff:ff:ff
root at rockpro ~ # dhclient --version
isc-dhclient-4.4.2-P1
root at rockpro ~ # dhclient -v eth0
Internet Systems Consortium DHCP Client 4.4.2-P1
Copyright 2004-2021 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/ce:71:c1:ee:97:e8
Sending on   LPF/eth0/ce:71:c1:ee:97:e8
Sending on   Socket/fallback
DHCPREQUEST for 192.168.0.43 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.0.43 from 192.168.0.1
bound to 192.168.0.43 -- renewal in 40992 seconds.

Full dmesg at [2]. All pastebins will expire after 6 months.

[1] https://pastebin.com/PmSrAZak

[2] https://pastebin.com/D1DdK0JB

Thanks,

Alex




More information about the linux-arm-kernel mailing list