Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
64bit kernel on SGI IP22
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo on Alternative Architectures
View previous topic :: View next topic  
Author Message
gtbX
Tux's lil' helper
Tux's lil' helper


Joined: 11 Oct 2003
Posts: 106

PostPosted: Tue May 12, 2015 2:40 pm    Post subject: 64bit kernel on SGI IP22 Reply with quote

How do I build a 64bit kernel for an SGI Indigo2 (IP22)? The gentoo handbook implies that this is possible, but whenever I try the result is unusable.
Is this wise/advisable? (disregard the fact that doing anything with such an old machine is... questionable)

I activated the "64bit kernel" and "o32 compatibility" kernel options, compiled it with kgcc64-4.9.2 and used the vmlinux.32 build target, but get an immediate panic when trying to boot it:

Code:
>> boot -f curr64 root=/dev/sda3 ro
error on vh read

Cannot load scsi(0)disk(1)rdisk(0)partition(8)/curr64.
Problem reading elf structure at offset -2009811488.
error on vh read

Cannot load scsi(0)disk(1)rdisk(0)partition(8)/curr64.
Problem reading elf structure at offset -2009811488.

Exception: <vector=UTLB Miss>
Status register: 0x30004803<CU1,CU0,IM7,IM4,IPL=???,MODE=KERNEL,EXL,IE>
Cause register: 0x8008<CE=0,IP8,EXC=RMISS>
Exception PC: 0x9fc49d24, Exception RA: 0x9fc49f1c
exception, bad address: 0x4
Local I/O interrupt register 2: 0xc0 <SLOT0,SLOT1>
  Saved user regs in hex (&gpda 0xa8740e48, &_regs 0xa8741048):
  arg: a8740000 0 1 a8747750
  tmp: a8740000 8 a8746f10 0 a8749200 a87ff848 18000000 a87ff96b
  sve: a8740000 c12dc13a 0 c0f9138a 0 c0edd9c9 0 bf077b8a
  t8 a8740000 t9 c0dcea58 at 0 v0 c0f9138a v1 0 k1 0
  gp a8740000 fp ffffffff sp ffffffff ra ffffffff

PANIC: Unexpected exception

[Press reset or ENTER to restart.]


I only ask because I can't seem to compile the latest 4.0.1 kernel in 32bit mode anymore:
Code:
# make
...
  CC      arch/mips/mm/sc-ip22.o
{standard input}: Assembler messages:
{standard input}:121: Error: number (0x9000000080000000) larger than 32 bits
{standard input}:155: Error: number (0x9000000080000000) larger than 32 bits
{standard input}:177: Error: number (0x9000000080000000) larger than 32 bits
scripts/Makefile.build:258: recipe for target 'arch/mips/mm/sc-ip22.o' failed


Thanks!
Back to top
View user's profile Send private message
armanox
n00b
n00b


Joined: 03 Jan 2008
Posts: 36
Location: Baltimore, MD

PostPosted: Thu May 21, 2015 3:30 am    Post subject: Reply with quote

I don't know how many people still have an Indigo lying around to try to help you unfortunately. I know that there is work on IP30 (Octane) and that IP32 (O2) used to work very well. Does it boot when using a 32bit kernel, out of curiosity?
_________________
"Apollo was astonished, Dionysus thought me mad. But they heard my story further and they wondered and were sad."
Back to top
View user's profile Send private message
gtbX
Tux's lil' helper
Tux's lil' helper


Joined: 11 Oct 2003
Posts: 106

PostPosted: Thu May 21, 2015 6:21 am    Post subject: Reply with quote

It does. That's what I've been using up until now.
Back to top
View user's profile Send private message
Kumba
Developer
Developer


Joined: 16 Jul 2002
Posts: 393
Location: Sigma 957

PostPosted: Fri May 22, 2015 9:13 pm    Post subject: Re: 64bit kernel on SGI IP22 Reply with quote

gtbX wrote:
How do I build a 64bit kernel for an SGI Indigo2 (IP22)? The gentoo handbook implies that this is possible, but whenever I try the result is unusable.
Is this wise/advisable? (disregard the fact that doing anything with such an old machine is... questionable)

I activated the "64bit kernel" and "o32 compatibility" kernel options, compiled it with kgcc64-4.9.2 and used the vmlinux.32 build target, but get an immediate panic when trying to boot it:

Code:
>> boot -f curr64 root=/dev/sda3 ro
error on vh read

Cannot load scsi(0)disk(1)rdisk(0)partition(8)/curr64.
Problem reading elf structure at offset -2009811488.
error on vh read

Cannot load scsi(0)disk(1)rdisk(0)partition(8)/curr64.
Problem reading elf structure at offset -2009811488.

Exception: <vector=UTLB Miss>
Status register: 0x30004803<CU1,CU0,IM7,IM4,IPL=???,MODE=KERNEL,EXL,IE>
Cause register: 0x8008<CE=0,IP8,EXC=RMISS>
Exception PC: 0x9fc49d24, Exception RA: 0x9fc49f1c
exception, bad address: 0x4
Local I/O interrupt register 2: 0xc0 <SLOT0,SLOT1>
  Saved user regs in hex (&gpda 0xa8740e48, &_regs 0xa8741048):
  arg: a8740000 0 1 a8747750
  tmp: a8740000 8 a8746f10 0 a8749200 a87ff848 18000000 a87ff96b
  sve: a8740000 c12dc13a 0 c0f9138a 0 c0edd9c9 0 bf077b8a
  t8 a8740000 t9 c0dcea58 at 0 v0 c0f9138a v1 0 k1 0
  gp a8740000 fp ffffffff sp ffffffff ra ffffffff

PANIC: Unexpected exception

[Press reset or ENTER to restart.]


I only ask because I can't seem to compile the latest 4.0.1 kernel in 32bit mode anymore:
Code:
# make
...
  CC      arch/mips/mm/sc-ip22.o
{standard input}: Assembler messages:
{standard input}:121: Error: number (0x9000000080000000) larger than 32 bits
{standard input}:155: Error: number (0x9000000080000000) larger than 32 bits
{standard input}:177: Error: number (0x9000000080000000) larger than 32 bits
scripts/Makefile.build:258: recipe for target 'arch/mips/mm/sc-ip22.o' failed


Thanks!


Can you try netbooting the 64bit kernel just to rule out something screwy with the volume header?

I checked git, and that 0x9000000000000000 address is hardcoded in arch/mips/mm/sc-ip22.c in 'indy_sc_wipe', and has been there since the great CVS->GIT migration. Can you build a fresh checkout of the linux-mips.org tree in 32-bit mode? If not, then I suspect newer toolchains are treating that as an error now, and it might need to be reported to the linux-mips ML for action. Otherwise, if you can build a linux-mips checkout, then I've got a bug to hunt down...

I have an Indy, but it's dead due to the RTC battery failure problem, so I can't test the booting bit at all.
_________________
"The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
Back to top
View user's profile Send private message
gtbX
Tux's lil' helper
Tux's lil' helper


Joined: 11 Oct 2003
Posts: 106

PostPosted: Sat May 23, 2015 3:19 am    Post subject: Reply with quote

I get the same error when netbooting

Code:
>> bootp(): root=/dev/sda3
Setting $netaddr to 192.168.1.113 (from server highwind)
Obtaining  from server highwind
   
Cannot load bootp():.
Problem reading elf structure at offset -2009811488.
Unable to execute bootp():


I'll try building an older kernel, see if I get anything different
Back to top
View user's profile Send private message
gtbX
Tux's lil' helper
Tux's lil' helper


Joined: 11 Oct 2003
Posts: 106

PostPosted: Sat May 23, 2015 6:24 pm    Post subject: Reply with quote

Ok, tried rebuilding an older 32bit kernel, got the same result with 0x9000000080000000 being too long. Something in the toolchain must've changed so that it no longer compiles.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on Alternative Architectures All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum