From: Arthur Kiyanovski Date: Mon, 16 Sep 2019 14:31:35 +0300 Subject: [PATCH] net: ena: fix retrieval of nonadaptive interrupt moderation intervals Origin: https://git.kernel.org/linus/0eda847953d8dfb4b713ea62420f66157e230e13 Bug-Debian: https://bugs.debian.org/941291 Nonadaptive interrupt moderation intervals are assigned the value set by the user in ethtool -C divided by ena_dev->intr_delay_resolution. Therefore when the user tries to get the nonadaptive interrupt moderation intervals with ethtool -c the code needs to multiply the saved value by ena_dev->intr_delay_resolution. The current code erroneously divides instead of multiplying in ethtool -c. This patch fixes this. Signed-off-by: Arthur Kiyanovski Signed-off-by: David S. Miller --- drivers/net/ethernet/amazon/ena/ena_ethtool.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) Index: linux/drivers/net/ethernet/amazon/ena/ena_ethtool.c =================================================================== --- linux.orig/drivers/net/ethernet/amazon/ena/ena_ethtool.c +++ linux/drivers/net/ethernet/amazon/ena/ena_ethtool.c @@ -310,14 +310,15 @@ static int ena_get_coalesce(struct net_d /* the devie doesn't support interrupt moderation */ return -EOPNOTSUPP; } + coalesce->tx_coalesce_usecs = - ena_com_get_nonadaptive_moderation_interval_tx(ena_dev) / + ena_com_get_nonadaptive_moderation_interval_tx(ena_dev) * ena_dev->intr_delay_resolution; if (!ena_com_get_adaptive_moderation_enabled(ena_dev)) coalesce->rx_coalesce_usecs = ena_com_get_nonadaptive_moderation_interval_rx(ena_dev) - / ena_dev->intr_delay_resolution; + * ena_dev->intr_delay_resolution; coalesce->use_adaptive_rx_coalesce = ena_com_get_adaptive_moderation_enabled(ena_dev);