X-MimeOLE: Produced By Microsoft Exchange V6.5
Received: by onstor-exch02.onstor.net 
	id <01C7BF47.676EFE4D@onstor-exch02.onstor.net>; Thu, 5 Jul 2007 12:59:40 -0800
MIME-Version: 1.0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Content-class: urn:content-classes:message
Subject: RE: exception handlers
Date: Thu, 5 Jul 2007 12:59:40 -0800
Message-ID: <BB375AF679D4A34E9CA8DFA650E2B04E046A84DB@onstor-exch02.onstor.net>
In-Reply-To: <20070705135052.6b701c78@ripper.onstor.net>
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
Thread-Topic: exception handlers
Thread-Index: Ace/RiyuR5PS1IZ4RPagZXcrT6ut9QAASGrg
References: <BB375AF679D4A34E9CA8DFA650E2B04E046A84BB@onstor-exch02.onstor.net> <20070705135052.6b701c78@ripper.onstor.net>
From: "Maxim Kozlovsky" <maxim.kozlovsky@onstor.com>
To: "Andy Sharp" <andy.sharp@onstor.com>

Here is the bsd code, src/sys/arch/pmonmips/pmonmips/machdep.c, line
539:

#ifdef BOBCAT
/*
 * XXX replace define with PROM environment variable.
 * Since BOBCAT is a dual cpu environment, and the exception
 * vectors are shared by cpu0 and cpu1, the PROM implements
 * a jump table to the per processor exception table.
 */
#define OS_EXC_OFFSET	0x400
#else
#define OS_EXC_OFFSET	0
#endif /* BOBCAT */

	/*
	 * Copy down exception vector code.
	 */
	if (MipsTLBMissEnd - MipsTLBMiss > 0x80)
		panic("startup: TLB code too large");
	bcopy(MipsTLBMiss, (char *)(TLB_MISS_EXC_VEC + OS_EXC_OFFSET),
		MipsTLBMissEnd - MipsTLBMiss);
#if 1
	bcopy(MipsException, (char *)(GEN_EXC_VEC + OS_EXC_OFFSET),
		MipsExceptionEnd - MipsException);
#else
	bcopy(MipsException, MipsException,
		MipsExceptionEnd - MipsException);
#endif

	/*

-----Original Message-----
From: Andy Sharp=20
Sent: Thursday, July 05, 2007 1:51 PM
To: Maxim Kozlovsky
Subject: Re: exception handlers

On Thu, 5 Jul 2007 13:42:45 -0700 "Maxim Kozlovsky"
<maxim.kozlovsky@onstor.com> wrote:

> Did you modify the Linux code to install the exception handlers into
> different place like the openbsd does? I am trying to boot the FC and
> it kind of hangs during the boot process. I suspect it is because the
> exceptions are not handled correctly.

It's probably something, but I doubt it's the exception handlers.
Might be memory or something else.  I need to know all the
hows/whats/whens/wheres of the FC operation.
