> I do not think we should hold up this patch set for s390 changes, but > there will be a fair amount of work to hack up and dismantle linuxrc.s390. > I would like systemd to start up as init on s390 just like it does on the > non-s390 platforms, and then use the unit file dependency capability to > have it run either one or multiple interactive device configuration > programs. The whole point of linuxrc.s390 is to bring up system devices > and set up networking so we can lauch loader when the user logs in via > ssh. Because that needs to happen before loader runs and we have > historically had our init.c launch loader, linuxrc.s390 became init on > that platform. Yeah, so the first step is to take everything we require from linuxrc.s390 and rewrite in Python (hooray!). Perhaps we can even get some code reuse from pyanaconda that way. Then, add some anaconda-s390.service file that only gets installed on s390. That'll start up the Python program to interrogate for device config. In lorax, we conditionally add that file to /lib/systemd/system/loader.service.wants and make sure we set the Before= appropriately too. Bam, working in systemd just fine. For me, the greatest advantage to this approach is that s390 acts just like every other platform except we run one extra program. That's much different from now where we take an entirely different path to loader. One significant advantage to s390 with this is that fewer differences means fewer places we will accidentally break it when making changes. > The parts of linuxrc.s390 we'll need to salvage are the prompts and > validation code for different device types. The parts that make the > script work enough like init so it can be init can be trashed. I would > very much like to have these parts rewritten in Python since we have that > now in initrd.img, or at the very least multiple smaller shell scripts > divided in to logical tasks. My preferred approach would be one Python program with all the various prompts and validation code as modules. Like I said earlier, it'd be nice to share with pyanaconda where appropriate. Multiple programs could be done, but with more .service file copying and linking. It seems a little unnecessarily messy. > At any rate, we can keep linuxrc.s390 around for now. It's still being kept around, but keep in mind anaconda will call systemctl to do the reboot/shutdown/etc. and I don't think that'll work if systemd's not running. - Chris _______________________________________________ Anaconda-devel-list mailing list Anaconda-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/anaconda-devel-list