-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
realtek-poe almost always fails to configure final ports due to busy system at early boot #13
Comments
Debugging
Ultimately: it seems this is because the MCU just isn't ready at the given point in boot (see below). Solutions
|
I can repro the issue without needing to reboot. It appears problem is related to sending too many packets too fast to the MCU. Eventually it replies with "not ready". I've been experimenting with a mechanism to re-queue failed commands. So far, that's the most promising lead. |
No PR exists yet for this code, but to demo the issue:
After a number of commands, the reply becomes:
Without us sending any more packets, the MCU keeps sending this packet a few times. There isn't any indication that it's ready other than no longer sending this packet. there's no "Okay, I'm ready now message". It's what makes this ordeal so much more fun. |
With #19 in, I suspect the issue of ports not being correctly configured is gone. Quick explanation:I suspect that the MCU has some sort of internal queue for processing requests. We used to send 7 or 8 setup packets for each port. I think we were spamming that queue with setup requests. This wasn't an issue for 8 ports, but when we tripled that to 24, the MCU couldn't handle it. We got the number of packets down significantly. From ~170 to ~60 packets on a 24-port. And I think the MCU can handle this more reasonably. Other failures:If the log shows failures for If the only failures we see in the log are from commands |
Does this still happen with CI57 ? |
Given we haven't seen any complaints about this in the past two weeks, I am closing this as resolved. |
Issue identification
On reboot, I pretty much always see:
The text was updated successfully, but these errors were encountered: