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 DCC9BA057B; Wed, 19 Oct 2022 11:14:45 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CF5814161A; Wed, 19 Oct 2022 11:14:45 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id E8B6740A8B for ; Wed, 19 Oct 2022 11:14:43 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666170884; x=1697706884; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=IUBn3RbYkL3O9Ri16gGIG1Tw1kNhunWthJByMAevPY4=; b=hXn9qgN/gdfyc+/b6LWsVzEBoW/vOYpMahsmoD8z6v7Mcwbi6TicbeAf 7bweNFyo6siLUdPInt182mDlAHlxSX/ptyn/qYcH0kTsvl4XfyzAUmVm5 aAH/e9aapjgq2ND8cbXbFUmJVYYHB4x4PSguO4t+OrkZkMwWBMNkQY1dh do9pXD6d8Bmne84zPN7+mAu6+B5Mhhqd3vMeiLB1Z+gJnvBj+CQ0jx0If kJ4W10jaeAl2F3qo3gc4srWDTkFcJ8cDlm7sZEH25BwNviKHFsIT3Zlje DOx/OzfAbFksFjjk4e286+gk1et1XfklUffqgRPFGnf7NkZn1bwvCDpKJ w==; X-IronPort-AV: E=McAfee;i="6500,9779,10504"; a="332911337" X-IronPort-AV: E=Sophos;i="5.95,195,1661842800"; d="scan'208";a="332911337" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Oct 2022 02:14:43 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10504"; a="660253274" X-IronPort-AV: E=Sophos;i="5.95,195,1661842800"; d="scan'208";a="660253274" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga008.jf.intel.com with ESMTP; 19 Oct 2022 02:14:39 -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; Wed, 19 Oct 2022 02:14:38 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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 via Frontend Transport; Wed, 19 Oct 2022 02:14:38 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.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; Wed, 19 Oct 2022 02:14:38 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CuaQBNVqGOCj7hnYGlLxiPD8ekOkKhEoON65uWaBYT7qX70AK6ScE3qv5snVGjZMOqp7hoMiQAxl4emyjG2b7W9cnqDEFC7/YgZ7LncJ2EOn+1Kn147GEQNOWKHf8brZHJ5k9fYGSnbw15Rucg/kcJgzhgE4Gy0Y24wbqOP5RQ3y7Hqrgw7JB5Ik4XOaTjvWy95qMChuBsbn5ayVOUQaNn/+qZeIRd8BDKNYDhY/e1oSSyl4U/+suDjK/j0DNPSkEdOnbJQBR2DcGUippmpJBu193IZofOG7zim0VzxebTIhx2/ARHgsheN8nextfCjnek8LCKOIvgoErSF7vQsqeQ== 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=uXQdkNXCCMfkt7lqBS8hhrdGam5552p97DMYYnxtc0k=; b=QcY6vWvREuxwd9GpvX3Repr0BxC5tB1YDpCtMwALlLcHojsm1oyGPCAKXL79nQF1ZFYMbj1gEgMqvuzvf3RIQZMauZfwt97+gxin/AemFOTzQ/RL+SSWrV+K5qKnlgRmSq2Pl9NR/1TeovKXoSmVChsZK6OCDA8vvdHBP2Nx/4vgb46IJovs3+AwyYHZ274cLp6v2OBTsrnx0iCXfyDn5zlq6NNLbcLIIksdK+aB3Z/OxWfslxnH4YsLNS5VS34MSsKv8bj8Z19Zy4mQwqWQq4uuzfucTBuci6DvpUy3oQx/hA67Kxq7qsn4S2ibHp5f/0VvgQdiUTodqIZDtgV3Dw== 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 PH0PR11MB5808.namprd11.prod.outlook.com (2603:10b6:510:129::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.29; Wed, 19 Oct 2022 09:14:37 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::39bf:57b1:4824:d40d]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::39bf:57b1:4824:d40d%6]) with mapi id 15.20.5723.034; Wed, 19 Oct 2022 09:14:37 +0000 From: "Xia, Chenbo" To: "Pei, Andy" , "dev@dpdk.org" CC: "Xu, Rosen" , "Huang, Wei" , "Cao, Gang" , "maxime.coquelin@redhat.com" Subject: RE: [PATCH v8 11/12] vhost: vDPA blk device gets ready when the first queue is ready Thread-Topic: [PATCH v8 11/12] vhost: vDPA blk device gets ready when the first queue is ready Thread-Index: AQHY4vFWXOqhpnq5v0q05Alpacbye64VcHmQ Date: Wed, 19 Oct 2022 09:14:36 +0000 Message-ID: References: <1661229305-240952-2-git-send-email-andy.pei@intel.com> <1666094871-25721-1-git-send-email-andy.pei@intel.com> <1666094871-25721-12-git-send-email-andy.pei@intel.com> In-Reply-To: <1666094871-25721-12-git-send-email-andy.pei@intel.com> Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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_|PH0PR11MB5808:EE_ x-ms-office365-filtering-correlation-id: dc142d73-982e-4131-6b28-08dab1b25839 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Aksu1gI6CT5XnmKB4N0TTUoJh4lwHfLyzOdGRNZHrf+p4FTtM6B7TGlb+Zem5p9ubup7OoR5yeZYDe4Cn+KlIhcvgkCBZXfiF84zSigbvnvOJ24Ufg5NteMX44slbKTnio3fRw5b49N33BIpCHbKnXFtF+6LEciMyDVGnlEPORpXFP6YSLNcaOwOBxfEuy01w6umERyiT3tsXPot7pWd9gwnJNJtq0mqhyUTYeKEf2L2VyrEE8bvtC1RthWPWlUYxrltHlS7lcNHKEGCcW/BpEdMFuNj7SR1/3B9/tev2/tsFbR1W77kXvd/1s849VUFBkhYM5/Gr+dmccEcAE1pd6F/Gam8rsFCRvB9AHT6e+dwEzmTVxSrVIxzDU3fg3sHTqfqiSHtsTa9Mgz6Sq6g/k7J5MaJXG03cPMSJG/VC+TYPk57y8Tub+vssaxi9ggmudHvaCUKRpRj69Gw9wpyjcJ+V51eQI++U1DhWkKeBjgwl21ZoQtsnJD1ELwYHvmeFApiwHtXb7Mpl6W37BotoXdOMcp5nW20CC06SET+q7maHSj9O0lP+KY5cihMG2Zs7kB8ihfJBgkJqB0wp6ohTkJSnjq2es8Y5zePxfo2Lpfm91KT6EyHjupxchGc0kV0su7KF3yjG3Ku0vC4BexQee67IJeW6Co0do5vBTmR8fCShpVZ8DuC3vYQvW7AJXM8AiFGB2+UmMiCX0V58Ktr6S0a5NIJOpBRCbcSxbr/u2NYC1HmP1qoGPRoVBGf1PVwJIj08/7I/kMF1aEe2Qiz7g== 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)(376002)(346002)(136003)(39860400002)(366004)(396003)(451199015)(110136005)(54906003)(9686003)(316002)(478600001)(66946007)(64756008)(4326008)(66556008)(66476007)(8676002)(66446008)(71200400001)(76116006)(26005)(41300700001)(7696005)(52536014)(53546011)(5660300002)(8936002)(33656002)(186003)(2906002)(83380400001)(6506007)(55016003)(38070700005)(82960400001)(38100700002)(86362001)(122000001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?JzJtv1XQLJ3ebML+dA1F5mXysGpqi+eq012pCPQCc1KRt7G8qKxjmhw4f4pB?= =?us-ascii?Q?KXU+XIbrVp/0lmvU57P3peAhSU8vy8hbjKKsRN7U8tq9Jm0fVTK6sYMUGGlh?= =?us-ascii?Q?rvTO7/b/z7SdxWZQ5KfLZg90Ba36o08tMy0qwAL3AqHqx1nSXQdUoicXW+aJ?= =?us-ascii?Q?fIWzA9tRSED8dochnwid0Me77QW2LKjSHUze3B3YPkHI93HENv9RTIgrnTn7?= =?us-ascii?Q?NSnMLKXVi6RB2Pbzc7Wzu9dilwNle3jZYrSJlOwhEQpwE4mqkC/egKU5g20u?= =?us-ascii?Q?chLJ87PFrqqGBBAE5f+3BNrZwtCywdoVfUSKc6Ad49f9lTVMGkfoQl4ydcvF?= =?us-ascii?Q?EIeIqKWqJU44EgNF+D5JMlXYwB56LutT/g6Z3uAa6/38RoWiiXuZAwdVnFkj?= =?us-ascii?Q?c+gcqKj4pMqcPgfgu43IAvZ0mZ2/pf1JfkumScvDc3thxiQbMELErW1TJ/Xi?= =?us-ascii?Q?0fmQNRw0HyXgdEpD9hh4ZHHWV7vBjQclKkB4KUReRIzgJE/9YCf/bvhMQb5Z?= =?us-ascii?Q?9FstMY73ihQ0Jcobi3cs+MRtraneVHulTLtffFWDoIXHxBlzCQgRjlhvbivU?= =?us-ascii?Q?3cPBTxSspn0e5K0Fu9EBMoAcrBW3nLKB/msKQNwQacpnF4gWrp1jqri1yLO4?= =?us-ascii?Q?JM7i9LEMxRZp6VkUg0v6jmU6jyyuYk47dS8rj+JbrMgufa9/9spG4MUWis94?= =?us-ascii?Q?CGZol8Y/GGZVcVDcP3xD+Gs9uDTZGKA2pF8QhsfyDKlvW8HtImYxNRUm22se?= =?us-ascii?Q?wh+ufq0pfRNv6F9bNopd4o78f2WlYWNeK8q+AZ5DHdPZ6sbjT8F665P0AiUR?= =?us-ascii?Q?tiXIdD1RqGtt2Vzzg1so2Cft6/BM7fnoHEPxkYtP7GSjwIyrcSTV52k34+0q?= =?us-ascii?Q?AlRHqUNQ/QrdSWqzbRoaxRJW2/LovQzL+8ki8XltsQLnSfKlgWkzlVWPfqNI?= =?us-ascii?Q?I12n0Mlao7bgIIKBO6j9dSHpI5vlIod3sN5BDiLYe4H/r8f5Y2LmEbk7ckSj?= =?us-ascii?Q?fqujb5vep5PnEpZdZl+tNMlnjutIDohBvtyP1z8WP07XMdM56M+d4O4eM/zM?= =?us-ascii?Q?uYp6vwLPUkv/DsTZsjSHxiZdQzwi2NfvRCTYj1OW1ipI5lDDYqhOccNN7nO6?= =?us-ascii?Q?xRYkJgsR7AaXBDyvH13/mGnlzmgk5C1AuFRJ6f6Aok4o6vJARpd+vA6b6dAi?= =?us-ascii?Q?G50V3EdNnpYePP2NXCIb5qxTWoz+t6YmKLd7w6UM6Y0CS3354qZko6lZqZUH?= =?us-ascii?Q?a8k7LXKr+kxXzMSfntwGUXXFmQ1bo2tZM20hgY470mR4wfDNQ/2ugAP4J+Ot?= =?us-ascii?Q?NCc2mSN1myx8awwMH2teXLkaApaaV2ygHGLtDKu7lVpgefu6lqx1oPZ4TA7l?= =?us-ascii?Q?ke8A0tlNzxDY1fEKwRSSiYqwSpwRtUKB8NwVUqUnRGQYKtUsaBsPsQEP/CsH?= =?us-ascii?Q?o5s9Fj4FyIXuSoVXmWrw12EdS8fDfXRWJi0Y/Ib3ap1ylEvzOPAsTPJVWECF?= =?us-ascii?Q?xepkYhD9JkD2ufmVXm6lx3Mnq11v8s+aRvTCwfAT9NgAtV41HgAs8E4ZJiHy?= =?us-ascii?Q?FAgVvwP5TA+dkU9c58tW2NcfJs/6dc84j26pAflU?= 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: dc142d73-982e-4131-6b28-08dab1b25839 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Oct 2022 09:14:36.8330 (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: NsGnzU5yGCMXT8LHfs6732x2w4B6LVlcvenuHOKeW+wbmuhhenwi86ZTuV8ZMw5QSF3MX50U0V7N3hd9Su7JLg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5808 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: Pei, Andy > Sent: Tuesday, October 18, 2022 8:08 PM > To: dev@dpdk.org > Cc: Xia, Chenbo ; Xu, Rosen ; > Huang, Wei ; Cao, Gang ; > maxime.coquelin@redhat.com > Subject: [PATCH v8 11/12] vhost: vDPA blk device gets ready when the firs= t > queue is ready >=20 > When boot from virtio blk device, seabios in QEMU only enables one queue. > To work in this scenario, vDPA BLK device back-end configure device > when the first queue is ready. >=20 > Signed-off-by: Andy Pei > Signed-off-by: Huang Wei > --- > lib/vhost/vhost_user.c | 33 +++++++++++++++++---------------- > 1 file changed, 17 insertions(+), 16 deletions(-) >=20 > diff --git a/lib/vhost/vhost_user.c b/lib/vhost/vhost_user.c > index cd65257..e0ff79d 100644 > --- a/lib/vhost/vhost_user.c > +++ b/lib/vhost/vhost_user.c > @@ -1441,11 +1441,14 @@ > } >=20 > #define VIRTIO_BUILTIN_NUM_VQS_TO_BE_READY 2u > +#define VIRTIO_BLK_NUM_VQS_TO_BE_READY 1u >=20 > static int > virtio_is_ready(struct virtio_net *dev) > { > + struct rte_vdpa_device *vdpa_dev; > struct vhost_virtqueue *vq; > + uint32_t vdpa_type; > uint32_t i, nr_vring =3D dev->nr_vring; >=20 > if (dev->flags & VIRTIO_DEV_READY) > @@ -1454,13 +1457,22 @@ > if (!dev->nr_vring) > return 0; >=20 > - if (dev->flags & VIRTIO_DEV_BUILTIN_VIRTIO_NET) { > - nr_vring =3D VIRTIO_BUILTIN_NUM_VQS_TO_BE_READY; > + vdpa_dev =3D dev->vdpa_dev; > + if (vdpa_dev) > + vdpa_type =3D vdpa_dev->type; > + else > + vdpa_type =3D -1; >=20 > - if (dev->nr_vring < nr_vring) > - return 0; > + if (vdpa_type =3D=3D RTE_VHOST_VDPA_DEVICE_TYPE_BLK) { > + nr_vring =3D VIRTIO_BLK_NUM_VQS_TO_BE_READY; > + } else { > + if (dev->flags & VIRTIO_DEV_BUILTIN_VIRTIO_NET) > + nr_vring =3D VIRTIO_BUILTIN_NUM_VQS_TO_BE_READY; > } >=20 > + if (dev->nr_vring < nr_vring) > + return 0; > + > for (i =3D 0; i < nr_vring; i++) { > vq =3D dev->virtqueue[i]; >=20 > @@ -2958,7 +2970,6 @@ static int is_vring_iotlb(struct virtio_net *dev, > int ret; > int unlock_required =3D 0; > bool handled; > - uint32_t vdpa_type =3D 0; > uint32_t request; > uint32_t i; >=20 > @@ -3170,17 +3181,7 @@ static int is_vring_iotlb(struct virtio_net *dev, > if (!vdpa_dev) > goto out; >=20 > - if (vdpa_dev->ops->get_dev_type) { > - ret =3D vdpa_dev->ops->get_dev_type(vdpa_dev, &vdpa_type); > - if (ret) { > - VHOST_LOG_CONFIG(dev->ifname, ERR, "failed to get vdpa > dev type.\n"); > - ret =3D -1; > - goto out; > - } > - } else { > - vdpa_type =3D RTE_VHOST_VDPA_DEVICE_TYPE_NET; > - } > - if (vdpa_type =3D=3D RTE_VHOST_VDPA_DEVICE_TYPE_BLK > + if (vdpa_dev->type =3D=3D RTE_VHOST_VDPA_DEVICE_TYPE_BLK > && request !=3D VHOST_USER_SET_VRING_CALL) > goto out; >=20 > -- > 1.8.3.1 Reviewed-by: Chenbo Xia