Opened 5 days ago
Last modified 4 days ago
#19096 new bug
Some findings about using RTL8111/8168/8411 ethernet controller with Haiku
Reported by: | zhaom | Owned by: | nobody |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Drivers/Network/rtl81xx | Version: | R1/beta5 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
Thinkpad T14 with Haiku R1Beta5 is used.
RTL8111/8168/8411 ethernet controller is known to have some problems with Haiku[1][2] but it seems that there hasn't been a solution to solve that. If I boot my laptop directly the ethernet won't work. I found that, however, if I enter the BIOS menu, press F12 to enter the menu of temporary devices, and continue booting without doing anything, my ethernet can connect correctly. I attach the boot logs of two cases, one with good ethernet connection and the other one without. I hope these can help to improve Haiku. If any further information is needed please leave a comment.
Thank you.
[1]: https://discuss.haiku-os.org/t/rtl81xx-unable-to-get-ethernet-working-at-all/13802
[2]: https://hardware.besly.de/index.php?hardware=Network_Cards
Attachments (6)
Change History (14)
by , 5 days ago
Attachment: | good_conn_syslog.txt added |
---|
follow-up: 2 comment:1 by , 5 days ago
Component: | - General → Drivers/Network/rtl81xx |
---|
I don't see any rtl81xx errors in either syslog, they look about the same (the first one is cut off, however.)
by , 5 days ago
Attachment: | good_conn_with_ethernet_cable.txt added |
---|
Booting while ethernet is pluginned. There is ethernet connectivity.
by , 5 days ago
Attachment: | bad_conn_with_ethernet_cable.txt added |
---|
Booting while ethernet is pluginned. There is no ethernet connectivity.
comment:2 by , 5 days ago
Replying to waddlesplash:
I don't see any rtl81xx errors in either syslog, they look about the same (the first one is cut off, however.)
I think that is because I forgot to clean log after every boot. I have uploaded other two. I tried to read them but I haven't found anything useful (from my point of view). I find that there are some errors in the log. Some 'KERN: 's are randomly logged. You can try to search with 'PCKERN: I' in good_conn_with_ethernet_cable.txt
. Maybe data race? Should go more in depth?
comment:3 by , 4 days ago
There are at least some errors in the "bad" one now, but they're just DHCP not receiving any replies. Everything else looks the same.
Is there some way you could try and assign a static IP and see if it works anyway, and whether the problem is just your DHCP server on your router? You can also try killing net_server (it will be automatically restarted) to see if the DHCP sending logic is somehow getting messed up randomly.
by , 4 days ago
Attachment: | bad_conn_after_kill_net_server.txt added |
---|
Killing net_server and connect ethernet cable but no ethernet connectivity
by , 4 days ago
Attachment: | good_conn_after_kill_net_server.txt added |
---|
Killing net_server, connect ethernet cable and get ethernet connected
comment:5 by , 4 days ago
Why does it try to send DHCP_REQUEST when no DHCP_OFFER is provided? [1]
[1]:https://dev.haiku-os.org/attachment/ticket/19096/bad_conn_after_kill_net_server.txt#L23
comment:6 by , 4 days ago
I use another computer to spoof the network. With the good ethernet connectivity boots, I can capture DHCP_DISCOVER and DHCP_REQUEST. But with the bad ones, none of them is captured.
follow-up: 8 comment:7 by , 4 days ago
Looks like for "Client-server interaction - reusing a previously allocated network address" https://datatracker.ietf.org/doc/html/rfc2131#section-3.2 no DHCP_OFFER is required.
comment:8 by , 4 days ago
Replying to korli:
Looks like for "Client-server interaction - reusing a previously allocated network address" https://datatracker.ietf.org/doc/html/rfc2131#section-3.2 no DHCP_OFFER is required.
Yes it is like caching the address. The client will send a REQUEST directly if it once had an address. But it is quite weird that DHCP_DISCOVER is not captured.
boot syslog with good ethernet connect