All of lore.kernel.org
 help / color / mirror / Atom feed
From: George Dunlap <george.dunlap@eu.citrix.com>
To: Dan Magenheimer <dan.magenheimer@oracle.com>
Cc: "Keir (Xen.org)" <keir@xen.org>,
	Ian Campbell <Ian.Campbell@citrix.com>,
	Andres Lagar-Cavilla <andreslc@gridcentric.ca>,
	"Tim (Xen.org)" <tim@xen.org>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>,
	Konrad Rzeszutek Wilk <konrad@kernel.org>,
	Jan Beulich <JBeulich@suse.com>,
	Ian Jackson <Ian.Jackson@eu.citrix.com>
Subject: Re: Proposed XENMEM_claim_pages hypercall: Analysis of problem and alternate solutions
Date: Mon, 14 Jan 2013 19:42:50 +0000	[thread overview]
Message-ID: <50F45FBA.3000508@eu.citrix.com> (raw)
In-Reply-To: <9be877bb-d38b-40c7-bae7-b66497f11abf@default>

On 14/01/13 18:18, Dan Magenheimer wrote:
>>>>> i.e. d->max_pages is fixed for the life of the domain and
>>>>> only d->tot_pages varies; i.e. no intelligence is required
>>>>> in the toolstack.  AFAIK, the distinction between current_maxmem
>>>>> and lifetime_maxmem was added for Citrix DMC support.
[snip]
> Yes, understood.  Ian please correct me if I am wrong, but I believe
> your proposal (at least as last stated) does indeed, in some cases,
> set d->max_pages less than or equal to d->tot_pages.  So AFAICT the
> change does very much have a bearing on the discussion here.

Strictly speaking, no, it doesn't have to do with what we're proposing.  
To impement "limit-and-check", you only need to set d->max_pages to 
d->tot_pages.  This capability has been possible for quite a while, and 
was not introduced to support Citrix's DMC.

> Exactly.  So, in your/Ian's model, you are artificially constraining a
> guest's memory growth, including any dynamic allocations*.  If, by bad luck,
> you do that at a moment when the guest was growing and is very much in
> need of that additional memory, the guest may now swapstorm or OOM, and
> the toolstack has seriously impacted a running guest.  Oracle considers
> this both unacceptable and unnecessary.

Yes, I realized the limitation to dynamic allocation from my discussion 
with Konrad.  This is a constraint, but it can be worked around.

Even so you rather overstate your case.  Even in the "reservation 
hypercall" model, if after the "reservation" there's not enough memory 
for the guest to grow, the same thing will happen.  If Oracle really 
considered this "unacceptable and unnecessary", then the toolstack 
should have a model of when this is likely to happen and keep memory 
around for such a contingency.

> So, I think it is very fair (not snide) to point out that a change was
> made to the hypervisor to accommodate your/Ian's memory-management model,
> a change that Oracle considers unnecessary, a change explicitly
> supporting your/Ian's model, which is a model that has not been
> implemented in open source and has no clear (let alone proven) policy
> to guide it.  Yet you wish to block a minor hypervisor change which
> is needed to accommodate Oracle's shipping memory-management model?

We've been over this a number of times, but let me say it again. Whether 
a change gets accepted has nothing to do with who suggested it, but 
whether the person suggesting it can convince the community that it's 
worthwhile.  Fujitsu-Seimens implemented cpupools, which is a fairly 
invasive patch, in order to support their own business models; while the 
XenClient team has had a lot of resistance to getting v4v upstreamed, 
even though their product depends on it.  My max_pages change was 
accepted (along with many others), but many others have also been 
rejected.  For example, my "domain runstates" patch was rejected, and is 
still being carried in the XenServer patchqueue several years later.

If you have been unable to convince the community that your patch is 
necessary, then either:
1. It's not necessary / not ready in its current state
2. You're not very good at being persuasive
3. We're too closed-minded / biased whatever to understand it

You clearly believe #3 -- you began by accusing us of being 
closed-minded (i.e., "stuck in a static world", &c), but have since 
changed to accusing us of being biased.  You have now made this 
accusation several times, in spite of being presented evidence to the 
contrary each time.  This evidence has included important Citrix patches 
that have been rejected, patches from other organizations that have been 
accepted, and also evidence that most of the people opposing your patch 
(including Jan, IanC, IanJ, Keir, Tim, and Andres) don't know anything 
about DMC and have no direct connection with XenServer.

For my part, I'm willing to believe #2, which is why I suggested that 
you ask someone else to take up the cause, and why I am glad that Konrad 
has joined the discussion.

  -George

  reply	other threads:[~2013-01-14 19:42 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <mailman.18000.1354568068.1399.xen-devel@lists.xen.org>
2012-12-04  3:24 ` Proposed XENMEM_claim_pages hypercall: Analysis of problem and alternate solutions Andres Lagar-Cavilla
2012-12-18 22:17   ` Konrad Rzeszutek Wilk
2012-12-19 12:53     ` George Dunlap
2012-12-19 13:48       ` George Dunlap
2013-01-03 20:38         ` Dan Magenheimer
2013-01-02 21:59       ` Konrad Rzeszutek Wilk
2013-01-14 18:28         ` George Dunlap
2013-01-22 21:57           ` Konrad Rzeszutek Wilk
2013-01-23 18:36             ` Dave Scott
2013-02-12 15:38               ` Konrad Rzeszutek Wilk
2012-12-20 16:04     ` Tim Deegan
2013-01-02 15:31       ` Andres Lagar-Cavilla
2013-01-02 21:43         ` Dan Magenheimer
2013-01-03 16:25           ` Andres Lagar-Cavilla
2013-01-03 18:49             ` Dan Magenheimer
2013-01-07 14:43               ` Ian Campbell
2013-01-07 18:41                 ` Dan Magenheimer
2013-01-08  9:03                   ` Ian Campbell
2013-01-08 19:41                     ` Dan Magenheimer
2013-01-09 10:41                       ` Ian Campbell
2013-01-09 14:44                         ` Dan Magenheimer
2013-01-09 14:58                           ` Ian Campbell
2013-01-14 15:45                           ` George Dunlap
2013-01-14 18:18                             ` Dan Magenheimer
2013-01-14 19:42                               ` George Dunlap [this message]
2013-01-14 23:14                                 ` Dan Magenheimer
2013-01-23 12:18                                   ` Ian Campbell
2013-01-23 17:34                                     ` Dan Magenheimer
2013-02-12 16:18                                     ` Konrad Rzeszutek Wilk
2013-01-10 10:31                       ` Ian Campbell
2013-01-10 18:42                         ` Dan Magenheimer
2013-01-02 21:38       ` Dan Magenheimer
2013-01-03 16:24         ` Andres Lagar-Cavilla
2013-01-03 18:33           ` Dan Magenheimer
2013-01-10 17:13         ` Tim Deegan
2013-01-10 21:43           ` Dan Magenheimer
2013-01-17 15:12             ` Tim Deegan
2013-01-17 15:26               ` Andres Lagar-Cavilla
2013-01-22 19:22               ` Dan Magenheimer
2013-01-23 12:18                 ` Ian Campbell
2013-01-23 16:05                   ` Dan Magenheimer
2013-01-02 15:29     ` Andres Lagar-Cavilla
2013-01-11 16:03       ` Konrad Rzeszutek Wilk
2013-01-11 16:13         ` Andres Lagar-Cavilla
2013-01-11 19:08           ` Konrad Rzeszutek Wilk
2013-01-14 16:00             ` George Dunlap
2013-01-14 16:11               ` Andres Lagar-Cavilla
2013-01-17 15:16             ` Tim Deegan
2013-01-18 21:45               ` Konrad Rzeszutek Wilk
2013-01-21 10:29                 ` Tim Deegan
2013-02-12 15:54                   ` Konrad Rzeszutek Wilk
2013-02-14 13:32                     ` Konrad Rzeszutek Wilk
2012-12-03 20:54 Dan Magenheimer

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=50F45FBA.3000508@eu.citrix.com \
    --to=george.dunlap@eu.citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=JBeulich@suse.com \
    --cc=andreslc@gridcentric.ca \
    --cc=dan.magenheimer@oracle.com \
    --cc=keir@xen.org \
    --cc=konrad@kernel.org \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xen.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.