From 92648bf5bba0d13713327c849e7341058524f89d Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 25 Jul 2025 12:21:41 +0200 Subject: [PATCH 1/3] doc: added inst on how to set persistentn NIC changes after reboot for each ethernet interface such as rx 4096, rx-usecs, adaptive-rx and gro etc. --- docs/src/troubleshooting.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/src/troubleshooting.rst b/docs/src/troubleshooting.rst index ab5cd1690..8d81d1f3d 100644 --- a/docs/src/troubleshooting.rst +++ b/docs/src/troubleshooting.rst @@ -202,6 +202,17 @@ Receiver PC Tuning Options ethtool -K xth1 gro + * for persistent settings after reboot + .. code-block:: bash + + # edit /etc/sysconfig/network-scripts/ifcfg-[ethernet interface name] + # add or modify the following lines + ETHTOOL_OPTS="-K ${DEVICE} gro on;-G ${DEVICE} rx 4096;-L ${DEVICE} combined 4;-C ${DEVICE} rx-usecs 100;-C ${DEVICE} adaptive-rx on" + + # restart interface ethernet interface + ifdown xth1 && ifup xth1 + + #. Disable power saving in CPU frequency scaling and set system to performance * Check current policy (default might be powersave or schedutil) .. code-block:: bash From f74bc369846192fe36b351d30953f6d8b5fe8073 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 25 Jul 2025 15:34:31 +0200 Subject: [PATCH 2/3] added permanent ethtool settings also for fedora or modern rhel --- docs/src/troubleshooting.rst | 55 ++++++++++++++++++++++++++++++------ 1 file changed, 47 insertions(+), 8 deletions(-) diff --git a/docs/src/troubleshooting.rst b/docs/src/troubleshooting.rst index 8d81d1f3d..a214715d4 100644 --- a/docs/src/troubleshooting.rst +++ b/docs/src/troubleshooting.rst @@ -202,16 +202,55 @@ Receiver PC Tuning Options ethtool -K xth1 gro - * for persistent settings after reboot - .. code-block:: bash + * **permanent ethtool settings** - # edit /etc/sysconfig/network-scripts/ifcfg-[ethernet interface name] - # add or modify the following lines - ETHTOOL_OPTS="-K ${DEVICE} gro on;-G ${DEVICE} rx 4096;-L ${DEVICE} combined 4;-C ${DEVICE} rx-usecs 100;-C ${DEVICE} adaptive-rx on" + There are two main methods. + + 1. ``systemd service`` (recommended for Fedora and modern RHEL) + + This is the preferred method on systems using systemd and NetworkManager, such as Fedora and RHEL 8+. + + Create a systemd service template: + .. code-block:: ini + + # /etc/systemd/system/ethtool@.service + + [Unit] + Description=Set RX buffer size with ethtool + After=network-online.target + Wants=network-online.target + + [Service] + ExecStart=/usr/sbin/ethtool -G %i rx 8192 + Type=oneshot + + [Install] + WantedBy=multi-user.target + + + Enable the service for a specific interface: + .. code-block:: bash + + sudo systemctl enable ethtool@xth1.service + + This ensures the setting is applied at every boot once the network is online. + + + 2. ``ETHTOOL_OPTS in ifcfg scripts`` (legacy method for RHEL 7 and earlier) + + This method applies only to systems using the legacy network-scripts backend, typically RHEL 7 and earlier. It will not apply on systems using NetworkManager, such as modern Fedora or RHEL 8+. + + .. code-block:: bash + + # edit the corresponding ``ifcfg-*`` file + # file: /etc/sysconfig/network-scripts/ifcfg-eth0 + + # add or modify the following line: + ETHTOOL_OPTS="-K ${DEVICE} gro on; -G ${DEVICE} rx 4096; -L ${DEVICE} combined 4; -C ${DEVICE} rx-usecs 100; -C ${DEVICE} adaptive-rx on" + + # restart the interface + ifdown eth0 && ifup eth0 - # restart interface ethernet interface - ifdown xth1 && ifup xth1 - #. Disable power saving in CPU frequency scaling and set system to performance * Check current policy (default might be powersave or schedutil) From ea01457e1dbd79420e24c748b66a675ff9ad63c0 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 25 Jul 2025 15:44:25 +0200 Subject: [PATCH 3/3] ifcfg scripts still work on rhel8, just not preferred --- docs/src/troubleshooting.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/src/troubleshooting.rst b/docs/src/troubleshooting.rst index a214715d4..aae59538e 100644 --- a/docs/src/troubleshooting.rst +++ b/docs/src/troubleshooting.rst @@ -238,7 +238,7 @@ Receiver PC Tuning Options 2. ``ETHTOOL_OPTS in ifcfg scripts`` (legacy method for RHEL 7 and earlier) - This method applies only to systems using the legacy network-scripts backend, typically RHEL 7 and earlier. It will not apply on systems using NetworkManager, such as modern Fedora or RHEL 8+. + This method applies only to systems using the legacy network-scripts backend, typically RHEL 7 and earlier. .. code-block:: bash