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 8918CA00C2; Wed, 2 Nov 2022 15:56:19 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 684C440223; Wed, 2 Nov 2022 15:56:19 +0100 (CET) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id C2E0D40041; Wed, 2 Nov 2022 15:56:16 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1667400977; x=1698936977; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=oB+AdKD24QVPCQQav095FwTZSTZJDzRKRBiO42ZEJz8=; b=lIRr+CCzeod8CpeeaEgFgJfou9NVaIYlyFQ8/L92XR0SySMhoZQGcXxF 15r2/o4AgybkpaeZIsp3ZyMHdhNpOdcBJoeTZv+HKYJgVdDEzYUs/qgnV TvCb5rLIvLrSGN4MWM83z3dfQzQhG0thj6unJgNeV6v3ZvIowxCJ6foBW yZ90Hi3oQd83YJM41R1K8sxkc27zUu/knt2Nt3fS0rfbbFwuph5Wvu04K Ry8dBejO251YcZ0mO/FuKg9CoFKlypqAZV5PhOf8E+ySKGzZYfeLsuuKN gimyXODD5KvKKBbnY6LAMlWyi0eC0siZqu8J323FOreap5hz/f36wLLox A==; X-IronPort-AV: E=McAfee;i="6500,9779,10519"; a="311151847" X-IronPort-AV: E=Sophos;i="5.95,234,1661842800"; d="scan'208";a="311151847" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2022 07:56:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10519"; a="739784362" X-IronPort-AV: E=Sophos;i="5.95,234,1661842800"; d="scan'208";a="739784362" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga002.fm.intel.com with ESMTP; 02 Nov 2022 07:56:03 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Wed, 2 Nov 2022 07:56:03 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Wed, 2 Nov 2022 07:56:02 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Wed, 2 Nov 2022 07:56:02 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.173) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Wed, 2 Nov 2022 07:56:02 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F0Mxfs8QaD9OnMYAcYmKieoUttCNznWc0SMHf1+VbQCMZrR2cyimB9K+ZWhb1L2lHiItVE4nMlPuwdhSOVydJU5eIzJNxF527hlal3Z4pAe53y/alNqNPBROwOqp4NOs244/j/saaYwXtfZIiitU70Q/OFiDjV9YjPji9iFGkZjbr4twOC6NSc29EOTpsNWsIJFlp2qXO90vfjwffU4ETBSih5VZKQ2G79AJQjLgM5I+skbfz2KUn1CEl2Y3sWnGEjsXlC/WZTQRhsvbIXUDhKra2Qw2fC7/1MJMlFCqaq3y+QSNfbqcssYQmxZj5RVgexxbReV/HFG0M8ZZSabV7A== 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=nbKdQ1pQ3isb+86NkskoQXfpnGFfL36TGX0Ksdq099g=; b=OmuZaW7d+moxaKxGebHulIPwa9/esGUA0GLoFFS6wKAmN17Vbx4+GLGspeLLAD4nSLjnONfY5Tvn7angTgfrQo7XF+7WweG4EH72Bj6Tz2wGG3Gx+mupZ8Gfmdu2XxldS+ABlpG3kA67qj6Yudx1Hup+5RgJgFmw7fvlSCa98uV3TVvsq8bCRY7XAqESG6I9D26YjMBFtzJ2UnaRsjkRM9WCtMp5Q32P/dH2YNMv6nFdDKYtJmUaOLQaTBAZS5anZoKDeBDBmt69kGynnjMaKADssqxoB2myncbHoWa0KLdV82uSJc1ZMYHFc5KhGYUaqUtXJzFRiHmq6Cntbd0GQg== 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 MWHPR11MB1741.namprd11.prod.outlook.com (2603:10b6:300:10d::20) by MN0PR11MB6085.namprd11.prod.outlook.com (2603:10b6:208:3cf::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5769.19; Wed, 2 Nov 2022 14:56:00 +0000 Received: from MWHPR11MB1741.namprd11.prod.outlook.com ([fe80::cde4:4f12:9d90:ed6d]) by MWHPR11MB1741.namprd11.prod.outlook.com ([fe80::cde4:4f12:9d90:ed6d%11]) with mapi id 15.20.5791.022; Wed, 2 Nov 2022 14:56:00 +0000 From: "Pei, Andy" To: "Maheshwari, Abhishek" , "maxime.coquelin@redhat.com" , "Wang, Xiao W" CC: "dev@dpdk.org" , "stable@dpdk.org" , "Xia, Chenbo" , "Mandal, Purna Chandra" Subject: RE: [PATCH v3] vdpa/ifc/base: wait for queue disable before saving q-state Thread-Topic: [PATCH v3] vdpa/ifc/base: wait for queue disable before saving q-state Thread-Index: AQHY7qVLrUWURfElE0a8hkjEMv5G364ruIYw Date: Wed, 2 Nov 2022 14:56:00 +0000 Message-ID: References: <20221102032215.2108558-1-abhishek.maheshwari@intel.com> <20221102095458.2165448-1-abhishek.maheshwari@intel.com> In-Reply-To: <20221102095458.2165448-1-abhishek.maheshwari@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.6.500.17 dlp-reaction: no-action 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: MWHPR11MB1741:EE_|MN0PR11MB6085:EE_ x-ms-office365-filtering-correlation-id: 2b1de37f-d541-488a-c92a-08dabce25b05 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8T+/XdrGzVdiNJaemrwnTDZ31UpxdvzrdkDovQaYipediLXZmrFwRIgcgxKD6W0+Kgjk8pDiUnKwRBjyvva+PuHI/is/CpqATPhBKwImox+P9XIl4c5hDjlkkSeribxur9F5+yIdqIt7oK3AtXqOhXnRTWVoNcwRhL8blw5aPBklJTlNClicbiqFlzNJhh63yNFwhyc84OSxoCtCxBRB+Qr2dKz/hR5CVqAHdJ6tdwLvDmzYkP4eT1p5+GfEXLEPTzLtSE8Jn+GMntHckwjFbZrdcQBVa2bX/ss7AAqFB/Pm3D/AVxVl6uDi4OtrPNVj00IgNS54N6Y4ymfUTQr2MyDAwwMmlJrq1UH/EMHX48D3gsb9aJvpiuFUkSDMNnDToZsL7jLxi72b4bnaHBKL0X1oUEOFy5LJg+tiEx8StZUACuY5WpqGrwv4wCtzj4UVfbbff428saWe2Al+L+qbHLrKuPXv62E1tK5b2oX7Rmo2hBbesA5SVl+vgceyoRtsmEpEGLDzSuWkovXmlue5HjwJwD0ZyUvV6Xhzd+RVLeIk6aHg5nHZRFR2LjqkwsOJhw9qAepo9omcGzPp5NV5HFxHPKa4r95V2HVW6LIH/V1ymdl2e+aDYvBRJxirjQAJtbqdqu08i5rnPYerdlwnSfb21K61PX3C8NXzJQYCKiR2667JNRBPE/6KWugjtEMAWo9oFamKfNdLF4VDiVfVy4mpamYYexrEQNBy00XUdEF2VG+mn0g22c+paZujhD1STr3f25ISIzeqyFuaq6n/WA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MWHPR11MB1741.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(396003)(346002)(136003)(39860400002)(376002)(366004)(451199015)(64756008)(186003)(55016003)(83380400001)(7696005)(66446008)(86362001)(26005)(52536014)(66476007)(66556008)(41300700001)(5660300002)(8936002)(33656002)(38070700005)(478600001)(76116006)(110136005)(54906003)(6636002)(71200400001)(2906002)(107886003)(82960400001)(66946007)(4326008)(6506007)(53546011)(9686003)(122000001)(8676002)(38100700002)(316002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?3uDfrq1l+V1/eFCB3hbE/lIXpO58GrFCXvI0JWeImo853ynkHk8vbn4lqFpw?= =?us-ascii?Q?Gy6GA8UsCvrz+Kts3DaVERbL7ubZujTeH4EmZTSuQ+fkXgGUMHIsEcWuSZ78?= =?us-ascii?Q?Fx5wPI8CZtRb09xef014myVpb6TML6OCMwnkRWLBKZCTTlvhE2jJKdOFl8DG?= =?us-ascii?Q?lg+CHzAQGnBQI6WfOZqFpIMk+8gkK+8a2OeOMm/0WehPToOapARzioKpxn/z?= =?us-ascii?Q?gIdob/Kgf3RzqKJnncNevIQPlxyhiCU+sUwIJB3p8IDlEatZX/yBek4V2Tdg?= =?us-ascii?Q?u0U4Bdh5Z/pwKI0QqJTEeiOyg6YihOtTIj2KrvVxmzotBkCXbP10ok9UZDM+?= =?us-ascii?Q?0E7vtNtO+APaRWa9kgUjnAaajnOORh+OR15e1hLE64xdVmI5vAaE4B0M4Tk8?= =?us-ascii?Q?VHdCenjO7DXRDepATJ7HLg++L3aGZNbLGFqviuI6JFyp1Aw5wr4vJ/YWM/H/?= =?us-ascii?Q?3zd8UV+0IXUwfPL893eE9oHot0vGiD1rFt8Bhtd1IP5R7a0fxDC1I8cL4Cs6?= =?us-ascii?Q?3Fo50j2QogzUOHyAc66A3woLw2HFIJFCf9NQI8Hawe4Glj5MsTy+Rz4Lt991?= =?us-ascii?Q?A478RHIw7XYs/BsYLRNhMgldh7sPaz7cLjff4SQphNTATidfD1VXlV6Ia5D3?= =?us-ascii?Q?eK+PxyNaERpO86CFMaDrHe9OYjTvzlXMyt5OKSwBfyRMlInZz/1MdOpsWFcd?= =?us-ascii?Q?9pXsJr2FzOassKvCjGvRqlwLKjUe64blHZy+QK1WHHacsX2Fx870CS/FMKqy?= =?us-ascii?Q?ypSuKtnZCtR8JCcc3sNqebDKavoKwcf0TzR2jn/PR+1ObtOBAUM+aCouIihF?= =?us-ascii?Q?Tr5HRJ/Ua/FrsSKMiPO3e37rPHqBYGEj+RJJk+zgeWIVP982ZRJjhNrRVZRc?= =?us-ascii?Q?AdKTcXRevnRTrIjaBnO5Pr3ma8Ossv3rSCX/NRuEYsPNJegRWdLmWVtMmjib?= =?us-ascii?Q?iC5vJLFNqRtCm1E/DYZvV3IPB0P3w6wQY2cFlVIOYb7/erSj/s++BvdtQOpv?= =?us-ascii?Q?breS1mS/CxDstm/fLuHraFUsXdCbvFWGNJZIkcNNIVyxfzenAvcunPwnuz6Q?= =?us-ascii?Q?D0+JCJIjOIDd3cQd8lXZBFqLRtbUguZ5NbgOJnLyXYWBqV/Z6wymKgJZw9e/?= =?us-ascii?Q?mIU62m5/LKbPClOA65S6OHUHN4KoQN09LbMhfoOlPpRnOAxyfVefxyETSEU7?= =?us-ascii?Q?W/HA0Z2ce2DO1tm8Dhv5G1d265S78fP5twiGb0AgsLAKb8EjZQ+SfuhEgWPD?= =?us-ascii?Q?klcaLZhq8InsosFL8NeF4eJNNxwaZIsdACBNvn8ZMj0EamBrwV4nJ5ai2XZn?= =?us-ascii?Q?sP8OrkKUH1Kq7ZxHHfU15KuZ/dXq9EzvamCtxgQbQn0O7NenslAPRqv0F6KO?= =?us-ascii?Q?rcNGUqj/2OhZvQnbDVshog0IBCOxpvQiRDeeHTp9F6FWjEJcsK7pqZcNXXNL?= =?us-ascii?Q?nwKCvPpUlbgPiVnOy55gm8GA7t9tAsIaZ4r4nEnHTeQ3cl/e33m/PKwBuj2C?= =?us-ascii?Q?LmypdwZhk2BgFVdE4vl0BT3ZReOdUbsNC3TVEEYNrRNQ8/rZww8coYy2uczo?= =?us-ascii?Q?5ZxjSEz0L7d9cdd2BXKIKS4wNkEr7jOpRBsapS0e?= 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: MWHPR11MB1741.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2b1de37f-d541-488a-c92a-08dabce25b05 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Nov 2022 14:56:00.1770 (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: MEIZH292O59YYtfLLrEHDS4+aKLd8Z6RXALkCDxH/eWGAraNoM8hXPjDOmki6A7eGw+FNirNA0x3xqMqdc8qJg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR11MB6085 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: Wednesday, November 2, 2022 5:55 PM > To: maxime.coquelin@redhat.com; Wang, Xiao W > Cc: dev@dpdk.org; stable@dpdk.org; Xia, Chenbo ; > Mandal, Purna Chandra ; Pei, Andy > ; Maheshwari, Abhishek > > Subject: [PATCH v3] 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 driv= er > should wait until the queue is disabled from backend. >=20 > Fixes: 5d75517beffe ("vdpa/ifc/base: access block device registers") > Cc: andy.pei@intel.com > 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 > --- > drivers/vdpa/ifc/base/ifcvf.c | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) >=20 > diff --git a/drivers/vdpa/ifc/base/ifcvf.c b/drivers/vdpa/ifc/base/ifcvf.= c index > f1e1474447..06996fd5d7 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,21 @@ 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 Q:%d disable, Saved state > 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 Acked-by: Andy Pei