xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xensource.com
Cc: George.Dunlap@eu.citrix.com, Ian.Campbell@citrix.com
Subject: [PATCH 0 of 4] libxl: initial support for xenpaging
Date: Wed, 02 Nov 2011 15:45:36 +0100	[thread overview]
Message-ID: <patchbomb.1320245136@probook.site> (raw)


The following series adds initial support for xenpaging to libxl.
It depends on two series I sent earlier:

tools/xenpaging fixes for xen-unstable, sent on 2011-10-21
http://lists.xensource.com/archives/html/xen-devel/2011-10/msg01542.html

libxl: make spawn interface more generic, sent on 2011-10-27
http://lists.xensource.com/archives/html/xen-devel/2011-10/msg01912.html


The logic of xenpaging was reversed by this series.
It does now monitor the guests tot_pages value and work toward that number by
either paging out more pages, or write pages back into the guest.
Target changes will received from the guests "memory/target-tot_pages" path.

Three new configuration file options specific for xenpaging were added:
  actmem=<int>
  xenpaging_file=<string> (optional)
  xenpaging_extra=[ 'string', 'string' ] (optional)
xenpaging will only be started if actmem= is set and not zero.


A xl mem-SOMETHING command is not yet part of this series. I will add it once
a suitable name is found.


There has been some discussion regarding the naming of the config option, and
how to drive xenpaging via xl commands. 
http://lists.xensource.com/archives/html/xen-devel/2011-10/msg00110.html

The term "actual memory" was suggested by IanC, thats why the option is now
'actmem=' instead of 'totmem='. So far I couldnt come up with a better name
that follows the current scheme.

George Dunlap suggested the following off-list for the related xl mem-*
commands:
'xl mem-set' should continue to change the balloon target as it does today.
But it should also update "memory/target-tot_pages" with the same value. There
could be some churn when the balloon driver and xenpaging try to reach that
value. Eventually xenpaging will be faster to free pages, while the balloon
driver still tries to reach its target. In my opinion thats not an issue if
mem-set really means 'release as much memory back to Xen, as fast as
possible'. If the guest is actually using much memory then the balloon driver
(in its role as memory hog) can not do much to reach its target. But xenpaging
swap some parts of the guest to free memory on the host.

Two other 'xl mem-*' commands should be added to tweak just the balloon driver
and xenpaging. 'xl mem-balloon-target' does what 'mem-set' does today, and 'xl
mem-swap-target' will tweak "memory/target-tot_pages".



Olaf


 tools/libxl/libxl.h          |    1 
 tools/libxl/libxl_create.c   |  126 ++++++++++++++++++++++++++
 tools/libxl/libxl_dom.c      |    8 +
 tools/libxl/libxl_memory.txt |   57 +++++++-----
 tools/libxl/libxl_types.idl  |    3 
 tools/libxl/xl_cmdimpl.c     |   31 ++++++
 tools/xenpaging/xenpaging.c  |  201 +++++++++++++++++++++++++++++++++++--------
 tools/xenpaging/xenpaging.h  |    1 
 8 files changed, 368 insertions(+), 60 deletions(-)

             reply	other threads:[~2011-11-02 14:45 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-02 14:45 Olaf Hering [this message]
2011-11-02 14:45 ` [PATCH 1 of 4] xenpaging: use guests tot_pages as working target Olaf Hering
2011-11-02 14:45 ` [PATCH 2 of 4] xenpaging: watch the guests memory/target-tot_pages xenstore value Olaf Hering
2011-11-02 14:45 ` [PATCH 3 of 4] xenpaging: add cmdline interface for pager Olaf Hering
2011-11-02 14:45 ` [PATCH 4 of 4] xenpaging: initial libxl support Olaf Hering
2011-11-07 11:02   ` Stefano Stabellini
2011-11-07 12:55     ` Olaf Hering
2011-11-07 13:28       ` Stefano Stabellini
2011-11-20 18:29         ` Olaf Hering
2011-11-21 10:53           ` Stefano Stabellini
2011-11-21 15:13             ` Olaf Hering
2011-11-21 16:40               ` George Dunlap
2011-11-22  9:05                 ` Ian Campbell
2011-11-22 10:58               ` Stefano Stabellini
2011-11-22 11:22                 ` Olaf Hering
2011-11-22 15:48               ` George Dunlap
2012-01-09 19:21                 ` Olaf Hering
2012-01-10 12:02                   ` George Dunlap
2012-01-11 14:58                     ` Olaf Hering
2012-01-11 16:10                       ` Tim Deegan
2012-01-11 16:38                         ` Olaf Hering
2012-01-11 16:58                           ` Tim Deegan
2012-01-12 14:12                             ` Olaf Hering
2012-01-13 11:00                               ` Ian Campbell

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=patchbomb.1320245136@probook.site \
    --to=olaf@aepfle.de \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --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).