* Suraj Jitindar Singh (sjitindarsingh@gmail.com) wrote:
> The dump-guest-memory command is used to dump an area of guest memory
> to a file, the piece of memory is specified by a begin address and
> a length. These parameters are specified as ints and thus have a maximum
> value of 4GB. This means you can't dump the guest memory past the first
> 4GB and instead get:
> (qemu) dump-guest-memory tmp 0x100000000 0x100000000
> 'dump-guest-memory' has failed: integer is for 32-bit values
> Try "help dump-guest-memory" for more information
>
> This limitation is imposed in monitor_parse_arguments() since they are
> both ints. hmp_dump_guest_memory() uses 64 bit quantities to store both
> the begin and length values. Thus specify begin and length as long so
> that the entire guest memory space can be dumped.
>
> Signed-off-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
and queued
> ---
> hmp-commands.hx | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hmp-commands.hx b/hmp-commands.hx
> index 0734fea931..3b5c1f65db 100644
> --- a/hmp-commands.hx
> +++ b/hmp-commands.hx
> @@ -1116,7 +1116,7 @@ ETEXI
>
> {
> .name = "dump-guest-memory",
> - .args_type = "paging:-p,detach:-d,zlib:-z,lzo:-l,snappy:-s,filename:F,begin:i?,length:i?",
> + .args_type = "paging:-p,detach:-d,zlib:-z,lzo:-l,snappy:-s,filename:F,begin:l?,length:l?",
> .params = "[-p] [-d] [-z|-l|-s] filename [begin length]",
> .help = "dump guest memory into file 'filename'.\n\t\t\t"
> "-p: do paging to get guest's memory mapping.\n\t\t\t"
> --
> 2.13.6
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK