sel4: show pd name if flushing page table

Issue #2044
This commit is contained in:
Alexander Boettcher 2016-07-08 14:03:43 +02:00 committed by Christian Helmuth
parent 998dfa6c5e
commit 253f2aef0f
3 changed files with 13 additions and 5 deletions

View File

@ -19,6 +19,7 @@
#include <util/volatile_object.h>
#include <base/log.h>
#include <base/thread.h>
#include <base/session_label.h>
/* core includes */
#include <page_table_registry.h>
@ -33,6 +34,8 @@ class Genode::Vm_space
{
private:
Session_label _pd_label;
Cap_sel_alloc &_cap_sel_alloc;
Page_table_registry &_page_table_registry;
@ -170,7 +173,8 @@ class Genode::Vm_space
if (!flush_support)
throw;
warning("flush page table entries - mapping cache full");
warning("flush page table entries - mapping cache full - PD: ",
_pd_label.string());
_page_table_registry.flush_cache();
@ -270,8 +274,10 @@ class Genode::Vm_space
Cnode &core_cnode,
Cnode &phys_cnode,
unsigned id,
Page_table_registry &page_table_registry)
Page_table_registry &page_table_registry,
const char * label)
:
_pd_label(label),
_cap_sel_alloc(cap_sel_alloc),
_page_table_registry(page_table_registry),
_id(id), _pd_sel(pd_sel),

View File

@ -416,7 +416,8 @@ Platform::Platform()
_core_cnode,
_phys_cnode,
Core_cspace::CORE_VM_ID,
_core_page_table_registry)
_core_page_table_registry,
"core")
{
/* I/O port allocator (only meaningful for x86) */
_io_port_alloc.add_range(0, 0x10000);

View File

@ -151,7 +151,7 @@ void Platform_pd::flush(addr_t virt_addr, size_t size)
}
Platform_pd::Platform_pd(Allocator * md_alloc, char const *,
Platform_pd::Platform_pd(Allocator * md_alloc, char const *label,
signed pd_id, bool create)
:
_id(pd_id_alloc().alloc()),
@ -165,7 +165,8 @@ Platform_pd::Platform_pd(Allocator * md_alloc, char const *,
platform_specific()->core_cnode(),
platform_specific()->phys_cnode(),
_id,
_page_table_registry),
_page_table_registry,
label),
_cspace_cnode_1st(platform_specific()->core_cnode().sel(),
platform_specific()->core_sel_alloc().alloc(),
CSPACE_SIZE_LOG2_1ST,