[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-mips
Subject:    Re: [gentoo-mips] Booting issues
From:       Kumba <kumba () gentoo ! org>
Date:       2006-08-01 13:07:05
Message-ID: 44CF51F9.7030606 () gentoo ! org
[Download RAW message or body]

Richard wrote:
> Hi,
> 
> I'm still trying to get my inaugural disk boot to work on my Octane 1. 
> I've used Skylark's config file for the kernel build (as I couldn't find 
> the official gentoo one, and the default gentoo install kernel doesn't 
> seem to work for me anyway), but I get a fairly blunt error, with a few 
> magic numbers.
> 
> The results of a boot attempt follow:
> ARCLoader 0.43(...)
> Loading configuration(...)
> Loading scsi(0)(...)
> Reading 5638216 bytes... OK.
> Entering kernel.
> 
> NESTED EXCEPTION #1 (vid 0) at EPC: ffffffff9fc6819c; first exception at 
> PC: 0
> 
> <EOF>
> 
> Any suggestions as to the problem, or potential solution? Where should I 
> look for further information? Is there additional information I should 
> provide? What troubleshooting advice is there? Has anyone else ever seen 
> this?
> 
> This is a fresh, current Gentoo install...
> 
> Thanks for your help,
> 
> Richard


Apparently, this problem has been around, hiding for quite some time.  None of 
us ever identified it as a RealProblem(TM) because when you netboot the kernel, 
the issue doesn't arise.  Once I started testing bootable CDs again, I ran into 
it like a bird into a glass window.

I haven't had a chance to try and isolate what the exact cause is.  I suspect 
the problem is in the Octane kernel patch itself rather than the Linux-mips 
tree, so I doubt using tools to hunt it down in git is going to pay off.  The 
one solution I have discovered is below if you want to use disk-based booting:

1) Unmask gcc-4.1.1 by adding '>=sys-devel/gcc-4.1.1' to 
/etc/portage/package.unmask (without the quotes).  You don't have to merge it 
yet, as it's not needed for fixing the kernel, but I made it a dependency of 
2.6.17* for an upcoming nptl migration.  It's safe to merge, however.

2) If you're running unstable (ACCEPT_KEYWORDS=~mips), then you can merge 
sys-kernel/mips-sources-2.6.17.7 (or whatever is latest).  Otherwise, you'll 
need to add the following to /etc/portage/package.keywords temporarily:
	'sys-kernel/mips-sources ~mips'

3) Merge sys-devel/kgcc64-3.4.6 and unmerge sys-devel/gcc-mips64.  kgcc64 
replaces gcc-mips64, and as a bonus, includes all the patches and bugfixes we 
use in the main system compiler.

4) Compile a 2.6.17* kernel using the kgcc64 toolchain.  It'll build only a 
kernel compiler, and you can use it much the same way as you did gcc-mips64.

Boot the resultant kernel, and my testing so far shows that it will boot.  I'm 
still not sure how to go about tracking down the original problem.  I have a 
feeling it's possibly bad kernel code that gets miscompiled in kernel versions 
from ~2.6.15 to ~2.6.16 (as 2.6.13* and 2.6.14* are known to boot off of 
disk/cdrom).  Building a 2.6.17 kernel with gcc-mips64 also re-creates the 
problem, which somewhat indicates a compiler bug too.  Hence the fuzzy nature of 
this critter.


--Kumba

-- 
Gentoo/MIPS Team Lead
Gentoo Foundation Board of Trustees

"Such is oft the course of deeds that move the wheels of the world: small hands 
do them because they must, while the eyes of the great are elsewhere."  --Elrond
-- 
gentoo-mips@gentoo.org mailing list

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic