All of lore.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: Anthony Liguori <aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	Marcelo Tosatti <marcelo-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org>,
	Andrea Arcangeli <andrea-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
Subject: Re: [PATCH] QEMU support for virtio balloon driver
Date: Sat, 26 Jan 2008 20:35:40 +0200	[thread overview]
Message-ID: <479B7D7C.6080303@qumranet.com> (raw)
In-Reply-To: <479A7A5C.6030005-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>

Anthony Liguori wrote:
>>>>       
>>> Looks like it's not.  I just hung my host system after doing a bunch 
>>> of ballooning with a kernel that doesn't have MM notifiers.
>>>
>>> I'm inclined to think that we should have a capability check for MM 
>>> notifiers and just not do madvise if they aren't present.  I don't 
>>> think the ioctl approach that Marcelo took is sufficient as a 
>>> malicious guest could possibly hose the host.
>>>
>>>     
>>
>> The ioctl to zap the shadow pages is needed in order to free memory
>> fast. Without it the balloon will evacuate memory to slow for common
>> mgmt application (running additional VMs).
>>   
>
> I think that assertion needs some performance numbers to back it up.  
> Linux will write unused pages to swap such that when it does need to 
> obtain memory, it can easily just reclaim pages without doing any disk 
> IO.
>
> The real advantage with using madvise() is that it doesn't use any 
> swap space (at least, on Linux).
>

Zapping the mmu is needed so the memory can actually be reclaimed in the 
absence of mmu notifiers.  With mmu notifiers, it is unnecessary.


>
> The issue is the atomicity of removing some from the shadow MMU cache 
> and then madvise()'ing (since madvise is incapable of evicting from 
> the shadow MMU cache w/o MMU notifiers).  The only real solution I 
> know of would be to also introduce an ioctl that's essentially, 
> MADVISE_AND_REMOVE_FROM_SHADOW_MMU ioctl().
>

Or maybe

   stop all vcpus (in userspace)
   zap shadow
   madvise()
   resume all vcpus

-- 
Any sufficiently difficult bug is indistinguishable from a feature.


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

  parent reply	other threads:[~2008-01-26 18:35 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-24 21:23 [PATCH] QEMU support for virtio balloon driver Anthony Liguori
     [not found] ` <1201209786831-git-send-email-aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-01-24 22:29   ` Anthony Liguori
     [not found]     ` <4799115F.8010506-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-01-25 16:08       ` Marcelo Tosatti
2008-01-25 17:02         ` Anthony Liguori
     [not found]           ` <479A162C.1060209-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-01-26 18:47             ` Avi Kivity
2008-03-08 19:27               ` Marcelo Tosatti
2008-03-08 20:51                 ` Marcelo Tosatti
2008-03-09  2:46                   ` Anthony Liguori
2008-01-26  3:35         ` Rusty Russell
2008-01-25 23:08       ` Dor Laor
     [not found]         ` <1201302492.2944.8.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-01-26  0:10           ` Anthony Liguori
     [not found]             ` <479A7A5C.6030005-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-01-26 18:35               ` Avi Kivity [this message]
  -- strict thread matches above, loose matches on Subject: below --
2008-02-25 19:47 Anthony Liguori
2008-02-25 23:45 ` Dor Laor

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=479B7D7C.6080303@qumranet.com \
    --to=avi-atkuwr5tajbwk0htik3j/w@public.gmane.org \
    --cc=aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org \
    --cc=andrea-atKUWr5tajBWk0Htik3J/w@public.gmane.org \
    --cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=marcelo-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.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.