]> git.baikalelectronics.ru Git - kernel.git/commit
i40e: don't do link_status or stats collection on every ARQ
authorShannon Nelson <shannon.nelson@intel.com>
Sat, 25 Oct 2014 10:35:25 +0000 (10:35 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Tue, 11 Nov 2014 13:52:46 +0000 (05:52 -0800)
commit34f5218677ae438712978383d7617a8ba423ad8b
treece480f80ba70eaedf105e6e8d84901be1dab0e56
parent51d24b1c3241e39349d3c33010863efe8a60f883
i40e: don't do link_status or stats collection on every ARQ

The ARQ events cause a service_task execution, and we do a link_status
check and full stats gathering for each service_task.  However, when
there are a lot of ARQ events, such as when doing an NVM update, we end up
doing 10's if not 100's of these per second, thereby heavily abusing the
PCI bus and especially the Firmware.  This patch adds a check to keep the
service_task from running these periodic tasks more than once per second,
while still allowing quick action to service the events.

Change-ID: Iec7670c37bfae9791c43fec26df48aea7f70b33e
Signed-off-by: Shannon Nelson <shannon.nelson@intel.com>
Signed-off-by: Patrick Lu <patrick.lu@intel.com>
Tested-by: Jim Young <jamesx.m.young@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e.h
drivers/net/ethernet/intel/i40e/i40e_main.c