[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2] hw/arm/smmuv3: Add GBPA register
From: |
Mostafa Saleh |
Subject: |
Re: [PATCH v2] hw/arm/smmuv3: Add GBPA register |
Date: |
Tue, 7 Feb 2023 18:07:44 +0000 |
Hi Peter,
On Tue, Feb 07, 2023 at 02:03:02PM +0000, Peter Maydell wrote:
> On Thu, 26 Jan 2023 at 14:12, Mostafa Saleh <smostafa@google.com> wrote:
> >
> > GBPA register can be used to globally abort all
> > transactions.
> >
> > It is described in the SMMU manual in "6.3.14 SMMU_GBPA".
> > ABORT reset value is IMPLEMENTATION DEFINED, it is chosen to
> > be zero(Do not abort incoming transactions).
> >
> > Other fields have default values of Use Incoming.
> >
> > If UPDATE is not set, the write is ignored. This is the only permitted
> > behavior in SMMUv3.2 and later.(6.3.14.1 Update procedure)
> >
> > As this patch adds a new state to the SMMU (GBPA), it is added
> > in a new subsection for forward migration compatibility.
> >
> > Property "migrate-gbpa" was added to support backward compatibility.
> > However, if the GBPA.ABORT is set from SW at time of migration, the
> > GBPA migration will be forced to avoid inconsistencies where a qemu
> > instance is aborting transactions and it is migrated to another
> > instance bypassing them.
>
> Nothing ever sets the migrate-gpba property to anything
> except its default 'true' value, so this (a) means that
> it breaks migration compat and (b) seems a bit unneccessary.
>
> Can we say "migrate the field only if it is something other
> than its reset value", not have the property, and get
> migration compatibility that way ?
>
> Otherwise the patch looks OK.
>
> thanks
> -- PMM
Thanks for reviewing the patch. I am not really familiar with migration,
My understanding that this would be set from cmdline(that is how I tested it).
But yes, you are right, this is actually unnecessary, we can just
migrate only if GBPA value is different from reset value.
I will send v3 with this change.
Thanks,
Mostafa