Launching a proprietary OS under QEMU is never boring because every next problem has to do with yet another component. A few weeks ago I was mostly doing Forth to make a bootable firmware, then I fought with the missing residual data, at which point it was mostly debugging ODM database using the PPC assembly, then extracted the mock residual data from the live system, then spent some time with NCR/LSI script, and now after fixing the PCI layout it gets to the point of starting the NIS and NFS services. It works much slower than the real machine, and also much slower than Linux/PPC, but still:
Woo-hoo! I could be proud that I made the second proprietary OS boot under QEMU. Or even the third one, because Solaris/sun4m is quite different from Solaris/sun4v, so probably each one counts for one.
But now I'm puzzled. Initially I planned to build a throw-away prototype for Powestack II Utah, fix the QEMU bugs preventing booting AIX with the existing machines, and dispose the prototype. The Motorola AIX I've got seems to expect the machine to be called "MOT PowerStack2 (e0)". Not sure if pushing such a model upstream wouldn't cause any copyright/trademark issues.
Now it boots to the same point as on the physical machine, but except for the PCI layout problems, I haven't found any bugs. And the PCI layout can not be the reason of AIX failing on the 40p machine, because it fails much earlier.
So obviously it's time to change the plan. And here is where things are going to slow down. I don't have the install media for the Motorola AIX 4.2, so I can not make my disk usable - it waits for NFS/NIS servers forever. I can not share the HDD image because it may contain the private data, so publishing the Powerstack II Utah target for QEMU makes a little sense for now. So, either I find the Motorola AIX 4.2 install CD (and probably a physical UW-SCSI drive if it won't work at the first attempt under QEMU), or the work has to be done again for the 40p target. Yes, now I have some know-how about the AIX boot process, but still at the moment I don't feel like starting again from scratch with the 40p target.
The good news is that AIX can definitely be booted under qemu-system-ppc.
MOT PowerStack2 (e0), Serial #0, 62 MiB memory installed Open Firmware , Built September 01, 2017 16:11:38 Copyright (c) 1995-2000, FirmWorks. Copyright (c) 2014,2017, Artyom Tarasenko. Rebooting with command: boot /pci/scsi@2/disk@0,0 Boot device: /pci/scsi@2/disk@0,0 Arguments: + swcons -c Saving Base Customize Data to boot disk Starting the sync daemon Starting the error daemon System initialization completed. Starting Multi-user Initialization Performing auto-varyon of Volume Groups Activating all paging spaces swapon: Paging device /dev/hd6 activated. Performing all automatic mounts mount: 1831-010 server axxxxs01 not responding: RPC: 1832-018 Port mapper failure - RPC: 1832-006 Unable to send mount: backgrounding axxxxs01:/home Multi-user initialization completed Checking for srcmstr active...complete Starting tcpip daemons: 0513-056 Timeout waiting for command response. 0513-056 Timeout waiting for command response. vmtune: current values: -p -P -r -R -f -F -N -W minperm maxperm minpgahead maxpgahead minfree maxfree pd_npages maxrandwrt 2968 11872 2 8 115 123 524288 0 -M -w -k -c -b -B -u maxpin npswarn npskill numclust numfsbufs hd_pbuf_cnt lvm_bufcnt 12692 1536 384 0 93 64 9 number of valid memory pages = 15864 maxperm=74.8% of real memory maximum pinable=80.0% of real memory minperm=18.7% of real memory number of file memory pages = 1443 numperm=9.1% of real memory vmtune: new values: -p -P -r -R -f -F -N -W minperm maxperm minpgahead maxpgahead minfree maxfree pd_npages maxrandwrt 2968 11872 2 8 115 123 524288 64 -M -w -k -c -b -B -u maxpin npswarn npskill numclust numfsbufs hd_pbuf_cnt lvm_bufcnt 12692 1536 384 1 93 64 9 number of valid memory pages = 15864 maxperm=74.8% of real memory maximum pinable=80.0% of real memory minperm=18.7% of real memory number of file memory pages = 1444 numperm=9.1% of real memory Starting NIS services: Starting NFS services: 0513-056 Timeout waiting for command response. NIS: server not responding for domain "axxxxs01"; still trying. NIS: server not responding for domain "axxxxs01"; still trying. 0513-056 Timeout waiting for command response. NIS: server not responding for domain "axxxxs01"; still trying. NIS: server not responding for domain "axxxxs01"; still trying. NIS: server not responding for domain "axxxxs01"; still trying.
Woo-hoo! I could be proud that I made the second proprietary OS boot under QEMU. Or even the third one, because Solaris/sun4m is quite different from Solaris/sun4v, so probably each one counts for one.
But now I'm puzzled. Initially I planned to build a throw-away prototype for Powestack II Utah, fix the QEMU bugs preventing booting AIX with the existing machines, and dispose the prototype. The Motorola AIX I've got seems to expect the machine to be called "MOT PowerStack2 (e0)". Not sure if pushing such a model upstream wouldn't cause any copyright/trademark issues.
Now it boots to the same point as on the physical machine, but except for the PCI layout problems, I haven't found any bugs. And the PCI layout can not be the reason of AIX failing on the 40p machine, because it fails much earlier.
So obviously it's time to change the plan. And here is where things are going to slow down. I don't have the install media for the Motorola AIX 4.2, so I can not make my disk usable - it waits for NFS/NIS servers forever. I can not share the HDD image because it may contain the private data, so publishing the Powerstack II Utah target for QEMU makes a little sense for now. So, either I find the Motorola AIX 4.2 install CD (and probably a physical UW-SCSI drive if it won't work at the first attempt under QEMU), or the work has to be done again for the 40p target. Yes, now I have some know-how about the AIX boot process, but still at the moment I don't feel like starting again from scratch with the 40p target.
The good news is that AIX can definitely be booted under qemu-system-ppc.
3 comments:
Congratulations! This is the great news!
Thanks. Interestingly the AIX progress makes much less response than it has been with Solaris. Either it's spread not that wide or people prefer running AIX apps the real hardware.
Amazing progress! Being able to run AIX under QEMU will be great for software developers who want/need to port their software to the platform. Keep up the great work. :)
Post a Comment