diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2021-02-21 20:15:47 +0100 |
|---|---|---|
| committer | Gustav Sörnäs <gustav@sornas.net> | 2021-02-21 20:15:47 +0100 |
| commit | 1fd6257c7dc5e7490f8fd7fc7a5316dc1419c0a6 (patch) | |
| tree | 67fdcc6f1ae1129cb9637760b2b8159ed82c16f7 /src/userprog | |
| parent | 83b6103986c65ad580b4b7f038660bfa01f1d087 (diff) | |
| download | pintos-1fd6257c7dc5e7490f8fd7fc7a5316dc1419c0a6.tar.gz | |
pass pc-struct instead of list_elem from child to parent
Diffstat (limited to 'src/userprog')
| -rw-r--r-- | src/userprog/process.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/userprog/process.c b/src/userprog/process.c index 5f7448b..e99374b 100644 --- a/src/userprog/process.c +++ b/src/userprog/process.c @@ -28,7 +28,7 @@ struct start_process_args // child -> parent bool success; - struct list_elem *child_elem; // list_elem to insert into list of children + struct parent_child *child; }; static thread_func start_process NO_RETURN; @@ -68,7 +68,7 @@ process_execute (const char *file_name) sema_down (&args.sema); if (args.success) { - list_push_back (&t->children, args.child_elem); + list_push_back (&t->children, &args.child->elem); } else { tid = -1; } @@ -101,7 +101,7 @@ start_process (void *args_) sema_init (&t->parent.exit_sema, 0); lock_init (&t->parent.l); - args->child_elem = &t->parent.elem; + args->child = &t->parent; } sema_up (&args->sema); |
