From: Dave Hansen <dave@linux.vnet.ibm.com>
To: Chandru <chandru@in.ibm.com>
Cc: linuxppc-dev@ozlabs.org,
Andrew Morton <akpm@linux-foundation.org>,
Paul Mackerras <paulus@samba.org>,
linux-kernel@vger.kernel.org
Subject: Re: 2.6.28-rc9 panics with crashkernel=256M while booting
Date: Wed, 21 Jan 2009 16:29:39 -0800 [thread overview]
Message-ID: <1232584180.27278.86.camel@nimitz> (raw)
In-Reply-To: <200901191700.03580.chandru@in.ibm.com>
On Mon, 2009-01-19 at 17:00 +0530, Chandru wrote:
> --- linux-2.6.29-rc2/arch/powerpc/mm/numa.c.orig 2009-01-19 16:14:49.000000000 +0530
> +++ linux-2.6.29-rc2/arch/powerpc/mm/numa.c 2009-01-19 16:36:38.000000000 +0530
> @@ -901,7 +901,8 @@ static void mark_reserved_regions_for_ni
> get_node_active_region(start_pfn, &node_ar);
> while (start_pfn < end_pfn &&
> node_ar.start_pfn < node_ar.end_pfn) {
> - unsigned long reserve_size = size;
> + unsigned long reserve_size = (size >> PAGE_SHIFT) <<
> + PAGE_SHIFT;
> /*
> * if reserved region extends past active region
> * then trim size to active region
> @@ -917,7 +918,8 @@ static void mark_reserved_regions_for_ni
> dbg("reserve_bootmem %lx %lx nid=%d\n",
> physbase, reserve_size, node_ar.nid);
> reserve_bootmem_node(NODE_DATA(node_ar.nid),
> - physbase, reserve_size,
> + (start_pfn << PAGE_SHIFT),
> + reserve_size,
> BOOTMEM_DEFAULT);
> }
> /*
Chandru, I don't mean to keep ragging on your patches, but I really
don't think this is right, yet.
Let's take, for instance, a 1-byte reservation. With this code, you've
suddenly turned that into a 0-byte reservation, and that *can't* be
right. The same thing happens if you have a reservation that spans two
pages. If you unconditionally round it down, then you might miss the
part that spans a portion of the second page.
It needs to be rounded down like you are suggesting here, but only in
the case where we've gone over the *CURRENT* node's boundary. This is
kinda what that "if (end_pfn > node_ar.end_pfn)" check is doing. But,
it evidently screws it up if the overlap isn't by an entire page or
something.
Please also, for pete's sake, use masks (a la PAGE_MASK) or macros if
you're going to page-align something. Don't shift down and up like
that.
-- Dave
next prev parent reply other threads:[~2009-01-22 0:29 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200812241325.49404.chandru@in.ibm.com>
2008-12-25 7:35 ` 2.6.28-rc9 panics with crashkernel=256M while booting Andrew Morton
2008-12-25 8:07 ` Andrew Morton
2008-12-26 0:59 ` Paul Mackerras
2008-12-29 21:36 ` Dave Hansen
2009-01-05 13:49 ` Chandru
2009-01-05 16:30 ` Dave Hansen
2009-01-07 12:58 ` Chandru
2009-01-07 17:25 ` Dave Hansen
2009-01-08 10:29 ` Chandru
2009-01-08 20:03 ` Dave Hansen
2009-01-09 11:07 ` Chandru
2009-01-15 8:05 ` Chandru
2009-01-16 12:16 ` Chandru
2009-01-16 17:52 ` Dave Hansen
2009-01-19 8:11 ` Chandru
2009-01-19 11:30 ` Chandru
2009-01-20 8:13 ` Chandru
2009-01-22 0:29 ` Dave Hansen [this message]
2009-01-22 8:20 ` Chandru
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=1232584180.27278.86.camel@nimitz \
--to=dave@linux.vnet.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=chandru@in.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=paulus@samba.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).