Once on one high-load access server with about 5 Gb/s traffic in /var/log/syslog, errors began to appear frequently:
i40e 0000:04:00.0: TX driver issue detected, PF reset issued
The error appeared when the traffic on the network interface increased and before that the server was rebooted.
I also noticed that there are losses of ping and the sending speed has become lower.
As it turned out, the offloads were activated, which I turned off via /etc/network/interfaces, but due to some reason, the commands were not executed for the first time after the server was started:
post-up /sbin/ethtool -K ens1f0 tso off gro off gso off
post-up /sbin/ethtool -K ens1f1 tso off gro off gso off
post-up /sbin/ethtool -G ens1f0 rx 4096 tx 4096
post-up /sbin/ethtool -G ens1f1 rx 4096 tx 4096
So I turned off unnecessary offloads and at the same time increased the buffers, and duplicated these commands in /etc/rc.local so that after restarting the server they are not reset:
/sbin/ethtool -K ens1f0 tso off gro off gso off
/sbin/ethtool -K ens1f1 tso off gro off gso off
/sbin/ethtool -G ens1f0 rx 4096 tx 4096
/sbin/ethtool -G ens1f1 rx 4096 tx 4096
After that, the error no longer appeared.
You can view information about “offload” with the command:
ethtool --show-offload ens1f0
See also my article:
Configuring the Network in Linux