Steve Lawrence wrote:
> I can't see any straightforward way to interrupt boot without changing the
> milestone.  You could make lots of services dependent on a patching
> service, but that will have a maintenance burden.  It also may not play well
> with 3rd party services.

Yep.

Hmm.  I just realized a flaw in my mental model of an SMF system.

In a traditional rc-based system, everything runs in sequence.  When you 
get to the "single user" point, it doesn't matter whether your target 
was to get to "single user" mode or to get to "multi user" mode - in 
either case, the system is in the same state.

In an SMF system, on the other hand, you could have a service that is 
intended for "multi user" mode that doesn't have any dependencies.  It 
could come up instantly, even before the system has reached 
milestone/single-user.  I had previously thought that 
milestone/single-user was equivalent to the legacy end-of-rcS / 
beginning-of-rc2 point, but that's not true.  Although 
milestone/single-user guarantees that a particular set of services is 
running, it *does not* guarantee that other services are *not* running! 
  The only way that you can get *that* guarantee is by using the 
milestone mechanism to limit the system to a particular milestone, as 
you suggest.

In fact, argh.  This problem affects even your proposed scheme.  By the 
time that your patch-test-service is running, there could (in theory) be 
all kinds of services running that didn't happen to depend on anything. 
  Maybe in practice we could ignore that possibility, but it's still 
bothersome.

Argh.  Not quite back to Square One, but that certainly tosses a wrench 
into most of my theories on how to solve this problem.
_______________________________________________
zones-discuss mailing list
zones-discuss@opensolaris.org

Reply via email to