From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:57378 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751623AbeCQBAn (ORCPT ); Fri, 16 Mar 2018 21:00:43 -0400 Received: from pps.filterd (m0098396.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w2H0xEaX100251 for ; Fri, 16 Mar 2018 21:00:43 -0400 Received: from e12.ny.us.ibm.com (e12.ny.us.ibm.com [129.33.205.202]) by mx0a-001b2d01.pphosted.com with ESMTP id 2grk9pagp5-1 (version=TLSv1.2 cipher=AES256-SHA256 bits=256 verify=NOT) for ; Fri, 16 Mar 2018 21:00:43 -0400 Received: from localhost by e12.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 16 Mar 2018 21:00:41 -0400 From: Thomas Falcon To: netdev@vger.kernel.org Cc: jallen@linux.vnet.ibm.com, nfont@linux.vnet.ibm.com, davem@davemloft.net, Thomas Falcon Subject: [PATCH net-next v5 0/8] ibmvnic: Update TX pool and TX routines Date: Fri, 16 Mar 2018 20:00:23 -0500 Message-Id: <1521248431-6353-1-git-send-email-tlfalcon@linux.vnet.ibm.com> Sender: netdev-owner@vger.kernel.org List-ID: This patch restructures the TX pool data structure and provides a separate TX pool array for TSO transmissions. This is already used in some way due to our unique DMA situation, namely that we cannot use single DMA mappings for packet data. Previously, both buffer arrays used the same pool entry. This restructuring allows for some additional cleanup in the driver code, especially in some places in the device transmit routine. In addition, it allows us to more easily track the consumer and producer indexes of a particular pool. This has been further improved by better tracking of in-use buffers to prevent possible data corruption in case an invalid buffer entry is used. v5: Fix bisectability mistake in the first patch. Removed TSO-specific data in a later patch when it is no longer used. v4: Fix error in 7th patch that causes an oops by using the older fixed value for number of buffers instead of the respective field in the tx pool data structure v3: Forgot to update TX pool cleaning function to handle new data structures. Included 7th patch for that. v2: Fix typo in 3/6 commit subject line Thomas Falcon (8): ibmvnic: Generalize TX pool structure ibmvnic: Update and clean up reset TX pool routine ibmvnic: Update release TX pool routine ibmvnic: Update TX pool initialization routine ibmvnic: Update TX and TX completion routines ibmvnic: Improve TX buffer accounting ibmvnic: Update TX pool cleaning routine ibmvnic: Remove unused TSO resources in TX pool structure drivers/net/ethernet/ibm/ibmvnic.c | 275 +++++++++++++++++++++---------------- drivers/net/ethernet/ibm/ibmvnic.h | 8 +- 2 files changed, 160 insertions(+), 123 deletions(-) -- 2.15.0