genode/base-hw/src/core/arndale
Martin Stein 909ab8dcd0 hw: communicate page faults via signals
Enable routing of thread events to signal contexts via
Kernel::route_thread_event.

Replace Kernel::set_pager by Kernel::route_thread_event.

In base-hw a pager object is a signal context and a pager activation
is a signal receiver. If a thread wants to start communicating its page
faults via a pager object, the thread calls Kernel::route_thread_event with
its thread ID, event ID "FAULT", and the signal context ID of the pager object.
If a pager activation wants to start handling page faults of a pager object,
the pager activation assigns the corresponding signal context to its signal
receiver. If a pager activation wants to stop handling page faults of a pager
object, the pager activation dissolves the corresponding signal context from
its signal receiver. If a thread wants to start communicating its page faults
via a pager object, the thread calls Kernel::route_thread_event with its
thread ID, event ID "FAULT", and the invalid signal context ID.

Remove Kernel::resume_faulter.

Move all page fault related code from generic kernel sources to CPU
specific cpu_support.h and cpu_support.cc.

fix #935
2013-11-14 19:57:31 +01:00
..
cpu.h hw_arndale: enable nested init test 2013-02-20 19:39:16 +01:00
pic.h hw_arndale: enable nested init test 2013-02-20 19:39:16 +01:00
platform_support.cc hw: get rid of kernel_support.cc 2013-11-14 19:57:30 +01:00
target.mk hw: communicate page faults via signals 2013-11-14 19:57:31 +01:00
timer.h hw_arndale: use core local timer in kernel 2013-05-22 18:32:05 +02:00
tlb.h hw_arndale: enable nested init test 2013-02-20 19:39:16 +01:00