Early backport of Vhost regression fix in LTS branches

Maxime Coquelin maxime.coquelin at redhat.com
Tue Sep 20 11:36:03 CEST 2022


Hi LTS maintainers,

We have discovered a regression causing deadlock in application using
the Vhost library (when vIOMMU is used & NUMA reallocation happens).

The faulty commit [0] got backported in all maintained LTS branches,
following minor releases are impacted:
- V21.11.1+
- V20.11.5+
- V19.11.12+

The fix for this regression is already in main branch, and will be part
of next v22.11 release.

Discussing with Kevin, he suggested the fix to be backported early to
all the LTS branches.

Below is the fix to be backported:

======================================================================
commit 0b2a2ca35037d6a5168f0832c11d9858b8ae946a
Author: David Marchand <david.marchand at redhat.com>
Date:   Mon Jul 25 22:32:03 2022 +0200

     vhost: fix virtqueue use after free on NUMA reallocation

     translate_ring_addresses (via numa_realloc) may change a virtio 
device and
     virtio queue.
     The virtqueue object must be refreshed before accessing the lock.

     Fixes: 04c27cb673b9 ("vhost: fix unsafe vring addresses modifications")
     Cc: stable at dpdk.org

     Signed-off-by: David Marchand <david.marchand at redhat.com>
     Reviewed-by: Maxime Coquelin <maxime.coquelin at redhat.com>
======================================================================

The fix can be backported without conflicts to all the LTS branches,
except for v19.11, for which the Vhost directory rename can cause
issues. It can be overcome using below command:

git cherry-pick -Xfind-renames=5% 0b2a2ca350

Is that OK for you?

Please let me know if any issue.

Thanks,
Maxime

[0]: https://git.dpdk.org/dpdk/commit/?id=04c27cb673b9



More information about the stable mailing list