diff --git a/repos/base-nova/src/base/server/server.cc b/repos/base-nova/src/base/server/server.cc index 9febb5cda..00f433265 100644 --- a/repos/base-nova/src/base/server/server.cc +++ b/repos/base-nova/src/base/server/server.cc @@ -159,10 +159,8 @@ void Rpc_entrypoint::_activation_entry() tmp->release(); } - /* if we can't setup receive window, die in order to recognize the issue */ if (!ep->_rcv_buf.prepare_rcv_window((Nova::Utcb *)ep->utcb())) - /* printf doesn't work here since for IPC also prepare_rcv_window is used */ - nova_die(); + PWRN("out of capability selectors for handling server requests"); srv << IPC_REPLY; } diff --git a/repos/base-nova/src/base/thread/thread_context.cc b/repos/base-nova/src/base/thread/thread_context.cc index fc5c97765..9d75d58cf 100644 --- a/repos/base-nova/src/base/thread/thread_context.cc +++ b/repos/base-nova/src/base/thread/thread_context.cc @@ -77,7 +77,7 @@ void prepare_init_main_thread() /* for Core we can't perform the following code so early */ if (!__initial_sp) { - enum { CAP_RANGES = 16 }; + enum { CAP_RANGES = 32 }; unsigned index = initial_cap_range()->base() + initial_cap_range()->elements(); diff --git a/repos/base-nova/src/core/platform.cc b/repos/base-nova/src/core/platform.cc index 949d39368..1f5500b1d 100644 --- a/repos/base-nova/src/core/platform.cc +++ b/repos/base-nova/src/core/platform.cc @@ -627,7 +627,7 @@ Platform::Platform() : /* add capability selector ranges to map */ unsigned index = 0x2000; - for (unsigned i = 0; i < 16; i++) + for (unsigned i = 0; i < 32; i++) { void * phys_ptr = 0; ram_alloc()->alloc(4096, &phys_ptr);