Hi,
Steffen Maier has complained that our current shutdown implementation is
not optimal:
https://www.redhat.com/archives/anaconda-devel-list/2010-January/msg00357.html
https://www.redhat.com/archives/anaconda-devel-list/2010-January/msg00317.html
It is true that not halting the kernel in case of a loader crash causes
it to show a panic now, even on i386. Besides after David removed the
sigint handler loop here:
http://git.fedorahosted.org/git/anaconda.git?p=anaconda.git;a=commitdiff;h=65a3c0584c83afa82bda9d6570887c6a578d9286;hp=e0b98b01da08b74a51e05697f4210cd7a206fbb6
we get a list of unmounts after, for instance, a loader crash. Since our
only way to debug a loader crash now is looking at the traceback on the
screen, having the shutdown in this shape is development-unfriendly at
least.
I propose a patch for master that will:
1) make sure that the system is correctly halted on all platforms with
reboot(RB_HALT_SYSTEM);
2) introduce a new reboot action 'VERBOSE_REBOOT'. All non-s390 inits
will reboot through this way after a nonstandard termination of loader
or anaconda. This method stops the reboot procedure after the trace /
python exception is printed and waits for a SIGINT (can be sent through
ctrl-alt-del on non-s390), which will finish init off with a standard
rebooot procedure.
3) in the process cleanup the reboot functions in shutdown.c so they are
easier to follow.
I am looking forward to your comments and ACKing. I tried not to disturb
the current functionality in any way but it's true that there's too many
execution ways through this code especially when also considers s390.
Ales
_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list