[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-ia64-devel] Re: copying data to guest
On Mon, Mar 05, 2007 at 02:43:04PM +0100, Jes Sorensen wrote: > > Tristan. > > Thought a bit more about this. I whipped up some code last week that > relied on the 1:1 mapping knowledge which you don't like. I agree it's > not ideal, however we have a real issue with the fact that some current > SAL calls expect a kernel virtual address. We simply won't be able to > provide full VT support if we cannot come up with a way to do this in > a reliable manner :( I don't understand you on this point. From the hypervisor POV, there is almost no differences between dom0, domU and dom-VT concerning this point. > I may be able to convince our PROM team to change the SAL calls that are > SN2 specific to take physical addresses. This will not change anything I fear. Can you explain what do you expect ? > However even when taking > physical (or metaphysical addresses) can we reliably access the memory? > I presume we can? But what about the generic calls? Maybe we misunderstand. Xen has a 1:1 map of the physical memory in virtual memory like linux. The problem is Xen doesn't know the full virtual memory mapping of a domain. > Xencomm is fine for dom0 stuff, but not for domUs. There is no difference between dom0 and domU here. Maybe I misunderstood something. > Well fine is a > relative term here, the Xencomm API is probably the most ugly part of > Xen I have come across so far :( Xencomm code is scather among linux and the hypervisor. Xencomm has three methods to do the work. Xencomm tries to be platform independant. All these things make things not easy to follow but Xencomm is not complex. Roughly speaking it is just a virtual to meta-physical translation of buffers. >From your mails I have the impression we don't understand each other. Xencomm tries to solve a simple ia64 specific issue: domain virtual addresses can't be used realiabily in the hypervisor because the TLB entries may be missing. Trying to inject TLB miss doesn't work well because all the code is not designed to be re-startable (PAL and SAL is not for example). The other solution is to translate virtual address to (meta) physical addresses and to use them. This is Xencomm. Tristan. _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |