base: enable executable memory fault handling

Fixes #1723
This commit is contained in:
Alexander Boettcher
2017-10-13 15:26:33 +02:00
committed by Christian Helmuth
parent 03b8e70d3f
commit db329b02b5
11 changed files with 77 additions and 32 deletions

View File

@ -48,11 +48,10 @@ namespace Genode {
*/
Mapping(addr_t dst_addr, addr_t src_addr,
Cache_attribute cacheability, bool io_mem,
unsigned l2size = L4_LOG2_PAGESIZE,
bool rw = true, bool grant = false)
unsigned l2size, bool rw, bool executable)
:
_dst_addr(dst_addr),
_fpage(Fiasco::l4_fpage(src_addr, l2size, rw, grant))
_fpage(Fiasco::l4_fpage(src_addr, l2size, rw, false))
{
if (cacheability == WRITE_COMBINED)
_fpage.fp.cache = Fiasco::L4_FPAGE_BUFFERABLE;
@ -163,6 +162,8 @@ namespace Genode {
bool write_fault() const { return (_pf_addr & 2); }
bool exec_fault() const { return false; }
/**
* Return true if last fault was an exception
*/