genode/repos/base-foc
Christian Prochaska a46de84f89 Fix race condition in page fault notification
When a page fault cannot be resolved, the GDB monitor can get a hint about
which thread faulted by evaluating the thread state object returned by
'Cpu_session::state()'. Unfortunately, with the current implementation,
the signal which informs GDB monitor about the page fault is sent before
the thread state object of the faulted thread has been updated, so it
can happen that the faulted thread cannot be determined immediately
after receiving the signal.

With this commit, the thread state gets updated before the signal is sent.

At least on base-nova it can also happen that the thread state is not
accessible yet after receiving the page fault notification. For this
reason, GDB monitor needs to retry its query until the state is
accessible.

Fixes #1206.
2014-07-24 10:18:07 +02:00
..
config Move repositories to 'repos/' subdirectory 2014-05-14 16:08:00 +02:00
doc Move repositories to 'repos/' subdirectory 2014-05-14 16:08:00 +02:00
etc Move repositories to 'repos/' subdirectory 2014-05-14 16:08:00 +02:00
include base: introduce caching attributes (fix #1184) 2014-06-26 10:57:26 +02:00
lib/mk base: interface for D- and I-cache synchronization 2014-05-27 11:14:45 +02:00
mk base-foc: migrate to new ports mechanism 2014-05-27 11:14:43 +02:00
ports Enable hash checks for ports mechanism 2014-05-27 13:45:03 +02:00
run Move repositories to 'repos/' subdirectory 2014-05-14 16:08:00 +02:00
src Fix race condition in page fault notification 2014-07-24 10:18:07 +02:00
Makefile base-foc: migrate to new ports mechanism 2014-05-27 11:14:43 +02:00
README Move repositories to 'repos/' subdirectory 2014-05-14 16:08:00 +02:00

This repository contains the port of Genode to the Fiasco.OC microkernel.
For further information, please refer to the following documents:

:[http://genode.org/community/wiki/GenodeOnFiascoOC - Genode on Fiasco.OC Wiki page]:
  This Wiki page contains the information on how to build and use
  Genode with Fiasco.OC.

:[http://os.inf.tu-dresden.de/fiasco]:
  Official website for the Fiasco.OC microkernel.