lazy page allocation