[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [QUERY] lguest64
On 08/05/2013 09:50 AM, Konrad Rzeszutek Wilk wrote: >>> >>> Let me iterate down what the experimental patch uses: >>> >>> struct pv_init_ops pv_init_ops; >>> >>> [still use xen_patch, but I think that is not needed anymore] >>> >>> struct pv_time_ops pv_time_ops; >>> >>> [we need that as we are using the PV clock source] >>> >>> struct pv_cpu_ops pv_cpu_ops; >>> >>> [only end up using cpuid. This one is a tricky one. We could >>> arguable remove it but it does do some filtering - for example >>> THERM is turned off, or MWAIT if a certain hypercall tells us >>> to >>> disable that. Since this is now a trapped operation this could >>> be >>> handled in the hypervisor - but then it would be in charge of >>> filtering certain CPUID - and this is at bootup - so there is >>> not >>> user interaction. This needs a bit more of thinking] >>> >> read_msr/write_msr in this one make all msr accesses safe. IIRC there >> are MSRs that Linux uses without checking cpuid bits. >> IA32_PERF_CAPABILITIES for instance is used without checking PDCM bit. > > Right, those are needed as well. Completly forgot about them. CPUID is not too bad. RDMSR/WRMSR is actually worse since there are some MSRs which are performance-critical. The really messy pvops are the memory-related ones, as they don't match the hardware behavior. Similarly, beyond pvops, what new assumptions does this code add to the code base? -hpa _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |