From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id CB4DA436CB for ; Tue, 12 Dec 2023 04:11:11 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A378140A73; Tue, 12 Dec 2023 04:11:11 +0100 (CET) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2100.outbound.protection.outlook.com [40.107.236.100]) by mails.dpdk.org (Postfix) with ESMTP id E8C6D402B9 for ; Tue, 12 Dec 2023 04:11:10 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mGhbXaCkigm++Adq/CfBnK+Ww0POgsn69p/+unlSTG6g/yYJnuItI5Lc8DjQdQrqqmoRAz8VyDYDJ8Uhb83c/cwyEwjltLkba76LcTomA5cLW0W3hYOm2MK4FuOBcQq1LVYjgJoEGA5lYWdOaVD0R1PfS5y1lDBYwAIAYjYgSs6e9JHW0KARfge+WMmkj4izZypk/+zH0Zt7QXf9GpQCwkX7ZudIp1zr1rK7noXTI7dk9f9z0/BYtIrxzzXcZEZx8TlG1bs+gpnPEe1viFXCNm7PDXOLn7Qtw4s1L7gTGtXwhvQFw7xXJDz0HVQkSYrcDlZL+69U21DayGtLhr/Vqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ll/41MQs5yTA7I8UtRDLruML+rOr2E5MMLuUz1YMAUE=; b=ZwAaw1uxuBGbz1MezEaWRzAypCDA7sl7RyMohy2Zg0lln98UBpQvnkr+8OB/I71hn7dsrT5HFhJL0gtJbGc550h/4iMXBKqVacdPv+MP5+L0tPa8ZLLvGCkJDUpVEIn/3zmYBrku/H+uyyamaQEHDvoH/VIl7IdyvD7SZvdjfvvWnElbe9rMARDHkNwcNlZs4O14DRfEhT12v9HPOCJVrCFVMrGGVoDcQSljIEjJs2WvUd/1vhmgvFkJH1Swj6MWz3fGN4b279hkHMm93AFKikzWnFHHqWgJUC4C40w1jy6T+n7lUJaoLnwPyWwsqFXvHIYZeIrgM8EmSTc6Hkczow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=corigine.com; dmarc=pass action=none header.from=corigine.com; dkim=pass header.d=corigine.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=corigine.onmicrosoft.com; s=selector2-corigine-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ll/41MQs5yTA7I8UtRDLruML+rOr2E5MMLuUz1YMAUE=; b=YKfQn/KD6lNK8yDOeEUpVC5Vdgdubai88tv5RxyB5f+KGS4v0S0hEWMALgnmLIevZ9ABEO7WAQQkrhuohGqqLoC48h1kTeMRtstGqrcwHzsZSM8rm+IUMyl8P3BE4Dm9+42O8eJez9nkE9CEOo0pJO+WcnAlzx+fldq2CUIOe+A= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=corigine.com; Received: from SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) by SJ2PR13MB6353.namprd13.prod.outlook.com (2603:10b6:a03:562::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7068.32; Tue, 12 Dec 2023 03:11:08 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::45b3:d83c:cff2:4a1b]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::45b3:d83c:cff2:4a1b%6]) with mapi id 15.20.7068.031; Tue, 12 Dec 2023 03:11:08 +0000 From: Chaoyong He To: stable@dpdk.org Cc: oss-drivers@corigine.com, Chaoyong He , Shihong Wang , Peng Zhang Subject: [PATCH 22.11] net/nfp: fix link status interrupt Date: Tue, 12 Dec 2023 11:10:48 +0800 Message-Id: <20231212031048.1816944-1-chaoyong.he@corigine.com> X-Mailer: git-send-email 2.39.1 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: PH8PR15CA0009.namprd15.prod.outlook.com (2603:10b6:510:2d2::8) To SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR13MB5545:EE_|SJ2PR13MB6353:EE_ X-MS-Office365-Filtering-Correlation-Id: 4384a83d-1923-42f8-f40f-08dbfabffc32 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HmCMFjBWbJIeJpGyzpGRUnjqkKtF4r71ug10ST6f3roTJsk7Q/2MvXbljH4sWg0RwI7ZjQKNW8RioKsEJS1KaoEc0xTlMzS3/H8pvXitTqoYcMGKxpuN46akYO9+Mft7kxDmTC0TTmIE53nVHvuixjiVEgsol98FAHDMDLNZCUSvCQw4eQXDnk95sydPOCjVS+Rugk1CSz3vUMTJPGA6OVuf0zBFSLyyt3huP48isirmFToBFPILocESk74cpUj5pSpZsC6kfLwTGMLOFBKp0rTMdaFswos4UhGPlylfNXW9SE5D8ly/LEGer7jrsTHno6VXFREXFBsoQ8WPzLrCfnXmmoznfLkXmbrJV9A81MWrCicYZblZ63OjMzWd2rrOR5IK+sto6yLRBQbCGMA8RE5E0DtUAqJ3S1qhh4lgRdO1I83s3tNghHW83bigX02SjhojuNqGeyLoW+NVe6KXqI/wOARP0jpjQFznxrydyjvLHFSFzMlW+3Sb9dvr/TX62S+9on6IAKUQ1wD1SJxWBXuv/qZ7r+s01c8UAqNRT1QpqfXeHxBtpLZsGICidjfrz8sggHm41tHZjBRcCjdj+8DOl416W8vuFino2UX9kjgOFXfAXymlN/sy0RX/TbfK4rXlkRJIiCOuV2HD7iwhPirmf52SulCmIc+kO+OGkng= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR13MB5545.namprd13.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(396003)(366004)(346002)(136003)(376002)(39840400004)(230922051799003)(1800799012)(186009)(451199024)(64100799003)(6512007)(6666004)(6506007)(2906002)(44832011)(6916009)(52116002)(66476007)(66556008)(66946007)(54906003)(38100700002)(86362001)(36756003)(38350700005)(4326008)(8676002)(5660300002)(316002)(8936002)(478600001)(6486002)(41300700001)(107886003)(2616005)(26005)(83380400001)(1076003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?/Pwq8N9fXSORy/xrpK8u6JEfI6YfSpLtShSD/cA0eQ3hj8y8m/1Wt2JjXe2B?= =?us-ascii?Q?BB+tB+754pCj4WmfZevt0dcr76xGEjsfKA18sjK4KCrBXXscaw8gltxl/+C0?= =?us-ascii?Q?/PE+WhGFNzXu7gXEGlgLEWOk53eL8oqBUAlknO3I91+ebXgQceoB6pzonQDL?= =?us-ascii?Q?YxGuvgJ9czo7l1s1h/2PDwQV0KHoHsXLvVN8sNcKCiY39CKBmD18nPNrDU6e?= =?us-ascii?Q?PZWudBD7RZyvSwu4chzWCIeskAKbCh219oQz1/K0xo5qNK12T4XYvHTrVtqi?= =?us-ascii?Q?KlsMj+3tH3JdNKjwYvFHXSbTH+bXR9owm65cUgAaFu2379G9G8Tjy7tsd0t2?= =?us-ascii?Q?mUKOXU/U1e2AR4B5mjOlxay1sNRU/RfmOjwCbUcaZ33prQcGlzxsf8j1LeL3?= =?us-ascii?Q?n4RG4Ef1zFskoIfEFoXulmNgUhSAYjMhAyqNfmfSiy9H8B95aWCx9S8ruGde?= =?us-ascii?Q?OrTZD6hIMbdn6jLcDsVzk97srhGacGARWsQazbR9x/OZAdiC4611q8PFIbUw?= =?us-ascii?Q?v+TbcRDSgt5I0D42M213SVhymI4uy8aBYOLM5VrI2b1MTCi4e/NFnlY39P0V?= =?us-ascii?Q?ZG9wpJ2bs9+91ej+deNgxILftyib9WfjWHOoWljH6EeHHtRCmR8oVckT8Jup?= =?us-ascii?Q?mb9lIafAxfSEeZTd0L86ety9nHytKBnhtGDdi1vpheNsAVwPjb6Qc+XoPokY?= =?us-ascii?Q?Slse+1NYv5wXsjRWvE30dQsP2OSedJvYb2vNhhqMy34m4US6LwT1FpTjEHoO?= =?us-ascii?Q?aspeUYG4b24dX2Ru/nCbO+4R5O9N4o4KfT/Q1wPpAnZYcMWtdTYYqs1NF4GC?= =?us-ascii?Q?YqcmYtX8oOF4y1D6lWgeBUMj238ATonPAqFMiVqNCg/wXLkAWvg4OQlJUdM1?= =?us-ascii?Q?iJ5GWBDOpOeyNENTNfMfy6injX3I9cG9XzgdyOQaPAvSUP5X1fg4yGlgoqwS?= =?us-ascii?Q?mDQYcqefaNUQDimPZRKZBKq7xEPsvtvLpEHQRdaneuizGzLpzgt+ZrfftPl0?= =?us-ascii?Q?S2CVSgjJgVUHpYrc7IMuFNzZj9UYj2+wHdUMg1gxDPad8CV8Wepc5kR5Jeuv?= =?us-ascii?Q?xtoKg4+6BLmKT12oE/uY8JpX9iDfQc2GUhfdky0hGPB75IV7ZOwRyl8Mc5eU?= =?us-ascii?Q?7ITfFIreI5OPu/iyy31In1s1IHY0Ee3VDL82CWRahgqYVgw3/l3XrXFVWlE5?= =?us-ascii?Q?k12oGtVb/9xEwGdIXAkKjG/VA+iImbCTQ2R45Aa3mpkAAP6q0UcSQCiURld/?= =?us-ascii?Q?cpN8ZAq+xrimhs58zfqzIpcfOdE1O7aEIOolTD8X+k0gi1RkqwylNXU9fMGI?= =?us-ascii?Q?mNWyEunn4f30lJqlvXVPP+d5D9Np/V7XiVICOmseysd1Y4GRhbz50zfLFRjX?= =?us-ascii?Q?AsLNwqskftuYJcdaPvgSRSTEzabZJc7p+FeK0jCYZw1F78pgFkCTQ8kMXKhZ?= =?us-ascii?Q?9kVC/ffR4A1P8UhRPHaIMJBuvK6tnKZSHO3G5F6YGTAy0ZJ5KuCOJOC3MQ2W?= =?us-ascii?Q?mFTp5e854ROfzHDpAPSeDkdKuEFTu3pgLzbhblpxfHIR94RmusSfr2jbDihD?= =?us-ascii?Q?LFhmJMPb0fEZkIHNmVnQ5Hr/OHfuL3DG6yeakMaEiLYUl971uv3j0oJJbHjs?= =?us-ascii?Q?hw=3D=3D?= X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4384a83d-1923-42f8-f40f-08dbfabffc32 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Dec 2023 03:11:08.2985 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fe128f2c-073b-4c20-818e-7246a585940c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2De7KHg3plM+eC9pAoscrB25npQmesCcPiTp4k+2vxXx2V2+P/wh4Hs5c0iPqN+xdpn6fDcYRaKbnzkUKDl1ptnfQ2ZnGRCpb8/OI/VWYjg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR13MB6353 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org [ upstream commit 94d0631a8275afa4314ee1d4f08d2fbd02325124 ] In rare cases, when DPDK application exit, the interrupt handler was not processed the interrupt in time, resulting in the LSC interrupt mask bit not being cleared. So when the DPDK application start again, the newly coming LSC interrupts cannot be received and processed properly. Fix this problem by force clear the LSC interrupt mask on port initialization. Fixes: 6c53f87b3497 ("nfp: add link status interrupt") Signed-off-by: Shihong Wang Signed-off-by: Peng Zhang Reviewed-by: Chaoyong He --- drivers/net/nfp/nfp_common.c | 2 +- drivers/net/nfp/nfp_common.h | 1 + drivers/net/nfp/nfp_ethdev.c | 2 ++ drivers/net/nfp/nfp_ethdev_vf.c | 2 ++ 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/net/nfp/nfp_common.c b/drivers/net/nfp/nfp_common.c index b75fd22e03..0fa74a43e4 100644 --- a/drivers/net/nfp/nfp_common.c +++ b/drivers/net/nfp/nfp_common.c @@ -885,7 +885,7 @@ nfp_net_dev_link_status_print(struct rte_eth_dev *dev) * If MSI-X auto-masking is enabled clear the mask bit, otherwise * clear the ICR for the entry. */ -static void +void nfp_net_irq_unmask(struct rte_eth_dev *dev) { struct nfp_net_hw *hw; diff --git a/drivers/net/nfp/nfp_common.h b/drivers/net/nfp/nfp_common.h index 67c8dc33d8..d1a07f5a72 100644 --- a/drivers/net/nfp/nfp_common.h +++ b/drivers/net/nfp/nfp_common.h @@ -449,6 +449,7 @@ void nfp_net_stop_tx_queue(struct rte_eth_dev *dev); void nfp_net_close_tx_queue(struct rte_eth_dev *dev); int nfp_net_set_vxlan_port(struct nfp_net_hw *hw, size_t idx, uint16_t port); int nfp_net_check_dma_mask(struct nfp_net_hw *hw, char *name); +void nfp_net_irq_unmask(struct rte_eth_dev *dev); #define NFP_NET_DEV_PRIVATE_TO_HW(adapter)\ (&((struct nfp_net_adapter *)adapter)->hw) diff --git a/drivers/net/nfp/nfp_ethdev.c b/drivers/net/nfp/nfp_ethdev.c index 1b0131b1d8..9f940a12b6 100644 --- a/drivers/net/nfp/nfp_ethdev.c +++ b/drivers/net/nfp/nfp_ethdev.c @@ -691,6 +691,8 @@ nfp_net_init(struct rte_eth_dev *eth_dev) nfp_net_dev_interrupt_handler, (void *)eth_dev); /* Telling the firmware about the LSC interrupt entry */ nn_cfg_writeb(hw, NFP_NET_CFG_LSC, NFP_NET_IRQ_LSC_IDX); + /* Unmask the LSC interrupt */ + nfp_net_irq_unmask(eth_dev); /* Recording current stats counters values */ nfp_net_stats_reset(eth_dev); diff --git a/drivers/net/nfp/nfp_ethdev_vf.c b/drivers/net/nfp/nfp_ethdev_vf.c index 6a70daca90..435127604a 100644 --- a/drivers/net/nfp/nfp_ethdev_vf.c +++ b/drivers/net/nfp/nfp_ethdev_vf.c @@ -452,6 +452,8 @@ nfp_netvf_init(struct rte_eth_dev *eth_dev) (void *)eth_dev); /* Telling the firmware about the LSC interrupt entry */ nn_cfg_writeb(hw, NFP_NET_CFG_LSC, NFP_NET_IRQ_LSC_IDX); + /* Unmask the LSC interrupt */ + nfp_net_irq_unmask(eth_dev); /* Recording current stats counters values */ nfp_net_stats_reset(eth_dev); } -- 2.39.1