[vbox-dev] Kernel Samepage Merging

James Lucas jimmy at secsme.org.au
Thu May 13 06:30:07 GMT 2010


Hi All,

A while ago Achim talked about bringing same page sharing to VirtualBox 
3.2. I've noticed that of late there have been numerous commits to the 
public svn on this feature and it has been enabled by default for the 
OSE edition. Is this feature going to make it into 3.2? A maintenance 
release of 3.2.X? or held off to 3.X?

- James

On 16/11/09 9:07 PM, Achim Hasenmueller wrote:
> James,
>
> this feature is on our roadmap. However, we would not rely on Linux KSM as it would only help us on very recent Linux kernels whereas VirtualBox spans a long list of supported platforms.
>
> The implementation will be part of the vboxdrv kernel driver which handles memory page allocation for all VMs on the system. It would be very similar to Linux KSM in the way it works (it's quite obvious do it like that). We've designed it years ago but never gotten around to actually implementing it. One reason for that is that we are not big fans of that feature. It brings a lot of practical issues and it's the perfect way of shooting yourself in the foot. However, there's a lot of hype about it so we're going to add it to our feature list.
>
> Help would be much appreciated though :-)  We're shooting for VirtualBox 3.2.
>
> Achim.
>
>
> On Nov 9, 2009, at 10:28 , James Lucas wrote:
>
>    
>> I thought I would try something a little bit more complex for my next go at
>> delving into the VirtualBox source code however have become stuck and am hoping
>> that someone from Sun can give me a pointer in the right direction.
>>
>> Kernel Samepage Merging has come to the linux kernel (Released in RHEL5.4 and
>> Fedora 12) and is utilised by KVM to perform memory overcommit for virtual
>> machines. Where exactly does VirtualBox allocate the VM memory structures? I
>> was finding code over the MM and PGM code but not exactly sure where the actual
>> allocation occurs.
>>
>> I suspect that both the VirtualBox runtime and the host memory can be tagged as
>> mergeable. Host memory might be the best one to test out first (the code change
>> is trivial and advises the kernel that the memory is mergeable and request the
>> kernel to scan for identical pages)
>>
>> I hope someone is able to help.
>>
>>
>>
>> --
>> UTS CRICOS Provider Code:  00099F
>> DISCLAIMER: This email message and any accompanying attachments may contain
>> confidential information.  If you are not the intended recipient, do not
>> read, use, disseminate, distribute or copy this message or attachments.  If
>> you have received this message in error, please notify the sender
>> immediately and delete this message. Any views expressed in this message
>> are those of the individual sender, except where the sender expressly, and
>> with authority, states them to be the views the University of Technology,
>> Sydney. Before opening any attachments, please check them for viruses and
>> defects.
>>
>> _______________________________________________
>> vbox-dev mailing list
>> vbox-dev at virtualbox.org
>> http://vbox.innotek.de/mailman/listinfo/vbox-dev
>>      
>    

--
UTS CRICOS Provider Code:  00099F
DISCLAIMER: This email message and any accompanying attachments may contain
confidential information.  If you are not the intended recipient, do not
read, use, disseminate, distribute or copy this message or attachments.  If
you have received this message in error, please notify the sender
immediately and delete this message. Any views expressed in this message
are those of the individual sender, except where the sender expressly, and
with authority, states them to be the views the University of Technology,
Sydney. Before opening any attachments, please check them for viruses and
defects.




More information about the vbox-dev mailing list