Buddy allocator: buddy_req_* return 0 with ENOSPC for full reqs

parent 14f9d101
......@@ -612,6 +612,10 @@ buddy_req_extent(struct buddy_reqs *reqs, size_t size, int8_t cram)
size_t rup;
CHECK_OBJ_NOTNULL(reqs, BUDDY_REQS_MAGIC);
if (reqs->n == reqs->space) {
errno = ENOSPC;
return (0);
}
assert(reqs->n < reqs->space);
map = reqs->map;
......@@ -668,6 +672,10 @@ buddy_req_page(struct buddy_reqs *reqs, unsigned bits, int8_t cram)
struct slashmap *map;
CHECK_OBJ_NOTNULL(reqs, BUDDY_REQS_MAGIC);
if (reqs->n == reqs->space) {
errno = ENOSPC;
return (0);
}
assert(reqs->n < reqs->space);
map = reqs->map;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment