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 23586A00C5; Thu, 27 Oct 2022 11:05:18 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 177CD42B85; Thu, 27 Oct 2022 11:05:18 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mails.dpdk.org (Postfix) with ESMTP id 2F3C2427F6 for ; Thu, 27 Oct 2022 11:05:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666861516; x=1698397516; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=gB+t36BOziFvIyczsUcvEdAS2iYSsNWaZ3elge7L1sc=; b=kLtQxppOHcPP9y6EcRcnkFjYeX7rg4vm4ni3fMr500+ngFH3zLr86bRx G2epKZrAf5KfCbvaU8TU0mjME2iiJ7+nNweakYdiL+qAs64TC1vZZ9pzo otKGoGFmYY07wzPbgdj6zLyl7Z8QVEasVHhadDx+IZFdQACIAGFQUpSeX 9inFWWff0pu2Cqs55RXWJqA5T1Aoem5yvoe4OBnhl0R1NS2Ino/bh1zW7 P4IC/JhYojKDhQURem20hncEB74K9kBqC2Lg2c8X3pllxCN6piBv4OKAN sfbkn8X/ntzFzDOUeq7Lyk6TEqm7oslK2W0ka0n+5RZFPeTU2ZkCkgUJ5 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10512"; a="291474095" X-IronPort-AV: E=Sophos;i="5.95,217,1661842800"; d="scan'208";a="291474095" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Oct 2022 02:04:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10512"; a="961551123" X-IronPort-AV: E=Sophos;i="5.95,217,1661842800"; d="scan'208";a="961551123" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga005.fm.intel.com with ESMTP; 27 Oct 2022 02:04:59 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Thu, 27 Oct 2022 02:04:58 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Thu, 27 Oct 2022 02:04:58 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Thu, 27 Oct 2022 02:04:58 -0700 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.174) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Thu, 27 Oct 2022 02:04:57 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fRO/5oRouosbMYQ3n0PWLrBXIkJ/iWHReHpldKi3+vGXFTisBcjevlR+emf8dkWHDPuFGQbAoQMDarqgXuLGFxMP9p0TAL5Xsu7fPOZ3nxEoZhAb8SydNpabYo7ecEbkCAe2XMMB5C24YRWSe2NjRLNMWsVRDqXgnBojjcKkfTCiFq3WwfHS8WaZ4KQqYpJlNF5Q7g8jXLsfy7l/UcKLFU0Bc3YK3rmqfzdxvWbBLIeEOA0IJ7lZR1RzHFghUS6LHbvWYyrc7ijhnX8LwYTQ71YogE4uYCXrDVJI8o09X8fBUSYjmayQLmBPGaG5wLkyyjnyZbR/awH8auLwGYoP0g== 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=aIeenP7l5R8aW0G4Tw1AeIYyIDMsSr7q4eWKomteYZ4=; b=cT2KSMz635lHNIZkTVOM/tAMinp8toq15SsebXYmvUGsp6ciR5H3T8vk7HHI4mamHz1RRtPDqjgSDZFUiOCLdMnGYE7e5br3k7a+aYnRjaw5LXIQMP+hBMfnHvtpKQns48QCCRbBkk15MG51sxiDurkTEXHfdE4vc2/0LGQiwhlAeDdMMCVABEEIp1WjgfCfjROxpV5zCVpFqwUqeUJBo0Kqgv6SL6izbXZxaSiF79gfbkNP12FV6mEjQ+0k2133hAqowsSTY2UHXgJa85kJ8xRsYK2d50SHqzjdJp5ej+0sI//UAC+n6U8z/nNJnXZQANUdSPy855Y1Ry11q6TUKA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from MWHPR11MB0062.namprd11.prod.outlook.com (2603:10b6:301:67::34) by SN7PR11MB6897.namprd11.prod.outlook.com (2603:10b6:806:2a5::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.23; Thu, 27 Oct 2022 09:04:56 +0000 Received: from MWHPR11MB0062.namprd11.prod.outlook.com ([fe80::1965:b85f:cb8d:824a]) by MWHPR11MB0062.namprd11.prod.outlook.com ([fe80::1965:b85f:cb8d:824a%7]) with mapi id 15.20.5769.014; Thu, 27 Oct 2022 09:04:56 +0000 Message-ID: <26267ebd-c355-343e-53d1-71bfcacaaa48@intel.com> Date: Thu, 27 Oct 2022 14:34:46 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.4.0 Subject: Re: [PATCH] app/testpmd: fix testpmd crash when quit with mlx5 avail_thresh enabled To: Spike Du , , , , CC: , References: <20221024031403.1572010-1-spiked@nvidia.com> Content-Language: en-US From: "Singh, Aman Deep" In-Reply-To: <20221024031403.1572010-1-spiked@nvidia.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: PN3PR01CA0133.INDPRD01.PROD.OUTLOOK.COM (2603:1096:c01:bf::15) To MWHPR11MB0062.namprd11.prod.outlook.com (2603:10b6:301:67::34) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWHPR11MB0062:EE_|SN7PR11MB6897:EE_ X-MS-Office365-Filtering-Correlation-Id: b73623bd-1b37-499f-d92d-08dab7fa514a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aQ348FaRdjtufj9s4bHX/TbRaj1P/Ys1fY1jdfvAmsLx6C4K8/t2o3Y5Sbdqr788ZaWAfrxZ45jcW/GOE6/+iTPihj951+QnSA7m93HrpVo5z3MNR/Gn4kzy8gxBDS5RYWfh/wSnleovegySIiMVaumPLBHfaLynfVylnNPg44VjLeFx1a9xLKIJNji1vT9ASaz8Wc7x6SlnM3zW6nHsQ0BKFjW1tQ3DZ8SsMtawgRc49fWfyZNrw75K6HkyyR6Xio7LLSER0fDdOCZYiSPMY1KYW2UGTEe177GDdBAhKU3FO2Pub+jJc2b50t4Yx5bwoqSdMzu6UUuahxLsI/6HUadojbpfFm5W384nGuuFcOlkAaaVKSNRh8It1wqr2uGniMLAAvdSr3ySjarA2c7DBoVM2EjuhSyUtws2kURysWNIZ3ga/1zIXgRA88Ne/gbbYGrmwWtATVXo384N/TieBwI0IM0U9LDnPLcpBGmgbYZT6BbXUg/OqNlJdmQxqdNLXmBbNWR9GZRAUid71QSAn31e20PAyeiUZB/pbPOGoq3DBXiPmMLn12mfK/NhqY0iBxP/hvVw6jKgUEyYlOfkzNp+pCfZt7IbMdmRM9LqRzNtlnn03virThNP6MgQR2yljO4AG/lclVMe29GTgSEokYRN4CibMtb9UddnV/jpAsiK47Z5+6cxJCCY4DKsx42O8Pg7owqttWnQAeGM6s5GLE7krXnS6fkd1oWH0E5e/l/5uX/Gg6rdoomHsgSTGVuNfpx/nFdEuSVChTVJyXI6uouRHjlMJPYXP/H/inK6F0k= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MWHPR11MB0062.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(136003)(376002)(346002)(396003)(366004)(39860400002)(451199015)(26005)(8936002)(41300700001)(6512007)(66556008)(8676002)(5660300002)(53546011)(4326008)(66946007)(66476007)(6666004)(36756003)(82960400001)(6506007)(2616005)(2906002)(316002)(186003)(38100700002)(86362001)(31696002)(6486002)(31686004)(478600001)(45980500001)(43740500002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MTBMeTUwUkl5TFZNQXUwKzZCbEhTRDEvZEdibzVHeWNPTk40RndJUlpOemhs?= =?utf-8?B?d3h1a1U4Vnl1cVdDVW8zbnpDMkJxKzdDQ2dmL2Nrd1hyZjlBK0gwRjIrREx1?= =?utf-8?B?RWFLcmNuU3pMb0VmVnRON2xlSkl3ME1kQytTMFVDUzZjREZCVklEQklwRU8x?= =?utf-8?B?RFZ6ckRCRVkzSjZTVXpIazRuVFdrMUdES2drSHYwWXBaMjVKL0JKZHNSeUMy?= =?utf-8?B?Tmc0Tmo0QkJGelV1T1Z0RWc0azFrYWplMlBVZDAxME5ROHVQcDNwdEJQczA4?= =?utf-8?B?bnlPcHQ1SjBrS3A4alZzSUNQcEQvL0JJN0pRUDNtTHNBbjZ1K2lTTjgrWVpx?= =?utf-8?B?VGI5clRSZGN2aXRrdzl1aUNBTE5UcFhrd2tmNVpTbHhVNGhIRkRYTmFTNlpV?= =?utf-8?B?TGxNUDRUR3NOQi9pNlJoWldMQnNjVzZDZnVZL2I5MkVGSVVDcFVHN1pGUGlp?= =?utf-8?B?bnNuZmJyeVh3MlNGTXZrc2ZUSlRHUkZYVFR2a3NoaEUzRll3Y0t4TW5wNWtt?= =?utf-8?B?MytMTE51RkRtRmc3TGw1ZFhhdExBVUlKMkZFSHhmWHlSRFlXQldlU1E5KzZK?= =?utf-8?B?WEtQTTVnTnI5UmFDN21lbS95bnNGZzdyVFNVQU1DZUR3L0tiby9QQ2JiS3VS?= =?utf-8?B?SmJQRHYvTi9NV05vRHJ6c2lYbE1TNWJVT3doOFI1TlgvckZVbVRPd2doTGk0?= =?utf-8?B?WU1LeThnYy9oVmhiNzFSWDVTNThOQ2ZrK3l5MEQ4M2hvYnpoS1FxdWd3NHI3?= =?utf-8?B?Q1JndjVXTmdDczBTV0lHT01qOGduR1FIbmlLRGFITUhUQVdaNWwweXdFMFA2?= =?utf-8?B?LzB3WlVhSkI3a3VNZE1SV0tFbzE2Q2dkZUlTK05vZllZM2RMUm5ibmV4YVAr?= =?utf-8?B?RW52T0JwSmlEMVhvK1BPQVBzU3FVSDZJYm9PbkxMTlc1YnFWZzJ0WlZRcG5G?= =?utf-8?B?WitlRkNLWjkvcy8weElHOXRQQ3dPSUdYSlpiYTIrSFJmUjJSQVZNbEVUOXVD?= =?utf-8?B?c0xKV1BPczdxdE5nQ1dnS2FDaEpJeVVkbGY0OFk2Y1ZEeDRGT1ZYVm42UVFO?= =?utf-8?B?akRmSDFTVlp1ZUVBU2VVQ3hNWWJmYVduYzhMSGxDNm5uaWc2T2lRbGJDcnlx?= =?utf-8?B?VllzZTFTQWlGOWlIOFJEam9BVzNPZ3IvUjJkYUNsK1hMM1JSMERGMm94UEJn?= =?utf-8?B?dVNDbklRNVlXZUxMNjBER2poMTFIWGNIbjljeWxNNjkyMWxCQlF1TzJuRVhZ?= =?utf-8?B?ellvMk9kMldKRjYwWXZDTEg3dWlvS1ZuN1NhWExrYUtYaXNMdzRocHZQMUlw?= =?utf-8?B?RjdUenBRUWxWMXBDTG9yamQxbDJBMlNDNWU3QXh3WFI0TEtLOW1jQkRuU1JS?= =?utf-8?B?SXVFRGxOaDlZaVY0MjNsTlJUU2pWSitsWWw4ckl3TFZwMGxSL0FNa2EvUXp2?= =?utf-8?B?VHRjUjVQSExxUWc2MS9PT2QrdXZYS1lZaXV3MjBzV2tvdDliRUNYTTFqdTZ0?= =?utf-8?B?Q2VKemdkNVh1ekJXRmEzWnp0ME5Cejg1Qk9OYldaRVNPM0tuZ1hrdjZaeXB3?= =?utf-8?B?cWw0WVVzNU9UY0JiTWxQU0tlVVFxSXo4WEtCbnR2V3NrNzJBbHhtWnYyNkY3?= =?utf-8?B?WVlKeUtiTzRKUjFKbjZoREs1RXUwMmZRd1VaWHJhQTdOWkZpMHh0TDhjSDhR?= =?utf-8?B?OE81UHllZlZiMkg2SnJPbFZRd3kzSFo2ODF4VlhIK3VtREhTS3BVb2k2VGlw?= =?utf-8?B?STB4TE5UMThjZkJ5TkdLQkQ4eU1HTitRVExxRTdmZ1ZSZmRuTldtZ21YRDZp?= =?utf-8?B?aDZROFZkaTVTeDlhSnFndnVkRzMzSnRRdTBTS3FwMnZYMEhaZ1VYZ08zd1lx?= =?utf-8?B?T3FabjlkTFJoQTVPdnJUZVUxVWRtMy9Ob3YvYTJrbHFsU09FZTljd0loK0Vq?= =?utf-8?B?ajFCNHBreCtxQUw1akZyN0hzYXVzRGNSaGdpUWtFb3g1S01rbThlZUVYMW9Y?= =?utf-8?B?NlBsQmU2UnI5OWdwWWNuMGpWenpUazhNR1FDNDF6RkswUlZjRS82OE1tZFhL?= =?utf-8?B?Q2dXMTk4Nzh4aUM5RFNFVE0xNU1mekJRaFhBV1pkbnVLc3FmMS8rWHhDb2pJ?= =?utf-8?B?cmR1VGdpTmE3cm5kSDJBWEJPajJ1bkF4YXp2NzdFNG1iYThXOUJwOFc4NHVN?= =?utf-8?B?Vmc9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: b73623bd-1b37-499f-d92d-08dab7fa514a X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB0062.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2022 09:04:56.3350 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0MurbbNu3DOgQbydN5QFHd5e5dJEqbuyazydpGtEfcIZQmZNxV4ooqa5QXmyzmBi58UppyYb3QCJx9OnqDc7gv4HZ67/2XvvfAg9nQ2ielQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB6897 X-OriginatorOrg: intel.com 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 On 10/24/2022 8:44 AM, Spike Du wrote: > When testpmd quit with mlx5 avail_thresh enabled, a rte timer handler > delays to reconfigure rx queue to re-arm this event. However at the same > time, testpmd is destroying rx queues. > It's never a valid use case for mlx5 avail_thresh. Before testpmd quit, > user should disable avail_thresh configuration to not handle the events. > This is documented in mlx5 driver guide. > > To avoid the crash in such use case, check port status, if it is not > RTE_PORT_STARTED, don't process the avail_thresh event. > > Fixes: 0edfc9b08316 ("app/testpmd: add Host Shaper command") > > Signed-off-by: Spike Du Acked-by: Aman Singh > --- > drivers/net/mlx5/mlx5_testpmd.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/net/mlx5/mlx5_testpmd.c b/drivers/net/mlx5/mlx5_testpmd.c > index ed84583..1a9ec78 100644 > --- a/drivers/net/mlx5/mlx5_testpmd.c > +++ b/drivers/net/mlx5/mlx5_testpmd.c > @@ -25,6 +25,7 @@ > > static uint8_t host_shaper_avail_thresh_triggered[RTE_MAX_ETHPORTS]; > #define SHAPER_DISABLE_DELAY_US 100000 /* 100ms */ > +extern struct rte_port *ports; This might not be needed, as we have testpmd.h included. > > /** > * Disable the host shaper and re-arm available descriptor threshold event. > @@ -39,7 +40,15 @@ > uint16_t port_id = port_rxq_id & 0xffff; > uint16_t qid = (port_rxq_id >> 16) & 0xffff; > struct rte_eth_rxq_info qinfo; > + struct rte_port *port; > > + port = &ports[port_id]; > + if (port->port_status != RTE_PORT_STARTED) { > + printf("%s port_status(%d) is incorrect, stop avail_thresh " > + "event processing.\n", > + __func__, port->port_status); > + return; > + } > printf("%s disable shaper\n", __func__); > if (rte_eth_rx_queue_info_get(port_id, qid, &qinfo)) { > printf("rx_queue_info_get returns error\n");