vm_thread_stack_back currently requires that all kstack pages must come from the same domain as the kstack KVA.
However, this can lead to an infinite loop if we constantly attempt to allocate pages from a depleted domain.
This patch reworks kstack page allocation to allocate and handle kstack pages from multiple NUMA domains.