2 * Copyright (c) 2009, 2011, ETH Zurich.
5 * This file is distributed under the terms in the attached LICENSE file.
6 * If you do not find this file, copies can be found by writing to:
7 * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
14 #include <barrelfish/barrelfish.h>
15 #include <barrelfish_kpi/types.h>
16 #include <barrelfish_kpi/init.h>
18 #define MAX_DOMAINS 256
26 struct ps_waiter *next;
27 struct spawn_binding *binding;
31 char *argv[MAX_CMDLINE_ARGS];
37 struct capref domain_cap;
38 uint64_t domain_cap_hash;
40 struct capref rootcn_cap;
42 struct cnoderef rootcn;
44 enum ps_status status;
45 struct ps_waiter *waiters;
48 errval_t ps_allocate(struct ps_entry *entry, domainid_t *domainid);
49 void ps_remove(domainid_t domain_id);
50 bool ps_exists(domainid_t domain_id);
51 struct ps_entry *ps_get(domainid_t domain_id);
53 errval_t ps_hash_domain(struct ps_entry *entry, struct capref domain_cap);
54 errval_t ps_release_domain(struct capref domain_cap,
55 struct ps_entry **ret_entry);