[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V4] xen/arm: domain_build: allocate lowmem for dom0 as much as possible
Sorry for the late intrusion into this discussion. I would introduce my vision of the issues behind the 32 bits addressing DMA controllers in ARMv7/v8 SoCs.
On AArch64 SoCs, some IPs may only have the capability to access IMHO that is a wrong approach. Unfortunately the problem is much bigger. Normally you would need to run guest domains as well. With at least PV Block and PV NET drivers. Due to the fact that PV drivers made in a way that DMA controller at last will work with DomU's pages, those pages should be from below 4GB. So any DomU running PV drivers should have some amount of pages from below 4GB. Moreover, the OS running in DomU should be knowing that only those pages are DMA-able, and that PV drivers should be working with DMA-able pages only: I.e. pages should be mapped correspondingly into different banks under and over 4GB. The approach, I believe is more suitable, is to specify explicitly an amount of RAM below 4GB and above 4GB for any domain. For dom0 through xen command line, for domU through domain configuration file. Such approach was implemented by GL. You can find preliminary patches over here: https://lists.xen.org/archives/html/xen-devel/2016-05/msg01785.html https://lists.xen.org/archives/html/xen-devel/2016-05/msg01786.html . I really hope GL will decide to tailor and upstream the feature. I am undecided whether this should be considered as a bug fix for Xen 4.8. Are you aware of any ARM64 platform we currently support requiring allocation of memory below 4GB? That is not only ARM64 problem. Any ARMv7/v8 based platform having no IOMMU supported (or owned) by XEN with 32-bit DMA controllers and RAM over 4GB will suffer from this problem. From living products: new J6 EVM with 4GB RAM, Salvator-X. Sincerely, Andrii Anisov. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |