This series contains updates to i40e and xsk. Mariusz fixes an issue where the VF link state was not being updated properly when the PF is down or up. Also cleaned up the promiscuous configuration during a VF reset.
Patryk simplifies the code a bit to use the variables for PF and HW that are declared, rather than using the VSI pointers. Cleaned up the message length parameter to several virtchnl functions, since it was not being used (or needed). Harshitha fixes two potential race conditions when trying to change VF settings by creating a helper function to validate that the VF is enabled and that the VSI is set up. Sergey corrects a double "link down" message by putting in a check for whether or not the link is up or going down. Björn addresses an AF_XDP zero-copy issue that buffers passed from userspace to the kernel was leaked when the hardware descriptor ring was torn down. A zero-copy capable driver picks buffers off the fill ring and places them on the hardware receive ring to be completed at a later point when DMA is complete. Similar on the transmit side; The driver picks buffers off the transmit ring and places them on the transmit hardware ring. In the typical flow, the receive buffer will be placed onto an receive ring (completed to the user), and the transmit buffer will be placed on the completion ring to notify the user that the transfer is done. However, if the driver needs to tear down the hardware rings for some reason (interface goes down, reconfiguration and such), the userspace buffers cannot be leaked. They have to be reused or completed back to userspace. The following are changes since commit bd6207202db8974ca3d3183ca0d5611d45b2973c: net: macb: Clean 64b dma addresses if they are not detected and are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue 40GbE Björn Töpel (3): i40e: clean zero-copy XDP Tx ring on shutdown/reset i40e: clean zero-copy XDP Rx ring on shutdown/reset i40e: disallow changing the number of descriptors when AF_XDP is on Harshitha Ramamurthy (1): i40e: add a helper function to validate a VF based on the vf id Jakub Kicinski (1): net: xsk: add a simple buffer reuse queue Mariusz Stachura (2): i40e: Fix VF's link state notification i40e: Unset promiscuous settings on VF reset Patryk Małek (2): i40e: use declared variables for pf and hw i40e: Remove unused msglen parameter from virtchnl functions Sergey Nemov (1): i40e: fix double 'NIC Link is Down' messages .../net/ethernet/intel/i40e/i40e_ethtool.c | 8 + drivers/net/ethernet/intel/i40e/i40e_main.c | 19 +- drivers/net/ethernet/intel/i40e/i40e_txrx.c | 21 +- .../ethernet/intel/i40e/i40e_txrx_common.h | 4 + .../ethernet/intel/i40e/i40e_virtchnl_pf.c | 425 ++++++++++-------- drivers/net/ethernet/intel/i40e/i40e_xsk.c | 151 ++++++- include/net/xdp_sock.h | 69 +++ net/xdp/xdp_umem.c | 2 + net/xdp/xsk_queue.c | 55 +++ net/xdp/xsk_queue.h | 3 + 10 files changed, 541 insertions(+), 216 deletions(-) -- 2.17.1