ASSERT (file != NULL);
ASSERT (phdr != NULL);
-@@ -332,69 +458,129 @@ load_segment (struct file *file, const s
+@@ -332,73 +458,129 @@ load_segment (struct file *file, const s
|| start == 0)
return false;
}
-/* Adds a mapping from user virtual address UPAGE to kernel
-- virtual address KPAGE to the page table. Fails if UPAGE is
-- already mapped or if memory allocation fails. */
+- virtual address KPAGE to the page table.
+- UPAGE must not already be mapped.
+- KPAGE should probably be a page obtained from the user pool
+- with palloc_get_page().
+- Returns true on success, false if UPAGE is already mapped or
+- if memory allocation fails. */
+/* Create a minimal stack for T by mapping a page at the
+ top of user virtual memory. Fills in the page using CMD_LINE
+ and sets *ESP to the stack pointer. */