[dpdk-dev] [PATCH v2 1/1] vhost: fix iotlb mempool single-consumer flag

Xia, Chenbo chenbo.xia at intel.com
Mon Aug 31 12:21:44 CEST 2020


> -----Original Message-----
> From: Eugenio Pérez <eperezma at redhat.com>
> Sent: Monday, August 31, 2020 3:59 PM
> To: dev at dpdk.org
> Cc: Adrian Moreno Zapata <amorenoz at redhat.com>; Xia, Chenbo
> <chenbo.xia at intel.com>; Wang, Zhihong <zhihong.wang at intel.com>; Jens
> Freimann <jfreimann at redhat.com>; stable at dpdk.org; Maxime Coquelin
> <maxime.coquelin at redhat.com>; Kevin Traynor <ktraynor at redhat.com>
> Subject: [PATCH v2 1/1] vhost: fix iotlb mempool single-consumer flag
> 
> Bugzilla bug: 523
> 
> Control thread (which handles iotlb msg) and forwarding
> thread both use iotlb to translate address. The former may modify the
> same entry of mempool and may cause a loop in iotlb_pending_entries
> list.
> 
> Fixes: d012d1f293f4 ("vhost: add IOTLB helper functions")
> Signed-off-by: Eugenio Pérez <eperezma at redhat.com>
> ---
>  lib/librte_vhost/iotlb.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/lib/librte_vhost/iotlb.c b/lib/librte_vhost/iotlb.c
> index 5b3a0c090..e0b67721b 100644
> --- a/lib/librte_vhost/iotlb.c
> +++ b/lib/librte_vhost/iotlb.c
> @@ -321,8 +321,7 @@ vhost_user_iotlb_init(struct virtio_net *dev, int
> vq_index)
>  			IOTLB_CACHE_SIZE, sizeof(struct vhost_iotlb_entry), 0,
>  			0, 0, NULL, NULL, NULL, socket,
>  			MEMPOOL_F_NO_CACHE_ALIGN |
> -			MEMPOOL_F_SP_PUT |
> -			MEMPOOL_F_SC_GET);
> +			MEMPOOL_F_SP_PUT);
>  	if (!vq->iotlb_pool) {
>  		VHOST_LOG_CONFIG(ERR,
>  				"Failed to create IOTLB cache pool (%s)\n",
> --
> 2.18.1

Reviewed-by: Chenbo Xia <chenbo.xia at intel.com>


More information about the dev mailing list