Hi Ram,

Thanks for the reply.

We went ahead and modified the code in VBoxServicePageSharing.cpp. We basically 
added a function VBoxServicePageSharingInspectG
uest( ) that compiles for linux platform. In this functions, we are trying to 
register modules from the linux guest using information obtained from 
/proc/modules; we are calling the function VbglR3RegisterSharedModule( ) for 
the same. < The very function that is used by the code for windows > We are 
also invoking VbglR3CheckSharedModules( ) after registering, as is being done 
in case of windows.

We have not been able to get any successful results so far (as reported by the 
VBoxManage metrics). A couple of concerns are:
1. Parameters for VbglR3RegisterSharedModule( ):
   a. Name of the module
   b. Version of the module
   c. Base address of the module (Virtual Address)
   d. Base size of the module
   e. No. of regions (elements in VMMDEVSHAREDREGIONDESC array)
   f. An array describing various memory regions in the module 
(VMMDEVSHAREDREGIONDESC array)

- Is our understanding correct ? Or is there anything wrong ?

2. We are trying to pass each module from /proc/modules in the Linux guest as 
ONE single region. The name, base address and size are available from 
/proc/modules. We are passing a dummy value for the version, and filling the 
array with one entry - address and size.

Your comments on the same. Any insights will be helpful, as we are pretty much 
stuck. Sorry for this verbose email.

Thanks
________________________________
From: Ramshankar [[email protected]]
Sent: Monday, December 10, 2012 5:45 AM
To: Sandeep Koppala
Cc: [email protected]
Subject: Re: [vbox-dev] LogFlow() statements...

On 12/07/2012 04:32 AM, Sandeep Koppala wrote:
Hi all,

I am trying to implement Page Fusion for x64 Linux guests. I understand that 
this will require changes to the Guest Additions. Specifically, in the 
VBoxServicePageSharing.cpp code. I have made some changes here and I am trying 
to call VbglR3RegisterSharedModule function with information about Linux guest 
modules.

1. I am unable to put a trace in the R3 code, the code for the VMM / 
hypervisor. I am unable to see the LogFlow() messages. Can you help me enable 
it ?

2. Is the code that implements page-fusing / sharing in the VMM specific to 
windows ?

Thanks in advance !



_______________________________________________
vbox-dev mailing list
[email protected]<mailto:[email protected]>
https://www.virtualbox.org/mailman/listinfo/vbox-dev


1. Did you take a look at logging information here: 
https://www.virtualbox.org/wiki/VBoxLogging (see Ring-0 logging)?

2. From a quick glance, the guest additions part of the code is specific to 
Windows, on the host side it is platform agnostic (not enabled for 64-bit 
darwin hosts though). The guest addition side has some compile-time defines 
that only register the service hooks for Windows (VBoxService.cpp).


Regards,
Ram.

_______________________________________________
vbox-dev mailing list
[email protected]
https://www.virtualbox.org/mailman/listinfo/vbox-dev

Reply via email to