Re: [kvm-devel] Sharing a page of memory between the guest and host
Anthony Liguori wrote: > Cam Macdonell wrote: >> Hello, >> >> Is it possible to share a memory (a page perhaps) between the host and >> guest? > > Yes, the host always has access to all of the guests memory. All of the > virtio drivers depend on this fact. With KVM, the userspace (in this > case, QEMU), just tells the kernel about a virtual address region and > the kernel uses that region of virtual memory for the guest's physical > memory. Whatever you (as userspace) maps into that region is totally up > to you. > >> More precisely, could a host and guest share a memory-mapped file? > > It will be a lot easier once we have MMU notifiers upstream. You'll be > able to simply mmap(MAP_FIXED) a file into the guest's physical address > space even while it's running. For now, you have to setup these > mappings before the VM starts. > >> If one were crazy enough to want to do this, where should they look >> first? >> > > If you look at the -mem-file implementation in the latest git, you'll > see that all the guest's memory can be an mmap()'d file. Hi Anthony, In setting up the guest memory to share a page, I need to make the kernel aware of that page. Is the best way to do this through a little virtio-like PCI device or is there an easier to get dynamic info into the guest kernel? Also, is the mem-file implementation in a specific branch of the latest GIT or is it within the main branch somewhere, I've been unable to find it? Thanks a bunch, Cam - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] Sharing a page of memory between the guest and host
Anthony Liguori wrote: > Cam Macdonell wrote: >> Hello, >> >> Is it possible to share a memory (a page perhaps) between the host and >> guest? > > Yes, the host always has access to all of the guests memory. All of the > virtio drivers depend on this fact. With KVM, the userspace (in this > case, QEMU), just tells the kernel about a virtual address region and > the kernel uses that region of virtual memory for the guest's physical > memory. Whatever you (as userspace) maps into that region is totally up > to you. > >> More precisely, could a host and guest share a memory-mapped file? > > It will be a lot easier once we have MMU notifiers upstream. You'll be > able to simply mmap(MAP_FIXED) a file into the guest's physical address > space even while it's running. For now, you have to setup these > mappings before the VM starts. > >> If one were crazy enough to want to do this, where should they look >> first? >> > > If you look at the -mem-file implementation in the latest git, you'll > see that all the guest's memory can be an mmap()'d file. Hi, Where is that implementation? I searched for mem-file, but couldn't find it. Thanks, Cam - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] Sharing a page of memory between the guest and host
Cam Macdonell wrote: > Hello, > > Is it possible to share a memory (a page perhaps) between the host and > guest? Yes, the host always has access to all of the guests memory. All of the virtio drivers depend on this fact. With KVM, the userspace (in this case, QEMU), just tells the kernel about a virtual address region and the kernel uses that region of virtual memory for the guest's physical memory. Whatever you (as userspace) maps into that region is totally up to you. > More precisely, could a host and guest share a memory-mapped > file? It will be a lot easier once we have MMU notifiers upstream. You'll be able to simply mmap(MAP_FIXED) a file into the guest's physical address space even while it's running. For now, you have to setup these mappings before the VM starts. > If one were crazy enough to want to do this, where should they > look first? > If you look at the -mem-file implementation in the latest git, you'll see that all the guest's memory can be an mmap()'d file. Regards, Anthony Liguori > Thanks, > Cam > > - > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ > ___ > kvm-devel mailing list > kvm-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/kvm-devel > - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] Sharing a page of memory between the guest and host
Hello, Is it possible to share a memory (a page perhaps) between the host and guest? More precisely, could a host and guest share a memory-mapped file? If one were crazy enough to want to do this, where should they look first? Thanks, Cam - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel