summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1995-09-17 22:10:06 +0000
committerRoland McGrath <roland@gnu.org>1995-09-17 22:10:06 +0000
commit7c2f0ef1e67793e3d505a8247f38e6c704e5a4ee (patch)
tree4d30dd02a7b70fa8123790b826f446b4d56d7984
parenta8b71d587f3a3ff6b0f15e38a332987aa77bdb03 (diff)
(diskfs_S_exec_startup): Don't pass an argument string.
Set *FLAGS to EXEC_STACK_ARGS.
-rw-r--r--libdiskfs/boot-start.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/libdiskfs/boot-start.c b/libdiskfs/boot-start.c
index dff12ee0..af8dd90e 100644
--- a/libdiskfs/boot-start.c
+++ b/libdiskfs/boot-start.c
@@ -212,7 +212,6 @@ diskfs_S_exec_startup (mach_port_t port,
mach_port_t rootport;
device_t con;
struct ufsport *upt;
- char exec_argv[] = "[BOOT EXECSERVER]";
struct protid *rootpi;
if (!(upt = ports_lookup_port (diskfs_port_bucket, port,
@@ -222,15 +221,10 @@ diskfs_S_exec_startup (mach_port_t port,
*base_addr = 0;
*stack_size = 0;
- *flags = 0;
-
- if (*argvlen < sizeof (exec_argv))
- vm_allocate (mach_task_self (),
- (vm_address_t *) argvP, sizeof (exec_argv), 1);
- bcopy (exec_argv, *argvP, sizeof (exec_argv));
- *argvlen = sizeof (exec_argv);
-
- *envplen = 0;
+ /* We have no args for it. Tell it to look on its stack
+ for the args placed there by the boot loader. */
+ *argvlen = *envplen = 0;
+ *flags = EXEC_STACK_ARGS;
if (*portarraylen < INIT_PORT_MAX)
vm_allocate (mach_task_self (), (u_int *)portarrayP,