Re: 2.6.15-mm4 failure on power5

From: Michael Ellerman
Date: Mon Jan 16 2006 - 08:05:46 EST


On Mon, 16 Jan 2006 18:05, Andrew Morton wrote:
> "Serge E. Hallyn" <serue@xxxxxxxxxx> wrote:
> > On my power5 partition, 2.6.15-mm4 hangs on boot
>
> It might be worth reverting the changes to arch/powerpc/mm/hash_utils_64.c,
> see if that unbreaks it.
>
> - base = lmb.memory.region[i].base + KERNELBASE;
> + base = (unsigned long)__va(lmb.memory.region[i].base);

You can try it, but if that fixes the problem I'll buy a sombrero and then eat
it.

> The nice comment in page.h:
>
> * KERNELBASE is the virtual address of the start of the kernel, it's often
> * the same as PAGE_OFFSET, but _might not be_.
> *
> * The kdump dump kernel is one example where KERNELBASE != PAGE_OFFSET.
> *
> * To get a physical address from a virtual one you subtract PAGE_OFFSET,
> * _not_ KERNELBASE.
>
> Tells us that was not an equivalent transformation.

True, not equivalent in all cases, but correct. For non-kdump kernels (which I
assume this is) KERNELBASE == PAGE_OFFSET, and for a kdump kernel that code
wants to use PAGE_OFFSET, not KERNELBASE.

Try enabling early debugging (see arch/powerpc/kernel/setup_64.c) and then
turning on DEBUG in hash_utils_64.c, setup_64.c etc.

cheers

--
Michael Ellerman
IBM OzLabs

email: michael:ellerman.id.au
inmsg: mpe:jabber.org
wwweb: http://michael.ellerman.id.au
phone: +61 2 6212 1183 (tie line 70 21183)

We do not inherit the earth from our ancestors,
we borrow it from our children. - S.M.A.R.T Person

Attachment: pgp00000.pgp
Description: PGP signature