On Wed, 7 Sep 2016, Julien Grall wrote:
> Hi Stefano,
>
> On 06/09/2016 19:51, Stefano Stabellini wrote:
> > On Tue, 6 Sep 2016, Julien Grall wrote:
> > > > I was asking myself the same question
> > >
> > > It is not trivial. On ARMv7, there is no way to invalidate by IPA, so we
> > > still
> >
Hi Stefano,
On 06/09/2016 19:51, Stefano Stabellini wrote:
On Tue, 6 Sep 2016, Julien Grall wrote:
I was asking myself the same question
It is not trivial. On ARMv7, there is no way to invalidate by IPA, so we still
need to do a full flush.
In the case of ARMv8, it is possible to do a flush
On Tue, 6 Sep 2016, Julien Grall wrote:
> > > +if ( !p2m_valid(entry) || p2m_is_superpage(entry, level) )
> > > +return;
> > > +
> > > +if ( level == 3 )
> > > +{
> > > +p2m_put_l3_page(_mfn(entry.p2m.base), entry.p2m.type);
> > > +return;
> > > +}
> > > +
>
Hi Stefano,
On 06/09/16 02:08, Stefano Stabellini wrote:
On Thu, 28 Jul 2016, Julien Grall wrote:
The ARM architecture mandates to use of a break-before-make sequence
when changing translation entries if the page table is shared between
multiple CPUs whenever a valid entry is replaced by
On Thu, 28 Jul 2016, Julien Grall wrote:
> The ARM architecture mandates to use of a break-before-make sequence
> when changing translation entries if the page table is shared between
> multiple CPUs whenever a valid entry is replaced by another valid entry
> (see D4.7.1 in ARM DDI 0487A.j for
Hi Julien,
[...]
> +static int p2m_set_entry(struct p2m_domain *p2m,
> + gfn_t sgfn,
> + unsigned long todo,
> + mfn_t smfn,
> + p2m_type_t t,
> + p2m_access_t a)
> +{
> +
> +static int p2m_set_entry(struct p2m_domain *p2m,
> + gfn_t sgfn,
> + unsigned long todo,
> + mfn_t smfn,
> + p2m_type_t t,
> + p2m_access_t a)
It is going to be necessary to
The ARM architecture mandates to use of a break-before-make sequence
when changing translation entries if the page table is shared between
multiple CPUs whenever a valid entry is replaced by another valid entry
(see D4.7.1 in ARM DDI 0487A.j for more details).
The break-before-make sequence can