Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

thread-ia32-ux.cc File Reference

#include "thread.h"
#include "thread_i.h"

Functions

FIASCO_FASTCALL int thread_page_fault (Address pfa, Mword error_code, Address ip, Mword flags, Return_frame *regs)
 The low-level page fault handler called from entry.S.
FIASCO_FASTCALL int thread_handle_trap (Trap_state *ts)
 The catch-all trap entry point.
FIASCO_FASTCALL void thread_timer_interrupt (Address ip)

Variables

unsigned gdb_trap_recover
Trap_state::Handler Thread::nested_trap_handler FIASCO_FASTCALL

Function Documentation

FIASCO_FASTCALL int thread_handle_trap Trap_state ts  ) 
 

The catch-all trap entry point.

Called by assembly code when a CPU trap (that's not specially handled, such as system calls) occurs. Just forwards the call to Thread::handle_slow_trap().

Parameters:
state trap state
Returns:
0 if trap has been consumed by handler; -1 if trap could not be handled.

FIASCO_FASTCALL int thread_page_fault Address  pfa,
Mword  error_code,
Address  ip,
Mword  flags,
Return_frame regs
 

The low-level page fault handler called from entry.S.

We're invoked with interrupts turned off. Apart from turning on interrupts in almost all cases (except for kernel page faults in TCB area), just forwards the call to Thread::handle_page_fault().

Parameters:
pfa page-fault virtual address
error_code CPU error code
Returns:
true if page fault could be resolved, false otherwise

FIASCO_FASTCALL void thread_timer_interrupt Address  ip  ) 
 


Variable Documentation

Trap_state::Handler Thread::nested_trap_handler FIASCO_FASTCALL
 

unsigned gdb_trap_recover
 


Generated on Mon Sep 26 14:20:13 2005 for Fiasco by  doxygen 1.4.2