net: ena: improve latency by disabling adaptive interrupt moderation by default
authorSameeh Jubran <sameehj@amazon.com>
Wed, 1 May 2019 13:47:08 +0000 (16:47 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sat, 4 May 2019 04:14:47 +0000 (00:14 -0400)
Adaptive interrupt moderation was erroneously enabled by default
in the driver.

In case the device supports adaptive interrupt moderation it will
be automatically used, which may potentially increase latency.

The adaptive moderation can be enabled from ethtool command in
case the feature is supported by the device.

Fixes: 1738cd3ed342 ("net: ena: Add a driver for Amazon Elastic Network Adapters (ENA)")
Signed-off-by: Guy Tzalik <gtzalik@amazon.com>
Signed-off-by: Sameeh Jubran <sameehj@amazon.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amazon/ena/ena_com.c

index 4fe437fe771bb91dc79b7f5db6337fb174b358f8..677d31abf2141c7be2c411b619a9c6d730d3c81a 100644 (file)
@@ -2802,7 +2802,11 @@ int ena_com_init_interrupt_moderation(struct ena_com_dev *ena_dev)
        /* if moderation is supported by device we set adaptive moderation */
        delay_resolution = get_resp.u.intr_moderation.intr_delay_resolution;
        ena_com_update_intr_delay_resolution(ena_dev, delay_resolution);
-       ena_com_enable_adaptive_moderation(ena_dev);
+
+       /* Disable adaptive moderation by default - can be enabled from
+        * ethtool
+        */
+       ena_com_disable_adaptive_moderation(ena_dev);
 
        return 0;
 err: