From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id 558DCC43217 for ; Wed, 12 Oct 2022 03:51:45 +0000 (UTC) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7FA7242CE3; Wed, 12 Oct 2022 05:51:40 +0200 (CEST) Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by mails.dpdk.org (Postfix) with ESMTP id 426F940691 for ; Wed, 12 Oct 2022 05:51:38 +0200 (CEST) Received: from dggpeml500024.china.huawei.com (unknown [172.30.72.57]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4MnJW13d5szVhpL; Wed, 12 Oct 2022 11:47:09 +0800 (CST) Received: from localhost.localdomain (10.67.165.24) by dggpeml500024.china.huawei.com (7.185.36.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Wed, 12 Oct 2022 11:51:35 +0800 From: Chengwen Feng To: , , CC: , , , , , Subject: [PATCH v12 0/5] support error handling mode Date: Wed, 12 Oct 2022 03:45:50 +0000 Message-ID: <20221012034555.9781-1-fengchengwen@huawei.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220128124831.427-1-kalesh-anakkur.purayil@broadcom.com> References: <20220128124831.427-1-kalesh-anakkur.purayil@broadcom.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.67.165.24] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To dggpeml500024.china.huawei.com (7.185.36.10) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This patchset introduce error handling mode concept, the supported modes are as follows: 1) PASSIVE: passive error handling, after the PMD detect that a reset is required, the PMD reports RTE_ETH_EVENT_INTR_RESET event, and application invoke rte_eth_dev_reset to recover the port. 2) PROACTIVE: proactive error handling, after the PMD detect that a reset is required, the PMD reports RTE_ETH_EVENT_ERR_RECOVERING event, and do recovery internally, finally, reports the recovery result event. Chengwen Feng (2): ethdev: add error handling mode to device info net/hns3: support proactive error handling mode Kalesh AP (3): ethdev: support proactive error handling mode app/testpmd: support error handling mode event net/bnxt: support proactive error handling mode --- v12: Address comments from Andrew. v11: Fix clang-static fail due wrong experimental placement. v10: Accurately describe the recovery success scenario so that addressed comments from Ferruh. v9: Introduce error handling mode concept. Addressed comments from Thomas and Ray. v8: Addressed comments from Thomas and Ferruh. Also introduced RECOVER_FAIL event. Add hns3 driver patch. v7: Addressed comments from Thomas and Andrew. v6: Addressed comments from Asaf Penso. 1. Updated 20.11 release notes with the new events added. 2. updated testpmd parse_event_printing_config function. v5: Addressed comments from Ophir Munk. 1. Renamed the new event name to RTE_ETH_EVENT_ERR_RECOVERING. 2. Fixed testpmd logs. 3. Documented the new recovery events. v4: Addressed comments from Thomas Monjalon 1. Added doxygen comments about new events. V3: Fixed a typo in commit log. V2: Added a new event RTE_ETH_EVENT_RESET instead of using the RTE_ETH_EVENT_INTR_RESET to notify applications about device reset. app/test-pmd/config.c | 15 +++++ app/test-pmd/parameters.c | 10 +++- app/test-pmd/testpmd.c | 8 ++- doc/guides/prog_guide/poll_mode_drv.rst | 38 ++++++++++++ doc/guides/rel_notes/release_22_11.rst | 12 ++++ drivers/net/bnxt/bnxt_cpr.c | 4 ++ drivers/net/bnxt/bnxt_ethdev.c | 13 ++++- drivers/net/e1000/igb_ethdev.c | 2 + drivers/net/ena/ena_ethdev.c | 2 + drivers/net/hns3/hns3_common.c | 2 + drivers/net/hns3/hns3_intr.c | 24 ++++++++ drivers/net/iavf/iavf_ethdev.c | 2 + drivers/net/ixgbe/ixgbe_ethdev.c | 2 + drivers/net/txgbe/txgbe_ethdev_vf.c | 2 + lib/ethdev/rte_ethdev.h | 77 +++++++++++++++++++++++++ 15 files changed, 209 insertions(+), 4 deletions(-) -- 2.17.1