X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pintos-anon;a=blobdiff_plain;f=src%2Fthreads%2Fthread.c;h=87f22b80607b4faba8ae2b1e9f93dc5d6659d8cc;hp=d68c123fb2476420d09557f4f52d4a6fb12949f4;hb=8b801a69f8e0c2c4ef7e32a2476786f80f433b8e;hpb=09fa5c11aff62bd728d4fe8de28a7abaf252fed3 diff --git a/src/threads/thread.c b/src/threads/thread.c index d68c123..87f22b8 100644 --- a/src/threads/thread.c +++ b/src/threads/thread.c @@ -171,7 +171,6 @@ thread_create (const char *name, int priority, struct switch_entry_frame *ef; struct switch_threads_frame *sf; tid_t tid; - enum intr_level old_level; ASSERT (function != NULL); @@ -184,11 +183,6 @@ thread_create (const char *name, int priority, init_thread (t, name, priority); tid = t->tid = allocate_tid (); - /* Prepare thread for first run by initializing its stack. - Do this atomically so intermediate values for the 'stack' - member cannot be observed. */ - old_level = intr_disable (); - /* Stack frame for kernel_thread(). */ kf = alloc_frame (t, sizeof *kf); kf->eip = NULL; @@ -204,8 +198,6 @@ thread_create (const char *name, int priority, sf->eip = switch_entry; sf->ebp = 0; - intr_set_level (old_level); - /* Add to run queue. */ thread_unblock (t);