1.1 --- a/libexec/lib/src/process_creator.cc Sat Feb 18 01:30:37 2023 +0100
1.2 +++ b/libexec/lib/src/process_creator.cc Sat Feb 18 22:48:39 2023 +0100
1.3 @@ -167,7 +167,8 @@
1.4 }
1.5
1.6 /* Initialise the region mapper with details of the payload program regions
1.7 - and of the associated capabilities. */
1.8 + and of the associated capabilities, configure the region mapper thread,
1.9 + populate its stack, and start the thread. */
1.10
1.11 long ProcessCreator::start_region_mapper()
1.12 {
1.13 @@ -248,6 +249,9 @@
1.14 return _process.thread_start(_rm_payload->entry_point(), rm_st);
1.15 }
1.16
1.17 +/* Configure a thread for a program, populate its stack, and start the
1.18 + thread. */
1.19 +
1.20 long ProcessCreator::start_program(int argc, const char *argv[])
1.21 {
1.22 /* NOTE: Environment vector is currently not defined. */
1.23 @@ -275,6 +279,9 @@
1.24 return _process.thread_start(_program_payload->entry_point(), program_st);
1.25 }
1.26
1.27 +/* Start a new process for the given payload, providing the indicated program
1.28 + arguments. */
1.29 +
1.30 long ProcessCreator::start(file_t *file, int argc, const char *argv[])
1.31 {
1.32 long err;
1.33 @@ -306,6 +313,8 @@
1.34 return start_program(argc, argv);
1.35 }
1.36
1.37 +/* Set the given notifier on the system-level pager for a process. */
1.38 +
1.39 void ProcessCreator::set_notifier(Notifier *notifier)
1.40 {
1.41 _exec_pager.set_notifier(notifier);