[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [PATCH 30/40] arm64: set the mapping for console and xenbus





On 08/11/17 09:11, Huang Shijie wrote:
On Mon, Nov 06, 2017 at 05:31:43PM +0000, Julien Grall wrote:
Hi Shijie,

On 03/11/17 03:12, Huang Shijie wrote:
This patch sets the mapping for console and xenbus:
     .1) Use the page granule (4K) to setup the page table.

This should belong to the patch building page-table.
Please just keep it here..

This is the first place where we use the 4k page size.

See my answer in that patch...

[...]


As you can't assume where it the console/xenbus frame in the memory layout,
there are chance the virtual addresses will be well above 39-bits. Resulting
to an access fault.
39bit is 512G. Does the mini-os can beyond 512G memory? >
There is no virtual address above 39-bits now. If it really exits, we
can extand the address space to 64-bits.

You should really look at how you implemented to_virt and think how the conversion will happen depending on the physical address...



So you should allocate the virtual address on demand. You can look what x86
does.
I will check that.

This will also benefits when we will need to map lists of MFN in a
contiguous way in the VA space.

+
+    build_pagetable(vaddr, mfn, 1, BLOCK_DEF_ATTR, alloc_new_page, 3);

I am a bit surprised that build_pagetable does not return an error. At least
it may not be possible to allocate page-table.
If the build_pagetable() fails, it will reach the BUG().

If we need the return value of build_pagetable(), we can add it in
future. But currently, it is okay.

Do it need now. Full stop. There are no rationale reason to not write the page-table correctly from scratch... And no, you don't save time at all by deferring it.

Cheers,

--
Julien Grall

_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/cgi-bin/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.