link: Add units and fix typo in (Rx|Tx)BufferSize= manpage. Clean up the implementati...
authornabijaczleweli <nabijaczleweli@gmail.com>
Wed, 29 Apr 2020 16:38:56 +0000 (18:38 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 30 May 2020 18:12:00 +0000 (20:12 +0200)
(cherry picked from commit 80af9bdabe2aa6421568d5d20f4c513cf49a3e43)

man/systemd.link.xml
src/shared/ethtool-util.c

index 1dca495a0392a874c4c3b9666e75af514f95ced4..acda31066bd281ee86308dfa7e0649f8e515eacb 100644 (file)
       <varlistentry>
         <term><varname>RxBufferSize=</varname></term>
         <listitem>
-          <para>Takes a integer. Specifies the NIC receive ring buffer size. When unset, the kernel's default will be used.</para>
+          <para>Takes an integer. Specifies the maximum number of pending packets in the NIC receive buffer.
+          When unset, the kernel's default will be used.</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term><varname>TxBufferSize=</varname></term>
         <listitem>
-          <para>Takes a integer. Specifies the NIC transmit ring buffer size. When unset, the kernel's default will be used.</para>
+          <para>Takes an integer. Specifies the maximum number of pending packets in the NIC transmit buffer.
+          When unset, the kernel's default will be used.</para>
         </listitem>
       </varlistentry>
 
index 00a71d64a638a6e718f44ec3340d7fa2e8b3b58b..f372c8b5e4dcf8d169f56f830190522eb0fae5fc 100644 (file)
@@ -431,18 +431,14 @@ int ethtool_set_nic_buffer_size(int *ethtool_fd, const char *ifname, netdev_ring
         if (r < 0)
                 return -errno;
 
-        if (ring->rx_pending_set) {
-                if (ecmd.rx_pending != ring->rx_pending) {
-                        ecmd.rx_pending = ring->rx_pending;
-                        need_update = true;
-                }
+        if (ring->rx_pending_set && ecmd.rx_pending != ring->rx_pending) {
+                ecmd.rx_pending = ring->rx_pending;
+                need_update = true;
         }
 
-        if (ring->tx_pending_set) {
-                   if (ecmd.tx_pending != ring->tx_pending) {
-                           ecmd.tx_pending = ring->tx_pending;
-                           need_update = true;
-                }
+        if (ring->tx_pending_set && ecmd.tx_pending != ring->tx_pending) {
+                ecmd.tx_pending = ring->tx_pending;
+                need_update = true;
         }
 
         if (need_update) {