uth: Use a thread0 sched ops for SCPs without 2LSs
authorBarret Rhoden <brho@cs.berkeley.edu>
Mon, 13 Jul 2015 21:39:36 +0000 (17:39 -0400)
committerBarret Rhoden <brho@cs.berkeley.edu>
Thu, 16 Jul 2015 19:08:18 +0000 (15:08 -0400)
commit4abbfb71a699d7f2543161b1177f7a638b02c034
tree35dfde60f84a022912b7817186dfb9d08b19552c
parent45da2d53415fbb82658e2636dfccd46abc6b2d80
uth: Use a thread0 sched ops for SCPs without 2LSs

Instead of assuming the lack of a sched_entry means we are an SCP, we
can use the default sched ops still for a "thread0" scheduler.  All
processes, even those that link in a real 2LS capable of handling MCPs
or other things, will use this scheduler for at least a brief period.

As far as the functionality, goes, this changes nothing.  We still
insist on running current_uthread.  But this also removes one runtime
branch from the common-case code!
user/parlib/thread0_sched.c [new file with mode: 0644]
user/parlib/uthread.c