patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Kevin Traynor <ktraynor@redhat.com>
To: Maxime Coquelin <maxime.coquelin@redhat.com>,
	"stable@dpdk.org" <stable@dpdk.org>,
	Luca Boccassi <bluca@debian.org>,
	Christian Ehrhardt <christian.ehrhardt@canonical.com>,
	Xueming Li <xuemingl@nvidia.com>
Cc: Michael Phelan <michael.phelan@intel.com>
Subject: Re: Early backport of Vhost regression fix in LTS branches
Date: Tue, 20 Sep 2022 12:03:25 +0100	[thread overview]
Message-ID: <7671019d-fff8-5e7f-1d92-f53d8ffc8032@redhat.com> (raw)
In-Reply-To: <b4e8157f-9d0b-b795-4686-44b064a5c1e9@redhat.com>

On 20/09/2022 10:36, Maxime Coquelin wrote:
> 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.
> 

This issue is a deadlock likely to occur with an application such as 
OVS, that uses vIOMMU vhost ports and a multi-NUMA system.

In normal circumstances, for example with OVS, we could just recommend 
users not to upgrade to the latest DPDK LTS releases until the issue is 
fixed. Where this one gets tricky is that the latest LTS releases 
contains CVE fixes.

At the moment if a user wants the CVE fixes *and* the below deadlock 
fix, they will have to pick patches themselves. It might help some if 
the DPDK stable branches (which are still at last release point) 
backport the fix below early so a user can just pull the branch.

> Below is the fix to be backported:
> 
> ======================================================================
> commit 0b2a2ca35037d6a5168f0832c11d9858b8ae946a
> Author: David Marchand <david.marchand@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@dpdk.org
> 
>       Signed-off-by: David Marchand <david.marchand@redhat.com>
>       Reviewed-by: Maxime Coquelin <maxime.coquelin@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?
> 

I can take care of it for all branches if other maintainers are busy and 
ok with that.

thanks,
Kevin.

> Please let me know if any issue.
> 
> Thanks,
> Maxime
> 
> [0]: https://git.dpdk.org/dpdk/commit/?id=04c27cb673b9
> 


  reply	other threads:[~2022-09-20 11:03 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-20  9:36 Maxime Coquelin
2022-09-20 11:03 ` Kevin Traynor [this message]
2022-09-20 11:10   ` Luca Boccassi
2022-09-23 14:53     ` Kevin Traynor
2022-09-26 16:47       ` Kevin Traynor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7671019d-fff8-5e7f-1d92-f53d8ffc8032@redhat.com \
    --to=ktraynor@redhat.com \
    --cc=bluca@debian.org \
    --cc=christian.ehrhardt@canonical.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=michael.phelan@intel.com \
    --cc=stable@dpdk.org \
    --cc=xuemingl@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).