From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [67.231.154.164]) by dpdk.org (Postfix) with ESMTP id 222E52B93 for ; Fri, 31 Mar 2017 12:22:34 +0200 (CEST) Received: from pure.maildistiller.com (unknown [10.110.50.29]) by dispatch1-us1.ppe-hosted.com (Proofpoint Essentials ESMTP Server) with ESMTP id E226C80055 for ; Fri, 31 Mar 2017 10:22:33 +0000 (UTC) X-Virus-Scanned: Proofpoint Essentials engine Received: from mx8-us1.ppe-hosted.com (unknown [10.110.49.251]) by pure.maildistiller.com (Proofpoint Essentials ESMTP Server) with ESMTPS id 72A896004F for ; Fri, 31 Mar 2017 10:22:33 +0000 (UTC) Received: from webmail.solarflare.com (webmail.solarflare.com [12.187.104.26]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx8-us1.ppe-hosted.com (Proofpoint Essentials ESMTP Server) with ESMTPS id 0B54644005B for ; Fri, 31 Mar 2017 10:22:33 +0000 (UTC) Received: from ocex03.SolarFlarecom.com (10.20.40.36) by ocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server (TLS) id 15.0.1044.25; Fri, 31 Mar 2017 03:22:30 -0700 Received: from opal.uk.solarflarecom.com (10.17.10.1) by ocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server (TLS) id 15.0.1044.25 via Frontend Transport; Fri, 31 Mar 2017 03:22:30 -0700 Received: from uklogin.uk.solarflarecom.com (uklogin.uk.solarflarecom.com [10.17.10.10]) by opal.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id v2VAMTob030622 for ; Fri, 31 Mar 2017 11:22:29 +0100 Received: from uklogin.uk.solarflarecom.com (localhost.localdomain [127.0.0.1]) by uklogin.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id v2VAMTQe009951 for ; Fri, 31 Mar 2017 11:22:29 +0100 From: Andrew Rybchenko To: Date: Fri, 31 Mar 2017 11:22:10 +0100 Message-ID: <1490955743-9868-1-git-send-email-arybchenko@solarflare.com> X-Mailer: git-send-email 1.8.2.3 MIME-Version: 1.0 Content-Type: text/plain X-MDID: 1490955753-RARTw9gVDs2a Subject: [dpdk-dev] [PATCH 00/13] net/sfc: fix device reconfigure X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Mar 2017 10:22:35 -0000 When I implemented initial version of the driver I had incorrect understanding of the required state transition to reconfigure device. It was assumed that close is required before reconfigure. Looking at description in rte_ethdev.h, rte_eth_dev_close() description and rte_eth_dev_configure() implementation I see that I was wrong. If reconfigure attempt is done without the patch series, testpmd crashes on segmentation fault. The patch series fixes it. So, technically it is a bug fix, but unfortunately pretty big. The patch series should be applied after [1] (patch [2]). Testing the patch requires [3] (patch [4]). Intel compilation of the patch fails since it is applied to dpdk.git tree instead of dpdk-next-net.git. [1] http://dpdk.org/ml/archives/dev/2017-March/062155.html [2] http://dpdk.org/dev/patchwork/patch/22758/ [3] http://dpdk.org/ml/archives/dev/2017-March/062157.html [4] http://dpdk.org/dev/patchwork/patch/22756/ Andrew Rybchenko (13): net/sfc: clarify interrupts support function names net/sfc: bind EvQ DMA space to EvQ type and type-local index net/sfc: remove unused max entries from EvQ info net/sfc: move EvQ entries to the EvQ control structure net/sfc: remove flags from EvQ info net/sfc: remove EvQ info array to simplify reconfigure net/sfc: move event support init to attach stage net/sfc: initialize port data on attach net/sfc: clarify Rx subsystem configure/close function names net/sfc: clarify Tx subsystem configure/close function names net/sfc: support changing the number of receive queues net/sfc: support changing the number of transmit queues net/sfc: fix device reconfigure drivers/net/sfc/sfc.c | 67 ++++++++------- drivers/net/sfc/sfc.h | 41 +++++----- drivers/net/sfc/sfc_ethdev.c | 2 - drivers/net/sfc/sfc_ev.c | 191 +++++++++++++++---------------------------- drivers/net/sfc/sfc_ev.h | 69 +++++----------- drivers/net/sfc/sfc_intr.c | 6 +- drivers/net/sfc/sfc_port.c | 32 ++++++-- drivers/net/sfc/sfc_rx.c | 113 ++++++++++++++++--------- drivers/net/sfc/sfc_rx.h | 4 +- drivers/net/sfc/sfc_tx.c | 103 +++++++++++++++-------- drivers/net/sfc/sfc_tx.h | 4 +- 11 files changed, 322 insertions(+), 310 deletions(-) -- 2.9.3