Subject: Re: Linux kernel hangs if using RV1108 with MSZ8863 switch with two ports connected

From: Andrew Lunn <[email-masked]>
Date: Sun, 18 Nov 2018 19:12:30 +0100

> The kernel starts booting normally and then hangs like this when two
> Ethernet cables are connected to the KSZ8863 switch:
> http://dark-code.bulix.org/3xexu5-507563
> 
> This has the lock detection, inside kernel hacking, enabled.

Maybe turn on all the hung-task debug and magic key support.  With
magic key, you might be able to get a backtrace of where it is
spinning.

Maybe also add #define DEBUG at the top of drivers/net/phy/phy.c.
Does it hang during a PHY state transition?

Maybe both PHYs are interrupting at the same time, and the interrupt
code is broken?

Maybe look at the switch driver and see if there is any code which is
executed on link up. Put some printk() in there.

If you PHYs are using interrupt mode, maybe disable that and use
polling.

Do you know if this ever worked properly before? If you know when it
did work, you can do a git bisect to narrow it down to the one patch
which broke it..

Basically, at the moment, you just need to try lots of things, to
narrow it down.

       Andrew