Allocate a slot in the resource tree given range & alignment. the resource will be relocated if the new size cannot be reallocated in the current location.
int reallocate_resource(struct resource * root, struct resource * old, resource_size_t newsize, struct resource_constraint * constraint);
root
root resource descriptor
old
resource descriptor desired by caller
newsize
new size of the resource descriptor
constraint
the size and alignment constraints to be met.