[PATCH v2] net/vhost: fix deadlock on vring state change

Maxime Coquelin maxime.coquelin at redhat.com
Fri Jul 1 15:58:13 CEST 2022



On 6/27/22 07:51, Yuan Wang wrote:
> If vring state changes after pmd starts working, the locked vring
> notifies pmd, thus calling update_queuing_status(), the latter
> will wait for pmd to finish accessing vring, while pmd is also
> waiting for vring to be unlocked, thus causing deadlock.
> 
> Actually, update_queuing_status() only needs to wait while
> destroy/stopping the device, but not in other cases.
> 
> This patch adds a flag for whether or not to wait to fix this issue.
> 
> Fixes: 1ce3c7fe149f ("net/vhost: emulate device start/stop behavior")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Yuan Wang <yuanx.wang at intel.com>
> ---
> V2: rewrite the commit log.
> ---
>   drivers/net/vhost/rte_eth_vhost.c | 16 ++++++++--------
>   1 file changed, 8 insertions(+), 8 deletions(-)
> 


Applied to dpdk-next-virtio/main.

Thanks,
Maxime



More information about the stable mailing list