Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Setting MTU on interface in down state freezes system
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
desooo
n00b
n00b


Joined: 19 Mar 2023
Posts: 2

PostPosted: Sun Mar 19, 2023 9:53 am    Post subject: Setting MTU on interface in down state freezes system Reply with quote

Hello people,
I encountered the strangest issue I ever experienced so far: When I set the MTU on an interface which is down, my system freezes completely after around 10 seconds.
Also in about 10% of the freezes my system will shutdown and reboot right away.

I can reproduce it like this:

Code:
ip link set eno1 down
ip link set eno1 mtu 1400


It works if the interface is up though.

systemd-networkd triggers the same issue on a fresh system boot, when I set:
Code:
[Link]
MTUBytes=1400


The value of the MTU does not matter either, everything between 1400 an 1600 triggers the same system freeze.

I have a Intel I226-V (rev 06) Ethernet controller on an ASUS ROG STRIX B760-F GAMING WIFI board, issue happens on 5.15.102-gentoo-dist and 6.1.19-gentoo-dist kernels (and on my self compiled kernel, see below).

I even did some amateur debugging by littering the kernel code with printk and could narrow down the line where the freeze occurs:

It goes from here and freezes somewhere in this wrfl() function. Sadly that is as far as my C knowledge could get me.

The freeze is so bad that I don't get any more kernel / journal messages or logs and even my zsh history corrupts from time to time 8O.
Sysreq could not save me either, only a hardware reset worked so far.

My current workaround is to set the MTU after systemd-networkd brought the interfaces up:

Code:
systemctl edit systemd-networkd


Code:
[Service]
ExecStartPost=ip link set eno1 mtu 1400


Is this a kernel bug or is my mainboard garbage?
Is there anyone else with a Intel I226-V Ethernet controller who could try to reproduce it?

Thanks for reading this :oops:
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21633

PostPosted: Sun Mar 19, 2023 4:09 pm    Post subject: Reply with quote

I would assume hardware first, on the grounds that this seems like a fairly reasonable thing for people to do, and if a kernel bug was at fault, it would have been reported. It's possible that you're just the first to find a kernel bug, though. wrfl is a macro that expands to a call to igb_rd32. In turn, that function reads a value from the hardware and returns it. You could try adding more logging there, but the function is so simple that I do not see how this can fail unless reading a hardware register hangs.

If you trigger this while at a text console, does the kernel print anything useful before the system hangs?

Generally, sysrq should work unless the kernel has panicked or the hardware has stopped running Linux. I have seen boards that would fail hard enough that the kernel stopped running.

Has this system ever been able to do this successfully?
Back to top
View user's profile Send private message
desooo
n00b
n00b


Joined: 19 Mar 2023
Posts: 2

PostPosted: Sun Mar 19, 2023 6:21 pm    Post subject: Reply with quote

Hu wrote:
If you trigger this while at a text console, does the kernel print anything useful before the system hangs?


No, only thing I saw were my own printk statements right before the wrfl() call.

Hu wrote:
Has this system ever been able to do this successfully?


No, I built the computer about a week ago and started changing the MTU just yesterday.

I also updated the BIOS and Intel ME to the latest version, but no success either.

Thank you for taking a look!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum