For fixed-sized allocation you don't need any algorithm to determine
where to allocate memory from, since you just grab the first available
slice in O(1) time. Thus you aren't concerned about holes since in the
end if the entire arena needs to be allocated then it will. In class if
there were blocks of memory in the ASL we used those first, and failing
that we used the current pointer.
For variable-sized allocation, there is no current pointer, just the
ASL, so the ambiguity in your scenario disappears.