memory: don't allocate huge page range if it is not big enough

That's embarassing. It is obviously possible that even the largest of the
huge page ranges is not big enough, so blindly taking the biggest huge
area and trying to use it in allocation without any size check is a very
wrong thing to do. Found while looking at the code.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>