mirror of
https://github.com/genodelabs/genode.git
synced 2025-03-23 12:35:41 +00:00
hw_x86_64: Implement Thread::_mmu_exception() for x86_64
The function is a copy of the ARM version minus the in_fault distinction.
This commit is contained in:
parent
0992c233bd
commit
466ad3aed4
@ -63,7 +63,20 @@ Thread_event Thread::* Thread::_event(unsigned const id) const
|
||||
|
||||
void Thread::_mmu_exception()
|
||||
{
|
||||
PDBG("not implemented");
|
||||
_become_inactive(AWAITS_RESUME);
|
||||
_fault_pd = (addr_t)_pd->platform_pd();
|
||||
_fault_signal = _fault.signal_context_id();
|
||||
|
||||
/**
|
||||
* core should never raise a page-fault,
|
||||
* if this happens print out an error message with debug information
|
||||
*/
|
||||
if (_pd == Kernel::core_pd())
|
||||
PERR("Pagefault in core thread (%s): ip=%p fault=%p",
|
||||
label(), (void*)ip, (void*)_fault_addr);
|
||||
|
||||
_fault.submit();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user