Please consider a donation to the Higher Intellect project. See https://preterhuman.net/donate.php or the Donate to Higher Intellect page for more info.

Change SGI System ID

From Higher Intellect Wiki
Jump to navigation Jump to search

The motherboard in my Octane R10000 requires changing. The problem that I face is that much of the installed S/W requires the SYS_Id for licensing.


Of course, I can't comment on the sys_id change, but: The sys_id is stored in the frontplane's NIC (Numbers-In-a-Can). So changing the motherboard should not change the sys_id.

Notes

I was tired last night when I emailed you that code (took me quite a while). here are some things I noticed that maybe of use to your website as well.

I started with the kernel symbol first_address, and started the search, when I found the system id (found in mulitple places, including eaddr +2 and eaddr + 30, but changing those values didn't effect anything), I calculated the address by adding how many bytes I have read + first_address, then looked for a symbol close to that address.

That's when I noticed Octanes (and other platforms? I have to check this out) have a kernel symbol sysid which points directly to the sysid address, but for some reason I couldn't nlist the symbol (protected?).

So I used nm -xv to sort things by value, and saw is_octane_lx 4 bytes below sys_id and used that for a reference. I am going to look into some other sgi arch's and see if sysid is availble on all 6.5.x architectures (or ones I have access to), if it is, I will be able to write another C program that will sort the symbols (like nm does) and take whatevers below sysid (since I can't nlist it for an addr), or just a shell script to add a #define symbol from the output of nm. Making a general not arch/specific system id changer for irix.

Process

Archived source and binary files are located at https://web.archive.org/web/20120723092815/http://www.squirrel.com/squirrel/sgi-sysid.html