projects
/
pintos-anon
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove more or less meaningless comment.
[pintos-anon]
/
src
/
userprog
/
process.c
diff --git
a/src/userprog/process.c
b/src/userprog/process.c
index 90ff18b14ddaae54563ee7d53d6c0cef538fe5aa..c0a6547acb0e09a7717d43ab8fb7199e8ae7248b 100644
(file)
--- a/
src/userprog/process.c
+++ b/
src/userprog/process.c
@@
-54,6
+54,8
@@
execute_thread (void *filename_)
/* Initialize interrupt frame and load executable. */
memset (&if_, 0, sizeof if_);
/* Initialize interrupt frame and load executable. */
memset (&if_, 0, sizeof if_);
+ if_.gs = SEL_UDSEG;
+ if_.fs = SEL_UDSEG;
if_.es = SEL_UDSEG;
if_.ds = SEL_UDSEG;
if_.cs = SEL_UCSEG;
if_.es = SEL_UDSEG;
if_.ds = SEL_UDSEG;
if_.cs = SEL_UCSEG;
@@
-75,10
+77,7
@@
execute_thread (void *filename_)
arguments on the stack in the form of a `struct intr_frame',
we just point the stack pointer (%esp) to our stack frame
and jump to it. */
arguments on the stack in the form of a `struct intr_frame',
we just point the stack pointer (%esp) to our stack frame
and jump to it. */
- asm ("mov %0, %%esp\n"
- "jmp intr_exit\n"
- : /* no outputs */
- : "g" (&if_));
+ asm ("mov %%esp, %0; jmp intr_exit" :: "g" (&if_));
NOT_REACHED ();
}
NOT_REACHED ();
}