summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/i40evf/i40e_common.c
diff options
context:
space:
mode:
authorAnjali Singhai Jain2014-06-04 10:45:15 +0200
committerJeff Kirsher2014-07-03 04:02:18 +0200
commit49d7d933316375665cea49473d563cb8447d8a06 (patch)
treeb3f44c1e5c97540e80baca8bc73527c022dcfcc9 /drivers/net/ethernet/intel/i40evf/i40e_common.c
parentdrivers/net/hyperv/netvsc.c: remove unnecessary null test before kfree (diff)
downloadkernel-qcow2-linux-49d7d933316375665cea49473d563cb8447d8a06.tar.gz
kernel-qcow2-linux-49d7d933316375665cea49473d563cb8447d8a06.tar.xz
kernel-qcow2-linux-49d7d933316375665cea49473d563cb8447d8a06.zip
i40e/i40evf: Do not free the dummy packet buffer synchronously
The HW still needs to consume it and freeing it in the function that created it would mean we will be racing with the HW. The i40e_clean_tx_ring() routine will free up the buffer attached once the HW has consumed it. The clean_fdir_tx_irq function had to be fixed to handle the freeing correctly. Cases where we program more than one filter per flow (Ipv4), the code had to be changed to allocate dummy buffer multiple times since it will be freed by the clean routine. This also fixes an issue where the filter program routine was not checking if there were descriptors available for programming a filter. Change-ID: Idf72028fd873221934e319d021ef65a1e51acaf7 Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Tested-by: Jim Young <jamesx.m.young@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/i40evf/i40e_common.c')
0 files changed, 0 insertions, 0 deletions