Subject: Re: 32-Bit Userland On 64-Bit Machine?
To: None <port-sparc64@netbsd.org, port-sparc@netbsd.org>
From: Bill Dorsey <dorsey@lila.com>
List: port-sparc64
Date: 05/25/2003 01:34:24
Hmm. Either I screwed something up with the procedure I outlined
below, or there are some issues with the 32-bit Sun4u kernel. I was
trying to build some software in pkgsrc (digest) and cc1 died from a
signal 11. After a number of tries, the kernel paniced with the
following:
trap: textfault at 21070!! sending SIGILL due to trap 16: illegal
instruction
trap: textfault at 21070!! sending SIGILL due to trap 16: illegal
instruction
trap: textfault at 21070!! sending SIGILL due to trap 16: illegal
instruction
trap: textfault at 21070!! sending SIGILL due to trap 16: illegal
instruction
trap type 0x34: pc=1337f2c npc=1337f30 pstate=140006<PRIV,IE>
kernel trap 34: mem address not aligned
syncing disks... 18 6 done
Frame pointer is at 0xe5915a0
Call traceback:
e591608
Just when I thought I had my problems with this )$(#*%&#)$*( Ultra
licked... Anyone have any ideas?
--
Bill Dorsey
On Saturday, May 24, 2003, at 23:11 US/Pacific, Bill Dorsey wrote:
> Are you sure it's 200MHz? A friend of mine has Solaris 9 installed on
> his 270MHz Ultra, and I'm pretty sure when we checked the executables
> in userland, they were 32-bit. Also, Sun's "officially supported"
> version of Linux (Debian) runs all the ultrasparcs with a 32-bit
> kernel and 32-bit userland.
>
> In any event, after many hours of experimenting on my Ultra, I believe
> I've discovered a (relatively) simple way to install a 32-bit kernel
> and userland. Maybe this could be a FAQ somewhere on the NetBSD web
> site?
>
> 1) Install the 64-bit miniroot filesystem on a disk partition (I used
> the swap partition)
> 2) Boot the miniroot off the miniroot partition, and install NetBSD
> normally (with 64-bit kernel/executables)
> 3) After sysinst is finished and returns you to a shell prompt, start
> it up again
> 4) Now tell it you want to install/upgrade. When it asks you where
> to get the binary sets from, specify a directory
> containing the 32-bit binary sets.
> 5) Once this second install is finished, return to the shell prompt,
> mount the root filesystem on /mnt, and replace the
> kernel with the 32-bit sun4u kernel from the NetBSD ftp site.
> 6) Reboot your machine, and you should be running a 32-bit
> kernel/32-bit userland on your Ultra.
>
> While it may be that running in 64-bit mode is the right way to go
> down the line, until more of the pkgsrc sources I depend on (like
> cyrus and apache-ssl) work in 64-bit big-endian mode, I'm stuck
> running in 32-bit mode. Given all the compiler warnings I saw scroll
> by when I was trying to get these (and other packages) working in
> 64-bit mode, it looks like it will take quite a bit of work to get
> them all straightened out.
>
> --
> Bill Dorsey
>
> On Saturday, May 24, 2003, at 18:57 US/Pacific, Rick Kelly wrote:
>
>> Bill Dorsey said:
>>
>>> I find it a bit strange that what seems to me to be the most useful
>>> configuration of an ultra-sparc based system (running in 32-bit mode
>>> for best compatibility -- just as Sun does with Solaris) requires one
>>> to perform a lot of contortions before getting it working.
>>
>> From Solaris 8 and onwards, it only installs 32bit kernel on Ultra
>> sparc
>> boxes of 200 mhz or less. I believe that Solaris 10 is eliminating
>> 32bit
>> kernel mode all together.
>>
>>
>> --
>> Rick Kelly rmk@rmkhome.com www.rmkhome.com
>>
>>
>