1.1 --- a/libexec/rm/region_mapper.cc Fri Mar 03 18:15:38 2023 +0100
1.2 +++ b/libexec/rm/region_mapper.cc Fri Mar 03 19:29:33 2023 +0100
1.3 @@ -20,13 +20,12 @@
1.4 */
1.5
1.6 #include <l4/re/env.h>
1.7 +#include <l4/sys/err.h>
1.8
1.9 #include <exec/common.h>
1.10 #include <exec/internal_pager.h>
1.11 #include <exec/stack.h>
1.12 -#include <ipc/server.h>
1.13 -
1.14 -#include "pager_object_server.h"
1.15 +#include <fsserver/resource_server.h>
1.16
1.17
1.18
1.19 @@ -65,20 +64,23 @@
1.20
1.21 /* Start the pager. */
1.22
1.23 - printf("Starting pager...\n");
1.24 + printf("Initialising pager...\n");
1.25 printf("Pager capability: %lx\n", l4re_env_get_cap("server"));
1.26 printf("Main thread: %lx\n", l4re_env()->main_thread);
1.27
1.28 /* Initialise the server, enabling notifications. */
1.29
1.30 - ipc_server_config_type config;
1.31 - ipc_server_init_for(&config, PagerObject, &exec_pager);
1.32 - config.notifications = 1;
1.33 + ResourceServer server(&exec_pager);
1.34 + long err = server.bind("server");
1.35
1.36 - /* Bind to the named capability and serve until the IPC gate is released. */
1.37 + if (err)
1.38 + {
1.39 + printf("Could not bind server: %s\n", l4sys_errtostr(err));
1.40 + return 1;
1.41 + }
1.42
1.43 - ipc_server_bind("server", (l4_umword_t) &config, &config.server);
1.44 - ipc_server_start_config(&config);
1.45 + printf("Starting pager...\n");
1.46 + server.start(true);
1.47
1.48 printf("Ending pager...\n");
1.49 return 0;