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 9F86CA034C; Fri, 4 Nov 2022 03:32:29 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 39D7940150; Fri, 4 Nov 2022 03:32:29 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id B8DA8400EF; Fri, 4 Nov 2022 03:32:27 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1667529148; x=1699065148; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=18VORZsZavb71f5PsLt92MnS30TJ+0dM+uTaJVO4nmg=; b=HYNXtVUuj/IDDZOhhbBPNuxaShb5vR0YwV31dfASZDLguTFTm/p1MeVV jsJhDwJhc/l3626gkKcBdcMLUUsIVQLpOdIL7+Y4YCIKastb2o9EfxbmX XQQbdo3/RBncMRPiZpWQMohotvvICx3OV0VdtVCResW5NXHUciZ38L/Cv WeXITtcZ9Wqv5MSVjdd5itxea/lo4cbHpgfba8007il228whp//agQY39 1KC6h2s28SgSn9KJwrb78xzrDEVVC4lDuzwsKw3SFGx4NpWsaumIkSIZJ jeQKv++T2cx6nSiM1UNxPfLodNhOV7FeKj0zXFHXbphfXyldh/usPXrJs g==; X-IronPort-AV: E=McAfee;i="6500,9779,10520"; a="396162217" X-IronPort-AV: E=Sophos;i="5.96,135,1665471600"; d="scan'208";a="396162217" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Nov 2022 19:31:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10520"; a="634924557" X-IronPort-AV: E=Sophos;i="5.96,135,1665471600"; d="scan'208";a="634924557" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga002.jf.intel.com with ESMTP; 03 Nov 2022 19:31:57 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) 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, 3 Nov 2022 19:31:57 -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, 3 Nov 2022 19:31:57 -0700 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (104.47.51.44) 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, 3 Nov 2022 19:31:56 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d3T11xKbIkugwXoT4uyDYhKiXV6AylJEPyrlw6hT08/gwh0WocaTXjw30Y1DrrN+XcWMchFsf1SPySc36MTTAoezIaT5uXTvZSthrF5aGMyeWJx+Zhsa7xwdT/Z53RHwS8Eem/NRL9v2VFP8uZ2ZkbEWKzDeX7BjPTTcYBi3a41EWdqBYq3HqbHs57qQlKg8yr0aO98+2FapRkuJN6b1WSxnh49zB1AWVeZyGtA8+Us7dq9jQF9C0D0OyH6LGAnUkD8p7LReLj5GMANixJW/u0tuV0N5WoFmEwf1bL406+Ag7pr3nY+DJj+lgC7pBMfNKIKr7bRvmcHcpN7MLcyTWA== 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=Zlxs0RGKr2i485t7Zquy2+IrAEDicXpJ5Y6IxiCaulo=; b=UYm1ht+jTXM4nl4dcorHvYk2mspuELlOzOK91q57C0EQI+hxFOmlJALidvKZy9RdXn5UYvMvF+BouKJCGbdASFog+BVaVma9FlhX9f5VUlAyMZGuK0j4naQ+3Z32xiv0Re6BR0sKFOCgjXzIaN5O41m0eOplA0ESncJpmjCTX1b2TYnUd33y6N/Snrq3D8nZY58EmnDbNItK7LxEDm69RXqnvbAZo6HS8EWc9DMnOndUIZxm1Ah1nPXr3R/D24f7+8lXHJAtVajlgFagopGccTm3Z4XP+qgq4gSH8JQOimG6qNXmoRKCpVWm4hGNILJieEOtnAoqCU4R7Ve0i7VoMg== 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 Received: from SN6PR11MB3504.namprd11.prod.outlook.com (2603:10b6:805:d0::17) by SJ2PR11MB7546.namprd11.prod.outlook.com (2603:10b6:a03:4cc::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5769.16; Fri, 4 Nov 2022 02:31:54 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::3c6a:7a7c:129d:aecb]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::3c6a:7a7c:129d:aecb%4]) with mapi id 15.20.5791.022; Fri, 4 Nov 2022 02:31:54 +0000 From: "Xia, Chenbo" To: "Maheshwari, Abhishek" , "maxime.coquelin@redhat.com" , "Wang, Xiao W" CC: "dev@dpdk.org" , "stable@dpdk.org" , "Mandal, Purna Chandra" , "Pei, Andy" Subject: RE: [PATCH v5] vdpa/ifc/base: wait for queue disable before saving q-state Thread-Topic: [PATCH v5] vdpa/ifc/base: wait for queue disable before saving q-state Thread-Index: AQHY72u0hwmiFiosgU6N4LhCid0+pq4uCpnQ Date: Fri, 4 Nov 2022 02:31:54 +0000 Message-ID: References: <20221103043635.2334541-1-abhishek.maheshwari@intel.com> <20221103093500.2337873-1-abhishek.maheshwari@intel.com> In-Reply-To: <20221103093500.2337873-1-abhishek.maheshwari@intel.com> Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN6PR11MB3504:EE_|SJ2PR11MB7546:EE_ x-ms-office365-filtering-correlation-id: 20939af8-b31d-469c-377d-08dabe0cbd21 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: JoXyN5n7hWfa+7lGXIP4UXpQQQdrklogSkojT52uyb0xKMY2g3vWutLdlC01Iy+4KjsJZ9gj5AXcjofnKID5/bSjsgBO4z/7mfdS6zJdI1KgNcvn1Vt1uY/N/lXmF2bj+RtWNbb/aJ7+reVL92RytVPJ0r9nA0FffX0xLWWfn5AUSjm9We0OJ9P20i2cPOrn+x3TmqhMLnhcgBqtlVXDo+iKi20Gz+FFjYS3uZKwU9i0l17TDbnm8f1P9P1d3b8Rslo/zUJ5fE4eGiTb3OiWUYgocq84PIZ+3tQxrEUJRDqf1pqQyOejS4yJCcIm7O8kEclchEJrjnXohB1UKuYFAM6KNZe8fj0BXrlKvDNgBatsJwiHkjJM2w9Xni9mmm3lnkhpXo7ArX226fkqDASEN0+utfVDJsIp97DLXypss2Dl7mL5njRIJannfdwEKiDxctCLTKmDRYVKavlaU5OdaQoxP26v/TgnXVvE8xHpX8gjvIF5RPZPGml9WrcLFt30NDkeo4wJjpPBjvEvpl4F0qxnJD7bgrz18JBwto5r+JTcNOhGzqQnjw4LcS/2XyK3V2QuN7JXRMck2zh7ya+HhqQ4ANQbhckM2zIY4F5sRf9Lv3DhnnuaRdwog9LP5J/gdev/EW1oAtlt6eRIKY4qe7c0w4GA/UVdAR63LkVmXaQ16SCmJLhC+rmOe5b2OIUHc82Dr03XdZpv+FnACLaVVJFzz3q4rtH5CgyM6UDuPX6TDanmydx9c+gSfAaN+Z24yvGBVee8HztoexjhSEBrxw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB3504.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(366004)(396003)(39860400002)(376002)(346002)(136003)(451199015)(8936002)(55016003)(2906002)(186003)(5660300002)(52536014)(82960400001)(478600001)(33656002)(41300700001)(107886003)(53546011)(9686003)(71200400001)(26005)(6506007)(7696005)(66476007)(38070700005)(66446008)(86362001)(316002)(64756008)(110136005)(66556008)(6636002)(83380400001)(66946007)(54906003)(4326008)(38100700002)(8676002)(76116006)(122000001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?YWkJ9rR3FqpKGhuvE74Ba7l+uygc6jlHojrqldEXkm8E/TSl+mtTRLMTNbsD?= =?us-ascii?Q?5pqbs+mxgDRgIz2Qnq4Orml1JSD/AKdO2ICxoFnkBtUyEfJTE7AwO1m7k3d/?= =?us-ascii?Q?QmLGmKrWt0mET3G1JjGgyD63cF0iSbj8idObR9n/+sckLiIMK3Ry9RVrZfUu?= =?us-ascii?Q?6/FAVlL75ZAMZnFz7AdE5Evlh0Jvk7jEYk4LvX5s2cNkOcZmM2XS/boYbm4o?= =?us-ascii?Q?WG7YQV6vuFulFI96BaMDMPwvJafojhyX3Cx0Coag8cwCSNQfPqH/Y/DP2sh6?= =?us-ascii?Q?i6y6rXxUx5SgZcW505JJ1Bu8W3QB3vswwMEKEorPUQaagLxxYzClVDWmTlzi?= =?us-ascii?Q?0HmqVIAnWqgcTDO3z0JTX+WXc7jLVrkC28WanKeMGVq57c+YXT+PIMAFTQxq?= =?us-ascii?Q?bh4chPF1PXyNW7lzdakfBOcG3rzDMFrqZCPPatAW64OU+j8nfiorjhmq5sQd?= =?us-ascii?Q?2RJ8aNHIouNa8HHymriXrw+1oPH6doIntP7Fnma/v7ylkbvWzYjeCKqCVbuU?= =?us-ascii?Q?6FF0V/coWAtjX2+AsrsHJGz3ZoHRe91hAN9QyJQnbFx3vqntjNeaqop39Fw/?= =?us-ascii?Q?Va/xwR7oiM5lyHX7RAUIwE/Fhn9eL8BWUzMV6ucisnpc6eGX0l18fA1FHZmb?= =?us-ascii?Q?6V6ZsTw5sjDy26aMbdmzSXlpac2Bqk3YEkDg7JJNR291lQL7icoFYoJ0SYIP?= =?us-ascii?Q?zyj+9aztT3D4jgkN0WCz5h14xsI8wGZlYjEC4fu0PaVLubFzoqwTL9EKs5Wi?= =?us-ascii?Q?Vn0gHiwnu2O2KAEQVKNUmfpFMVfAd5AtdZRgi5yeNCH0nQ1U4dla3BX3Ozc0?= =?us-ascii?Q?dead4GiZxdy9sUDKjVfTA1LUfbwUrG33iAgIiElqHXD4dTGwTycGat9tl7Jj?= =?us-ascii?Q?UtAx4hXBSg2MOyEeYmyoKsQ64RbNY0rqtef4PC2R654LD7Ie/uYPOFwHvGsq?= =?us-ascii?Q?svmivqidDmRivmgeGkcN7VIJvfVms642dHeZnEk4/EXNwhXeZsrgt9YSmeQv?= =?us-ascii?Q?P571bQBnOcyYjdQblpNVNpbxopc1Z2ONJSLniHoA8O0LI6Ga9oZjx4fL9Bx5?= =?us-ascii?Q?SzFM+qQWbS/ejlM61K1Idt3jzdOr2T6CdDB+VrjzRBHSSewVl/CjnaI4/O/i?= =?us-ascii?Q?XaNXcD3yOabNTZ9XS04eATHlt/8LYe+EbsJfSz2jmxTbphiT0zo9gsirLcCr?= =?us-ascii?Q?EKkyF/9kU2NiAaXUqjdF0+JTTjP7fbnVsZsGp6ixxYciHz0lWFf16EP4Gamr?= =?us-ascii?Q?/nqQbfIKE7HrRrglxsuu6jXvU2vfOgANKKmmM0qYW9bp2BnFrnC6U7V9C0Da?= =?us-ascii?Q?qaxFMZDj1OVLlFKcNlUtlWb+NlQ2S6O87EpF0Ai11CqxYCn0qROHYHiPbp20?= =?us-ascii?Q?sycSNeF1n5zeQ3gpcVZoUAeOdVcF7TjWLTdM1OsOxMhm2UNUCekyi74Y5H4p?= =?us-ascii?Q?n4rDSQ2cG8TDav0qoeNQGPlAPAqraPiDzLyDO7VjRGevKf01NV5i3u5SYIr5?= =?us-ascii?Q?opaT0+4KEECzWEsuma4yIMK1TOMd1NpYYa++Fo1kH6bx7FeBvddbcHheNbWg?= =?us-ascii?Q?irsGII0ztqGFgoVU+qNGn4081jFMDzgP7po/ZihG?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR11MB3504.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 20939af8-b31d-469c-377d-08dabe0cbd21 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Nov 2022 02:31:54.7677 (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: Dhunkal8vBC/SKxemA8YY6zIuZ7x1jfJyGVVPopZk+3rpVLLgYG0HnFQA/sZN5lRhma8L8tCISpbLYgOEm525Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR11MB7546 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 > -----Original Message----- > From: Maheshwari, Abhishek > Sent: Thursday, November 3, 2022 5:35 PM > To: maxime.coquelin@redhat.com; Wang, Xiao W > Cc: dev@dpdk.org; stable@dpdk.org; Xia, Chenbo ; > Mandal, Purna Chandra ; Maheshwari, > Abhishek > Subject: [PATCH v5] vdpa/ifc/base: wait for queue disable before saving q= - > state >=20 > Some ifc hardware require synchronization between disabling a queue and > saving queue-state from LM registers. When queue is disabled from vDPA > driver, ifc device stops executing new virtio-cmds and then updates LM > registers with used/avail index. Before saving the queue-state, vDPA > driver should wait until the queue is disabled from backend. >=20 > Fixes: 5d75517beffe ("vdpa/ifc/base: access block device registers") >=20 Will remove above blank line and add Andy's A-By when applying For this patch: Reviewed-by: Chenbo Xia > Cc: stable@dpdk.org >=20 > Signed-off-by: Abhishek Maheshwari >=20 > --- > v2: > * Fixing the styling issues > * Addressing comment to avoid reading the register again after > exhausting the tries >=20 > v3: > * Fixing warning condition >=20 > v4: > * Fixing print argument format to %u in warning >=20 > v5: > * Addressing comments based on input that line length limit is 100 > --- > drivers/vdpa/ifc/base/ifcvf.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) >=20 > diff --git a/drivers/vdpa/ifc/base/ifcvf.c b/drivers/vdpa/ifc/base/ifcvf.= c > index f1e1474447..60555a6786 100644 > --- a/drivers/vdpa/ifc/base/ifcvf.c > +++ b/drivers/vdpa/ifc/base/ifcvf.c > @@ -257,6 +257,7 @@ ifcvf_hw_disable(struct ifcvf_hw *hw) > u32 i; > struct ifcvf_pci_common_cfg *cfg; > u32 ring_state; > + int q_disable_try; >=20 > cfg =3D hw->common_cfg; > if (!cfg) { > @@ -275,6 +276,20 @@ ifcvf_hw_disable(struct ifcvf_hw *hw) > continue; > } >=20 > + /* Some ifc hardware require synchronization between disabling > a > + * queue and saving queue-state from LM registers. When queue > is > + * disabled from vDPA driver, ifc device stops executing new > + * virtio-cmds and then updates LM registers with used/avail > + * index. Before saving the queue-state, vDPA driver waits > until > + * the queue is disabled from backend. > + */ > + q_disable_try =3D 10; > + while (q_disable_try-- && IFCVF_READ_REG16(&cfg->queue_enable)) > + msec_delay(10); > + > + if (!q_disable_try) > + WARNINGOUT("Failed to disable Q:%u, Saved state could be > invalid\n", i); > + > if (hw->device_type =3D=3D IFCVF_BLK) > ring_state =3D *(u32 *)(hw->lm_cfg + > IFCVF_LM_RING_STATE_OFFSET + > -- > 2.31.1