~jamesodhunt/upstart/async-spawn

Viewing all changes in revision 1589.

  • Committer: James Hunt
  • Date: 2014-01-07 17:22:10 UTC
  • Revision ID: james.hunt@ubuntu.com-20140107172210-o5phkhqrwz9ixp0v
* init/job.c: 
  - job_change_state(): Call job_process_start() rather than job_process_run().
  - job_error_handler(): Handler to deal with failure to start a job process.
* init/job_process.c: 
  - job_process_start(): Asynchronous replacement for job_process_run() that
    forks a child and registers a handler to check for successful child
    setup such that it does not need to block itself.
  - job_process_spawn(): Now returns child pid as soon as fork was
    successful (along with passing back the child setup fd via an
    additional parameter) rather than blocking until child setup
    complete.
  - job_process_error_handler(): New name for job_process_error_read().
  - job_process_child_reader(): Deal with errors read via child setup
    fd.
  - job_process_close_handler(): Handle successful child setup.
  - job_process_run_bottom(): Bottom half of hold job_process_run() that
    handles any final setup before program job specifies is exec'd.
* init/job_process.h: 
  - JobProcessErrorHandler: New typedef.
  - JobProcessHandlerData: Structure used to pass job details
    to async handlers.

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: