| 
    
 [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] Some considerations of ARM Unikraft supports
 Hi all, On 05.02.2018 11:20, Julien Grall wrote: On 05/02/18 07:22, Wei Chen wrote:Hi Julien,Hi Wei,-----Original Message----- But likely, you want to expose the same MIDR as the underlying CPU. Soif an errata has to be implemented in Unikraft, it will be able to know it.Exposing the underlying CPU's MIDR to guest is depending on the hypervisors. For Unikraft itself, it doesn't know whether this MIDR is the same as the underlying CPU or not. And actually, no matter what cpumodel the hypervisor is emulating, the code is running on the physical CPU directly. We don't emulate the CPU instructions. If we run Unikraft on a corext-a53 host CPU, we can compile this image with gcc flagslike fix-a53-error.Have a look at linux/arch/arm64/kernel/cpu_errata.c, there are quite a few errata that needs to know the physical MIDR. So likely you always want to expose the physical MIDR and not a custom one. This is a good point. Actually, I would consider other KVM tools (like kvm-tool, ukvm) as a separate platform. It should be possible to create images for all of those platforms with a single build command. ukvm need to be handled anyways quiet specially. It is possible that we would need to move some code from the platform's folder and move it to a "plat/common" (e.g., "plat/common/arm") folder since it might be shared by some platforms. For now I would simplify it and focus on QEMU. But this is for sure something we need to keep in mind. Furthermore, you may have different memory model depending on whether you use GICv3/GICv2 or the version of the tools... You may end up with a lot of different memory map.From a user perspective this looks like a real burden, for which win? Saving less than 1K of memory and a few ms in boot. I would as many as possible forward decisions to the user. One might be concerned about fewer ms boot time (e.g., reactive VMs that handle a network request on the fly and disappear afterwards), another might not be. Both have their reasons but Unikraft should be a SDK for both use cases. At least from Xen PoV, the memory layout is not part of the ABI and a guest should rely on the DT for getting the correct addresses.I understand your concern. It's not a part of the ABI. So the addresses can be changedfor different boards.It is not only about different boards, but also different tools to create VM (see above).I think we must do a tradeoff between flexibility and deploy density (boot time and footprint)I am quite curious to know your requirements here. Cheers, Thanks, Simon _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel 
 
 
  | 
  
![]()  | 
            
         Lists.xenproject.org is hosted with RackSpace, monitoring our  |