[PATCH v21.11.6 1/2] net/virtio: fix descriptor addresses in 32-bit build
Kevin Traynor
ktraynor at redhat.com
Thu Nov 23 11:52:40 CET 2023
On 23/11/2023 10:11, Maxime Coquelin wrote:
> With Virtio-user, the Virtio descriptor buffer address is the
> virtual address of the mbuf's buffer. On 32-bit builds, it is
> expected to be 32 bits.
>
> With Virtio-PCI, the Virtio descriptor buffer address is the
> physical address of the mbuf's buffer. On 32-bit builds running
> on 64-bit kernel, it is expected to be up to 64 bits.
>
> This patch introduces a new mask field in virtqueue's struct to
> filter our the upper 4 bytes of the address only when necessary.
> An optimization is introduced for 64-bit builds to remove the
> masking, as the address is always 64 bits wide.
>
> Fixes: ba55c94a7ebc ("net/virtio: revert forcing IOVA as VA mode for virtio-user")
> Cc:stable at dpdk.org
>
> Reported-by: Sampath Peechu<speechu at cisco.com>
> Signed-off-by: Maxime Coquelin<maxime.coquelin at redhat.com>
> Reviewed-by: David Marchand<david.marchand at redhat.com>
> (cherry picked from commit 8c41645be010ec7fa0df4f6c3790b167945154b4)
> Signed-off-by: Maxime Coquelin<maxime.coquelin at redhat.com>
> ---
> .mailmap | 1 +
> drivers/net/virtio/virtio_ethdev.c | 7 +++++--
> drivers/net/virtio/virtqueue.h | 18 ++++++++++++++----
> 3 files changed, 20 insertions(+), 6 deletions(-)
Applied to 21.11 branch. Thanks for backporting.
More information about the stable
mailing list