On 10/17/2016 14:54, Waldemar Brodkorb wrote:
Hi Joshua,
[snip]
You don't like cross-compiling, right?
uClibc-ng seems not only be interesting for embedded devices, but
also for classic old unix hardware :)
Oh, I cross-compile all the time. All of my SGI kernels are built with
cross-compilers. Userland cross-compiling has just generally been trickier
than kernel cross-compiles, so I don't use it as often. Plus, testing on the
hardware itself can turn up some rather interesting bugs at times, and in other
instances, you sometimes need the hardware to investigate if a particular CPU
quirk will come back to haunt you (the R10K's speculative execution one being
an all-time classic example).
And yeah, classic hardware still has its place! There's a port of the Linux
kernel to the IP35-class of SGI hardware (Origin 300, Fuel, Tezro), that's been
started, but hasn't had any recent updates. But it is functional enough to
boot a netboot with, supposedly, so that's on my infinitely-long TODO list to
try out at some point. These platforms are still quite plentiful on eBay,
oddly enough, although parts for IP27 machines are becoming pretty scarce,
especially the larger Origin 2000/Onyx2 rack setups.
[snip]
What are
you running on the Octane? Linux 64 Bit or 32 Bit?
(n32,o32,n64 in case of 64Bit)
Octanes can only boot a 64-bit kernel (same as their IP27 cousins), due to
their firmware only supporting 64-bit ELF format. All of my SGI's run
N32/glibc-based userlands, though when I format the O2, it'll be back to O32
until I figure out how good uclibc's N32 support is. I've also got a multilib
chroot based on glibc that mixes O32, N32, and N64, but wasn't able to complete
a fresh stage build with it due to some really weird glibc bug that popped up
during the stage3 build cycle. I have to get glibc-2.24 into play and give it
another go at some point.
I tested n32 support on my Lemote Yeelong, so you should at least be
able to boot. A longer time ago I had Xorg and Firefox running on
the book. Firefox only support n32. The Lemote has a page size of
16k, so it showed some interesting bugs in uClibc/uClibc-ng in the past.
I haven't tried running X11 stuff in a long time on these systems. Octane has
an X11 driver for its Impact graphics board, but my last attempt to fix it up
to compile, plus integrate other fixes for it, resulted in a SIGSEGV that I
lacked knowledge on debugging correctly. I mostly stick to command-line right
now on these platforms. And the direction that the Linux ecosystem itself is
moving towards, e.g., Wayland, may throw GUI support into doubt in the future
(have never actually tried Wayland yet). Way too many things with the hardware
that still need fixing before one can take a look at the shiny bits.
Have you tried 64K PAGE_SIZE by chance? I use that setting on all of my SGI
systems except for the IP27, which has a peculiar Oops crop up under 64K, so
that machine boots 16K PAGE_SIZE at the moment. You actually get a nice
performance bump on 16K or 64K versus the standard 4K. The testing netboot
image I ran on my IP27 w/ 16K showed no ill effects, but I still need to do 64K
on the O2 and Octane.
--
Joshua Kinard
Gentoo/MIPS
kumba(a)gentoo.org
6144R/F5C6C943 2015-04-27
177C 1972 1FB8 F254 BAD0 3E72 5C63 F4E3 F5C6 C943
"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