Is there any reason we can't just call startNewt a lot earlier in main instead of playing the game of calling it as-needed a million other places?
- Chris
diff --git a/loader/loader.c b/loader/loader.c index 991b3c5..fa8fa69 100644 --- a/loader/loader.c +++ b/loader/loader.c @@ -1226,9 +1226,6 @@ static char *doLoaderMain(struct loaderData_s *loaderData, } installNames[numValidMethods] = NULL;
- if (!FL_CMDLINE(flags)) - startNewt(); - /* Before anything else, see if there's a CD/DVD with a stage2 image on * it. However if stage2= was given, use that value as an override here. * That will also then bypass any method selection UI in loader. @@ -1906,11 +1903,11 @@ int main(int argc, char ** argv) { /* FIXME: this is a bit of a hack */ loaderData.modInfo = modInfo;
- if (FL_MODDISK(flags)) { + if (!FL_CMDLINE(flags)) startNewt();
+ if (FL_MODDISK(flags)) loadDriverDisks(DEVICE_ANY, &loaderData); - }
if (!access("/dd.img", R_OK)) { logMessage(INFO, "found /dd.img, loading drivers");
On Thu, 2008-10-30 at 10:45 -0400, Chris Lumens wrote:
Is there any reason we can't just call startNewt a lot earlier in main instead of playing the game of calling it as-needed a million other places?
The idea of lazily starting it is that we don't end up doing the blue screen if we have everything we need to get to stage2 without any dialogs, etc. Then again, given our present flow, that's probably not a likely case what with waiting for devices to settle, etc
Jeremy
Is there any reason we can't just call startNewt a lot earlier in main instead of playing the game of calling it as-needed a million other places?
The idea of lazily starting it is that we don't end up doing the blue screen if we have everything we need to get to stage2 without any dialogs, etc. Then again, given our present flow, that's probably not a likely case what with waiting for devices to settle, etc
Yeah true. I just see a ton of places (especially in the networking code right now) where newtWinMessage can be called to display an error, but we are not guaranteed to ever have called startNewt. This is the fun of the kickstart/cmdline vs. interactive flow all being mixed together.
I could alternatively go and add some more startNewt calls here and there.
- Chris
On Thu, 2008-10-30 at 11:32 -0400, Chris Lumens wrote:
Is there any reason we can't just call startNewt a lot earlier in main instead of playing the game of calling it as-needed a million other places?
The idea of lazily starting it is that we don't end up doing the blue screen if we have everything we need to get to stage2 without any dialogs, etc. Then again, given our present flow, that's probably not a likely case what with waiting for devices to settle, etc
Yeah true. I just see a ton of places (especially in the networking code right now) where newtWinMessage can be called to display an error, but we are not guaranteed to ever have called startNewt. This is the fun of the kickstart/cmdline vs. interactive flow all being mixed together.
I could alternatively go and add some more startNewt calls here and there.
Maybe we should have our own newtWinMessage that calls startNewt first. But that's probably a post-F10 sort of thing. So for F10, our best choices are probably go through and try to add some startNewt() calls or just do it early and deal with the blue screen people will get. I don't really have a strong leaning either way
Jeremy
Maybe we should have our own newtWinMessage that calls startNewt first. But that's probably a post-F10 sort of thing.
I like this idea.
So for F10, our best choices are probably go through and try to add some startNewt() calls or just do it early and deal with the blue screen people will get. I don't really have a strong leaning either way
Yeah, I don't either. If we put off thinking about it for another hour or two, David will show up and then he can look and tell us if the startNewt calls are going to be pretty straightforward to add.
- Chris
On 10/30/2008 06:42 PM, Chris Lumens wrote:
So for F10, our best choices are probably go through and try to add some startNewt() calls or just do it early and deal with the blue screen people will get. I don't really have a strong leaning either way
Yeah, I don't either. If we put off thinking about it for another hour or two, David will show up and then he can look and tell us if the startNewt calls are going to be pretty straightforward to add.
How would calling startNewt early and unconditionally affect architectures that only provide a dumb terminal and do the interactive install over a network login, such as s390?
Steffen
Linux on System z Development
IBM Deutschland Research & Development GmbH Vorsitzender des Aufsichtsrats: Martin Jetter Geschäftsführung: Erich Baier Sitz der Gesellschaft: Böblingen Registergericht: Amtsgericht Stuttgart, HRB 243294
On Thu, Oct 30, 2008 at 01:42:58PM -0400, Chris Lumens wrote:
Maybe we should have our own newtWinMessage that calls startNewt first. But that's probably a post-F10 sort of thing.
I like this idea.
I as well.
So for F10, our best choices are probably go through and try to add some startNewt() calls or just do it early and deal with the blue screen people will get. I don't really have a strong leaning either way
Yeah, I don't either. If we put off thinking about it for another hour or two, David will show up and then he can look and tell us if the startNewt calls are going to be pretty straightforward to add.
Nothing is straightforward about newt. I would prefer our own wrapper function that calls startNewt() and takes in to account whether or not it should, what to do on the various bastard architectures, and so on. Less intrusive to the main code.
As for the blue screen appearing early, I don't care about that. But we should make sure that we don't try to do that on systems that will crash and burn if we try to start up.
As for the blue screen appearing early, I don't care about that. But we should make sure that we don't try to do that on systems that will crash and burn if we try to start up.
If you check out the original code, you will see that we call startNewt for all machines and in all cases unless you're doing cmdline mode right at the beginning of doLoaderMain. All systems get doLoaderMain. I've just moved it earlier in the process but preserved the cmdline mode test.
I don't believe there are any arch-specific cases to keep in mind here. Am I reading things wrong?
- Chris
On Thu, Oct 30, 2008 at 04:57:20PM -0400, Chris Lumens wrote:
As for the blue screen appearing early, I don't care about that. But we should make sure that we don't try to do that on systems that will crash and burn if we try to start up.
If you check out the original code, you will see that we call startNewt for all machines and in all cases unless you're doing cmdline mode right at the beginning of doLoaderMain. All systems get doLoaderMain. I've just moved it earlier in the process but preserved the cmdline mode test.
I don't believe there are any arch-specific cases to keep in mind here. Am I reading things wrong?
Yeah, you're right. So we should be fine then with your patch.
anaconda-devel@lists.stg.fedoraproject.org