From: Dan Magenheimer <dan.magenheimer@oracle.com>
To: Scott Garron <xen-devel@sce.pridelands.org>,
Konrad Wilk <konrad.wilk@oracle.com>
Cc: xen-devel@lists.xensource.com
Subject: RE: BUG: unable to handle kernel paging request - balloon_init - xen-4.1.0 - 2.6.32.39
Date: Fri, 29 Apr 2011 07:43:24 -0700 (PDT) [thread overview]
Message-ID: <c99e08eb-34b3-462e-b7b2-278546bb4b28@default> (raw)
In-Reply-To: <4DBA1EA4.5010004@sce.pridelands.org>
> Scott Garron wrote:
> > Just for kicks, I tried hexediting balloon.o and changing that
> > instruction to "imul $0x1,%rdx,%rcx" (since multiplying by 1 will
> > essentially nullify the instruction), but the end result was still
> > the same crash, even though the value for "page" ended up being
> > 0x0000000000100000.
That multiply is correct. In C, when you add an integer X to
a pointer to a struct of size N, the result is the same as
if you were accessing the Xth element of an array of those structs.
struct foo *pfoo;
int X;
size_t N;
N = sizeof(struct foo);
pfoo + X == (unsigned long)pfoo + (N * X) /* is always true */
> My deduction so far is that "page = pfn_to_page(pfn);" is somehow
> returning a location that isn't quite "correct", but removing the
> "multipliply by 0x38" instruction only returned something partially
> usable and it took a dump all over the memory pages.
>
> Admittedly, I really know little about how all of this works, so
> my
> debugging process is like taking stabs in the dark. It's somewhat
> intriguing to me, so I'm pretty much just playing with it until someone
> who knows more can reproduce it. It's hard to imagine that I'm the
> only
> one having this problem with the current "xen/stable-2.6.32.x" branch.
A couple thoughts:
1) Is your guest an HVM or PV? IIRC, earlier versions of the balloon
driver did not run properly in an HVM guest. Compare your source
with a latest upstream balloon_init.
2) Are you building xen/stable-2.6.32.x as the kernel in a guest? Any
chance you might be loading a balloon module that doesn't match
the kernel you built?
3) I think developers generally use the xen/stable-2.6.32.x for dom0
and use distro kernels (or newer upstream kernels) for guest
kernels. So it is very possible that you are the only one having
this problem because you are the only one using a balloon driver
on a xen/stable-2.6.32.x kernel in a non-dom0 (HVM?) guest.
4) The latest upstream balloon driver does some magic with the
E820 memory map. Perhaps your machine has an odd or incorrect
E820 map from the BIOS? (This is outside of my area of expertise
so apologies if this doesn't make sense.)
Hope that helps!
Dan
next prev parent reply other threads:[~2011-04-29 14:43 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-26 0:04 BUG: unable to handle kernel paging request - balloon_init - xen-4.1.0 - 2.6.32.39 Scott Garron
2011-04-26 3:15 ` Konrad Rzeszutek Wilk
2011-04-26 5:03 ` Scott Garron
2011-04-27 20:09 ` Konrad Rzeszutek Wilk
2011-04-27 23:45 ` Scott Garron
[not found] ` <20110428183019.GA9852@dumpdata.com4DBA1EA4.5010004@sce.pridelands.org>
2011-04-28 18:30 ` Konrad Rzeszutek Wilk
2011-04-29 0:15 ` Scott Garron
2011-04-29 2:12 ` Scott Garron
2011-04-29 14:43 ` Dan Magenheimer [this message]
2011-04-29 16:56 ` Scott Garron
2011-04-29 19:38 ` Dan Magenheimer
2011-04-29 23:08 ` Scott Garron
2011-05-04 15:58 ` Konrad Rzeszutek Wilk
2011-05-04 19:19 ` Scott Garron
2011-05-04 19:35 ` Konrad Rzeszutek Wilk
2011-05-04 20:17 ` Scott Garron
2011-05-04 20:23 ` Konrad Rzeszutek Wilk
2011-05-04 21:55 ` Scott Garron
2011-05-04 22:16 ` Konrad Rzeszutek Wilk
2011-05-04 23:23 ` Scott Garron
2011-05-05 18:34 ` Konrad Rzeszutek Wilk
2011-05-05 20:48 ` Scott Garron
2011-05-05 21:06 ` Konrad Rzeszutek Wilk
2011-06-06 18:00 ` Scott Garron
2011-06-06 19:17 ` Pasi Kärkkäinen
2011-06-06 21:33 ` Scott Garron
2011-06-07 19:19 ` Konrad Rzeszutek Wilk
2011-06-08 18:25 ` Scott Garron
2011-06-08 19:29 ` Konrad Rzeszutek Wilk
2011-06-09 20:04 ` Scott Garron
2011-06-10 12:59 ` Konrad Rzeszutek Wilk
2011-06-10 16:51 ` Scott Garron
2011-06-13 22:03 ` Konrad Rzeszutek Wilk
2011-06-13 23:20 ` Scott Garron
2011-06-14 13:55 ` BUG: unable to handle kernel NULL pointer dereference at IP: [<ffffffff8105ae4c>] process_one_work+ Konrad Rzeszutek Wilk
2011-06-14 21:55 ` Scott Garron
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=c99e08eb-34b3-462e-b7b2-278546bb4b28@default \
--to=dan.magenheimer@oracle.com \
--cc=konrad.wilk@oracle.com \
--cc=xen-devel@lists.xensource.com \
--cc=xen-devel@sce.pridelands.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).