Re: [PATCH] net: usb: lan78xx: Use phy_mac_interrupt() for interrupt handling

Daniel Wagner
2019-10-24T14:12:32Z

On Thu, Oct 24, 2019 at 01:06:10PM +0200, Daniel Wagner wrote:
> [ 3.719647] lan78xx 1-1.1.1:1.0 (unnamed net_device) (uninitialized): deferred multicast write 0x00007ca0
> [ 3.861125] lan78xx 1-1.1.1:1.0 (unnamed net_device) (uninitialized): No External EEPROM. Setting MAC Speed
> [ 3.872500] libphy: lan78xx-mdiobus: probed
> [ 3.883927] lan78xx 1-1.1.1:1.0 (unnamed net_device) (uninitialized): registered mdiobus bus usb-001:004
> [ 3.893600] lan78xx 1-1.1.1:1.0 (unnamed net_device) (uninitialized): phydev->irq = 79
> [ 4.274367] random: crng init done
> [ 4.929478] lan78xx 1-1.1.1:1.0 eth0: receive multicast hash filter
> [ 4.935922] lan78xx 1-1.1.1:1.0 eth0: deferred multicast write 0x00007ca2
> [ 6.537962] lan78xx 1-1.1.1:1.0 eth0: PHY INTR: 0x00020000
> [ 6.549129] lan78xx 1-1.1.1:1.0 eth0: speed: 1000 duplex: 1 anadv: 0x05e1 anlpa: 0xc1e1
> [ 6.557293] lan78xx 1-1.1.1:1.0 eth0: rx pause disabled, tx pause disabled
> [ 6.572581] Sending DHCP requests ..., OK
> [ 12.200693] IP-Config: Got DHCP answer from 192.168.19.2, my address is 192.168.19.53
> [ 12.208654] IP-Config: Complete:
> [ 12.211929] device=eth0, hwaddr=b8:27:eb:85:c7:c9, ipaddr=192.168.19.53, mask=255.255.255.0, gw=192.168.19.1
> [ 12.222350] host=192.168.19.53, domain=, nis-domain=(none)
> [ 12.228364] bootserver=192.168.19.2, rootserver=192.168.19.2, rootpath=
> [ 12.228369] nameserver0=192.168.19.2
> [ 12.239812] ALSA device list:
> [ 12.242839] No soundcards found.
> [ 12.256896] VFS: Mounted root (nfs filesystem) on device 0:19.
> [ 12.263501] devtmpfs: mounted
> [ 12.273037] Freeing unused kernel memory: 5504K
> [ 12.277769] Run /sbin/init as init process

Sebastians suggested to try the RPi kernel. The rpi-5.2.y kernel
behaves exactly the same. That is one PHY interrupt and later on NFS
timeouts.

According their website the current shipped RPi kernel is in version
4.18. Here is what happends with rpi-4.18.y:

[ 3.359058] lan78xx 1-1.1.1:1.0 (unnamed net_device) (uninitialized): deferred multicast write 0x00007ca0
[ 3.500910] lan78xx 1-1.1.1:1.0 (unnamed net_device) (uninitialized): No External EEPROM. Setting MAC Speed
[ 3.517693] libphy: lan78xx-mdiobus: probed
[ 3.521970] lan78xx 1-1.1.1:1.0 (unnamed net_device) (uninitialized): registered mdiobus bus usb-001:004
[ 3.532219] lan78xx 1-1.1.1:1.0 eth0: phydev->irq = 150
[ 3.843609] lan78xx 1-1.1.1:1.0 eth0: receive multicast hash filter
[ 3.850085] lan78xx 1-1.1.1:1.0 eth0: deferred multicast write 0x00007ca2
[ 3.876059] random: crng init done
[ 6.563736] lan78xx 1-1.1.1:1.0 eth0: PHY INTR: 0x00020000
[ 6.569331] lan78xx 1-1.1.1:1.0 eth0: PHY INTR: 0x00020000
[ 6.582759] lan78xx 1-1.1.1:1.0 eth0: speed: 1000 duplex: 1 anadv: 0x05e1 anlpa: 0xc1e1
[ 6.590889] lan78xx 1-1.1.1:1.0 eth0: rx pause disabled, tx pause disabled
[ 6.603222] Sending DHCP requests ..
[ 12.323251] Voltage normalised (0x00000000)
[ 13.723234] ., OK
[ 13.765259] IP-Config: Got DHCP answer from 192.168.19.2, my address is 192.168.19.53
[ 13.773250] IP-Config: Complete:
[ 13.776552] device=eth0, hwaddr=b8:27:eb:85:c7:c9, ipaddr=192.168.19.53, mask=255.255.255.0, gw=192.168.19.1
[ 13.786990] host=192.168.19.53, domain=, nis-domain=(none)
[ 13.793029] bootserver=192.168.19.2, rootserver=192.168.19.2, rootpath=
[ 13.793035] nameserver0=192.168.19.2

There are no NFS timeouts and commands like 'apt update' work reasoble
fast. So no long delays or hangs. Time to burn this hardware.