genode/repos/base/src/core/pager_object.cc
Stefan Kalkowski eafe5e81e3 core: unify and simplify paging code (Fix #1641)
For most platforms except of NOVA a distinction between pager entrypoint
and pager activation is not needed, and only exists due to historical
reasons. Moreover, the pager thread's execution path is almost identical
between most platforms excluding NOVA, HW, and Fisco.OC. Therefore,
this commit unifies the pager loop for the other platforms, and removes
the pager activation class.
2015-08-21 10:58:59 +02:00

34 lines
654 B
C++

/*
* \brief Standard implementation of pager object
* \author Martin Stein
* \date 2013-11-04
*/
/*
* Copyright (C) 2013 Genode Labs GmbH
*
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU General Public License version 2.
*/
/* core includes */
#include <pager.h>
using namespace Genode;
void Pager_object::wake_up()
{
/* notify pager to wake up faulter */
Msgbuf<16> snd, rcv;
Native_capability pager = cap();
Ipc_client ipc_client(pager, &snd, &rcv);
ipc_client << this << IPC_CALL;
}
void Pager_object::unresolved_page_fault_occurred()
{
state.unresolved_page_fault = true;
}