Re: [BUG] 2.6.26-rc1 hangs during boot on UltraSPARC 5

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



David Miller writes:
 > From: Mikael Pettersson <mikpe@xxxxxxxx>
 > Date: Tue, 6 May 2008 21:38:24 +0200
 > 
 > > I removed "| CON_BOOT" and got what looks like the same oops
 > > Raúl Porcel reported earlier today (which he for some reason
 > > sent only to the lists, not to you or me); his oops was:
 > 
 > I can reproduce this problem here in my t1000.
 > 
 > It looks like some kind of initrd regression.
 > 
 > Looking at the crashes, the kernel seems to be trying
 > to dereference a physical address when peeking at the
 > initrd instead of using a virtual one.  That's a big
 > clue.
 > 
 > This patch should fix it:
 > 
 > commit d45100f7b69e3d9cd0cd5e956b6ac2c78d460d07
 > Author: David S. Miller <davem@xxxxxxxxxxxxx>
 > Date:   Tue May 6 15:19:54 2008 -0700
 > 
 >     sparc64: Fix initrd regression.
 >     
 >     We die because we forget to convert initrd_start and
 >     initrd_end to virtual addresses.
 >     
 >     Reported by Mikael Pettersson
 >     
 >     Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
 > 
 > diff --git a/arch/sparc64/mm/init.c b/arch/sparc64/mm/init.c
 > index db8e7fb..ec3e2c7 100644
 > --- a/arch/sparc64/mm/init.c
 > +++ b/arch/sparc64/mm/init.c
 > @@ -771,6 +771,9 @@ static void __init find_ramdisk(unsigned long phys_base)
 >  		initrd_end = ramdisk_image + sparc_ramdisk_size;
 >  
 >  		lmb_reserve(initrd_start, initrd_end);
 > +
 > +		initrd_start += PAGE_OFFSET;
 > +		initrd_end += PAGE_OFFSET;
 >  	}
 >  #endif
 >  }

This solved my boot problem. Thanks.

Tested-by: Mikael Pettersson <mikpe@xxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux