[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

A stern warning of things to come

In trying to get rid of some of the horrible method selection complexity in
loader and yuminstall.py, I realized two truths:

(1) It's silly that we expose stage2= when few people know what that means and
almost no one cares.  It's an implementation-specific detail that has no
purpose leaking out to the world.

(2) It's very difficult to reduce the complexity without first guaranteeing that
no matter how you boot, you always have stage2.  Once that is assurred, you can
remove an amazing amount of code out of the loader.

How do we deal with this?  By removing install.img entirely, of course!  Sure
we've talked about it off and on for years, but I think we're to a point where
we can actually do it.  And doing so has tons of advantages.  We reduce loader
down to a point where we can realistically consider removing it, or at least
moving it to python.  Speaking of which, we'd have python in the initrd.  method=
goes away.  stage2= goes away.  The bulk of the STEP_METHOD state machine crud
goes away.  We eliminate entire classes of bugs.  Let your imagination run wild
with everything this will simplify.

This is not without problems, though:

(1) It's possible some PXE implementations will not like downloading a single
100+ MB image.  I'm hoping the number of machines affected is decreasing every
year and we can rapidly stop caring.

(2) The kernel may freak out about storing such a large image in memory so
early on.  Peter has some thoughts about this.

(3) Memory requirements may be increased.

(4) Doing a large number of PXE-based installs all at once could perhaps bring
a network to its knees.  Transferring a large number of copies of a large file
all at once is a sure sign of impending doom.

(5) We may rapidly be writing ourselves out of a job.

Anyway it's unlikely these patches currently apply.  Because they touch so much
stuff, every single change someone else makes to scripts/ causes git to freak
out.  And I haven't even started to work on the loader patches yet.  This is
presented more as a proof of concept.  However, I have done a build and tested
enough to get to the method selection screen in loader.

- Chris

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]