eject from halt

Jeremy Katz katzj at redhat.com
Wed Jun 4 21:50:23 BST 2008


On Wed, 2008-06-04 at 17:18 +0100, Scott James Remnant wrote:
> On Wed, 2008-06-04 at 11:23 -0400, Jeremy Katz wrote:
> > Not without doing some sort of hack to precache binaries.  Because you
> > want to eject and then halt.  If you have to do eject separately in the
> > script, then you need to be sure that halt exists in the buffer cache so
> > that you don't need to go to the (now ejected) CD to read the halt
> > binary
> > 
> There's no guarantee that all of halt will be in the cache either, you
> may well eject inside halt and be unable to page in the rest of the
> binary to actually do the syscall.

There's never a guarantee, but you can at least reduce your likelihood
of failure.  And seriously, having support to call an ioctl() in halt vs
ldd across a static list of binaries and then cat'ing all of those files
to /dev/null before running eject(1)?  One of these feels like a hack,
one of them feels like an incredibly gross hack ;)

Jeremy




More information about the upstart-devel mailing list