Hi Stefano,

> -----Original Message-----
> From: Xen-devel <xen-devel-boun...@lists.xenproject.org> On Behalf Of Wei
> Chen
> Sent: 2022年3月3日 10:07
> To: Julien Grall <jul...@xen.org>; xen-devel@lists.xenproject.org; Stefano
> Stabellini <sstabell...@kernel.org>
> Cc: Bertrand Marquis <bertrand.marq...@arm.com>; Penny Zheng
> <penny.zh...@arm.com>; Henry Wang <henry.w...@arm.com>; nd <n...@arm.com>
> Subject: RE: Proposal for Porting Xen to Armv8-R64 - DraftA
> 
> Hi Julien,
> 
> > -----Original Message-----
> > From: Julien Grall <jul...@xen.org>
> > Sent: 2022年3月2日 20:00
> > To: Wei Chen <wei.c...@arm.com>; xen-devel@lists.xenproject.org; Stefano
> > Stabellini <sstabell...@kernel.org>
> > Cc: Bertrand Marquis <bertrand.marq...@arm.com>; Penny Zheng
> > <penny.zh...@arm.com>; Henry Wang <henry.w...@arm.com>; nd <n...@arm.com>
> > Subject: Re: Proposal for Porting Xen to Armv8-R64 - DraftA
> >
> >
> >
> > On 01/03/2022 07:51, Wei Chen wrote:
> > > Hi Julien,
> >
> > Hi Wei,
> >
> > >> -----Original Message-----
> > >> From: Julien Grall <jul...@xen.org>
> > >> Sent: 2022年2月26日 4:55
> > >> To: Wei Chen <wei.c...@arm.com>; xen-devel@lists.xenproject.org;
> > Stefano
> > >> Stabellini <sstabell...@kernel.org>
> > >> Cc: Bertrand Marquis <bertrand.marq...@arm.com>; Penny Zheng
> > >> <penny.zh...@arm.com>; Henry Wang <henry.w...@arm.com>; nd
> <n...@arm.com>
> > >> Subject: Re: Proposal for Porting Xen to Armv8-R64 - DraftA
> > >>> ### 1.2. Xen Challenges with PMSA Virtualization
> > >>> Xen is PMSA unaware Type-1 Hypervisor, it will need modifications to
> > run
> > >>> with an MPU and host multiple guest OSes.
> > >>>
> > >>> - No MMU at EL2:
> > >>>       - No EL2 Stage 1 address translation
> > >>>           - Xen provides fixed ARM64 virtual memory layout as basis
> of
> > >> EL2
> > >>>             stage 1 address translation, which is not applicable on
> > MPU
> > >> system,
> > >>>             where there is no virtual addressing. As a result, any
> > >> operation
> > >>>             involving transition from PA to VA, like ioremap, needs
> > >> modification
> > >>>             on MPU system.
> > >>>       - Xen's run-time addresses are the same as the link time
> > addresses.
> > >>>           - Enable PIC (position-independent code) on a real-time
> > target
> > >>>             processor probably very rare.
> > >>
> > >> Aside the assembly boot code and UEFI stub, Xen already runs at the
> > same
> > >> address as it was linked.
> > >>
> > >
> > > But the difference is that, base on MMU, we can use the same link
> > address
> > > for all platforms. But on MPU system, we can't do it in the same way.
> >
> > I agree that we currently use the same link address for all the
> > platforms. But this is also a problem when using MMU because EL2 has a
> > single TTBR.
> >
> > At the moment we are switching page-tables with the MMU which is not
> > safe. Instead we need to turn out the MMU off, switch page-tables and
> > then turn on the MMU. This means we need to have an identity mapping of
> > Xen in the page-tables. Assuming Xen is not relocated, the identity
> > mapping may clash with Xen (or the rest of the virtual address map).
> >
> 
> Is this the same reason we create a dummy reloc section for EFI loader?
> 
> > My initial idea was to enable PIC and update the relocation at boot
> > time. But this is a bit cumbersome to do. So now I am looking to have a
> > semi-dynamic virtual layout and find some place to relocate part of Xen
> > to use for CPU bring-up.
> >
> > Anyway, my point is we possibly could look at PIC if that could allow
> > generic Xen image.
> >
> 
> I understand your concern. IMO, PIC is possible to do this, but obviously,
> it's not a small amount of work. And I want to hear some suggestions from
> Stefano, because he also has some solutions in previous thread.
>

Can you have a look at the PIC discussion between Julien and me?
I think we may need some inputs from your view.

Thanks,
Wei Chen

[...]

Reply via email to