From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chen Baozi Subject: Re: Initial Mini-OS port to ARM64 Date: Mon, 24 Feb 2014 09:35:45 +0800 Message-ID: <623EFCB6-221C-4EAA-994C-BAC8CAA9EA36@gmail.com> References: <1392738894.23084.16.camel@kazak.uk.xensource.com> <580D6587-ABF8-4AD7-8AB6-2EB700CC0F1D@gmail.com> Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <580D6587-ABF8-4AD7-8AB6-2EB700CC0F1D@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell Cc: Samuel Thibault , List Developer Xen List-Id: xen-devel@lists.xenproject.org On Feb 23, 2014, at 22:41, Chen Baozi wrote: > = > On Feb 18, 2014, at 23:54, Ian Campbell wrote: > = >> On Sun, 2014-02-16 at 23:51 +0800, Chen Baozi wrote: >>> Hi all, >>> = >>> It is much later than I used to expect. I guess it might be help >>> to publish my work, though it is still not finished (and might not >>> be finished very soon...). = >>> = >>> I began to try to port mini-os to ARM64 since last summer. Since >>> the 64-bit guest support is not quite well at that time, this >>> work had been stopped for a long time until two months ago. >>> = >>> Though it is still at very early stage, it at least can be built, >>> setup a early page table for booting, parse the DTB passed by the >>> hypervisor, and be debugged by printk at present. So I put it >>> on github in case someone might be interested in it. Here is the >>> url: https://github.com/baozich/minios-arm64 >> = >> Cool. Thank you very much for sharing. >> = >>> Right now, there are some troubles to make GIC work properly, >>> as I didn=92t consider mapping GIC=92s interface in address space and >>> follows x86=92s memory layout which make the kernel virtual address >>> starts at 0x0. I=92ll fix it as soon as possible. >> = >> Actually, having virtual memory start at 0x0 seems quite reasonable to >> me, what is the problem? > = > Hmmm, I don=92t think it is a big problem. I just didn=92t realise it is = > necessary to map GIC=92s interface after MMU on, which leads a exception > when I try to program GIC by the physical address populated by DT. = > I used to think about making mini-os kernel address start at 0x80000000 > and leave the address below 0x80000000 to be 1:1 mapping, which > seems to be able to make things easier when initialising GIC. Well, I think we need a fixmap region for mini-os on arm/arm64, which is not included in original x86 version. > = >> = >> Someone somewhere was thinking of making minios run without the MMU >> enabled on ARM -- to save on the overhead IIRC. But it occurs to me here >> that this would be problematic if we were to move the guest memory map >> around -- which we are planning to do for 4.5. I think this means that >> minios must use the MMU, at least by default. >> = >> I wouldn't necessarily object to the presence of an option to build an >> MMU-less variant for specific use cases, so long as it was clear to >> those enabling it that there VMs might only work on a single version of >> Xen. > = > Actually, I=92ve already enabled MMU in my current implementation. = > = > Cheers, > = > Baozi > = >> = >>> Besides, there is still lots of work to be done. So any comments >>> or patches are welcome. >> = >> Ian.