diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2015-04-14 21:42:42 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-04-15 17:21:29 -0400 |
commit | 48b63776c8255d5b0a84c5caafab5560d9cb7f3b (patch) | |
tree | d05aa926812257d5c96a07d561b1bd65ea674981 /drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | |
parent | c841e12add6926d64aa608687893465330b5a03e (diff) | |
download | talos-obmc-linux-48b63776c8255d5b0a84c5caafab5560d9cb7f3b.tar.gz talos-obmc-linux-48b63776c8255d5b0a84c5caafab5560d9cb7f3b.zip |
net: hip04: Make tx coalesce timer actually work
The code sets the expiry value of the timer to a relative value and
starts it with hrtimer_start_expires. That's fine, but that only works
once. The timer is started in relative mode, so the expiry value gets
overwritten with the absolut expiry time (now + expiry).
So once the timer expired, a new call to hrtimer_start_expires results
in an immidiately expired timer, because the expiry value is
already in the past.
Use the proper mechanisms to (re)start the timer in the intended way.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: dingtianhong <dingtianhong@huawei.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Zhangfei Gao <zhangfei.gao@linaro.org>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Cc: netdev@vger.kernel.org
Acked-by: Ding Tianhong <dingtianhong@huawei.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c')
0 files changed, 0 insertions, 0 deletions