From: Chris Lalancette <clalance@redhat.com>
To: xen-devel@lists.xensource.com
Subject: [PATCH]: Fix fully-virtualized core dumps for 32-bit guests
Date: Mon, 11 Jun 2007 14:22:11 -0400 [thread overview]
Message-ID: <466D92D3.1000407@redhat.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 713 bytes --]
All,
Attached is a simple patch to fix core dumps for 32-bit guests running on
32-bit HV/dom0. The problem ends up being a cast in the libxc dumping code;
basically in xc_core_x86.c, p2m_size is a ulong, and in the case of a 32-bit FV
guest 0xFFFFF is returned from xc_memory_op() in nr_gpfns. However, 1 is then
added. This means that when we are doing the map->size calculations, we have
0x100000 << 12, which yields 0, which is then stored in the uint64 map->size.
The simple fix is to cast p2m_size up to 64-bits first, then do the shift, then
store it into map->size.
The patch is against xen-3.1, but should apply to current xen-unstable.
Signed-off-by: Chris Lalancette <clalance@redhat.com>
[-- Attachment #2: xen-3.1-32bit-fv-core-dump.patch --]
[-- Type: text/x-patch, Size: 397 bytes --]
diff -r c0b0974fb055 tools/libxc/xc_core_x86.c
--- a/tools/libxc/xc_core_x86.c Fri May 18 16:59:32 2007 +0100
+++ b/tools/libxc/xc_core_x86.c Mon Jun 11 14:18:19 2007 -0400
@@ -49,7 +49,7 @@ xc_core_arch_memory_map_get(int xc_handl
}
map->addr = 0;
- map->size = p2m_size << PAGE_SHIFT;
+ map->size = ((uint64_t)p2m_size) << PAGE_SHIFT;
*mapp = map;
*nr_entries = 1;
[-- Attachment #3: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
next reply other threads:[~2007-06-11 18:22 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-11 18:22 Chris Lalancette [this message]
2007-06-14 15:04 ` [PATCH]: Fix fully-virtualized core dumps for 32-bit guests Chris Lalancette
2007-06-14 15:09 ` Keir Fraser
2007-06-14 15:12 ` Chris Lalancette
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=466D92D3.1000407@redhat.com \
--to=clalance@redhat.com \
--cc=xen-devel@lists.xensource.com \
/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.