From: Igor Mammedov <imammedo@redhat.com>
To: Eduardo Otubo <eduardo.otubo@profitbricks.com>
Cc: Qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] mem1 is in use, can not be deleted
Date: Fri, 10 Jul 2015 11:30:10 +0200 [thread overview]
Message-ID: <20150710113010.1a9d405f@nial.brq.redhat.com> (raw)
In-Reply-To: <20150709142241.GA20671@vader>
On Thu, 9 Jul 2015 16:22:41 +0200
Eduardo Otubo <eduardo.otubo@profitbricks.com> wrote:
> On Tue, Jun 30, 2015 at 05=56=02PM +0200, Igor Mammedov wrote:
> > On Tue, 30 Jun 2015 15:56:13 +0200
> > Eduardo Otubo <eduardo.otubo@profitbricks.com> wrote:
> >
> > > On Tue, Jun 30, 2015 at 11=18=21AM +0200, Igor Mammedov wrote:
> > > > On Tue, 30 Jun 2015 10:07:52 +0200
> > > > Eduardo Otubo <eduardo.otubo@profitbricks.com> wrote:
> > > >
> > > > > Hello all,
> > > > >
> > > > > I compiled the HEAD of the master branch and was testing memory
> > > > > hotunplug and got to this issue. Note: I followed exactly what's
> > > > > written on the docs/memory-hotplug.txt file.
> > > > >
> > > > > QEMU 2.3.50 monitor - type 'help' for more information
> > > > > (qemu) object_add memory-backend-ram,id=mem1,size=1G
> > > > > object_add memory-backend-ram,id=mem1,size=1G
> > > > > (qemu) device_add pc-dimm,id=dimm1,memdev=mem1
> > > > > device_add pc-dimm,id=dimm1,memdev=mem1
> > > > > (qemu) device_del dimm1
> > > > > device_del dimm1
> > > > > (qemu) object_del mem1
> > > > > object_del mem1
> > > > > mem1 is in use, can not be deleted
> > > >
> > > > probably because dimm1 isn't deleted,
> > > > you can check it in monitor using command "info memory-devices"
> > >
> > > Yes, you're right. The reason is surely because dimm1 wasn't deleted
> > > -- and I think I didn't make my point very clear -- my question was
> > > more about: Is there any reason for dimm1 not being deleted? The
> > > reason why I tested with the guest OS fully running and on GRUB is
> > > because I guessed the guest OS was using this memory and couldn't be
> > > deallocated. If that's the case, and qemu did a best effort to remove
> > > and couldn't because guest was using it, then Ok, I just need to
> > > adapt my tests. Other than that perhaps I hit a bug.
> > Guest OS has to:
> > 1. support memory hot remove
>
> How do I know if guest OS supports memory hot remove? I'm testing on
> Debian 8 with kernel 4.1. I start qemu with "-m 2G,slots=32,maxmem=8G".
kernel should be compiled with memory remove options
Also memory removal is allowed to fail if guest kernel is not able
to offline corresponding memory sections but it probably should notify
QEMU via ACPI about failure.
>
> > 2. eject memory device using ACPI _EJ0 method, once it has handled
> > removal request, provided it is able to free corresponding memory pages
> > See docs they should have flows described for success and failure case.
>
> When I issue the command "device_del dimm1" I see no output on dmesg on
> the guest OS. I guess this is a sign that perhaps the guest does not
> support it?
>
> From the (very nice) diagram I found at docs/specs/acpi_mem_hotplug.txt,
> Qemu QMP should output some sort of failure if Guest OS fails to
> process ejection right? The only information I see is:
you need to use query-acpi-ospm-status command to see slot status.
>
> (qemu) device_del dimm1
> device_del dimm1
>
> (qemu) info memory-devices
> info memory-devices
> Memory device [dimm]: "dimm1"
> addr: 0x100000000
> slot: 0
> node: 0
> size: 1073741824
> memdev: /objects/mem1
> hotplugged: true
> hotpluggable: true
>
> (qemu) info memdev
> info memdev
> memory backend: 0
> size: 1073741824
> merge: true
> dump: true
> prealloc: false
> policy: default
> host nodes:
>
> How was the environment when you tested this feature?
Most likely I've used RHEL7.1 as guest with latest systemd
which onlines hotplugged memory automatically on hotplug.
>
> Regards,
>
next prev parent reply other threads:[~2015-07-10 9:30 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-30 8:07 [Qemu-devel] mem1 is in use, can not be deleted Eduardo Otubo
2015-06-30 9:18 ` Igor Mammedov
2015-06-30 13:56 ` Eduardo Otubo
2015-06-30 15:56 ` Igor Mammedov
2015-07-09 14:22 ` Eduardo Otubo
2015-07-10 9:30 ` Igor Mammedov [this message]
2015-07-10 15:35 ` Eduardo Otubo
2015-07-13 8:23 ` Igor Mammedov
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=20150710113010.1a9d405f@nial.brq.redhat.com \
--to=imammedo@redhat.com \
--cc=eduardo.otubo@profitbricks.com \
--cc=qemu-devel@nongnu.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 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).