From 17fd9daf39cf79ae310c1b7d0eb459802517dc6a Mon Sep 17 00:00:00 2001 From: Kimplul Date: Sat, 2 Nov 2024 16:34:38 +0200 Subject: check spawn exhaustion --- src/regions.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/regions.c') diff --git a/src/regions.c b/src/regions.c index 2c11db0..163ec82 100644 --- a/src/regions.c +++ b/src/regions.c @@ -35,6 +35,9 @@ void destroy_mem_nodes() static struct mem_region *get_mem_node() { struct mem_region *r = get_node(&root); + if (!r) + return NULL; + memset(r, 0, sizeof(struct mem_region)); return r; } @@ -178,6 +181,9 @@ stat_t init_region(struct mem_region_root *r, vm_t start, size_t arena_size, start = __page(start); arena_size = __page(arena_size); struct mem_region *m = get_mem_node(); + if (!m) + return ERR_OOMEM; + m->start = start; m->end = start + arena_size; m->flags = 0; -- cgit v1.3