Anthony Liguori wrote: > Anthony Liguori wrote: >> Izik Eidus wrote: >>> Anthony Liguori wrote: >>>> >>>> I think it's just a matter of calling do_mmap() with the >>>> appropriate parameters. It looks likes there's some drivers call >>>> do_mmap() directly. >>>> >>> yea, i think you right, this is excellent idea!, when we will merge >>> the swapping to kvm, we will add swapping support to older userspace. >> >> Here's a patch against your series. The memset in kvmctl ends up >> making the guest use all physical memory to start off with but I did >> confirm that once the system is under memory pressure, the guest's >> memory becomes swappable. Of course, it's quite painful :-) >> >> A nice thing though is that a lot of the code becomes a bit cleaner >> and we can eliminate the phys_mem array entirely. > >> /* Allocate if a slot is being created */ >> - if (npages && !new.phys_mem) { >> - new.phys_mem = vmalloc(npages * sizeof(struct page *)); >> - >> - if (!new.phys_mem) >> - goto out_unlock; >> - >> + if (npages) { > > This is wrong apparently. We needed to have new.phys_mem to indicate > whether the slot has been created yet or not. The new attached patch > uses new.rmap instead of new.phys_mem to accomplish the same goal. > this patch look good, and indeed make all the things simple. but why you didnt use new.phys_mem ? > I no longer see the BUG() that I was seeing. > >> Regards, >> >> Anthony Liguori >> >> >
------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel