All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mostafa Saleh <smostafa@google.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Julien Grall <julien@xen.org>,
	eric.auger@redhat.com,
	Jean-Philippe Brucker <jean-philippe@linaro.org>,
	qemu-arm@nongnu.org, qemu-devel@nongnu.org,
	alex.bennee@linaro.org, maz@kernel.org, nicolinc@nvidia.com,
	richard.henderson@linaro.org, marcin.juszkiewicz@linaro.org
Subject: Re: [PATCH v5 00/18] SMMUv3 nested translation support
Date: Sat, 20 Jul 2024 22:11:47 +0000	[thread overview]
Message-ID: <Zpw2I2ATUqDt19qv@google.com> (raw)
In-Reply-To: <CAFEAcA8T3Yrj_R-B2oUW_Uu3u5HZs4RY1P+A7zF+8xWJnmtpQA@mail.gmail.com>

Hi Peter,

On Fri, Jul 19, 2024 at 04:57:18PM +0100, Peter Maydell wrote:
> On Fri, 19 Jul 2024 at 16:36, Julien Grall <julien@xen.org> wrote:
> >
> > Hi,
> >
> > On 18/07/2024 10:43, Julien Grall wrote:
> > > Hi Eric,
> > >
> > > On 17/07/2024 18:43, Eric Auger wrote:
> > >> Hi Peter, Richard,
> > >>
> > >> On 7/17/24 17:09, Jean-Philippe Brucker wrote:
> > >>> On Mon, Jul 15, 2024 at 08:45:00AM +0000, Mostafa Saleh wrote:
> > >>>> Currently, QEMU supports emulating either stage-1 or stage-2 SMMUs
> > >>>> but not nested instances.
> > >>>> This patch series adds support for nested translation in SMMUv3,
> > >>>> this is controlled by property “arm-smmuv3.stage=nested”, and
> > >>>> advertised to guests as (IDR0.S1P == 1 && IDR0.S2P == 2)
> > >>> For the whole series (3-9, 11, 12, 15, 16, 18):
> > >>>
> > >>> Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
> > >>>
> > >>> (and I think patch 16 is missing Eric's R-b)
> > >>
> > >> Jean-Philippe and I have followed up the progress of this series,
> > >> Mostafa took into account all our comments and all the patches were
> > >> reviewed. It seems to be in a pretty decent state so if you don't have
> > >> any objection, please consider pulling it for 9.1.
> > >>
> > >> On my end I did some testing in non nesting mode with virtio-net/vhost
> > >> and I have not noticed any regression.
> > >> Would be nice if someone could send his T-b for the nested part though
> > >> (Julien?).
> > >
> > > I haven't yet tried the latest version. I will do that in the next
> > > couple of days.
> > I see this is already merged. If this still matters:
> >
> > Tested-by: Julien Grall <jgrall@amazon.com>
> 
> We can't retrospectively add the tag, but the testing itself
> is still important -- thanks for doing it.
> 
> Q: is there any reason not to:
>  (a) change the default to "nested" rather than "1"
>  (b) make the virt board (for new virt machine versions) use
>      "nested"?
> 
> AIUI "nested" should be a superset of "stage-1 only", the guest
> can just ignore stage-2 if it doesn't care about it. Or is
> there a performance hit from having stage-2 around even if the
> guest doesn't enable it?

I didn’t do benchmarks, but from the code, I don’t think there
would be a difference from using stage-1 only or nested stages
with stage-1 config.
I didn’t make “nested” the default stage or used it for the virt
board, as I was worried about compatibility issues (I think that
breaks backward migration), but otherwise I don’t see issues.

But if I understand correctly, setting that for virt board 9.1
(virt_machine_9_1_options) would be fine?

Thanks,
Mostafa

> 
> thanks
> -- PMM

  reply	other threads:[~2024-07-20 22:11 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-15  8:45 [PATCH v5 00/18] SMMUv3 nested translation support Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 01/18] hw/arm/smmu-common: Add missing size check for stage-1 Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 02/18] hw/arm/smmu: Fix IPA for stage-2 events Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 03/18] hw/arm/smmuv3: Fix encoding of CLASS in events Mostafa Saleh
2024-07-17 15:07   ` Eric Auger
2024-07-17 15:58     ` Jean-Philippe Brucker
2024-07-17 15:59       ` Eric Auger
2024-07-15  8:45 ` [PATCH v5 04/18] hw/arm/smmu: Use enum for SMMU stage Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 05/18] hw/arm/smmu: Split smmuv3_translate() Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 06/18] hw/arm/smmu: Consolidate ASID and VMID types Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 07/18] hw/arm/smmu: Introduce CACHED_ENTRY_TO_ADDR Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 08/18] hw/arm/smmuv3: Translate CD and TT using stage-2 table Mostafa Saleh
2024-07-17 15:18   ` Eric Auger
2024-07-15  8:45 ` [PATCH v5 09/18] hw/arm/smmu-common: Rework TLB lookup for nesting Mostafa Saleh
2024-07-17 15:28   ` Eric Auger
2024-07-15  8:45 ` [PATCH v5 10/18] hw/arm/smmu-common: Add support for nested TLB Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 11/18] hw/arm/smmu-common: Support nested translation Mostafa Saleh
2024-07-17 15:28   ` Eric Auger
2024-07-15  8:45 ` [PATCH v5 12/18] hw/arm/smmu: Support nesting in smmuv3_range_inval() Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 13/18] hw/arm/smmu: Introduce smmu_iotlb_inv_asid_vmid Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 14/18] hw/arm/smmu: Support nesting in the rest of commands Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 15/18] hw/arm/smmuv3: Support nested SMMUs in smmuv3_notify_iova() Mostafa Saleh
2024-07-17 15:30   ` Eric Auger
2024-07-15  8:45 ` [PATCH v5 16/18] hw/arm/smmuv3: Handle translation faults according to SMMUPTWEventInfo Mostafa Saleh
2024-07-17 15:31   ` Eric Auger
2024-07-15  8:45 ` [PATCH v5 17/18] hw/arm/smmuv3: Support and advertise nesting Mostafa Saleh
2024-07-15  8:45 ` [PATCH v5 18/18] hw/arm/smmu: Refactor SMMU OAS Mostafa Saleh
2024-07-17 15:09 ` [PATCH v5 00/18] SMMUv3 nested translation support Jean-Philippe Brucker
2024-07-17 17:43   ` Eric Auger
2024-07-17 19:06     ` Peter Maydell
2024-07-18  9:43     ` Julien Grall
2024-07-19 15:36       ` Julien Grall
2024-07-19 15:57         ` Peter Maydell
2024-07-20 22:11           ` Mostafa Saleh [this message]
2024-07-22  9:35             ` Peter Maydell

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=Zpw2I2ATUqDt19qv@google.com \
    --to=smostafa@google.com \
    --cc=alex.bennee@linaro.org \
    --cc=eric.auger@redhat.com \
    --cc=jean-philippe@linaro.org \
    --cc=julien@xen.org \
    --cc=marcin.juszkiewicz@linaro.org \
    --cc=maz@kernel.org \
    --cc=nicolinc@nvidia.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.