xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Kai Luo <kluo@vmware.com>
To: xen-devel@lists.xensource.com
Cc: dunlapg@umich.edu
Subject: Re: Question about mapping hvm‘s memory to dom0
Date: Tue, 2 Jul 2013 07:26:49 -0700 (PDT)	[thread overview]
Message-ID: <739870234.15556281.1372775209057.JavaMail.root@vmware.com> (raw)
In-Reply-To: <CAFLBxZaMzzTr6YmJS45qRhHoEaASSFgO5pj8cyXK3+8iYqeBKw@mail.gmail.com>





----- Original Message -----
> From: "George Dunlap" <dunlapg@umich.edu>
> To: "Kai Luo" <kluo@vmware.com>
> Cc: xen-devel@lists.xensource.com, "Dietmar Hahn" <dietmar.hahn@ts.fujitsu.com>
> Sent: Tuesday, July 2, 2013 9:43:27 PM
> Subject: Re: [Xen-devel] Question about mapping hvm‘s memory to dom0
> 
> On Tue, Jul 2, 2013 at 2:31 PM, Kai Luo <kluo@vmware.com> 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@ts.fujitsu.com>
> > To: xen-devel@lists.xen.org
> > Cc: "George Dunlap" <George.Dunlap@eu.citrix.com>, "Kai Luo"
> > <kluo@vmware.com>, xen-devel@lists.xensource.com
> > 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@vmware.com> 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@lists.xen.org
> >> http://lists.xen.org/xen-devel
> >>
> > --
> > Company details: http://ts.fujitsu.com/imprint.html
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@lists.xen.org
> > http://lists.xen.org/xen-devel

   Sorry about that top-post.I can think out circumstance that refcount increases which shows as below:(1)when the frame is assigned to a domain;(2)when the frame is mapped to dom0 by the given xc* interface.
   Without people's intervention,are there any other condition that refcount increases?For example,the content in pages of different domains are same,so they share only one frame and the refcount increases?

Thank you
-Jone

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

  reply	other threads:[~2013-07-02 14:26 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <183829454.13872961.1372645851829.JavaMail.root@vmware.com>
2013-07-01  2:32 ` Question about mapping hvm‘s memory to dom0 Kai Luo
2013-07-01  5:37   ` Question about mapping hvmŒs " Keir Fraser
2013-07-01  5:58     ` Question about mapping hvmŒs " Kai Luo
2013-07-01  9:52   ` Question about mapping hvm‘s " George Dunlap
2013-07-01 10:19     ` Dietmar Hahn
2013-07-02 13:31       ` Kai Luo
2013-07-02 13:43         ` George Dunlap
2013-07-02 14:26           ` Kai Luo [this message]
2013-07-02 16:51             ` George Dunlap
2013-07-02 17:50               ` Andres Lagar-Cavilla

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=739870234.15556281.1372775209057.JavaMail.root@vmware.com \
    --to=kluo@vmware.com \
    --cc=dunlapg@umich.edu \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).