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 2906B42C4A; Wed, 7 Jun 2023 08:48:40 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C651E410F6; Wed, 7 Jun 2023 08:48:39 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 6E22E40A84 for ; Wed, 7 Jun 2023 08:48:37 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686120517; x=1717656517; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=7LywzBbBVv+aeN11rvRBLAPvhW2r22M+g9NLIVx0Jog=; b=AeWLhCa6/82FZtE59Km7oJCuVnaeZqiHOdMD3uqEfLCZpJRuNLzRvgOn /lVDDOrZ2QHDUKO8tblF8WYqEbBDX+Hp2clx+YEe4W3qGlx/cN/M/CPOi qTaQffnbQnZ7JoNZ5yZAs12vqNEb10push1UhmOHx7Sm//UCKf6Zdyqq2 W8h5jB03EGNhh695Bgqk3JwTLHZgtOyU6OxHylkogUOJ9i7NZFBAvsF7l WljDIxqMtzLnYRZQgVPJd+1ySv6G8xNB/K6OUtA9oBwJxUWs7L8FaGsqt LmqT0vMKjUIR+hGeWih5zYIwrkBXMyeoRuNRuYX9ZwAWVbR8/Wy4McuJz g==; X-IronPort-AV: E=McAfee;i="6600,9927,10733"; a="359371465" X-IronPort-AV: E=Sophos;i="6.00,223,1681196400"; d="scan'208";a="359371465" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Jun 2023 23:48:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10733"; a="883619989" X-IronPort-AV: E=Sophos;i="6.00,223,1681196400"; d="scan'208";a="883619989" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga005.jf.intel.com with ESMTP; 06 Jun 2023 23:48:36 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 6 Jun 2023 23:48:35 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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.2507.23 via Frontend Transport; Tue, 6 Jun 2023 23:48:35 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.177) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Tue, 6 Jun 2023 23:48:35 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KWcFpQJZewzDjS8KS1QQ3psSaspXZ9sfjmm9baItgjAtuvo/g1kBH/WCxVX9BBd1j51sh6Iih0OW9+Kk9nJ68EyrVYd4vfciL+J2YuKkVkQiyjvb2yKAiM4sYhv0N/SqW8zbuVG5kg7TIlL+d9bm011p3nTfocFg5/8wnHpIkCXUxh0NBh3x6n8fCsGPjqnhhhsX248xfMb5cxcZpHHIE6DqWzqEOk8o9nOXMG49NapC/0pFQRECVdD/ZoIVS/VVM8CgkfcKf+jgRl/2hcrY3d8iFqlOW+3E/py202pWLrRAn9t3+ky6tq/C62tu3LPdDR0Eho0gnssIbkOok5Azhw== 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=rI54H9RNpYJNOwQn3zff+lFceuGWYeg+1WkQLBoDy98=; b=NoZhtG5EGiF8yAOqJvYCaSKcwgDJ2YU1JqmpUiIKpypZjPkzwEozZBhVd0HSCKwpqZSnV8bXYW+15wuEiLg+Y1ynmAPpSEEZJRdHBLW+pHBiC+CuwPscvQ/VLAa1PJQr3OV7aO/7nYzaeKGjm9feg7qlfS2qAtQg0jzqoP6002VB0xhKVljjglj2bq0l19e8/05n0CvKdbM1qgDE47HvNEHyFNCpI40C8qZCnqGaWnBjMZnum5IxvasgTgCedv30uwjAZXGam/OimKvM8QXxDh0mYbfXoQjvnbeOYznNBafrJ69QuCeERULFWUBJUolf64iPr8YrpwUzPFRXTjSn1w== 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 SA1PR11MB5947.namprd11.prod.outlook.com (2603:10b6:806:23b::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 06:48:31 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::e508:44ff:3d34:60bc]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::e508:44ff:3d34:60bc%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 06:48:31 +0000 From: "Xia, Chenbo" To: Maxime Coquelin , "dev@dpdk.org" , "david.marchand@redhat.com" , "mkp@redhat.com" , "fbl@redhat.com" , "jasowang@redhat.com" , "Liang, Cunming" , "Xie, Yongji" , "echaudro@redhat.com" , "eperezma@redhat.com" , "amorenoz@redhat.com" , "lulu@redhat.com" Subject: RE: [PATCH v5 00/26] Add VDUSE support to Vhost library Thread-Topic: [PATCH v5 00/26] Add VDUSE support to Vhost library Thread-Index: AQHZmE+Tq6Dy2Gz6D0y4zo/ls0Fi8a9+5zjw Date: Wed, 7 Jun 2023 06:48:30 +0000 Message-ID: References: <20230606081852.71003-1-maxime.coquelin@redhat.com> In-Reply-To: <20230606081852.71003-1-maxime.coquelin@redhat.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_|SA1PR11MB5947:EE_ x-ms-office365-filtering-correlation-id: 66395545-22ed-459f-f1e6-08db672334c7 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 3AxMg4ggKYLIfLHuD6baalHKaas25gvbU4Kiq2jv8QsICGxStRKN7AByxwyXzRnrTtlLvmjxL0M6IuFqnNv/nDnKTmBIbPrDxWRiyxy4dWAxJ9UwoVz0zXoTSI+eJTqR0xeYQa3HCRQ+wS4BUemVPjl6gW7vLqQ+eZl4zd7cZFNGQKtNaKo4kf03MTmN/QYXDCqPMAHSXO6A8jLAlJDGr5px9olrX/33pWB8ns1daYFUpgHjbCe01wi0n7lWrQb4Lch8oIx3rl7R1Eik76K4SBcRqCen0CjGc55B7a1XiRiprlXY5OA949sqxpkanpvEv0Y7t87DK+8h5Y8Jw2EGdIOI2GGYEg9ztb/ArEhFLT/rcr1/Q3sk2NKfZVDy3qiT2lySkSjg2O1/NdKnnIvVbWAPClfRXWGSNsa5LNum2V28sO5bWbnVfbmifcWIE2TQxsFpIWyklGH8s9UFfj3whmR89a+wcZYSnhe6nTsyiECKDchnujXbjtk4BoKo97sjRRoOsgnraKwn04GEll6IyhU+j4A2VhVkvSiY6QLsUwBalJw1vh/icvPDtQhRJs1O7BsW0xcTk1wJk0MzcX8VaNk86uVEK+/8NPmgWJ3glxQTd9G7/KB1a9PnqTBY6ySu8cAge+dXF2b13MNa4YCl1T1wx+MbZChhnPX/L9zTfLw= 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:(13230028)(366004)(346002)(136003)(376002)(39860400002)(396003)(451199021)(8676002)(8936002)(7696005)(478600001)(110136005)(966005)(55016003)(41300700001)(52536014)(6506007)(5660300002)(316002)(26005)(66446008)(66476007)(66556008)(76116006)(71200400001)(64756008)(66946007)(9686003)(53546011)(7416002)(186003)(83380400001)(2906002)(122000001)(921005)(38100700002)(82960400001)(33656002)(86362001)(38070700005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?KWQQ7ZLNNllA+ShIvw9UXvSEUPq5fjQIr2NHL0uZ2tPCS/J21wlrHEsEQj0h?= =?us-ascii?Q?Dxsh+yzCupym1gWB3Xap/70+wCckspm+T1O/bKnC3PSrmqavfzZchWXygavU?= =?us-ascii?Q?AwFA5J8TWbvoIaf64HEifNuaECmHrk/EzhHrr6mqYjuaFUYbVFfQoFDDbaoR?= =?us-ascii?Q?1WAa+vAVkvN4M7ocH5ce4KDcOam5q4NT2vMI5F2aBvLpdXRUHQDePxF/+e8f?= =?us-ascii?Q?ePAT2BYvO14c/8i7rKBl2YwwIKqqXyhXzjvkiq+oGL0QW0hTX2bai/NasL7H?= =?us-ascii?Q?ROM/v9XF6wz2MQ3IKQhTA0TyY8dH6xXm9V3lLJe94dQMMs/ts7lUjOgXw701?= =?us-ascii?Q?oyZLA5COZtrAB0zNQ4Juae0LtomH9LeV2/cFETBNhVrWCU4UNCNjRNfwTAxi?= =?us-ascii?Q?2vljGu96NbPdebbbWnR/sCpYuTKjI1Eu0JmEx/Cowkt6n1i4n32snjdeJx2O?= =?us-ascii?Q?O5ck0o01wIeAxdvRBYG9vCPvT7/g/S1V1xCgQS9xsSiBfo8Wv8mTHEA5ZCfo?= =?us-ascii?Q?HEyWRZzZrB0LyZuxg/5LkO9p3GwmNMCz4fDe/DYDFjQkBuUaykDi0P+Ne2z1?= =?us-ascii?Q?Kmt5WhYbOUctwOj7gMR+eXpN8IPPW8QU6/vrbdgfu7EixAIBLxYt5WtxG7g+?= =?us-ascii?Q?9EuvAjGfu2NhrIRjiG/I3sbl7b4FGyByiRVzzD+dPanlzXxO/BiAkfzVGFcQ?= =?us-ascii?Q?KYL+ObPqcVKJ7fq2uu5F22w+HKbC5c8FGdQ/CjEAYyfDjmIwezIqqiHgjKql?= =?us-ascii?Q?83RRElIzdvL1StVlR/809vO1zn4eBo5iLVv+yLbmPoEEuoeQrVIfrB6EG/0L?= =?us-ascii?Q?EowUAoEr6oQYQnuu8rbIhFfY5sJXUMXVo+BpXO7kcSmOEFY81E5csGGEuERi?= =?us-ascii?Q?tCccbTHKDzsP0iruc6mobIQ5ocR6jILa+/b3UZ2QdZVcfReidKdMo+z2pNcY?= =?us-ascii?Q?zpYa/icLfIJHmLf+s1uUMwbbtcjc4waoT6gRevB6/XshKpF8y+iPmtEIEL13?= =?us-ascii?Q?v/91GBj45n8NY9FPdqhyh/KMHmaO1i9Eqg/GXQb8gnEfy9NeOsKuRhEe0c9N?= =?us-ascii?Q?JAyji3FU19D9I89k/CtgDeqbwLv+1A4EuUtTy71MqU6WoNrkFUPSmPBXbQnQ?= =?us-ascii?Q?mV/WPgkz8n5a9C9kP/rej/+z61nGNAxav5ewHbek34X0LgJm2/ynLhTPqea2?= =?us-ascii?Q?D9Il1a1UUZ0HzUWMppn14SUUhr4dBTG+YO+gOradf/H1NoMJkdvOCS3dO90A?= =?us-ascii?Q?MLICcrLXXFC45hHjmtO1aSt3aaKk0q4+qJlOqQOli/qi+PYgTQhBnQSusXZ7?= =?us-ascii?Q?yqipFHJneUQgDajkLLStVZ2siMDWb1nGRFG3HtMebY+KdJmuX+IcnEC19dWP?= =?us-ascii?Q?KiXRNSLe3teqHNbRw554qHs3u3XeCZwgZEjXnxQHfRGk+b3Hv8PaxnzTTHr5?= =?us-ascii?Q?uXIIDRJZUAOQBXTq9yk/M2oU+PdSVTqdeGEcRdyAipIi5P8090WWxCPtl3E7?= =?us-ascii?Q?0bTJ82xz1nUG/Ej1JQqCbM8nubbgIFxGnzByyg6QPH6ZKcigAd7y9QdihHeE?= =?us-ascii?Q?mPvz4urhs6uPIjm4TQADtpB2eguQcUD6MKWyPHiG?= 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: 66395545-22ed-459f-f1e6-08db672334c7 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jun 2023 06:48:30.9758 (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: EjGaZf46E83GI43oFK5NfmlDqqD1ic5qaZJnE/02FrV+ryRT+EIv/k24N5OjHt1l+dW75QrGx5SJiYoAoH9x1g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB5947 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 Hi Maxime, > -----Original Message----- > From: Maxime Coquelin > Sent: Tuesday, June 6, 2023 4:18 PM > To: dev@dpdk.org; Xia, Chenbo ; > david.marchand@redhat.com; mkp@redhat.com; fbl@redhat.com; > jasowang@redhat.com; Liang, Cunming ; Xie, Yongj= i > ; echaudro@redhat.com; eperezma@redhat.com; > amorenoz@redhat.com; lulu@redhat.com > Cc: Maxime Coquelin > Subject: [PATCH v5 00/26] Add VDUSE support to Vhost library >=20 > This series introduces a new type of backend, VDUSE, > to the Vhost library. >=20 > VDUSE stands for vDPA device in Userspace, it enables > implementing a Virtio device in userspace and have it > attached to the Kernel vDPA bus. >=20 > Once attached to the vDPA bus, it can be used either by > Kernel Virtio drivers, like virtio-net in our case, via > the virtio-vdpa driver. Doing that, the device is visible > to the Kernel networking stack and is exposed to userspace > as a regular netdev. >=20 > It can also be exposed to userspace thanks to the > vhost-vdpa driver, via a vhost-vdpa chardev that can be > passed to QEMU or Virtio-user PMD. >=20 > While VDUSE support is already available in upstream > Kernel, a couple of patches are required to support > network device type: >=20 > https://gitlab.com/mcoquelin/linux/-/tree/vduse_networking_rfc >=20 > In order to attach the created VDUSE device to the vDPA > bus, a recent iproute2 version containing the vdpa tool is > required. >=20 > Benchmark results: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > On this v2, PVP reference benchmark has been run & compared with > Vhost-user. >=20 > When doing macswap forwarding in the worload, no difference is seen. > When doing io forwarding in the workload, we see 4% performance > degradation with VDUSE, comapred to Vhost-user/Virtio-user. It is > explained by the use of the IOTLB layer in the Vhost-library when using > VDUSE, whereas Vhost-user/Virtio-user does not make use of it. >=20 > Usage: > =3D=3D=3D=3D=3D=3D >=20 > 1. Probe required Kernel modules > # modprobe vdpa > # modprobe vduse > # modprobe virtio-vdpa >=20 > 2. Build (require vduse kernel headers to be available) > # meson build > # ninja -C build >=20 > 3. Create a VDUSE device (vduse0) using Vhost PMD with > testpmd (with 4 queue pairs in this example) > # ./build/app/dpdk-testpmd --no-pci -- > vdev=3Dnet_vhost0,iface=3D/dev/vduse/vduse0,queues=3D4 --log-level=3D*:9 = -- -i -- > txq=3D4 --rxq=3D4 >=20 > 4. Attach the VDUSE device to the vDPA bus > # vdpa dev add name vduse0 mgmtdev vduse > =3D> The virtio-net netdev shows up (eth0 here) > # ip l show eth0 > 21: eth0: mtu 1500 qdisc mq state UP > mode DEFAULT group default qlen 1000 > link/ether c2:73:ea:a7:68:6d brd ff:ff:ff:ff:ff:ff >=20 > 5. Start/stop traffic in testpmd > testpmd> start > testpmd> show port stats 0 > ######################## NIC statistics for port 0 > ######################## > RX-packets: 11 RX-missed: 0 RX-bytes: 1482 > RX-errors: 0 > RX-nombuf: 0 > TX-packets: 1 TX-errors: 0 TX-bytes: 62 >=20 > Throughput (since last show) > Rx-pps: 0 Rx-bps: 0 > Tx-pps: 0 Tx-bps: 0 >=20 > #########################################################################= # > ## > testpmd> stop >=20 > 6. Detach the VDUSE device from the vDPA bus > # vdpa dev del vduse0 >=20 > 7. Quit testpmd > testpmd> quit >=20 > Known issues & remaining work: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > - Fix issue in FD manager (still polling while FD has been removed) > - Add Netlink support in Vhost library > - Support device reconnection > -> a temporary patch to support reconnection via a tmpfs file is > available, > upstream solution would be in-kernel and is being developed. > -> https://gitlab.com/mcoquelin/dpdk-next-virtio/- > /commit/5ad06ce14159a9ce36ee168dd13ef389cec91137 > - Support packed ring > - Provide more performance benchmark results >=20 > Changes in v5: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > - Delay starting/stopping the device to after having replied to the VDUSE > event in order to avoid a deadlock encountered when testing with OVS. Could you explain more to help me understand the deadlock issue? Thanks, Chenbo > - Mention reconnection support lack in the release note. >=20 > Changes in v4: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > - Applied patch 1 and patch 2 from v3 > - Rebased on top of Eelco series > - Fix coredump clear in IOTLB cache removal (David) > - Remove uneeded ret variable in vhost_vring_inject_irq (David) > - Fixed release note (David, Chenbo) >=20 > Changes in v2/v3: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > - Fixed mem_set_dump() parameter (patch 4) > - Fixed accidental comment change (patch 7, Chenbo) > - Change from __builtin_ctz to __builtin_ctzll (patch 9, Chenbo) > - move change from patch 12 to 13 (Chenbo) > - Enable locks annotation for control queue (Patch 17) > - Send control queue notification when used descriptors enqueued (Patch 1= 7) > - Lock control queue IOTLB lock (Patch 17) > - Fix error path in virtio_net_ctrl_pop() (Patch 17, Chenbo) > - Set VDUSE dev FD as NONBLOCK (Patch 18) > - Enable more Virtio features (Patch 18) > - Remove calls to pthread_setcancelstate() (Patch 22) > - Add calls to fdset_pipe_notify() when adding and deleting FDs from a se= t > (Patch 22) > - Use RTE_DIM() to get requests string array size (Patch 22) > - Set reply result for IOTLB update message (Patch 25, Chenbo) > - Fix queues enablement with multiqueue (Patch 26) > - Move kickfd creation for better logging (Patch 26) > - Improve logging (Patch 26) > - Uninstall cvq kickfd in case of handler installation failure (Patch 27) > - Enable CVQ notifications once handler is installed (Patch 27) > - Don't advertise multiqueue and control queue if app only request single > queue pair (Patch 27) > - Add release notes >=20 > Maxime Coquelin (26): > vhost: fix IOTLB entries overlap check with previous entry > vhost: add helper of IOTLB entries coredump > vhost: add helper for IOTLB entries shared page check > vhost: don't dump unneeded pages with IOTLB > vhost: change to single IOTLB cache per device > vhost: add offset field to IOTLB entries > vhost: add page size info to IOTLB entry > vhost: retry translating IOVA after IOTLB miss > vhost: introduce backend ops > vhost: add IOTLB cache entry removal callback > vhost: add helper for IOTLB misses > vhost: add helper for interrupt injection > vhost: add API to set max queue pairs > net/vhost: use API to set max queue pairs > vhost: add control virtqueue support > vhost: add VDUSE device creation and destruction > vhost: add VDUSE callback for IOTLB miss > vhost: add VDUSE callback for IOTLB entry removal > vhost: add VDUSE callback for IRQ injection > vhost: add VDUSE events handler > vhost: add support for virtqueue state get event > vhost: add support for VDUSE status set event > vhost: add support for VDUSE IOTLB update event > vhost: add VDUSE device startup > vhost: add multiqueue support to VDUSE > vhost: add VDUSE device stop >=20 > doc/guides/prog_guide/vhost_lib.rst | 4 + > doc/guides/rel_notes/release_23_07.rst | 12 + > drivers/net/vhost/rte_eth_vhost.c | 3 + > lib/vhost/iotlb.c | 333 +++++++------ > lib/vhost/iotlb.h | 45 +- > lib/vhost/meson.build | 5 + > lib/vhost/rte_vhost.h | 17 + > lib/vhost/socket.c | 72 ++- > lib/vhost/vduse.c | 646 +++++++++++++++++++++++++ > lib/vhost/vduse.h | 33 ++ > lib/vhost/version.map | 1 + > lib/vhost/vhost.c | 70 ++- > lib/vhost/vhost.h | 57 ++- > lib/vhost/vhost_user.c | 51 +- > lib/vhost/vhost_user.h | 2 +- > lib/vhost/virtio_net_ctrl.c | 286 +++++++++++ > lib/vhost/virtio_net_ctrl.h | 10 + > 17 files changed, 1409 insertions(+), 238 deletions(-) > create mode 100644 lib/vhost/vduse.c > create mode 100644 lib/vhost/vduse.h > create mode 100644 lib/vhost/virtio_net_ctrl.c > create mode 100644 lib/vhost/virtio_net_ctrl.h >=20 > -- > 2.40.1