qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2] memory: add cmd line option, to omit guest m


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH v2] memory: add cmd line option, to omit guest memory from qemu core dump
Date: Wed, 01 Aug 2012 13:54:44 -0500
User-agent: Notmuch/0.13.2+93~ged93d79 (http://notmuchmail.org) Emacs/23.3.1 (x86_64-pc-linux-gnu)

Jason Baron <address@hidden> writes:

> On Wed, Aug 01, 2012 at 01:21:57PM -0500, Anthony Liguori wrote:
>> Jason Baron <address@hidden> writes:
>> 
>> > Add a new '[,dump_guest_core=on|off]' option to the '-machine' option. When
>> > 'dump_guest_core=off' is specified, guest memory is omitted from the core 
>> > dump.
>> > The default behavior continues to be to include guest memory when a core 
>> > dump is
>> > triggered. In my testing, this brought the core dump size down from 384MB 
>> > to 6MB
>> > on a 2GB guest.
>> >
>> > Changelog:
>> > v2: move the option from -m to -machine, rename option dump -> 
>> > dump_guest_core
>> >
>> > Signed-off-by: Jason Baron <address@hidden>
>> > ---
>> >  exec.c          |   13 +++++++++++++
>> >  osdep.h         |    7 +++++++
>> >  qemu-config.c   |    4 ++++
>> >  qemu-options.hx |    5 ++++-
>> >  sysemu.h        |    1 +
>> >  vl.c            |    4 ++++
>> >  6 files changed, 33 insertions(+), 1 deletions(-)
>> >
>> > diff --git a/exec.c b/exec.c
>> > index feb4795..0764818 100644
>> > --- a/exec.c
>> > +++ b/exec.c
>> > @@ -35,6 +35,7 @@
>> >  #include "qemu-timer.h"
>> >  #include "memory.h"
>> >  #include "exec-memory.h"
>> > +#include "sysemu.h"
>> >  #if defined(CONFIG_USER_ONLY)
>> >  #include <qemu.h>
>> >  #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
>> > @@ -2514,6 +2515,7 @@ ram_addr_t qemu_ram_alloc_from_ptr(ram_addr_t size, 
>> > void *host,
>> >                                     MemoryRegion *mr)
>> >  {
>> >      RAMBlock *new_block;
>> > +    int ret;
>> >  
>> >      size = TARGET_PAGE_ALIGN(size);
>> >      new_block = g_malloc0(sizeof(*new_block));
>> > @@ -2555,6 +2557,17 @@ ram_addr_t qemu_ram_alloc_from_ptr(ram_addr_t size, 
>> > void *host,
>> >                                         last_ram_offset() >> 
>> > TARGET_PAGE_BITS);
>> >      cpu_physical_memory_set_dirty_range(new_block->offset, size, 0xff);
>> >  
>> > +
>> > +    /* Use MADV_DONTDUMP, if user doesn't want the guest memory in the 
>> > core */
>> > +    if (dont_dump_guest_core) {
>> 
>>     machine_opts = qemu_opts_find(qemu_find_opts("machine"), 0);
>>     if (machine_opts && qemu_opt_get_bool(machine_opts, "dump-guest-core")) {
>> 
>
> should be:
>  
> ... && !qemu_opt_get_bool(machine_opts, "dump-guest-core", true)
>
> ??

Yes.

Regards,

Anthony Liguori



reply via email to

[Prev in Thread] Current Thread [Next in Thread]