Example #1
0
void _context_enter_userland(context_t *cxt)
{
  /* Set userland bit and enable interrupts before entering userland. */
  cxt->status = cxt->status | USERLAND_ENABLE_BIT;
  cxt->status = cxt->status | INTERRUPT_MASK_ALL;
  cxt->status = cxt->status | INTERRUPT_MASK_MASTER;
  _cswitch_to_userland(cxt);
}
Example #2
0
void thread_goto_userland(context_t *usercontext)
{
    /* Set userland bit and enable interrupts before entering userland. */
    usercontext->status = usercontext->status | USERLAND_ENABLE_BIT;
    usercontext->status = usercontext->status | INTERRUPT_MASK_ALL;
    usercontext->status = usercontext->status | INTERRUPT_MASK_MASTER;
    _cswitch_to_userland(usercontext);
    
    KERNEL_PANIC("Userland entering returned for unknown reason.");
}