[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Question about mapping hvm‘s memory to dom0



On Tue, Jul 2, 2013 at 2:31 PM, Kai Luo <kluo@xxxxxxxxxx> wrote:
>
> I know every frame has a struct to help xen manage memory,in addition to 
> normal mapping,when the frame refcount increases for hvm domain?page 
> sharing?Or something else?

(Please don't top-post.)

I'm sorry, do you mean, "When does the frame refcount increase?"

I'm afraid it's a bit complicated and not written down anywhere.  In
*general* the refcount increases whenever the page is mapped by a
domain, including dom0; as long as it has dom0 has domU pages mapped,
their reference counts will be at least 1 and the domain cannot be
destroyed.

 -George

> ----- Original Message -----
> From: "Dietmar Hahn" <dietmar.hahn@xxxxxxxxxxxxxx>
> To: xen-devel@xxxxxxxxxxxxx
> Cc: "George Dunlap" <George.Dunlap@xxxxxxxxxxxxx>, "Kai Luo" 
> <kluo@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
> Sent: Monday, July 1, 2013 6:19:10 PM
> Subject: Re: [Xen-devel] Question about mapping hvm‘s memory to dom0
>
> Am Montag 01 Juli 2013, 10:52:45 schrieb George Dunlap:
>> On Mon, Jul 1, 2013 at 3:32 AM, Kai Luo <kluo@xxxxxxxxxx> wrote:
>> > Hi:
>> >         I am trying to make some source code modifications to map the hvm
>> > memory to dom0,I use the xc_map_foreign_bulk to do this,It works and I
>> > export the hvm's memory to a file. My question is,after mapping the memory 
>> > I
>> > use xc_domain_destroy to shutdown the running hvm,theoretically the mapped
>> > memory will be scrubbed because xen will scrubbed the hvm's memory before
>> > they are freed to xen hyperviser,however I export the mapped memory after
>> > destroying hvm,finding the content in mapped memory nearly same as formly
>> > exported,they are not scrubbed at all.That confused me.Can you give me any
>> > suggestion?
>>
>> Just let me clarify a bit: You're saying that you 1) map the guest
>> memory, 2) destroy the domain, 3) read the already-mapped memory
>> again?
>>
>> If you keep the guest memory mapped by dom0 after you destroy the
>> domain, then the memory still has reference counts and isn't freed,
>> and thus won't be scrubbed.  (In fact, if you do "xl list", I bet
>> you'll find a "zombie domain" still left over which cant' shut down
>> because its pages aren't freed yet.)
>
> Not sure if 'xl list' shows the dying domain. But you can see this via the
> hypervisor console when pressing 'q'.
>
> Dietmar.
>
>> When you unmap the pages in
>> dom0, they will then be freed, and since the domain is in the
>> "is_dying" state, they will be scrubbed.
>>
>> The logic can be found in xen/common/page_alloc.c:free_domheap_pages().
>>
>>  -George
>>
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@xxxxxxxxxxxxx
>> http://lists.xen.org/xen-devel
>>
> --
> Company details: http://ts.fujitsu.com/imprint.html
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.