reIPL used to be ran via dispatch, and would trigger either a reboot or a shut down. Now we'll run it as part of the s390 bootloader install. The message warning users to reipl themselves is somewhat lost here, something for another day perhaps. This at least gets the system working right. --- pyanaconda/bootloader.py | 4 ++++ pyanaconda/iutil.py | 19 +++++-------------- 2 files changed, 9 insertions(+), 14 deletions(-)
diff --git a/pyanaconda/bootloader.py b/pyanaconda/bootloader.py index 1333c75..a8c969e 100644 --- a/pyanaconda/bootloader.py +++ b/pyanaconda/bootloader.py @@ -2013,6 +2013,10 @@ class ZIPL(BootLoader): if not self.stage1_name: raise BootLoaderError("could not find IPL device")
+ # do the reipl + message = iutil.reIPL(self.stage1_name) + log.info(message) + class SILO(YabootSILOBase): name = "SILO" _config_file = "silo.conf" diff --git a/pyanaconda/iutil.py b/pyanaconda/iutil.py index b39d4f4..730da8c 100644 --- a/pyanaconda/iutil.py +++ b/pyanaconda/iutil.py @@ -860,14 +860,7 @@ def numeric_type(num):
return num
-def reIPL(anaconda, loader_pid): - try: - ipldev = anaconda.storage.bootloader.stage1_name - except AttributeError: - message = _("Error determining boot device's disk name") - log.warning(message) - return message - +def reIPL(ipldev): try: rc = execWithRedirect("chreipl", ["node", "/dev/" + ipldev], stdout = "/dev/tty5", @@ -878,7 +871,6 @@ def reIPL(anaconda, loader_pid): ipldev, e)
if rc: - anaconda.canReIPL = False devstring = None
for disk in anaconda.storage.disks: @@ -892,13 +884,12 @@ def reIPL(anaconda, loader_pid): message = _("After shutdown, please perform a manual IPL from %s " "to continue installation." % devstring)
- log.info("reIPL configuration failed => halt") - os.kill(os.getppid(), signal.SIGUSR1) + log.info("reIPL configuration failed") + #os.kill(os.getppid(), signal.SIGUSR1) else: - anaconda.canReIPL = True message = None - log.info("reIPL configuration successful => reboot") - os.kill(os.getppid(), signal.SIGUSR2) + log.info("reIPL configuration successful") + #os.kill(os.getppid(), signal.SIGUSR2)
return message